SAP OPEN_FORM Function Module for SAPscript: Open form printing









OPEN_FORM is a standard open form SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for SAPscript: Open form printing processing and below is the pattern details for this FM, 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 open form FM, simply by entering the name OPEN_FORM into the relevant SAP transaction such as SE37 or SE38.

Function Group: STXC
Program Name: SAPLSTXC
Main Program: SAPLSTXC
Appliation area:
Release date: 18-Jan-1995
Mode(Normal, Remote etc): Normal Function Module
Update:



Function OPEN_FORM 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 'OPEN_FORM'"SAPscript: Open form printing
EXPORTING
* APPLICATION = 'TX' "Application code for interface
* MAIL_RECIPIENT = "MAIL: Recipient object ID
* MAIL_APPL_OBJECT = "MAIL: Application object (type of document)
* RAW_DATA_INTERFACE = '*' "Indicator for Raw Data Interface (RDI)
* SPONUMIV = "Number range number
* ARCHIVE_INDEX = "Archive index
* ARCHIVE_PARAMS = "Archive Parameters
* DEVICE = 'PRINTER' "Device type
* DIALOG = 'X' "Indicator: Dialog for print options
* FORM = ' ' "Form name
* LANGUAGE = SY-LANGU "Language variant of form
* OPTIONS = "Print Options
* MAIL_SENDER = "MAIL: Sender object ID

IMPORTING
LANGUAGE = "Language variant of form
NEW_ARCHIVE_PARAMS = "Archive parameters (return value)
RESULT = "Print options (return values)

EXCEPTIONS
CANCELED = 1 SPOOL_ERROR = 10 CODEPAGE = 11 DEVICE = 2 FORM = 3 OPTIONS = 4 UNCLOSED = 5 MAIL_OPTIONS = 6 ARCHIVE_ERROR = 7 INVALID_FAX_NUMBER = 8 MORE_PARAMS_NEEDED_IN_BATCH = 9
.



IMPORTING Parameters details for OPEN_FORM

APPLICATION - Application code for interface

Data type: TTXOB-TDAPPL
Default: 'TX'
Optional: Yes
Call by Reference: No ( called with pass by value option)

MAIL_RECIPIENT - MAIL: Recipient object ID

Data type: SWOTOBJID
Optional: Yes
Call by Reference: No ( called with pass by value option)

MAIL_APPL_OBJECT - MAIL: Application object (type of document)

Data type: SWOTOBJID
Optional: Yes
Call by Reference: No ( called with pass by value option)

RAW_DATA_INTERFACE - Indicator for Raw Data Interface (RDI)

Data type: C
Default: '*'
Optional: Yes
Call by Reference: No ( called with pass by value option)

SPONUMIV - Number range number

Data type: NRIV-NRRANGENR
Optional: Yes
Call by Reference: No ( called with pass by value option)

ARCHIVE_INDEX - Archive index

Data type: TOA_DARA
Optional: Yes
Call by Reference: No ( called with pass by value option)

ARCHIVE_PARAMS - Archive Parameters

Data type: ARC_PARAMS
Optional: Yes
Call by Reference: No ( called with pass by value option)

DEVICE - Device type

Data type: C
Default: 'PRINTER'
Optional: Yes
Call by Reference: No ( called with pass by value option)

DIALOG - Indicator: Dialog for print options

Data type: C
Default: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)

FORM - Form name

Data type: C
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

LANGUAGE - Language variant of form

Data type: THEAD-TDSPRAS
Default: SY-LANGU
Optional: Yes
Call by Reference: No ( called with pass by value option)

OPTIONS - Print Options

Data type: ITCPO
Optional: Yes
Call by Reference: No ( called with pass by value option)

MAIL_SENDER - MAIL: Sender object ID

Data type: SWOTOBJID
Optional: Yes
Call by Reference: No ( called with pass by value option)

EXPORTING Parameters details for OPEN_FORM

LANGUAGE - Language variant of form

Data type: THEAD-TDSPRAS
Optional: No
Call by Reference: No ( called with pass by value option)

NEW_ARCHIVE_PARAMS - Archive parameters (return value)

Data type: ARC_PARAMS
Optional: No
Call by Reference: No ( called with pass by value option)

RESULT - Print options (return values)

Data type: ITCPP
Optional: No
Call by Reference: No ( called with pass by value option)

EXCEPTIONS details

CANCELED - User cancelled print dialog

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

