SAP PI_EDIT Function Module for NOTRANSL: >>> START <<< Process Instruction Assistant (PI Editor)
PI_EDIT is a standard pi edit SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for NOTRANSL: >>> START <<< Process Instruction Assistant (PI Editor) 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 pi edit FM, simply by entering the name PI_EDIT into the relevant SAP transaction such as SE37 or SE38.
Function Group: COPB
Program Name: SAPLCOPB
Main Program: SAPLCOPB
Appliation area: C
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function PI_EDIT 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 'PI_EDIT'"NOTRANSL: >>> START <<< Process Instruction Assistant (PI Editor).
EXPORTING
ACTIVITY = "Activity indicator (create/change/display)
* PREV_PI = 'X' "Ind.: 'Previoues PI' button is displayed
* NEXT_PI = 'X' "Ind.: 'Next PI' button is displayed
COSTR = "Process instruction category
FTTYP = "Process instruction type
CSKTX = "Short text of process instruction category
* LANGUAGE = SY-LANGU "Language
WERK = "Plant
TDOBJECT = "Application object for all long texts
TDID = "Text ID for all long texts
* AUTO_VALUE_POSSIBLE = ' ' "Ind.: Autom. char. value assignment by caller possible
IMPORTING
OK_CODE = "Return code to calling program
PROCESS_INSTR_UKZ = "Update indicator referring to process instruction
TABLES
CHARACTERISTICS_TAB = "Changing: characteristic table
EXCEPTIONS
INTERNAL_ERROR = 1
IMPORTING Parameters details for PI_EDIT
ACTIVITY - Activity indicator (create/change/display)
Data type: RC27S-AKTYPOptional: No
Call by Reference: No ( called with pass by value option)
PREV_PI - Ind.: 'Previoues PI' button is displayed
Data type: SY-DATARDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
NEXT_PI - Ind.: 'Next PI' button is displayed
Data type: SY-DATARDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
COSTR - Process instruction category
Data type: TC50-COSTROptional: No
Call by Reference: No ( called with pass by value option)
FTTYP - Process instruction type
Data type: TC50-FTTYPOptional: No
Call by Reference: No ( called with pass by value option)
CSKTX - Short text of process instruction category
Data type: TC50T-CSKTXOptional: No
Call by Reference: No ( called with pass by value option)
LANGUAGE - Language
Data type: SY-LANGUDefault: SY-LANGU
Optional: Yes
Call by Reference: No ( called with pass by value option)
WERK - Plant
Data type: TC50-WERKSOptional: No
Call by Reference: No ( called with pass by value option)
TDOBJECT - Application object for all long texts
Data type: THEAD-TDOBJECTOptional: No
Call by Reference: No ( called with pass by value option)
TDID - Text ID for all long texts
Data type: THEAD-TDIDOptional: No
Call by Reference: No ( called with pass by value option)
AUTO_VALUE_POSSIBLE - Ind.: Autom. char. value assignment by caller possible
Data type: SY-DATARDefault: ' '
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for PI_EDIT
OK_CODE - Return code to calling program
Data type: RC27S-OK_CODEOptional: No
Call by Reference: No ( called with pass by value option)
PROCESS_INSTR_UKZ - Update indicator referring to process instruction
Data type: SY-DATAROptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for PI_EDIT
CHARACTERISTICS_TAB - Changing: characteristic table
Data type: RPIE_CHEXTOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
INTERNAL_ERROR - Internal error
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for PI_EDIT 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_ok_code | TYPE RC27S-OK_CODE, " | |||
| lv_activity | TYPE RC27S-AKTYP, " | |||
| lv_internal_error | TYPE RC27S, " | |||
| lt_characteristics_tab | TYPE STANDARD TABLE OF RPIE_CHEXT, " | |||
| lv_prev_pi | TYPE SY-DATAR, " 'X' | |||
| lv_next_pi | TYPE SY-DATAR, " 'X' | |||
| lv_costr | TYPE TC50-COSTR, " | |||
| lv_process_instr_ukz | TYPE SY-DATAR, " | |||
| lv_fttyp | TYPE TC50-FTTYP, " | |||
| lv_csktx | TYPE TC50T-CSKTX, " | |||
| lv_language | TYPE SY-LANGU, " SY-LANGU | |||
| lv_werk | TYPE TC50-WERKS, " | |||
| lv_tdobject | TYPE THEAD-TDOBJECT, " | |||
| lv_tdid | TYPE THEAD-TDID, " | |||
| lv_auto_value_possible | TYPE SY-DATAR. " ' ' |
|   CALL FUNCTION 'PI_EDIT' "NOTRANSL: >>> START <<< Process Instruction Assistant (PI Editor) |
| EXPORTING | ||
| ACTIVITY | = lv_activity | |
| PREV_PI | = lv_prev_pi | |
| NEXT_PI | = lv_next_pi | |
| COSTR | = lv_costr | |
| FTTYP | = lv_fttyp | |
| CSKTX | = lv_csktx | |
| LANGUAGE | = lv_language | |
| WERK | = lv_werk | |
| TDOBJECT | = lv_tdobject | |
| TDID | = lv_tdid | |
| AUTO_VALUE_POSSIBLE | = lv_auto_value_possible | |
| IMPORTING | ||
| OK_CODE | = lv_ok_code | |
| PROCESS_INSTR_UKZ | = lv_process_instr_ukz | |
| TABLES | ||
| CHARACTERISTICS_TAB | = lt_characteristics_tab | |
| EXCEPTIONS | ||
| INTERNAL_ERROR = 1 | ||
| . " PI_EDIT | ||
ABAP code using 7.40 inline data declarations to call FM PI_EDIT
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 OK_CODE FROM RC27S INTO @DATA(ld_ok_code). | ||||
| "SELECT single AKTYP FROM RC27S INTO @DATA(ld_activity). | ||||
| "SELECT single DATAR FROM SY INTO @DATA(ld_prev_pi). | ||||
| DATA(ld_prev_pi) | = 'X'. | |||
| "SELECT single DATAR FROM SY INTO @DATA(ld_next_pi). | ||||
| DATA(ld_next_pi) | = 'X'. | |||
| "SELECT single COSTR FROM TC50 INTO @DATA(ld_costr). | ||||
| "SELECT single DATAR FROM SY INTO @DATA(ld_process_instr_ukz). | ||||
| "SELECT single FTTYP FROM TC50 INTO @DATA(ld_fttyp). | ||||
| "SELECT single CSKTX FROM TC50T INTO @DATA(ld_csktx). | ||||
| "SELECT single LANGU FROM SY INTO @DATA(ld_language). | ||||
| DATA(ld_language) | = SY-LANGU. | |||
| "SELECT single WERKS FROM TC50 INTO @DATA(ld_werk). | ||||
| "SELECT single TDOBJECT FROM THEAD INTO @DATA(ld_tdobject). | ||||
| "SELECT single TDID FROM THEAD INTO @DATA(ld_tdid). | ||||
| "SELECT single DATAR FROM SY INTO @DATA(ld_auto_value_possible). | ||||
| DATA(ld_auto_value_possible) | = ' '. | |||
Search for further information about these or an SAP related objects