Beliebige Instanzen durch DropDownListe erzeugen und benennen

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Antworten
ZygmuntDD
Beiträge: 15
Registriert: 19.10.2011, 08:33

Beliebige Instanzen durch DropDownListe erzeugen und benennen

Beitrag von ZygmuntDD » 03.11.2011, 14:24

Hallo an alle,

auch nach vielem Suchen, nicht nur hier, komme ich bei meinem Problem nicht auf einen grünen Zweig. Muss dazu sagen das ich mich erst seit gut 2 Wochen mit dem LCD beschäftige. Mein Problem war es, über eine DropDownListe eine bestimte Anzahl an Instanzen zu erzeugen. Da bin ich froh das ich das mittlweile auch zufriedenstellend hinbekommen habe.
Was noch nicht funktioniert, ist die Entsprechenden Instanzen noch zu beschriften. Wähle ich also  in der DDL die Zahl 2 aus, dann erscheinen auch 2 Instanzen, und die sollen nun auch in einem Textfeld mit "Instanz 1" und "Instanz 2" beschriftet werden. Leider versage ich dabei.
Hier mal der verwendete Code von mir und im Anhang eine Beispieldatei.

Code: Alles auswählen

if ($.boundItem(xfa.event.newText) > $.boundItem(xfa.event.prevText)) {
    for (var i = $.boundItem(xfa.event.prevText); i < $.boundItem(xfa.event.newText); i++){
        this.resolveNode('Formular1.Seite1._Test').addInstance(1);
          if (xfa.host.version < 8) {
              xfa.form.recalculate(1);         
          }
      xfa.resolveNode("Test.Textfeld1.caption.value.#text").value = "Textfeld " + i;
      }
}
if ($.boundItem(xfa.event.newText) < $.boundItem(xfa.event.prevText)) {
    for (var i = $.boundItem(xfa.event.newText); i < $.boundItem(xfa.event.prevText); i++){
        this.resolveNode('Formular1.Seite1._Test').removeInstance(this.parent.index);
          if (xfa.host.version < 8) {
              xfa.form.recalculate(1);
          }
      }
}
Klar ist dabei, das die Zeile:

Code: Alles auswählen

xfa.resolveNode("Test.Textfeld1.caption.value.#text").value = "Textfeld " + i;
noch die falsche Bezeichnung ausgibt, da i immer eins kleiner ist als die aktuelle ausgewählte Zahl in der DDL.

Ich hoffe jemand versteht meine Ausführungen sowie mein Skript und kann mir dabei weiterhelfen.

Vielenn Dank,
Grüße S.

Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
radzmar
Beiträge: 962
Registriert: 26.10.2011, 10:18

Beliebige Instanzen durch DropDownListe erzeugen und benennen

Beitrag von radzmar » 04.11.2011, 09:22

Das ist gar nicht so schwer.

1. Im change:Event der Dropdown-Liste reicht dieses Skript.

Code: Alles auswählen

_Test.setInstances(xfa.event.newText)
2. Im indexChange:Event von Teilformular "Test" dann noch dieses Skript.

Code: Alles auswählen

Textfeld1 = Concat("Instanz ", $.index + 1)
Voila!
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

ZygmuntDD
Beiträge: 15
Registriert: 19.10.2011, 08:33

Beliebige Instanzen durch DropDownListe erzeugen und benennen

Beitrag von ZygmuntDD » 04.11.2011, 09:31

Wow, dass ganze mit zwei Codezeilen gelöst. Bin erstaunt und begeistert. :)

Aber woher zum Teufel soll man diese Befehle auch kennen, wenn einem überall für das erzeugen einer Instanz der von mir eingeschlagene viel längere Weg gezegt wird.

Auf jeden Fall vielen Dank. Das wird mein Skript auch noch an der ein oder anderen Stelle verkürzen. :)

Grüße
S.

Benutzeravatar
radzmar
Beiträge: 962
Registriert: 26.10.2011, 10:18

Beliebige Instanzen durch DropDownListe erzeugen und benennen

Beitrag von radzmar » 04.11.2011, 17:03

Nun ja, ich hab echt keine Idee, wo Du das Skript her hast, aber garantiert nicht aus der Designer-Dokumentation.
Wenn Du die Möglichkeiten des Designer's besser verstehen willst, dann bietet die Hilfe (F1) von Designer schon einige sehr guten Beispiele.
Ansonsten gibt es noch tonnenweise Handbücher, von denen wenigstens 3 gelesen werden und immer parat liegen sollten.

Designer Skript-Grundlagen (PDF ger)
http://help.adobe.com/de_DE/livecycle/9 ... Basics.pdf

Designer Scripting Reference (PDF eng)
http://help.adobe.com/en_US/livecycle/9 ... erence.pdf
Designer Scripting Reference (HTML ger)
http://help.adobe.com/de_DE/livecycle/9 ... 00707.html

FormCalc Benutzerreferenz (ger)
http://help.adobe.com/de_DE/livecycle/9.0/FormCalc.pdf

ZygmuntDD
Beiträge: 15
Registriert: 19.10.2011, 08:33

Beliebige Instanzen durch DropDownListe erzeugen und benennen

Beitrag von ZygmuntDD » 04.11.2011, 18:56

Das gezeigte Skript ist Marke Eigenbau, aus dem was ich bisher so gelesen hatte zusammengebastelt. Das Grundprinzip hat ja funktioniert. :)

Und ich arbeite auch schon wie ein verrückter mit der Hilfe, hab mir auch Vidotutorials bei Video2Brain angeschaut, aber wenn man zum beispiel nicht in einem beispiel auf dieses "Concat" gestoßen wird, findet man das ja auch nicht zufällig. Aber ich werde mir mal die gezeigte Dokumentationen zur Gemüte führen und habe heute auch schon mal ein wenig in deinem Blog gelesen.

Schönen Abend und WE noch,
S.

Antworten