SAP ISM_CONTRACTDEMAND_ENQUEUE Function Module for IS-M: Lock Planning Records
ISM_CONTRACTDEMAND_ENQUEUE is a standard ism contractdemand enqueue SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for IS-M: Lock Planning Records 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 ism contractdemand enqueue FM, simply by entering the name ISM_CONTRACTDEMAND_ENQUEUE into the relevant SAP transaction such as SE37 or SE38.
Function Group: JKSDDEMAND01
Program Name: SAPLJKSDDEMAND01
Main Program: SAPLJKSDDEMAND01
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISM_CONTRACTDEMAND_ENQUEUE 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 'ISM_CONTRACTDEMAND_ENQUEUE'"IS-M: Lock Planning Records.
EXPORTING
* IN_VBELN = "Sales and Distribution Document Number
* IN_POSNR = "Item Number of Sales Document
* IN_VERSION = '000 ' "IS-M/SD: Requirements Planning Version
* IN_ISSUE = "Media Issue
* IN_PHASEMDL = "IS-M: Phase Model in Phase Delivery
* IN_PHASENBR = "IS-M: Sequence Number in Phase Delivery
* IN_SCOPE = '2' "Control Lock Behavior When Calling the Update Task
* IN_MODE = 'E' "Lock Mode
EXCEPTIONS
FOREIGN_LOCK = 1 SYSTEM_FAILURE = 2
IMPORTING Parameters details for ISM_CONTRACTDEMAND_ENQUEUE
IN_VBELN - Sales and Distribution Document Number
Data type: VBELNOptional: Yes
Call by Reference: No ( called with pass by value option)
IN_POSNR - Item Number of Sales Document
Data type: POSNROptional: Yes
Call by Reference: No ( called with pass by value option)
IN_VERSION - IS-M/SD: Requirements Planning Version
Data type: JSDVERSIONDefault: '000 '
Optional: No
Call by Reference: No ( called with pass by value option)
IN_ISSUE - Media Issue
Data type: JKSDDEMAND-ISSUEOptional: Yes
Call by Reference: Yes
IN_PHASEMDL - IS-M: Phase Model in Phase Delivery
Data type: JKSDDEMAND-PHASEMDLOptional: Yes
Call by Reference: Yes
IN_PHASENBR - IS-M: Sequence Number in Phase Delivery
Data type: JKSDDEMAND-PHASENBROptional: Yes
Call by Reference: Yes
IN_SCOPE - Control Lock Behavior When Calling the Update Task
Data type: DDENQSCOPEDefault: '2'
Optional: Yes
Call by Reference: Yes
IN_MODE - Lock Mode
Data type: ENQMODEDefault: 'E'
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
FOREIGN_LOCK - Locked by Another User
Data type:Optional: No
Call by Reference: Yes
SYSTEM_FAILURE -
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for ISM_CONTRACTDEMAND_ENQUEUE 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_in_vbeln | TYPE VBELN, " | |||
| lv_foreign_lock | TYPE VBELN, " | |||
| lv_in_posnr | TYPE POSNR, " | |||
| lv_system_failure | TYPE POSNR, " | |||
| lv_in_version | TYPE JSDVERSION, " '000 ' | |||
| lv_in_issue | TYPE JKSDDEMAND-ISSUE, " | |||
| lv_in_phasemdl | TYPE JKSDDEMAND-PHASEMDL, " | |||
| lv_in_phasenbr | TYPE JKSDDEMAND-PHASENBR, " | |||
| lv_in_scope | TYPE DDENQSCOPE, " '2' | |||
| lv_in_mode | TYPE ENQMODE. " 'E' |
|   CALL FUNCTION 'ISM_CONTRACTDEMAND_ENQUEUE' "IS-M: Lock Planning Records |
| EXPORTING | ||
| IN_VBELN | = lv_in_vbeln | |
| IN_POSNR | = lv_in_posnr | |
| IN_VERSION | = lv_in_version | |
| IN_ISSUE | = lv_in_issue | |
| IN_PHASEMDL | = lv_in_phasemdl | |
| IN_PHASENBR | = lv_in_phasenbr | |
| IN_SCOPE | = lv_in_scope | |
| IN_MODE | = lv_in_mode | |
| EXCEPTIONS | ||
| FOREIGN_LOCK = 1 | ||
| SYSTEM_FAILURE = 2 | ||
| . " ISM_CONTRACTDEMAND_ENQUEUE | ||
ABAP code using 7.40 inline data declarations to call FM ISM_CONTRACTDEMAND_ENQUEUE
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.| DATA(ld_in_version) | = '000 '. | |||
| "SELECT single ISSUE FROM JKSDDEMAND INTO @DATA(ld_in_issue). | ||||
| "SELECT single PHASEMDL FROM JKSDDEMAND INTO @DATA(ld_in_phasemdl). | ||||
| "SELECT single PHASENBR FROM JKSDDEMAND INTO @DATA(ld_in_phasenbr). | ||||
| DATA(ld_in_scope) | = '2'. | |||
| DATA(ld_in_mode) | = 'E'. | |||
Search for further information about these or an SAP related objects