Scripting Tabellenspalte ausblenden in Abhängigkeit gefüllter Überschrift

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

Siehe Scripting Ausblenden Tabellenspalte oder Kopffeld.

Siehe Scripting Formularobjekte adressieren.

Es ist eine relativ häufige Aufgabenstellung, dass man eine Spalte ausblenden will. Zum einen die Überschrift und zum anderen die DATA-Spalte, wenn alle Werte in dieser Spalte leer sind.

Die Überschrift kann man im Druckprogramm füllen, sofern ein Wert in der Spalte gefüllt ist. Dann kann man bei der Überschrift im FormCalc-Coding schreiben

if ($ == null | $ == "") then
  $.presence = "hidden"
endif

Bei der DATA-Spalte ist es nicht so einfach. Jeder Wert für sich kann nicht ausgeblendet werden, da das Ausblenden nur passieren soll, wenn alle Werte initial sind. Daher kann man sich hier behelfen, indem man auf die gefüllte Überschrift abfragt.

Man navigiert von dem Feld X2 im Teilformular "DATA" zwei Ebenen nach oben (zum Knoten "Positionen") und von dort wieder runter in das Teilformular "HEADER" und in diesem Teilformular in das Feld "X2".

if ($.parent.parent.HEADER.X2.rawValue == null | $.parent.parent.HEADER.X2.rawValue == "") then
 $.presence = "hidden"
endif

ScriptingUebAusbl1.JPG


ScriptingUebAusbl3.JPG


ScriptingUebAusbl4.JPG


ScriptingUebAusbl2.JPG