SPOOL_ERROR - Error at Transfer to Spool

Data type:
Optional: No
Call by Reference: Yes

CODEPAGE - Codepage not allowed

Data type:
Optional: No
Call by Reference: Yes

DEVICE - Device type

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

FORM - Form name

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OPTIONS - Print Options

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

UNCLOSED - A form is still active

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

MAIL_OPTIONS -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

ARCHIVE_ERROR -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

INVALID_FAX_NUMBER -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

MORE_PARAMS_NEEDED_IN_BATCH -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

Copy and paste ABAP code example for OPEN_FORM 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_canceled  TYPE STRING, "   
lv_language  TYPE THEAD-TDSPRAS, "   
lv_application  TYPE TTXOB-TDAPPL, "   'TX'
lv_spool_error  TYPE TTXOB, "   
lv_mail_recipient  TYPE SWOTOBJID, "   
lv_codepage  TYPE SWOTOBJID, "   
lv_mail_appl_object  TYPE SWOTOBJID, "   
lv_raw_data_interface  TYPE C, "   '*'
lv_sponumiv  TYPE NRIV-NRRANGENR, "   
lv_device  TYPE NRIV, "   
lv_archive_index  TYPE TOA_DARA, "   
lv_new_archive_params  TYPE ARC_PARAMS, "   
lv_form  TYPE ARC_PARAMS, "   
lv_result  TYPE ITCPP, "   
lv_archive_params  TYPE ARC_PARAMS, "   
lv_device  TYPE C, "   'PRINTER'
lv_options  TYPE C, "   
lv_dialog  TYPE C, "   'X'
lv_unclosed  TYPE C, "   
lv_form  TYPE C, "   SPACE
lv_mail_options  TYPE C, "   
lv_language  TYPE THEAD-TDSPRAS, "   SY-LANGU
lv_archive_error  TYPE THEAD, "   
lv_options  TYPE ITCPO, "   
lv_invalid_fax_number  TYPE ITCPO, "   
lv_mail_sender  TYPE SWOTOBJID, "   
lv_more_params_needed_in_batch  TYPE SWOTOBJID. "   

  CALL FUNCTION 'OPEN_FORM'  "SAPscript: Open form printing
    EXPORTING
         APPLICATION = lv_application
         MAIL_RECIPIENT = lv_mail_recipient
         MAIL_APPL_OBJECT = lv_mail_appl_object
         RAW_DATA_INTERFACE = lv_raw_data_interface
         SPONUMIV = lv_sponumiv
         ARCHIVE_INDEX = lv_archive_index
         ARCHIVE_PARAMS = lv_archive_params
         DEVICE = lv_device
         DIALOG = lv_dialog
         FORM = lv_form
         LANGUAGE = lv_language
         OPTIONS = lv_options
         MAIL_SENDER = lv_mail_sender
    IMPORTING
         LANGUAGE = lv_language
         NEW_ARCHIVE_PARAMS = lv_new_archive_params
         RESULT = lv_result
    EXCEPTIONS
        CANCELED = 1
        SPOOL_ERROR = 10
        CODEPAGE = 11
        DEVICE = 2
        FORM = 3
        OPTIONS = 4
        UNCLOSED = 5
        MAIL_OPTIONS = 6
        ARCHIVE_ERROR = 7
        INVALID_FAX_NUMBER = 8
        MORE_PARAMS_NEEDED_IN_BATCH = 9
. " OPEN_FORM




ABAP code using 7.40 inline data declarations to call FM OPEN_FORM

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 TDSPRAS FROM THEAD INTO @DATA(ld_language).
 
"SELECT single TDAPPL FROM TTXOB INTO @DATA(ld_application).
DATA(ld_application) = 'TX'.
 
 
 
 
 
DATA(ld_raw_data_interface) = '*'.
 
"SELECT single NRRANGENR FROM NRIV INTO @DATA(ld_sponumiv).
 
 
 
 
 
 
 
DATA(ld_device) = 'PRINTER'.
 
 
DATA(ld_dialog) = 'X'.
 
 
DATA(ld_form) = ' '.
 
 
"SELECT single TDSPRAS FROM THEAD INTO @DATA(ld_language).
DATA(ld_language) = SY-LANGU.
 
 
 
 
 
 


Search for further information about these or an SAP related objects



Comments on this SAP object

What made you want to lookup this SAP object? Please tell us what you were looking for and anything you would like to be included on this page!