0
Schleife über alle Datensätze einer Tabelle
Hallo, finde einfach den Fehler nicht:
Über einen Button sollen in die Tabelle Umfrage_TN Datensätze aus der aktuell geöffneten Tabelle geschrieben werden. Für den gerade geöffneten Datensatz klappt das mit. In der Tabelle Umfrage_TN wird ein Datensatz angelegt und die entsprechenden Felder gefüllt:
let thisUmf := this.Umfrage;
let P_ID := concat(lower('ID Frage 1'), lower('ID Frage 2'), lower('ID Frage 3'));
let TN := first((select Teilnehmer)[concat(IF1, IF2, IF3) = P_ID]).number(Nr);
let AnzF := 'Anzahl Fächer';
let thisFach01 := 'Fach 1';
let Fach_01 := first((select Fach)[Fach like thisFach01]).number(Nr);
let thisFach02 := 'Fach 2';
let Fach_02 := first((select Fach)[Fach like thisFach02]).number(Nr);
if cnt((select Umfrage_TN)[Teilnehmer.number(Nr) = TN and Umfrage = thisUmf]) = 0 then
let myUmTn := (create Umfrage_TN);
myUmTn.('Fach 1' := Fach_01);
myUmTn.('Fach 2' := Fach_02);
if 'Fach 3' != null then
let thisFach03 := 'Fach 3';
let Fach_03 := first((select Fach)[Fach like thisFach03]).number(Nr);
myUmTn.('Fach 3' := Fach_03)
end;
myUmTn.(Umfrage := thisUmf);
myUmTn.(Teilnehmer := TN);
myUmTn.('Anzahl Fächer' := AnzF)
end
Baue ich die eine Schleife ein wie folgt, passiert gar nichts. Sieht jemand den Fehler?
let thisUmf := this.Umfrage;
for i in this do
let P_ID := concat(i.lower('ID Frage 1'), i.lower('ID Frage 2'), i.lower('ID Frage 3'));
let TN := first((select Teilnehmer)[concat(IF1, IF2, IF3) = P_ID]).number(Nr);
let AnzF := i.'Anzahl Fächer';
let thisFach01 := i.'Fach 1';
let Fach_01 := first((select Fach)[Fach like thisFach01]).number(Nr);
let thisFach02 := i.'Fach 2';
let Fach_02 := first((select Fach)[Fach like thisFach02]).number(Nr);
if cnt((select Umfrage_TN)[Teilnehmer.number(Nr) = TN and Umfrage = thisUmf]) = 0 then
let myUmTn := (create Umfrage_TN);
myUmTn.('Fach 1' := Fach_01);
myUmTn.('Fach 2' := Fach_02);
if i.'Fach 3' != null then
let thisFach03 := i.'Fach 3';
let Fach_03 := first((select Fach)[Fach like thisFach03]).number(Nr);
myUmTn.('Fach 3' := Fach_03)
end;
myUmTn.(Umfrage := thisUmf);
myUmTn.(Teilnehmer := TN);
myUmTn.('Anzahl Fächer' := AnzF)
end
end;
Danke. Maurice
2 Antworten
-
"this" bezieht sich nur auf den einen aktuell geöffneten Datensatz. Für die Schleife brauchst du eine select-Anweisung
Content aside
- Status Answered
- vor 1 JahrZuletzt aktiv
- 2Antworten
- 53Ansichten
-
2
Folge bereits