Adobe Forms Seiten

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 Seiten

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
Hallo,
ich bin ein absoluter Neuling in Sachen Adboe Forms und soll ein bestehendes Formular erweitern.
Auf dem urspünglichen Formular werden max. 24 Datensätze gedruckt (je nach dem wie die Datensätze gefüllt sind).
Nun erweitere ich diese Datensätze/Ausgabe aber so dass nur noch maximal 12 auf eine Seite passen.
Die restlichen, im schlimmsten Fall 12 Einträge, sollen auf der 2. Seite gedruckt werden.
Bisher existiert nur eine Seite und die 2. Seite (analog zu Seite 1 aufgebaut) soll auch nur gedruckt werden wenn sie benötigt wird.

Hat jemand einen anhaltspunkt für mich? Schön wäre natürlich wenn ich die Ausgabe der Seiten an eine Bedingung knüpfen könnte ähnlich wie bei den Smartforms.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Adobe Forms Seiten

Beitrag von Lucyalison (Specialist / 262 / 51 / 26 ) »
Hallo dkast,

wenn auf Deiner ersten Seite bzw. der bisher einzigen Seite die definiert ist wenn ich es richtig verstehe, bei Objekt->Masterseiten das Flag für 'Auftreten der Seite begrenzen' nicht gesetzt ist, würde Adobe forms das Ganze selbst regeln. D.h. das Mainfenster wird solange ausgegeben, bis alle Datensätze durch sind. Und wenn zwischenzeitlich das Ende des definierten Mainfensters erreicht ist, wird eine nächste Seite ausgegeben. Was ich nicht ganz verstanden habe ist warum Du die Ausgabe der Seiten an eine Bedingung knüpfen willst - was natürlich im Adobe forms auch gehen würde. Vielleicht kannst Du das noch ein bisschen ausführen?

Viele Grüsse
Nicola

Re: Adobe Forms Seiten

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
Lucyalison hat geschrieben:Hallo dkast,

wenn auf Deiner ersten Seite bzw. der bisher einzigen Seite die definiert ist wenn ich es richtig verstehe, bei Objekt->Masterseiten das Flag für 'Auftreten der Seite begrenzen' nicht gesetzt ist, würde Adobe forms das Ganze selbst regeln. D.h. das Mainfenster wird solange ausgegeben, bis alle Datensätze durch sind. Und wenn zwischenzeitlich das Ende des definierten Mainfensters erreicht ist, wird eine nächste Seite ausgegeben. Was ich nicht ganz verstanden habe ist warum Du die Ausgabe der Seiten an eine Bedingung knüpfen willst - was natürlich im Adobe forms auch gehen würde. Vielleicht kannst Du das noch ein bisschen ausführen?

Viele Grüsse
Nicola
Erstmal danke für deine Antwort. Das Problem ist dass die ganzen Daten Tabelarisch ausgegeben werden, das heiß im Alten Formular 24 Felder in die "Tabelleninhalt" 1-24 geschrieben wurden.
Im neuen Formular sind nur noch 12 Plätze da für Tabelleneinträge 1 - 12. Die restlichen 13-25 müssen also auf eine neue Seite weichen. Diese neue 2. Seite ist dann quasi genau so aufgebaut wie Seite 1 nur eben dass da wo auf Seite 1 die Felder 1-12 verwendet wurden jetzt 13-24 verwendet werden.

Das Problem ist nun ich könnte hergehen und Seite 1 einfach kopieren und dann nur die Feldnamen ändern aber dann wird mir ja für den Fall das die Einträge 13- 24 nicht gefüllt sind eine leere Seite (bis auf das übliche Rahmenzeugs für die Tabelle) ausgegeben.

Mit der Bedingung würde ich prüfen ob die Einträge 13-24 vorhanden sind und wenn nicht auch keine 2. Seite drucken.

Ich hoffe ich konnte es gut genug erklären.

Re: Adobe Forms Seiten

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Gehe ich recht in der Annahme, dass du mit "Tabelle" einen starren Raster meinst, in dem die Werte eingtragen werden?
Wenn ja, verlagere diesen Raster auf die Masterseite und gib deine Daten im Hauptbereich einfach tabellarisch OHNE Rahmenlinie aus. Sobald nicht genug Platz ist, bricht das Formular automatisch um und erzeugt weitere Seiten. Die Tabellenzeilen in dieser Ausgabe müssen natürlich der Zeilenhöhe auf dem Raster entsprechen.
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.18
Basis: 7.50

Re: Adobe Forms Seiten

Beitrag von Lucyalison (Specialist / 262 / 51 / 26 ) »
Du kannst auch in der Schnittstelle abfragen ob es mehr als 12 Einträge gibt und wenn nicht die 2.Seite ausblenden.
Hier ein Beispiel mit Formcalc bei form ready:

if ($record.GV_NEXTPAGE <> "X") then
$.presence = "hidden"
Endif


Aber generell sind so 'hard codierte' Sachen eher unschön. Wenn Dir das von den Daten her möglich ist, würde ich einen Loop über eine Tabelle machen und Adobe forms die Steuerung der Seite überlassen. Dann müsstest Du allerdings das starre Raster aufgeben.

Viele Grüsse
Nicola

