Seite 1 von 1

Setzen von Instanzen auf 0 über Optionsfeldliste

Verfasst: 07.04.2018, 08:02
von twierschin
Moin moin zusammen,

beim Ändern der Optionsfeldliste (Pfad: Teilformular Antragsteller -> Optionsfeldliste2) sollen alle Eingaben unter dem Pfad "Anwendungen -> ...) gelöscht und alle Instanzen auf 0 gesetzt, also zusammengeklappt, werden. Hinbekommen habe ich das Löschen aller Eingaben bereits unter Verwendung von "xfa.host.resetData ...".

Mein Problem ist also das Setzen aller Instanzen auf 0. Also das Zusammenklappen der Instanzen.

Die Ursache meines Problems scheint mir darin zu liegen, dass manche Instanzen (Teilformulare) bei allen Optionen der Optionsfeldliste benötigt werden. Exemplarisch sei hier die Instanz für das Teilformular "A" unter dem Teilformular "Anwendungen" genannt. Es trifft aber auch andere Teilformulare mit "Unterformularen".

Zum besseren Verständnis habe ich das betreffende Formular, in anonymisierter Form, angefügt.

Eine Lösung könnte sein, die betreffenden Teilformulare zu doppeln, oder ggf. zu verdrei- / vierfachen. Dies scheint mir aber eine suboptimale Lösung zu sein. Ich glaube, es gibt bestimmt eine passende Scriptlösung. Da ich mich selbst als Scriptdummie sehe, fehlt mir hier das nötige Wissen.

Ich hoffe, es kann mir jemand Lösungsansätze, oder gar die Lösung nennen. Da ich selbst auch dabei lernen möchte, wäre auch eine Erklärung der Lösung grandios.

Vielen Dank vorab & Grüße
Thomas

Re: Setzen von Instanzen auf 0 über Optionsfeldliste

Verfasst: 07.04.2018, 09:42
von armine
Hallo Thomas,

setze das Häkchen bei anwendungen > Bindung, dass das Teilformular Instanzen bilden kann und ändere den Code in

Formular1.antragsteller.Optionsfeldliste2::click - (JavaScript, client)

//xfa.host.resetData("xfa.form.Formular1.anwendungen");

_anwendungen.insertInstance(0, 0) ;
_anwendungen.setInstances(1) ;

vg armine

Re: Setzen von Instanzen auf 0 über Optionsfeldliste

Verfasst: 07.04.2018, 13:17
von twierschin
Vielen Dank für die schnelle Hilfe, Armine!

Jetzt klappt es!

VG und dir ein schönes Wochenende