Adobe Forms Generierter Formular-Funktionsbaustein (SFP-Schnittstelle und Kontext)

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

Siehe Adobe Interactive Forms.

Wie bei Smart Forms wird bei Adobe Forms für die Formularausgabe ein Funktionsbaustein generiert, der letztlich für die Ausgabe des Formulars verantwortlich ist. Der genierierte Funktionsbaustein hat die gleichen Import- und Exportparameter wie die SFP-Schnittstelle zum Formular. Die Objekte des Kontexts lassen sich auch alle im generierten Funktionsbaustein wiederfinden.

Der Name des Funktionsbausteins wird von SAP automatisch generiert und ist vom System abhängig.

Daher wird der Funktionsbausteinname auch nicht direkt angegeben, sondern mittels des Funktionsbausteins FP_FUNCTION_MODULE_NAME ermittelt im Coding.


Parameter des generierten Funktionsbausteins

Aufruf Funktionsbaustein im Rahmenprogramm

Im Rahmenprogramm wird der Funktionsbaustein aufgerufen.

  Data: lv_form type tdsfname.

  call function lv_fm_name      "z. B. /1BCDWB/SM00000005
    EXPORTING
      /1bcdwb/docparams  = ls_docparams
      bil_prt_com        = gs_interface
      is_nast            = nast
    IMPORTING
      /1bcdwb/formoutput = ls_pdf_file
    EXCEPTIONS
      usage_error        = 1
      system_error       = 2
      internal_error     = 3
      others             = 4.

Ermittlung Funktionsbaustein im Debugger

Im Debugger erkennt man den Namen des Funktionsbausteins "/1BCDWB/SM00000005"

Adobe Funktionsbaustein1.jpg

Ermittlung Funktionsbaustein über Formular

Ist man im Einstiegsbildschirm der Transaktion SFP und gibt das Adobe Forms-Formular SFP ein und F8, so wird der Funktionsbaustein angezeigt, der die SFP-Schnittstelle und den Kontext repräsentiert.

Nun F8 klicken.

AdobeFormsFuba1.JPG


Der vom Adobe Forms und vom System abhängig generierte Funktionsbausteinname 1BCDWB/SM00000020 wird angezeigt.

AdobeFormsFuba2.JPG

Aufruf Funktionsbaustein mit Transaktion SE37

Adobe Funktionsbaustein2.jpg

Hier ist das Coding zu sehen, was im Funktionsbaustein enthalten ist

Adobe Funktionsbaustein3.jpg

Suche nach Knotenelementen

Es ist möglich nach Knotenelementen im Funktionsbaustein zu suchen. Wichtig ist hier "global im Rahmenprogramm" zu markieren, da der größte Teil des Codings in einem Include sich befindet, der in den Funktionsbaustein eingebunden ist.

Adobe Funktionsbaustein4.jpg

Knotenelemente debuggen

Setzt man nun an ein Knotenelement (z. B. ZZTEL_NUMBER_SB) einen Breakpoint, wird diese Stelle bei der Anzeige des Formularbelegs (in diesem Fall Rechnung) angesprungen im Debugger

Adobe Funktionsbaustein5.jpg

Rechnungsformular wird in Druckvorschau angezeigt

Adobe Funktionsbaustein6a.jpg

Die Codingstelle wird im Debugger angesprungen

Adobe Funktionsbaustein6.jpg

Web-Links