SAP ISU_CUSTOMER_PREPARE_SAVE Function Module for Event DSAVE: Create Standard Customer with Same Number as Business Partner
ISU_CUSTOMER_PREPARE_SAVE is a standard isu customer prepare save SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Event DSAVE: Create Standard Customer with Same Number as Business Partner 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 isu customer prepare save FM, simply by entering the name ISU_CUSTOMER_PREPARE_SAVE into the relevant SAP transaction such as SE37 or SE38.
Function Group: ES00
Program Name: SAPLES00
Main Program: SAPLES00
Appliation area: E
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISU_CUSTOMER_PREPARE_SAVE 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 'ISU_CUSTOMER_PREPARE_SAVE'"Event DSAVE: Create Standard Customer with Same Number as Business Partner.
EXPORTING
* X_MUSTER_KUN = "
X_PARTNER = "
* X_AKTYP = '01' "
* X_PARTNER_DATA = "
* X_INBOUND = "Data Element for BOOLE Domain: TRUE (='X') and FALSE (=' ')
* X_GP_CLEANSING = "
* X_INBOUND_XI = "Data Element for BOOLE Domain: TRUE (='X') and FALSE (=' ')
IMPORTING
Y_MUSTER_KUN = "
Y_CUSTOMER_DATA = "
TABLES
* TX_RLTYPES = "SAP BP: BP Role, BP Role Cat., Diff.Type Value and Validity
* IT_KNVK = "Customer Master Contact Person
* IT_KNVP = "Customer Master Partner Functions
* TX_RLTYPES_OLD = "SAP BP: BP Role, BP Role Cat., Diff.Type Value and Validity
* IT_KNA1 = "Customer Master (General Part)
* IT_KNVV = "Customer Master Sales Data
* IT_KNAS = "Customer Master (VAT Registration Numbers General Section)
* IT_KNB5 = "Customer Master (Dunning Data)
* IT_KNBK = "Customer Master (Bank Details)
* IT_KNVA = "Customer Master Unloading Points
* IT_KNVI = "Customer Master Tax Indicator
EXCEPTIONS
GENERAL_ERROR = 1
IMPORTING Parameters details for ISU_CUSTOMER_PREPARE_SAVE
X_MUSTER_KUN -
Data type: EKUND-MUSTER_KUNOptional: Yes
Call by Reference: No ( called with pass by value option)
X_PARTNER -
Data type: BUT000-PARTNEROptional: No
Call by Reference: No ( called with pass by value option)
X_AKTYP -
Data type: TBZ0K-AKTYPDefault: '01'
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_PARTNER_DATA -
Data type: ISU01_PARTNER_DATAOptional: Yes
Call by Reference: No ( called with pass by value option)
X_INBOUND - Data Element for BOOLE Domain: TRUE (='X') and FALSE (=' ')
Data type: BOOLE-BOOLEOptional: Yes
Call by Reference: Yes
X_GP_CLEANSING -
Data type: BOOLE-BOOLEOptional: Yes
Call by Reference: Yes
X_INBOUND_XI - Data Element for BOOLE Domain: TRUE (='X') and FALSE (=' ')
Data type: BOOLE-BOOLEOptional: Yes
Call by Reference: Yes
EXPORTING Parameters details for ISU_CUSTOMER_PREPARE_SAVE
Y_MUSTER_KUN -
Data type: EKUND-MUSTER_KUNOptional: No
Call by Reference: No ( called with pass by value option)
Y_CUSTOMER_DATA -
Data type: ISU01_CUSTOMER_DATAOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for ISU_CUSTOMER_PREPARE_SAVE
TX_RLTYPES - SAP BP: BP Role, BP Role Cat., Diff.Type Value and Validity
Data type: BUP_PARTNERROLESOptional: Yes
Call by Reference: Yes
IT_KNVK - Customer Master Contact Person
Data type: KNVKOptional: Yes
Call by Reference: Yes
IT_KNVP - Customer Master Partner Functions
Data type: KNVPOptional: Yes
Call by Reference: Yes
TX_RLTYPES_OLD - SAP BP: BP Role, BP Role Cat., Diff.Type Value and Validity
Data type: BUP_PARTNERROLESOptional: Yes
Call by Reference: Yes
IT_KNA1 - Customer Master (General Part)
Data type: KNA1Optional: Yes
Call by Reference: Yes
IT_KNVV - Customer Master Sales Data
Data type: KNVVOptional: Yes
Call by Reference: Yes
IT_KNAS - Customer Master (VAT Registration Numbers General Section)
Data type: KNASOptional: Yes
Call by Reference: Yes
IT_KNB5 - Customer Master (Dunning Data)
Data type: KNB5Optional: Yes
Call by Reference: Yes
IT_KNBK - Customer Master (Bank Details)
Data type: KNBKOptional: Yes
Call by Reference: Yes
IT_KNVA - Customer Master Unloading Points
Data type: KNVAOptional: Yes
Call by Reference: Yes
IT_KNVI - Customer Master Tax Indicator
Data type: KNVIOptional: Yes
Call by Reference: Yes
EXCEPTIONS details
GENERAL_ERROR - General Error
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for ISU_CUSTOMER_PREPARE_SAVE 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: | ||||
| lt_tx_rltypes | TYPE STANDARD TABLE OF BUP_PARTNERROLES, " | |||
| lv_x_muster_kun | TYPE EKUND-MUSTER_KUN, " | |||
| lv_y_muster_kun | TYPE EKUND-MUSTER_KUN, " | |||
| lv_general_error | TYPE EKUND, " | |||
| lt_it_knvk | TYPE STANDARD TABLE OF KNVK, " | |||
| lt_it_knvp | TYPE STANDARD TABLE OF KNVP, " | |||
| lv_x_partner | TYPE BUT000-PARTNER, " | |||
| lt_tx_rltypes_old | TYPE STANDARD TABLE OF BUP_PARTNERROLES, " | |||
| lv_y_customer_data | TYPE ISU01_CUSTOMER_DATA, " | |||
| lt_it_kna1 | TYPE STANDARD TABLE OF KNA1, " | |||
| lv_x_aktyp | TYPE TBZ0K-AKTYP, " '01' | |||
| lt_it_knvv | TYPE STANDARD TABLE OF KNVV, " | |||
| lv_x_partner_data | TYPE ISU01_PARTNER_DATA, " | |||
| lt_it_knas | TYPE STANDARD TABLE OF KNAS, " | |||
| lv_x_inbound | TYPE BOOLE-BOOLE, " | |||
| lt_it_knb5 | TYPE STANDARD TABLE OF KNB5, " | |||
| lv_x_gp_cleansing | TYPE BOOLE-BOOLE, " | |||
| lt_it_knbk | TYPE STANDARD TABLE OF KNBK, " | |||
| lv_x_inbound_xi | TYPE BOOLE-BOOLE, " | |||
| lt_it_knva | TYPE STANDARD TABLE OF KNVA, " | |||
| lt_it_knvi | TYPE STANDARD TABLE OF KNVI. " |
|   CALL FUNCTION 'ISU_CUSTOMER_PREPARE_SAVE' "Event DSAVE: Create Standard Customer with Same Number as Business Partner |
| EXPORTING | ||
| X_MUSTER_KUN | = lv_x_muster_kun | |
| X_PARTNER | = lv_x_partner | |
| X_AKTYP | = lv_x_aktyp | |
| X_PARTNER_DATA | = lv_x_partner_data | |
| X_INBOUND | = lv_x_inbound | |
| X_GP_CLEANSING | = lv_x_gp_cleansing | |
| X_INBOUND_XI | = lv_x_inbound_xi | |
| IMPORTING | ||
| Y_MUSTER_KUN | = lv_y_muster_kun | |
| Y_CUSTOMER_DATA | = lv_y_customer_data | |
| TABLES | ||
| TX_RLTYPES | = lt_tx_rltypes | |
| IT_KNVK | = lt_it_knvk | |
| IT_KNVP | = lt_it_knvp | |
| TX_RLTYPES_OLD | = lt_tx_rltypes_old | |
| IT_KNA1 | = lt_it_kna1 | |
| IT_KNVV | = lt_it_knvv | |
| IT_KNAS | = lt_it_knas | |
| IT_KNB5 | = lt_it_knb5 | |
| IT_KNBK | = lt_it_knbk | |
| IT_KNVA | = lt_it_knva | |
| IT_KNVI | = lt_it_knvi | |
| EXCEPTIONS | ||
| GENERAL_ERROR = 1 | ||
| . " ISU_CUSTOMER_PREPARE_SAVE | ||
ABAP code using 7.40 inline data declarations to call FM ISU_CUSTOMER_PREPARE_SAVE
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 MUSTER_KUN FROM EKUND INTO @DATA(ld_x_muster_kun). | ||||
| "SELECT single MUSTER_KUN FROM EKUND INTO @DATA(ld_y_muster_kun). | ||||
| "SELECT single PARTNER FROM BUT000 INTO @DATA(ld_x_partner). | ||||
| "SELECT single AKTYP FROM TBZ0K INTO @DATA(ld_x_aktyp). | ||||
| DATA(ld_x_aktyp) | = '01'. | |||
| "SELECT single BOOLE FROM BOOLE INTO @DATA(ld_x_inbound). | ||||
| "SELECT single BOOLE FROM BOOLE INTO @DATA(ld_x_gp_cleansing). | ||||
| "SELECT single BOOLE FROM BOOLE INTO @DATA(ld_x_inbound_xi). | ||||
Search for further information about these or an SAP related objects