SAP ALE_CONTRACT_CHANGE Function Module for BAPI -> IDoc: ALE_CONTRACT_CHANGE
ALE_CONTRACT_CHANGE is a standard ale contract change SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for BAPI -> IDoc: ALE_CONTRACT_CHANGE 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 ale contract change FM, simply by entering the name ALE_CONTRACT_CHANGE into the relevant SAP transaction such as SE37 or SE38.
Function Group: 2014
Program Name: SAPL2014
Main Program: SAPL2014
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ALE_CONTRACT_CHANGE 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 'ALE_CONTRACT_CHANGE'"BAPI -> IDoc: ALE_CONTRACT_CHANGE.
EXPORTING
PURCHASINGDOCUMENT = "Purchasing Document Number
* HEADER = "Header Data Outline Agreement
* HEADERX = "Header Data Change Parameter Outline Agreement
* VENDORADDRESS = "
* TESTRUN = "Single-Character Indicator
* TECHNICALDATA = "
* OBJ_TYPE = 'BUS2014' "
* SERIAL_ID = '0' "
TABLES
* ITEM = "Item Data
* ITEMCONDITIONX = "
* ITEMCONDSCALEVALUE = "
* ITEMCONDSCALEQUAN = "
* ITEMTEXT = "
* HEADERTEXT = "
* HEADCONDVALIDITY = "
* HEADCONDVALIDITYX = "
* HEADCONDITION = "
* HEADCONDITIONX = "
* HEADCONDSCALEVAL = "
* ITEMX = "Change Parameter - Item Data
* HEADCONDSCALEQUAN = "
* PARTNER = "Partner Data
* PARTNERX = "Table Type: Change Parameter Partner Outline Agreement
* RELEASEDOCU = "
* EXTENSIONIN = "ExtensionIn (Customer Enhancement)
RECEIVERS = "
* COMMUNICATION_DOCUMENTS = "
* APPLICATION_OBJECTS = "
* ACCOUNT = "Account Assignment Data
* ACCOUNTPROFITSEGMENT = "Account Assignment - Profitability Segment Calculation
* ACCOUNTX = "Change Parameter - Account Assignment Data
* DELIVERYADDRESS = "
* ITEMCONDVALIDITY = "
* ITEMCONDVALIDITYX = "
* ITEMCONDITION = "
EXCEPTIONS
ERROR_CREATING_IDOCS = 1
IMPORTING Parameters details for ALE_CONTRACT_CHANGE
PURCHASINGDOCUMENT - Purchasing Document Number
Data type: BAPIMEOUTHEADER-NUMBEROptional: No
Call by Reference: No ( called with pass by value option)
HEADER - Header Data Outline Agreement
Data type: BAPIMEOUTHEADEROptional: Yes
Call by Reference: No ( called with pass by value option)
HEADERX - Header Data Change Parameter Outline Agreement
Data type: BAPIMEOUTHEADERXOptional: Yes
Call by Reference: No ( called with pass by value option)
VENDORADDRESS -
Data type: BAPIMEOUTADDRVENDOROptional: Yes
Call by Reference: No ( called with pass by value option)
TESTRUN - Single-Character Indicator
Data type: BAPIFLAG-BAPIFLAGOptional: Yes
Call by Reference: No ( called with pass by value option)
TECHNICALDATA -
Data type: BAPIMEOUTTECHOptional: Yes
Call by Reference: No ( called with pass by value option)
OBJ_TYPE -
Data type: SERIAL-OBJ_TYPEDefault: 'BUS2014'
Optional: Yes
Call by Reference: No ( called with pass by value option)
SERIAL_ID -
Data type: SERIAL-CHNUMDefault: '0'
Optional: Yes
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for ALE_CONTRACT_CHANGE
ITEM - Item Data
Data type: BAPIMEOUTITEMOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMCONDITIONX -
Data type: BAPIMEOUTCONDITIONXOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMCONDSCALEVALUE -
Data type: BAPIMEOUTITEMSCALEVALOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMCONDSCALEQUAN -
Data type: BAPIMEOUTITEMSCALEQUANOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMTEXT -
Data type: BAPIMEOUTITEMTEXTOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADERTEXT -
Data type: BAPIMEOUTTEXTOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADCONDVALIDITY -
Data type: BAPIMEOUTHEADVALIDITYOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADCONDVALIDITYX -
Data type: BAPIMEOUTHEADVALIDITYXOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADCONDITION -
Data type: BAPIMEOUTHEADERCONDOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADCONDITIONX -
Data type: BAPIMEOUTHEADERCONDXOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADCONDSCALEVAL -
Data type: BAPIMEOUTSCALEVALUEOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMX - Change Parameter - Item Data
Data type: BAPIMEOUTITEMXOptional: Yes
Call by Reference: No ( called with pass by value option)
HEADCONDSCALEQUAN -
Data type: BAPIMEOUTSCALEOptional: Yes
Call by Reference: No ( called with pass by value option)
PARTNER - Partner Data
Data type: BAPIMEOUTPARTNEROptional: Yes
Call by Reference: No ( called with pass by value option)
PARTNERX - Table Type: Change Parameter Partner Outline Agreement
Data type: BAPIMEOUTPARTNERXOptional: Yes
Call by Reference: No ( called with pass by value option)
RELEASEDOCU -
Data type: BAPIMEOUTRELEASEINFOOptional: Yes
Call by Reference: No ( called with pass by value option)
EXTENSIONIN - ExtensionIn (Customer Enhancement)
Data type: BAPIPAREXOptional: Yes
Call by Reference: No ( called with pass by value option)
RECEIVERS -
Data type: BDI_LOGSYSOptional: No
Call by Reference: No ( called with pass by value option)
COMMUNICATION_DOCUMENTS -
Data type: SWOTOBJIDOptional: Yes
Call by Reference: No ( called with pass by value option)
APPLICATION_OBJECTS -
Data type: SWOTOBJIDOptional: Yes
Call by Reference: No ( called with pass by value option)
ACCOUNT - Account Assignment Data
Data type: BAPIMEOUTACCOUNTOptional: Yes
Call by Reference: No ( called with pass by value option)
ACCOUNTPROFITSEGMENT - Account Assignment - Profitability Segment Calculation
Data type: BAPIMEOUTPROFITSEGMENTOptional: Yes
Call by Reference: No ( called with pass by value option)
ACCOUNTX - Change Parameter - Account Assignment Data
Data type: BAPIMEOUTACCOUNTXOptional: Yes
Call by Reference: No ( called with pass by value option)
DELIVERYADDRESS -
Data type: BAPIMEOUTADDRDELIVERYOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMCONDVALIDITY -
Data type: BAPIMEOUTVALIDITYOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMCONDVALIDITYX -
Data type: BAPIMEOUTVALIDITYXOptional: Yes
Call by Reference: No ( called with pass by value option)
ITEMCONDITION -
Data type: BAPIMEOUTCONDITIONOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
ERROR_CREATING_IDOCS -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for ALE_CONTRACT_CHANGE 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_item | TYPE STANDARD TABLE OF BAPIMEOUTITEM, " | |||
| lv_purchasingdocument | TYPE BAPIMEOUTHEADER-NUMBER, " | |||
| lv_error_creating_idocs | TYPE BAPIMEOUTHEADER, " | |||
| lt_itemconditionx | TYPE STANDARD TABLE OF BAPIMEOUTCONDITIONX, " | |||
| lt_itemcondscalevalue | TYPE STANDARD TABLE OF BAPIMEOUTITEMSCALEVAL, " | |||
| lt_itemcondscalequan | TYPE STANDARD TABLE OF BAPIMEOUTITEMSCALEQUAN, " | |||
| lt_itemtext | TYPE STANDARD TABLE OF BAPIMEOUTITEMTEXT, " | |||
| lt_headertext | TYPE STANDARD TABLE OF BAPIMEOUTTEXT, " | |||
| lt_headcondvalidity | TYPE STANDARD TABLE OF BAPIMEOUTHEADVALIDITY, " | |||
| lt_headcondvalidityx | TYPE STANDARD TABLE OF BAPIMEOUTHEADVALIDITYX, " | |||
| lt_headcondition | TYPE STANDARD TABLE OF BAPIMEOUTHEADERCOND, " | |||
| lt_headconditionx | TYPE STANDARD TABLE OF BAPIMEOUTHEADERCONDX, " | |||
| lt_headcondscaleval | TYPE STANDARD TABLE OF BAPIMEOUTSCALEVALUE, " | |||
| lt_itemx | TYPE STANDARD TABLE OF BAPIMEOUTITEMX, " | |||
| lv_header | TYPE BAPIMEOUTHEADER, " | |||
| lt_headcondscalequan | TYPE STANDARD TABLE OF BAPIMEOUTSCALE, " | |||
| lt_partner | TYPE STANDARD TABLE OF BAPIMEOUTPARTNER, " | |||
| lt_partnerx | TYPE STANDARD TABLE OF BAPIMEOUTPARTNERX, " | |||
| lt_releasedocu | TYPE STANDARD TABLE OF BAPIMEOUTRELEASEINFO, " | |||
| lt_extensionin | TYPE STANDARD TABLE OF BAPIPAREX, " | |||
| lt_receivers | TYPE STANDARD TABLE OF BDI_LOGSYS, " | |||
| lt_communication_documents | TYPE STANDARD TABLE OF SWOTOBJID, " | |||
| lt_application_objects | TYPE STANDARD TABLE OF SWOTOBJID, " | |||
| lt_account | TYPE STANDARD TABLE OF BAPIMEOUTACCOUNT, " | |||
| lv_headerx | TYPE BAPIMEOUTHEADERX, " | |||
| lv_vendoraddress | TYPE BAPIMEOUTADDRVENDOR, " | |||
| lt_accountprofitsegment | TYPE STANDARD TABLE OF BAPIMEOUTPROFITSEGMENT, " | |||
| lv_testrun | TYPE BAPIFLAG-BAPIFLAG, " | |||
| lt_accountx | TYPE STANDARD TABLE OF BAPIMEOUTACCOUNTX, " | |||
| lv_technicaldata | TYPE BAPIMEOUTTECH, " | |||
| lt_deliveryaddress | TYPE STANDARD TABLE OF BAPIMEOUTADDRDELIVERY, " | |||
| lv_obj_type | TYPE SERIAL-OBJ_TYPE, " 'BUS2014' | |||
| lt_itemcondvalidity | TYPE STANDARD TABLE OF BAPIMEOUTVALIDITY, " | |||
| lv_serial_id | TYPE SERIAL-CHNUM, " '0' | |||
| lt_itemcondvalidityx | TYPE STANDARD TABLE OF BAPIMEOUTVALIDITYX, " | |||
| lt_itemcondition | TYPE STANDARD TABLE OF BAPIMEOUTCONDITION. " |
|   CALL FUNCTION 'ALE_CONTRACT_CHANGE' "BAPI -> IDoc: ALE_CONTRACT_CHANGE |
| EXPORTING | ||
| PURCHASINGDOCUMENT | = lv_purchasingdocument | |
| HEADER | = lv_header | |
| HEADERX | = lv_headerx | |
| VENDORADDRESS | = lv_vendoraddress | |
| TESTRUN | = lv_testrun | |
| TECHNICALDATA | = lv_technicaldata | |
| OBJ_TYPE | = lv_obj_type | |
| SERIAL_ID | = lv_serial_id | |
| TABLES | ||
| ITEM | = lt_item | |
| ITEMCONDITIONX | = lt_itemconditionx | |
| ITEMCONDSCALEVALUE | = lt_itemcondscalevalue | |
| ITEMCONDSCALEQUAN | = lt_itemcondscalequan | |
| ITEMTEXT | = lt_itemtext | |
| HEADERTEXT | = lt_headertext | |
| HEADCONDVALIDITY | = lt_headcondvalidity | |
| HEADCONDVALIDITYX | = lt_headcondvalidityx | |
| HEADCONDITION | = lt_headcondition | |
| HEADCONDITIONX | = lt_headconditionx | |
| HEADCONDSCALEVAL | = lt_headcondscaleval | |
| ITEMX | = lt_itemx | |
| HEADCONDSCALEQUAN | = lt_headcondscalequan | |
| PARTNER | = lt_partner | |
| PARTNERX | = lt_partnerx | |
| RELEASEDOCU | = lt_releasedocu | |
| EXTENSIONIN | = lt_extensionin | |
| RECEIVERS | = lt_receivers | |
| COMMUNICATION_DOCUMENTS | = lt_communication_documents | |
| APPLICATION_OBJECTS | = lt_application_objects | |
| ACCOUNT | = lt_account | |
| ACCOUNTPROFITSEGMENT | = lt_accountprofitsegment | |
| ACCOUNTX | = lt_accountx | |
| DELIVERYADDRESS | = lt_deliveryaddress | |
| ITEMCONDVALIDITY | = lt_itemcondvalidity | |
| ITEMCONDVALIDITYX | = lt_itemcondvalidityx | |
| ITEMCONDITION | = lt_itemcondition | |
| EXCEPTIONS | ||
| ERROR_CREATING_IDOCS = 1 | ||
| . " ALE_CONTRACT_CHANGE | ||
ABAP code using 7.40 inline data declarations to call FM ALE_CONTRACT_CHANGE
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 NUMBER FROM BAPIMEOUTHEADER INTO @DATA(ld_purchasingdocument). | ||||
| "SELECT single BAPIFLAG FROM BAPIFLAG INTO @DATA(ld_testrun). | ||||
| "SELECT single OBJ_TYPE FROM SERIAL INTO @DATA(ld_obj_type). | ||||
| DATA(ld_obj_type) | = 'BUS2014'. | |||
| "SELECT single CHNUM FROM SERIAL INTO @DATA(ld_serial_id). | ||||
| DATA(ld_serial_id) | = '0'. | |||
Search for further information about these or an SAP related objects