Adobe forms Ereignis Thema ist als GELÖST markiert

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
8 Beiträge • Seite 1 von 1
8 Beiträge Seite 1 von 1

Adobe forms Ereignis

Beitrag von Lucyalison (Specialist / 193 / 34 / 15 ) » 06.03.2019 18:08
Hallo zusammen,

ich würde gerne in einem sehr komplexen Adobe form (wir sind jetzt bei 51tsd XML-Zeilen :) ) eine globale Variable füllen (type boolean) und abhängig davon auf einer Folgeseite etwas ausgeben. Sollte ja kein Problem sein habe ich mir gedacht und so kann man sich täuschen. Um das Problem näher zu beschreiben: Die Variable GV_APP steuert, dass auf einer Masterseite eine Zeile ausgegeben wird. Und ich hätte gerne dass das Flag im ersten Durchlauf einer Tabelle gesetzt wird. Ich habe die Variable also im Header der Tabelle eingefügt und dort "$".rawValue == "X" als Ereignis eingetragen. Würde grundsätzlich auch funktionieren, wenn ich wüsste bei welchen Ereignis ich es eintragen muss. Bei form:ready und layout:ready wird der Wert bereits beim Aufbereiten der Daten gesetzt. Weiss jemand von Euch welches Ereignis ich auswählen müsste um wirklich erst beim Tabellendurchlauf den Wert einzutragen?

Viele Grüsse
Nicola


Re: Adobe forms Ereignis

Beitrag von a-dead-trousers (Top Expert / 3500 / 113 / 907 ) » 07.03.2019 08:24
hi.

Ich würde das Ganze OHNE Variable im XDF und stattdessen komplett im JS bewerkstelligen.
Außerdem werden Zuweisung als "$".rawValue = "X" geschrieben und nicht "$".rawValue == "X". :wink:
Aber Achtung, der Header einer Tabelle kann auch mehrfach durchlaufen werden, daher würde ich das Coding bei der ersten Datenzeile der Tabelle hinterlegen. Erst hier ist gesichert, dass die Tabelle zumindest einmal ausgegeben wurde.
Was den Zeitpunkt betrifft, kommt es darauf an, welchen Zweck die Variable erfüllen soll. "form:ready" wäre für strukturelle Änderungen am Layout geeignet (z.B. Zeilen ausblenden) und "layout:ready" für grafische Änderungen (z.B. Ausgabe von Werten verändern ohne die zuvor dynamisch festgelegte Zeilenhöhe/-breite zu verändern).

lg ADT

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
Lucyalison

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Adobe forms Ereignis

Beitrag von Lucyalison (Specialist / 193 / 34 / 15 ) » 07.03.2019 12:05
Hallo ADT,

vielen Dank für Deine Antwort; ich glaube die Zuweisung ist nicht das Problem, die funktioniert (natürlich nur mit einem '=' da hast Du völlig Recht) aber eben zum falschen Zeitpunkt. Ich habe es vielleicht auch blöd erklärt. Als Beispiel - auf den 36 Seiten Ausdruck kommt ab Seite 7 eine Tabelle. Und nur während die Daten der Tabelle ausgegeben werden, soll das Flag ein 'X' enthalten. Daher wäre es auch egal ob es im Header oder der ersten Zeile Items gesetzt wird. Wenn ich aber im Header dieser Tabelle jetzt das 'X' setze, erscheint es bereits auf der ersten Seite (ich habe es zum Test im Layout eingebaut) und nicht erst wenn die Tabelle wirklich durchlaufen wird. Ich bin also auf der Suche nach einer Möglichkeit erst zum Tabellendurchlauf ein Kennzeichen zu setzen. Hast Du da eine Idee? Wahrscheinlich stehe ich auf der Leitung....

Viele Grüsse
Nicola

Re: Adobe forms Ereignis

Beitrag von a-dead-trousers (Top Expert / 3500 / 113 / 907 ) » 07.03.2019 14:06
Nochmal: Was willst du mit dem Setzen des Flags erreichen?
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Adobe forms Ereignis

Beitrag von Lucyalison (Specialist / 193 / 34 / 15 ) » 07.03.2019 14:12
Ich möchte eine Grafik auf jeder Seite anzeigen, die die Tabellenzeilen anzeigt. Also bei 34 Gesamtseiten, wird die Tabelle z.B. auf Seite 7 und 8 ausgegeben. Und nur auf diesen beiden Seiten soll die Grafik erscheinen (im Kopf) - die Tabelle steht in etwa auf den letzten 2/3 der Seite.

Re: Adobe forms Ereignis

Beitrag von a-dead-trousers (Top Expert / 3500 / 113 / 907 ) » 08.03.2019 07:53
Ich nehme mal an, dass die Grafik im Seitenmaster definiert ist, oder?
Den Master zu verändern hab ich auch mal versucht, habs aber dann aufgegeben, weil ich es nicht geschafft hab.
Stattdessen habe ich mehrere Master angelegt und mithilfe der Seitenübergänge wechsle ich zwischen diesen hin und her.

EIn kleiner Pro-Tipp:
Ich hab mir mal ein "Debug"-Formular als Kopie von meinem eigentlichen Formular erstellt, welches am Ende ein Textfeld enthält und in das ich mir zur Laufzeit Statusinformationen reinschreibe. z.B. der Event X des Objektes Y wurde durchlaufen. Vielleicht hilft dir das herauszufinden in welcher Reihenfolge die Events auf einer "Seite" abgearbeitet werden.

Ich befürchte nämlich, dass der "Kopf" (der Master) bereits ausgeführt wird, bevor die Eventlogik in der Tabelle auf derselben Seite ausgeführt wird. ALso müsstest du schon vor Erreichen der Seite wissen, dass die Tabelle darauf ausgegeben wird.

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
Lucyalison

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Adobe forms Ereignis

Beitrag von Lucyalison (Specialist / 193 / 34 / 15 ) » 08.03.2019 08:43
Ja die Grafik soll im Master erscheinen; ich habe mir schon gedacht dass das unlustig wird. Ich versuche das jetzt mal wie von Dir vorgeschlagen mit einer neuen Masterseite zu lösen und da hin- und zurückzuspringen. Aber das ist echt mühsam und das sind Momente wo ich mir wünsche der Kunde hätte Smartforms im Einsatz ;-)

Das mit dem Textfeld und den Events habe ich so in etwa schon gemacht und dabei keinen einzigen Event gefunden der passend ist. Entweder war das Textfeld bereits ganz am Anfang gefüllt oder zu spät.

Vielen Dank dass Du immer auch bei so kniffligen Sachen antwortest!

Viele Grüsse
Nicola

Re: Adobe forms Ereignis

Beitrag von Lucyalison (Specialist / 193 / 34 / 15 ) » 08.03.2019 09:09
Mit der Masterseitensteuerung funktioniert es einwandfrei! Danke schön :D

Seite 1 von 1

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und besseren Inhalt:

Vergleichbare Themen

Adobe Interactive Forms / Adobe Life Cycle Designer
von sap_inchen » 03.04.2018 12:24
Seitensteuerung Adobe Forms
von Lucyalison » 14.12.2017 10:55
Tabellen mit Adobe forms
von Yeliz92 » 26.05.2017 11:05
Adobe forms Grafik
von Lucyalison » 27.09.2017 16:56
Interactive Forms by Adobe
von znice » 20.11.2012 13:18