Connect failed: Connection timed out

[GastForen Programmierung/Entwicklung AppleScript laufende Nr für Liste in Liste

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

laufende Nr für Liste in Liste

Goar
Beiträge gesamt: 395

20. Sep 2022, 11:59
Beitrag # 1 von 3
Bewertung:
(3065 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Skripter,
für eine Veranstaltung können Kuchen gespendet werden.
Um die Spenden zu erfassen gibt es ein Formular.

Wer mehrere Exemplare des gleichen Kuchens spenden möchte, kann die entsprechende Anzahl eingeben, im Muster curItem habe ich einmal die 3 gesetzt.
In der Gesamtliste sollen diese Mehrfachspenden aber vereinzelt werden, dort gibt es also nachher für diese Spende drei identische Einträge.
Nun sollen alle Einträge eine laufende Nummer bekommen.
Das habe ich so probiert:
Code
set AppleScript's text item delimiters to tab 
set allList to {} -- sammelt die einzelnen (!) Kuchenspenden
set cakeCounter to 1
set curItem to "Thatcher Margret (176) 12345678 Schokokuchen X 3 gluten, eier, kannSpuren X SA X"
set curList to text items of curItem
set beginning of curList to "" -- setzt einen Platzhalter für die lfdnr
set cntCakes to item 7 of curList
set item 7 of curList to "1"
if (cntCakes > 1) then
repeat cntCakes times
set item 1 of curList to cakeCounter as text -- setzt die lfdnr ein
set end of allList to curList
set cakeCounter to cakeCounter + 1
end repeat
else
set item 1 of curList to cakeCounter as text -- setzt die lfdnr ein
set end of allList to curList
set cakeCounter to cakeCounter + 1
end if
set AppleScript's text item delimiters to {""}
allList

Wie ich es auch drehe und wende, die vereinzelten Einträge aus der Schleife repeat cntCakes times bekommen immer die gleiche, nämlich die höchste Nummer.
Bei einem Test mit 2 (statt 3) habe ich immerhin festgestellt, dass das erste Exemplar korrekt mit der lfdnr 1 in allList eingesetzt wird, sobald das zweite Exemplar mit der lfdnr 2 ergänzt wird, hat das erste aber auch die 2.

Auch der Versuch, nach Fertigstellung der Gesamtliste allList die lfdnr einzufügen führte nicht zum gewünschten Ergebnis.
So habe ich es versucht:
Code
set cntCakes to length of allList 
repeat with i from 1 to cntCakes
set beginning of item i of allList to i as text
end repeat

Wo steckt mein Denkfehler oder meine Ungeschicklichkeit in der Umsetzung?

Viele Grüße
X

laufende Nr für Liste in Liste

TMA
Beiträge gesamt: 399

21. Sep 2022, 09:54
Beitrag # 2 von 3
Beitrag ID: #584432
Bewertung:
(3005 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Goar,
auf die schnelle probiere bitte mal dieses aus:
Code
set AppleScript's text item delimiters to tab 
set allList to {} -- sammelt die einzelnen (!) Kuchenspenden
set curItem to "Thatcher Margret (176) 12345678 Schokokuchen X 3 gluten, eier, kannSpuren X SA X"
set curList to text items of curItem
set beginning of curList to "" -- setzt einen Platzhalter für die lfdnr
set cntCakes to item 7 of curList as integer
set item 7 of curList to "1"
repeat with i from 1 to cntCakes
set item 1 of curList to i as text -- setzt die lfdnr ein
copy curList to end of allList
end repeat
set AppleScript's text item delimiters to {""}
allList


Gruß
TMA


als Antwort auf: [#584428]

laufende Nr für Liste in Liste

Goar
Beiträge gesamt: 395

21. Sep 2022, 10:47
Beitrag # 3 von 3
Beitrag ID: #584433
Bewertung:
(2980 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo TMA,

klappt, super!

Vielen Dank!


als Antwort auf: [#584432]