Instanzen Fremder Objekte entfernen

Alles was sich mit dem Thema dynamische XML Formulare auf Basis des LiveCycleDesigners beschäftigt
Antworten
palmking
Beiträge: 3
Registriert: 17.02.2011, 09:39

Instanzen Fremder Objekte entfernen

Beitrag von palmking » 04.03.2011, 16:29

Hallo,

ich habe zwei Tabellen, wobei sich die zweite immer an die erste anpassen soll.

Ein Problem gibt es beim löschen von bestimmten zeilen, d.h. wenn Zeile2 aus Tabelle1 gelöscht wird soll ebenfalls die Zeile2 aus Tabelle2 verschwinden.

form1.Prozessbeschreibung.Row5.instanceManager.removeInstance(zeile.toString());

entfernt die aktuelle Zeile aus der ersten Tabelle

form1.Beschreibung.Row3.instanceManager.removeInstance(zeile.toString());

entfernt die aktuelle Zeile aus der zweiten Tabelle


wenn man jedoch beide in einen Button (o.ä.) legt funktionieren diese nicht.
auch mit resolveNode() bin ich da noch nicht weitergekommen....

Das kann auch an irgendwelchen Einstellungen liegen, es lassen sich auch keine Aktionen mehr über "Add Action..." hinzufügen.

vielen Dank schonmal!

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Instanzen Fremder Objekte entfernen

Beitrag von nele_sonntag » 04.03.2011, 16:40

Also bei mir funktioniert es so. Das ist natürlich erst einmal ein generelles Löschen der letzten Zeile.

Im Plusbutton:

Code: Alles auswählen

Formular1.tfs1.Tabelle1.Zeile1.instanceManager.addInstance(true);
Formular1.tfs1.Tabelle2.Zeile1.instanceManager.addInstance(true);
Im Minusbutton:

Code: Alles auswählen

Formular1.tfs1.Tabelle1.Zeile1.instanceManager.removeInstance(1);
Formular1.tfs1.Tabelle2.Zeile1.instanceManager.removeInstance(1);
Aber ein gezieltes Löschen sollte auch zu realiseren sein, normalerweise mache ich dies mit folgendem Skript in dem jweiligen Zeilen-Entfernen-Button (recalculate für den Fall der Zeilennummerierung. (siehe hier: http://acronaut.de/forum34/597.html)

Code: Alles auswählen

_Zeile1.removeInstance(this.parent.index);
xfa.form.recalculate(1);
LG Mandy
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

palmking
Beiträge: 3
Registriert: 17.02.2011, 09:39

Instanzen Fremder Objekte entfernen

Beitrag von palmking » 04.03.2011, 17:11

Danke für die schnelle antwort!

Dein Formular funktioniert bei mir leider auch nicht richtig... es geht nur wenn man die buttons aus der ersten zeile benutzt sobald man die anderen nimmt geht das nicht mehr.

Neue Zeile, Inhalte übernehmen, automatische nummerierung usw. klapen auch alle nur das entfernen geht nicht.

wenn der button nicht in der Tabelle ist funktioniert das entfernen auch, aber er muss ja in der Tabelle sein weil darüber ja die zeilen zum löschen ausgewählt wird.

d.h. der selbe befehl funktioniert in einer andern Hierarchie-ebene nicht, obwohl bei er mit der obersten Ebene beginnt (form1).

und dein link geht auch nicht ;-)

schönen Gruß und Danke!

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Instanzen Fremder Objekte entfernen

Beitrag von nele_sonntag » 04.03.2011, 17:44

Das Skript ist auch nur in den oberen Buttons. :)

Link, komisch. Ist unter Neueste zu finden. Diskussion: spalte einer dyn. tabelle autom. nummerieren

Muss jetzt leider weg, schaue morgen noch mal.

LG Mandy


palmking
Beiträge: 3
Registriert: 17.02.2011, 09:39

Instanzen Fremder Objekte entfernen

Beitrag von palmking » 08.03.2011, 15:01

weiss jemand woran das liegt das dieser befehl nur klappt wenn der button nicht in der tabelle liegt?

form1.Beschreibung.Row3.instanceManager.removeInstance(zeile.toString());

Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

Instanzen Fremder Objekte entfernen

Beitrag von Merklin » 08.03.2011, 23:09

Hallo palmking,

leider habe ich von scripten wenig Ahnung, aber ich habe eine Tabelle in der ich über einen - Button und einen + Button, Zeilen hinzufügen oder eben löschen kann. Die Buttons liegen in jeder Zeile und sind von einem Teilformular umschlossen.

Das Script heißt so:

Formular1.TF2.Tabelle1.Zeile1.Teilformular1.Schaltfläche3[1]::click - (JavaScript, client)

this.parent.parent.instanceManager.removeInstance(this.parent.parent.instanceIndex);

Irgend wie scheint die Anzahl des Wortes "parent" eine Rolle zu spielen. Kannst ja mal damit experimentieren.

Vielleicht hilft es ein wenig.

VG Merklin

Antworten