SAP EFG_PWB_TEMPLATE Function Module for
EFG_PWB_TEMPLATE is a standard efg pwb template SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for efg pwb template FM, simply by entering the name EFG_PWB_TEMPLATE into the relevant SAP transaction such as SE37 or SE38.
Function Group: EFMU
Program Name: SAPLEFMU
Main Program: SAPLEFMU
Appliation area: E
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function EFG_PWB_TEMPLATE pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'EFG_PWB_TEMPLATE'".
EXPORTING
* X_HEADER = "Header Data
* X_RDI = '*' "
* X_XSF = "
* X_GET_XSF = "
* X_NO_OPEN_FORM = ' ' "
* X_NO_CLOSE_FORM = ' ' "
* X_TESTMODE = ' ' "
* X_SENDTYPE = "Output Type
* X_RECIPIENT = "
* X_SENDER = "
* X_COPYFLAG = "
* X_ARCHIVE_INDEX = "Archiving Parameters
* X_REC_ADDR = "Address Number
* X_SENDTYPE_EXT = "External Send Type
* X_LAST_DOC = "OBSOLETE: Last Document
* X_FLG_SUPPRESS_COMMIT = "
* X_COLLECTION = "Collection
* X_IDENTIFICATION = "General Identification
* X_TAB_GENDATA = "Table for Generic Data
* X_GET_PWB_DATA = "
* X_SPONUMIV = "
* X_FLG_PDF_INTERACTIVE = "
* X_ARCHIVE_PARAMS = "Archiving Parameters
* X_COUNTRY = "
* X_ADDITIONAL_PARAM = "
* X_XFP = "
* X_REF_LOG = CL_EFG_LOG=>NULL "
* X_PDF_ASSEMBLY = "
* X_PDFCHANGESRESTRICTED = "
* X_LANGU = SY-LANGU "
* X_LANGU_ORIG = SY-LANGU "
* X_ITCPO = "
* X_DEVICE = 'PRINTER' "
* X_DIALOG = 'X' "
* X_DEBUG = ' ' "
IMPORTING
Y_ITCPP = "
Y_RDI_RESULT = "
Y_SF_RESULT = "Smart Forms: Return value at end of form printing
Y_TAB_GENDATA = "
Y_TABN_SEL_PER_FCLASS = "Selections per Form Class
Y_PDF_RESULT = "
Y_LANGU = "
TABLES
* XT_RANGES = "
* XT_RANGES9 = "
* YT_OTF = "
* XT_RANGES1 = "
* XT_RANGES2 = "
* XT_RANGES3 = "
* XT_RANGES4 = "
* XT_RANGES5 = "
* XT_RANGES6 = "
* XT_RANGES7 = "
* XT_RANGES8 = "
EXCEPTIONS
FAILED = 1 CANCELLED = 2
IMPORTING Parameters details for EFG_PWB_TEMPLATE
X_HEADER - Header Data
Data type: RFGEN-HEADEROptional: Yes
Call by Reference: No ( called with pass by value option)
X_RDI -
Data type: RF_RDIDefault: '*'
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_XSF -
Data type: EFG_DTE_XSFOptional: Yes
Call by Reference: No ( called with pass by value option)
X_GET_XSF -
Data type: EFG_DTE_GET_XSFOptional: Yes
Call by Reference: No ( called with pass by value option)
X_NO_OPEN_FORM -
Data type: EFG_DTE_FLAGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_NO_CLOSE_FORM -
Data type: EFG_DTE_FLAGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_TESTMODE -
Data type: EFG_DTE_FLAGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_SENDTYPE - Output Type
Data type: RF_SENDTYPEOptional: Yes
Call by Reference: No ( called with pass by value option)
X_RECIPIENT -
Data type: SWOTOBJIDOptional: Yes
Call by Reference: No ( called with pass by value option)
X_SENDER -
Data type: SWOTOBJIDOptional: Yes
Call by Reference: No ( called with pass by value option)
X_COPYFLAG -
Data type: RF_COPYFLAGOptional: Yes
Call by Reference: No ( called with pass by value option)
X_ARCHIVE_INDEX - Archiving Parameters
Data type: TOA_DARAOptional: Yes
Call by Reference: No ( called with pass by value option)
X_REC_ADDR - Address Number
Data type: EPRINTPARAMS-REC_ADDROptional: Yes
Call by Reference: No ( called with pass by value option)
X_SENDTYPE_EXT - External Send Type
Data type: EFGSENDTYPE_EXTOptional: Yes
Call by Reference: No ( called with pass by value option)
X_LAST_DOC - OBSOLETE: Last Document
Data type: EFG_DTE_LAST_DOCOptional: Yes
Call by Reference: No ( called with pass by value option)
X_FLG_SUPPRESS_COMMIT -
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
X_COLLECTION - Collection
Data type: EFG_DTE_COLLECTIONOptional: Yes
Call by Reference: No ( called with pass by value option)
X_IDENTIFICATION - General Identification
Data type: EFG_DTE_IDENTIFICATIONOptional: Yes
Call by Reference: No ( called with pass by value option)
X_TAB_GENDATA - Table for Generic Data
Data type: EFG_TAB_GENDATAOptional: Yes
Call by Reference: No ( called with pass by value option)
X_GET_PWB_DATA -
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
X_SPONUMIV -
Data type: NRNROptional: Yes
Call by Reference: No ( called with pass by value option)
X_FLG_PDF_INTERACTIVE -
Data type: EFG_DTE_PDF_INTERACTIVEOptional: Yes
Call by Reference: No ( called with pass by value option)
X_ARCHIVE_PARAMS - Archiving Parameters
Data type: ARC_PARAMSOptional: Yes
Call by Reference: No ( called with pass by value option)
X_COUNTRY -
Data type: EFG_DTE_COUNTRYOptional: Yes
Call by Reference: No ( called with pass by value option)
X_ADDITIONAL_PARAM -
Data type: EFG_DTE_ADDITIONAL_PARAMOptional: Yes
Call by Reference: No ( called with pass by value option)
X_XFP -
Data type: EFG_DTE_XFPOptional: Yes
Call by Reference: No ( called with pass by value option)
X_REF_LOG -
Data type: IF_EFG_LOGDefault: CL_EFG_LOG=>NULL
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_PDF_ASSEMBLY -
Data type: EFG_DTE_PDF_ASSEMBLYOptional: Yes
Call by Reference: No ( called with pass by value option)
X_PDFCHANGESRESTRICTED -
Data type: FPCHANGESRESTRICTEDOptional: Yes
Call by Reference: No ( called with pass by value option)
X_LANGU -
Data type: EFRMLAN-TDSPRASDefault: SY-LANGU
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_LANGU_ORIG -
Data type: EFRMLAN-TDSPRASDefault: SY-LANGU
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_ITCPO -
Data type: ITCPOOptional: Yes
Call by Reference: No ( called with pass by value option)
X_DEVICE -
Data type: RF_DEVICEDefault: 'PRINTER'
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_DIALOG -
Data type: EFG_DTE_FLAGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_DEBUG -
Data type: EFG_DTE_FLAGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for EFG_PWB_TEMPLATE
Y_ITCPP -
Data type: ITCPPOptional: No
Call by Reference: Yes
Y_RDI_RESULT -
Data type: RDIRESULTOptional: No
Call by Reference: Yes
Y_SF_RESULT - Smart Forms: Return value at end of form printing
Data type: SSFCRESCLOptional: No
Call by Reference: Yes
Y_TAB_GENDATA -
Data type: EFG_TAB_GENDATAOptional: No
Call by Reference: Yes
Y_TABN_SEL_PER_FCLASS - Selections per Form Class
Data type: EFG_TABN_SEL_PER_FCLASSOptional: No
Call by Reference: Yes
Y_PDF_RESULT -
Data type: EFG_STRN_PDF_RESULTOptional: No
Call by Reference: Yes
Y_LANGU -
Data type: SY-LANGUOptional: No
Call by Reference: Yes
TABLES Parameters details for EFG_PWB_TEMPLATE
XT_RANGES -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES9 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
YT_OTF -
Data type: ITCOOOptional: Yes
Call by Reference: Yes
XT_RANGES1 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES2 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES3 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES4 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES5 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES6 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES7 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
XT_RANGES8 -
Data type: EFG_RANGESOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
FAILED -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
CANCELLED -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for EFG_PWB_TEMPLATE Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_failed | TYPE STRING, " | |||
| lv_y_itcpp | TYPE ITCPP, " | |||
| lv_x_header | TYPE RFGEN-HEADER, " | |||
| lt_xt_ranges | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_x_rdi | TYPE RF_RDI, " '*' | |||
| lt_xt_ranges9 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_x_xsf | TYPE EFG_DTE_XSF, " | |||
| lt_yt_otf | TYPE STANDARD TABLE OF ITCOO, " | |||
| lv_x_get_xsf | TYPE EFG_DTE_GET_XSF, " | |||
| lv_x_no_open_form | TYPE EFG_DTE_FLAG, " SPACE | |||
| lv_x_no_close_form | TYPE EFG_DTE_FLAG, " SPACE | |||
| lv_x_testmode | TYPE EFG_DTE_FLAG, " SPACE | |||
| lv_x_sendtype | TYPE RF_SENDTYPE, " | |||
| lv_x_recipient | TYPE SWOTOBJID, " | |||
| lv_x_sender | TYPE SWOTOBJID, " | |||
| lv_x_copyflag | TYPE RF_COPYFLAG, " | |||
| lv_cancelled | TYPE RF_COPYFLAG, " | |||
| lt_xt_ranges1 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_y_rdi_result | TYPE RDIRESULT, " | |||
| lv_x_archive_index | TYPE TOA_DARA, " | |||
| lv_x_rec_addr | TYPE EPRINTPARAMS-REC_ADDR, " | |||
| lv_x_sendtype_ext | TYPE EFGSENDTYPE_EXT, " | |||
| lv_x_last_doc | TYPE EFG_DTE_LAST_DOC, " | |||
| lv_x_flg_suppress_commit | TYPE C, " | |||
| lv_x_collection | TYPE EFG_DTE_COLLECTION, " | |||
| lv_x_identification | TYPE EFG_DTE_IDENTIFICATION, " | |||
| lv_x_tab_gendata | TYPE EFG_TAB_GENDATA, " | |||
| lv_x_get_pwb_data | TYPE C, " | |||
| lv_x_sponumiv | TYPE NRNR, " | |||
| lv_x_flg_pdf_interactive | TYPE EFG_DTE_PDF_INTERACTIVE, " | |||
| lt_xt_ranges2 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_y_sf_result | TYPE SSFCRESCL, " | |||
| lv_x_archive_params | TYPE ARC_PARAMS, " | |||
| lv_x_country | TYPE EFG_DTE_COUNTRY, " | |||
| lv_x_additional_param | TYPE EFG_DTE_ADDITIONAL_PARAM, " | |||
| lv_x_xfp | TYPE EFG_DTE_XFP, " | |||
| lv_x_ref_log | TYPE IF_EFG_LOG, " CL_EFG_LOG=>NULL | |||
| lv_x_pdf_assembly | TYPE EFG_DTE_PDF_ASSEMBLY, " | |||
| lv_x_pdfchangesrestricted | TYPE FPCHANGESRESTRICTED, " | |||
| lv_x_langu | TYPE EFRMLAN-TDSPRAS, " SY-LANGU | |||
| lt_xt_ranges3 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_y_tab_gendata | TYPE EFG_TAB_GENDATA, " | |||
| lt_xt_ranges4 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_x_langu_orig | TYPE EFRMLAN-TDSPRAS, " SY-LANGU | |||
| lv_y_tabn_sel_per_fclass | TYPE EFG_TABN_SEL_PER_FCLASS, " | |||
| lv_x_itcpo | TYPE ITCPO, " | |||
| lt_xt_ranges5 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_y_pdf_result | TYPE EFG_STRN_PDF_RESULT, " | |||
| lv_y_langu | TYPE SY-LANGU, " | |||
| lv_x_device | TYPE RF_DEVICE, " 'PRINTER' | |||
| lt_xt_ranges6 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_x_dialog | TYPE EFG_DTE_FLAG, " 'X' | |||
| lt_xt_ranges7 | TYPE STANDARD TABLE OF EFG_RANGES, " | |||
| lv_x_debug | TYPE EFG_DTE_FLAG, " SPACE | |||
| lt_xt_ranges8 | TYPE STANDARD TABLE OF EFG_RANGES. " |
|   CALL FUNCTION 'EFG_PWB_TEMPLATE' " |
| EXPORTING | ||
| X_HEADER | = lv_x_header | |
| X_RDI | = lv_x_rdi | |
| X_XSF | = lv_x_xsf | |
| X_GET_XSF | = lv_x_get_xsf | |
| X_NO_OPEN_FORM | = lv_x_no_open_form | |
| X_NO_CLOSE_FORM | = lv_x_no_close_form | |
| X_TESTMODE | = lv_x_testmode | |
| X_SENDTYPE | = lv_x_sendtype | |
| X_RECIPIENT | = lv_x_recipient | |
| X_SENDER | = lv_x_sender | |
| X_COPYFLAG | = lv_x_copyflag | |
| X_ARCHIVE_INDEX | = lv_x_archive_index | |
| X_REC_ADDR | = lv_x_rec_addr | |
| X_SENDTYPE_EXT | = lv_x_sendtype_ext | |
| X_LAST_DOC | = lv_x_last_doc | |
| X_FLG_SUPPRESS_COMMIT | = lv_x_flg_suppress_commit | |
| X_COLLECTION | = lv_x_collection | |
| X_IDENTIFICATION | = lv_x_identification | |
| X_TAB_GENDATA | = lv_x_tab_gendata | |
| X_GET_PWB_DATA | = lv_x_get_pwb_data | |
| X_SPONUMIV | = lv_x_sponumiv | |
| X_FLG_PDF_INTERACTIVE | = lv_x_flg_pdf_interactive | |
| X_ARCHIVE_PARAMS | = lv_x_archive_params | |
| X_COUNTRY | = lv_x_country | |
| X_ADDITIONAL_PARAM | = lv_x_additional_param | |
| X_XFP | = lv_x_xfp | |
| X_REF_LOG | = lv_x_ref_log | |
| X_PDF_ASSEMBLY | = lv_x_pdf_assembly | |
| X_PDFCHANGESRESTRICTED | = lv_x_pdfchangesrestricted | |
| X_LANGU | = lv_x_langu | |
| X_LANGU_ORIG | = lv_x_langu_orig | |
| X_ITCPO | = lv_x_itcpo | |
| X_DEVICE | = lv_x_device | |
| X_DIALOG | = lv_x_dialog | |
| X_DEBUG | = lv_x_debug | |
| IMPORTING | ||
| Y_ITCPP | = lv_y_itcpp | |
| Y_RDI_RESULT | = lv_y_rdi_result | |
| Y_SF_RESULT | = lv_y_sf_result | |
| Y_TAB_GENDATA | = lv_y_tab_gendata | |
| Y_TABN_SEL_PER_FCLASS | = lv_y_tabn_sel_per_fclass | |
| Y_PDF_RESULT | = lv_y_pdf_result | |
| Y_LANGU | = lv_y_langu | |
| TABLES | ||
| XT_RANGES | = lt_xt_ranges | |
| XT_RANGES9 | = lt_xt_ranges9 | |
| YT_OTF | = lt_yt_otf | |
| XT_RANGES1 | = lt_xt_ranges1 | |
| XT_RANGES2 | = lt_xt_ranges2 | |
| XT_RANGES3 | = lt_xt_ranges3 | |
| XT_RANGES4 | = lt_xt_ranges4 | |
| XT_RANGES5 | = lt_xt_ranges5 | |
| XT_RANGES6 | = lt_xt_ranges6 | |
| XT_RANGES7 | = lt_xt_ranges7 | |
| XT_RANGES8 | = lt_xt_ranges8 | |
| EXCEPTIONS | ||
| FAILED = 1 | ||
| CANCELLED = 2 | ||
| . " EFG_PWB_TEMPLATE | ||
ABAP code using 7.40 inline data declarations to call FM EFG_PWB_TEMPLATE
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| "SELECT single HEADER FROM RFGEN INTO @DATA(ld_x_header). | ||||
| DATA(ld_x_rdi) | = '*'. | |||
| DATA(ld_x_no_open_form) | = ' '. | |||
| DATA(ld_x_no_close_form) | = ' '. | |||
| DATA(ld_x_testmode) | = ' '. | |||
| "SELECT single REC_ADDR FROM EPRINTPARAMS INTO @DATA(ld_x_rec_addr). | ||||
| DATA(ld_x_ref_log) | = CL_EFG_LOG=>NULL. | |||
| "SELECT single TDSPRAS FROM EFRMLAN INTO @DATA(ld_x_langu). | ||||
| DATA(ld_x_langu) | = SY-LANGU. | |||
| "SELECT single TDSPRAS FROM EFRMLAN INTO @DATA(ld_x_langu_orig). | ||||
| DATA(ld_x_langu_orig) | = SY-LANGU. | |||
| "SELECT single LANGU FROM SY INTO @DATA(ld_y_langu). | ||||
| DATA(ld_x_device) | = 'PRINTER'. | |||
| DATA(ld_x_dialog) | = 'X'. | |||
| DATA(ld_x_debug) | = ' '. | |||
Search for further information about these or an SAP related objects