Hallo,
folgendes Problem:
Ich möchte von einem Form aus dynamisch mehrere andere Forms erstellen. Diese sollen Werte von Feldern aus dem Ursprungsform übernehmen. Das anze klappt soweit auch für einzelne Dokumente.
Nun möchte ich das ganze aber für alle zu erstellenden Forms (Anzahl abhängig von n) in einen Abwasch durchlaufen lassen. Also habe ich den code der für ein einzelnes dokument funktioniert genommen udn eine while schleife drumgepackt.
Die Schleife läuft auch durch und erstellt mir insgesamt n Dokumente, soweit so gut. Nur klappt das aktualisieren der Felder im Ausgangsformular irgendwie nicht so recht. Er übergibt in allen durchgängen die gleichen Daten, obwohl die Felder welche übergeben werden bei jedem Durchlauf dynamisch (abhängig von n) geändert werden sollten...
Gibt es da irgendetwas zu beachten? Muss irgendwo ein refresh gesetzt werden?
Irgendwelche ideen?
n:=-numberss;
subsysexp:=@Explode(subsys);
ecnumbersxp:=@Explode(ecnumbers);
alldriversxp:=@Explode(alldrivers);
allplatformsxp:=@Explode(allplatforms);
alllongnamesxp:=@Explode(alllongnames);
allrecxp:=@Explode(allrec);
allactxp:=@Explode(allact);
allacttimexp:=@Explode(allacttime);
allaccxp:=@Explode(allacc);
allmaxxp:=@Explode(allmax);
@While(n!=0;@Prompt([Ok];"laufvariable n ="+ @Text(n);@Text(n));FIELD subsys_temp:=@Subset(@Subset(subsysexp;n);1);FIELD ecnumbers_temp:=@Subset(@Subset(ecnumbersxp;n);1);FIELD alldrivers_temp:=@Subset(@Subset(alldriversxp;n);1);
FIELD allplatforms_temp:=@Subset(@Subset(allplatformsxp;n);1);FIELD alllongnames_temp:=@Subset(@Subset(alllongnamesxp;n);1);FIELD allrec_temp:=@Subset(@Subset(allrecxp;n);1);
FIELD allact_temp:=@Subset(@Subset(allactxp;n);1);FIELD allacttime_temp:=@Subset(@Subset(allacttimexp;n);1);
FIELD allacc_temp:=@Subset(@Subset(allaccxp;n);1);FIELD allmax_temp:=@Subset(@Subset(allmaxxp;n);1);
@Command([FileSave]);@Command([Compose];"add_subsystem");@Command([FileSave]);@Command([FileCloseWindow]);n:=n+1)
Hier das @while nochmal etwas leserlicher:
@While(n!=0;@Prompt([Ok];"laufvariable n ="+ @Text(n);@Text(n));
FIELD subsys_temp:=@Subset(@Subset(subsysexp;n);1);
FIELD ecnumbers_temp:=@Subset(@Subset(ecnumbersxp;n);1);
FIELD alldrivers_temp:=@Subset(@Subset(alldriversxp;n);1);
FIELD allplatforms_temp:=@Subset(@Subset(allplatformsxp;n);1);
FIELD alllongnames_temp:=@Subset(@Subset(alllongnamesxp;n);1);
FIELD allrec_temp:=@Subset(@Subset(allrecxp;n);1);
FIELD allact_temp:=@Subset(@Subset(allactxp;n);1);
FIELD allacttime_temp:=@Subset(@Subset(allacttimexp;n);1);
FIELD allacc_temp:=@Subset(@Subset(allaccxp;n);1);
FIELD allmax_temp:=@Subset(@Subset(allmaxxp;n);1);
@Command([FileSave]); //zum zwischenspeichern der neuen feldnamen
@Command([Compose];"add_subsystem");
@Command([FileSave]);
@Command([FileCloseWindow]);n:=n+1)EDIT: Irgendwie scheint er das neue dokument nicht gescheit zu saven+schließen, irgendwie funktioniert die reihenfolge nicht richtig. Am Ende des Durchlaufes sind nur die letzten Datensätze im Form, alle subforms sidn erstellt, aber leer- was kann man da machen???
Danke