Re: Adobe Forms Seiten

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
a-dead-trousers hat geschrieben:Gehe ich recht in der Annahme, dass du mit "Tabelle" einen starren Raster meinst, in dem die Werte eingtragen werden?
Wenn ja, verlagere diesen Raster auf die Masterseite und gib deine Daten im Hauptbereich einfach tabellarisch OHNE Rahmenlinie aus. Sobald nicht genug Platz ist, bricht das Formular automatisch um und erzeugt weitere Seiten. Die Tabellenzeilen in dieser Ausgabe müssen natürlich der Zeilenhöhe auf dem Raster entsprechen.
Ja da liegst du richtig. Nur ganz versthe ich deinen Vorschlag noch nicht. Soll ich das Raster mit den 12 Spalten usw. auf die Masterseite schieben und dann auf der Normalen Seite 1 im Hauptbereich meine Daten einfach so reinwerfen?
Hiewrachie aktuell:
Masterseite:
darunter Seite 1
darunter unbenannt - Inhaltsbereich (komplett leer)
auf gleicher Ebene mit der Masterseite: unbenannt - teilformular (Seite 1)
darunter erfolgt die Ausgabe meiner Daten ohne Loop (die 24 um die es geht)

Habe ich dann nicht wieder genau das gleiche Problem mit meinen Daten? Oder soll ich versuchen sie als Loop auszugeben? Ich hätte vielleicht erwähnen sollen das die Daten nicht von oben nach unten sondern von links nach rechts gedruckt werden. Und wie genua ist das mit dem Überlaufen der Seite? Angenommen ich Loope über meine Interne Tabelle mit 24 Einträgen und schreibe diese in meine ersten 12 Felder woher weiß das Formular dann dass auf der nächsten Seite Datensatz 13 da hinkommen soll wo 1 ist oder wird da eine 2. Seite angelegt mit den entsprechenden Feldern die dann auch nur bei Überlauf gedruckt wird?
Zuletzt geändert von dkast am 13.12.2017 08:20, insgesamt 1-mal geändert.

Re: Adobe Forms Seiten

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
dkast hat geschrieben:Ja da liegst du richtig. Nur ganz versthe ich deinen Vorschlag noch nicht. Soll ich das Raster mit den 12 Spalten usw. auf die Masterseite schieben und dann auf der Normalen Seite 1 im Hauptbereich meine Daten einfach so reinwerfen?
Hiewrachie aktuell:
Masterseite:
darunter Seite 1
darunter unbenannt - Inhaltsbereich (komplett leer)
auf gleicher Ebene mit der Masterseite: unbenannt - teilformular (Seite 1)
darunter erfolgt die Ausgabe meiner Daten ohne Loop (die 24 um die es geht)

Habe ich dann nicht wieder genau das gleiche Problem mit meinen Daten? Oder soll ich versuchen sie als Loop auszugeben? Ich hätte vielleicht erwähnen sollen das die Daten nicht von oben nach unten sondern von links anch rechts gedruckt werden.
Genau, der (starre) Raster kommt auf die Masterseite und ist somit nur eine Art "Hintergrundbild"
In den Inhaltsbereich platzierst du ein Teilformular und setzt die Fließrichtung "Von Links nach rechts". Als Breite setzt du die Breite deines Rasters.
Darunter kommt ein weiteres Teilformular und "verknüpfst" es mit deiner Ausgabetabelle (mit dem ".DATA[*]" Zusatz) aus der Schnittstelle.
Weiters stellst du ein, dass es für jedes Datenelement wiederholt wird und gibst dem Teilformular die genaue Breite der Spalten in deinem Raster.
In diesem Teilformular kannst du dann deine Datenfelder wie gewohnt platzieren.

lg ADT
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.18
Basis: 7.50

Re: Adobe Forms Seiten

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
Genau, der (starre) Raster kommt auf die Masterseite und ist somit nur eine Art "Hintergrundbild"
In den Inhaltsbereich platzierst du ein Teilformular und setzt die Fließrichtung "Von Links nach rechts". Als Breite setzt du die Breite deines Rasters.
Darunter kommt ein weiteres Teilformular und "verknüpfst" es mit deiner Ausgabetabelle (mit dem ".DATA[*]" Zusatz) aus der Schnittstelle.
Weiters stellst du ein, dass es für jedes Datenelement wiederholt wird und gibst dem Teilformular die genaue Breite der Spalten in deinem Raster.
In diesem Teilformular kannst du dann deine Datenfelder wie gewohnt platzieren.

lg ADT
Ich bin jetzt gerade dabei deinen Vorschlag umzusetzen und habe die 2 Teilformulare die du angesprochen hast erstellt. Nur wenn ich die Fließrichtung einstelle (Textfuss) kann ich keine Höhe mehr einstellen.
Ausserdem ist mir noch überhaupt nicht klar wie ich dem letzten Teilformular sage dass es alle Daten der Tabelle ausgibt(Wird Javescript benötigt?). Und reicht eignetlich nicht auch nur ein Teilformular nur für die Spaltenbreite? Und wi muss ich die Felder im letzten Formular binden?

Seite 1 von 1

Vergleichbare Themen

4
Antw.
3518
Views
GELÖST - Adobe Forms - Download - Keine Seiten
von shimsham » 19.02.2019 09:17 • Verfasst in ABAP® Core
1
Antw.
2568
Views
Adobe Interactive Forms / Adobe Life Cycle Designer
von sap_inchen » 03.04.2018 12:24 • Verfasst in ABAP® Core
8
Antw.
1058
Views
Adobe Forms Seitenumbruch
von Lucyalison » 28.06.2022 12:56 • Verfasst in ABAP® Core
5
Antw.
1987
Views
Zahlenformat in Adobe Forms
von Sebastian82 » 12.04.2021 16:01 • Verfasst in ABAP® für Anfänger
3
Antw.
806
Views
QR-Code in adobe forms
von L0w-RiDer » 04.07.2022 14:40 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
Gestern von Bright4.5 1 / 513
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2147
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8742