Tabellenzeile ein- und ausblenden

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Antworten
Benutzeravatar
Capri
Beiträge: 13
Registriert: 02.04.2008, 14:53

Tabellenzeile ein- und ausblenden

Beitrag von Capri » 14.04.2008, 18:20

Hallo!

ich habe eine verschachtelte dynamische Tabelle erstellt, die wie folgt aussieht:

Zeile Auszugssaldo
Zeile1 Umsatz
Zeile2 Umsatz
Zeile Tagesendsaldo

Die Tabelle beginnt beim Druck mit dem Auszugssaldo.
Anschließend werden die zwei Umsatzzeilen innerhalb der Saldo-Zeilen so oft wiederholt, wie es an einem Tag Umsatz gegeben hat.
Sind die Umsätze eines Tages komplett, wird die Zeile Tagesendsaldo angezeigt.
Dann beginnt eine neue Tagesumsatzanzeige mit dem Auszugssaldo.

Nun hab ich die Anforderung, daß die zwei Saldozeilen nur angezeigt werden, wenn auch tatsächlich ein Saldo per xml übergeben wird. Derzeit bastel ich am Auszugssaldo. Mein bisheriges Ergebnis schaut so aus:

Code: Alles auswählen

if (OSPDMS.V1.Tabelle_Teilformular.Auszugsaldo_Teilformular.Zeile_Teilformular.Tabelle_auszugsaldo.Zeile1.asaldo.rawValue == "1")
 { }
else
 {this.presence = "hidden";
  this.relevant = "-print";}
[fontsize=2][fontsize=2]Daraufhin wird die Auszugssaldozeile bislang immer ausgeblendet. Ich vermute, daß der Haken bei der "1" liegt. Was muß ich angeben, damit überprüft wird, ob überhaupt ein Wert in der Zelle übergeben wird?[/fontsize][/fontsize]

[fontsize=2]Falls noch andere Fehler erkennbar sind, bin ich für Anregungen sehr dankbar.[/fontsize]

[fontsize=2]Vielen Dank,
die Unwissende[/fontsize][fontsize=2]
[/fontsize]


Benutzeravatar
Gentleman
Beiträge: 298
Registriert: 21.08.2007, 14:45

Tabellenzeile ein- und ausblenden

Beitrag von Gentleman » 14.04.2008, 19:11

Es sieht eher nach einer Referenzfehler aus!

Ein Tipp:

Code: Alles auswählen

console.println("Debug");
Dafür Adobe Prof öffnen und den JS Debugger öffnen.
Damit kann man sehr gut Debuggen!

Referenzierbar:
  • Flash -> trace("debug");
  • JAVA -> System.out.println();
  • JS -> app.alert();
  • PHP -> echo
Ist ziemlich hilfreich wenn man nicht weißt ob man richtige werte oder richtig referenziert hat.

Gruß


Benutzeravatar
Capri
Beiträge: 13
Registriert: 02.04.2008, 14:53

Tabellenzeile ein- und ausblenden

Beitrag von Capri » 15.04.2008, 10:00

Guten Morgen, gentleman,

wenn Du mit Referenzfehler meinst, daß die falsche Stelle angesprochen wird, muß ich leider sagen, daß die Referenzen stimmen.

Hab gestern noch geforscht und getestet und bin inzwischen bei folgendem angekommen:
[fontsize=2]
if[/fontsize]
[fontsize=2] (OSPDMS.V1.Tabelle_Teilformular.Auszugsaldo_Teilformular.Zeile_Teilformular.Tabelle_auszugsaldo.Zeile1.asaldo.rawValue [/fontsize][fontsize=2]==[/fontsize][fontsize=2] "")
   {this.presence [/fontsize][fontsize=2]=[/fontsize][fontsize=2] "hidden";
   this.relevant [/fontsize][fontsize=2]=[/fontsize][fontsize=2] "-print";}
[/fontsize][fontsize=2]else
[/fontsize]
[fontsize=2]   { }[/fontsize]

[fontsize=2]Jetzt wird die Zeile angezeigt.[/fontsize]

[fontsize=2]Ich brauche für raw.Value = ??? eine Anweisung, die bedeutet: "beliebiger Wert". Es ist egal, was in der Zelle steht. Wenn etwas in der Zelle steht, dann soll die Zeile angezeigt werden. Ist die Zelle leer, soll die Zeile ausgeblendet werden.[/fontsize]

[fontsize=2].oO(Könnte ich doch nur endlich JS)Oo.
[/fontsize]

Benutzeravatar
Capri
Beiträge: 13
Registriert: 02.04.2008, 14:53

Tabellenzeile ein- und ausblenden

Beitrag von Capri » 17.04.2008, 14:17

Mein lange in Urlaub weilender Kollege hat es heute mit viel Probieren lösen können:

if (this.rawValue == null)
{
this.parent.presence = "hidden";
this.parent.relevant = "-print";
}

Der Code steht nun nur in der Zelle, um deren Wert es geht. Es funktioniert... :)


Antworten