SAP CP_BD_DIRECT_INPUT_PLAN Function Module for NOTRANSL: Arbeitspläne über Direct Input pflegen
CP_BD_DIRECT_INPUT_PLAN is a standard cp bd direct input plan 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: Arbeitspläne über Direct Input pflegen 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 cp bd direct input plan FM, simply by entering the name CP_BD_DIRECT_INPUT_PLAN into the relevant SAP transaction such as SE37 or SE38.
Function Group: CPBD
Program Name: SAPLCPBD
Main Program: SAPLCPBD
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function CP_BD_DIRECT_INPUT_PLAN 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 'CP_BD_DIRECT_INPUT_PLAN'"NOTRANSL: Arbeitspläne über Direct Input pflegen.
EXPORTING
RC271_DI_IMP = "Group to be processed
* RC27M_DI_IMP = '' "
SAVE_DI_IMP = "Flags
IMPORTING
ERROR_DI_EXP = "Error status record
PLNNR_EXP = "Group
TABLES
PLKO_DI_TAB = "Table of headers to be copied
KNOWL_ALLOC_DI_TAB = "Assignment Information for Relationships
* KNOWL_BASIC_OBJ_DI_TAB = "
* KNOWL_BASIC_DI_TAB = "
* KNOWL_NAMES_OBJ_DI_TAB = "
* KNOWL_NAMES_DI_TAB = "
* KNOWL_DOCUS_OBJ_DI_TAB = "
* KNOWL_DOCUS_DI_TAB = "
* KNOWL_SOURCE_OBJ_DI_TAB = "
* KNOWL_SOURCE_DI_TAB = "
OBJ_NULL_FIELD_TAB = "Table of fields not to be copied
MAPL_DI_TAB = "Table of material allocations to task list to be copied
ERROR_PLAN_DI_TAB = "Table of error status records
ERROR_PLAN_TAB = "Table of error messages
PLPO_DI_TAB = "Table of operations to be copied
PLFL_DI_TAB = "Table of sequences to be copied
PLMZ_DI_TAB = "Table of component allocations to be copied
PLFH_DI_TAB = "Table of production resources/tools to be copied
TEXT_OBJ_DI_TAB = "Table of text objects to be copied
TEXT_DI_TAB = "Table of text lines to be copied
KNOWL_ALLOC_OBJ_DI_TAB = "
IMPORTING Parameters details for CP_BD_DIRECT_INPUT_PLAN
RC271_DI_IMP - Group to be processed
Data type: RC271_DIOptional: No
Call by Reference: No ( called with pass by value option)
RC27M_DI_IMP -
Data type: RC27M_DIDefault: ''
Optional: Yes
Call by Reference: No ( called with pass by value option)
SAVE_DI_IMP - Flags
Data type: SAVE_DIOptional: No
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for CP_BD_DIRECT_INPUT_PLAN
ERROR_DI_EXP - Error status record
Data type: ERROR_DIOptional: No
Call by Reference: No ( called with pass by value option)
PLNNR_EXP - Group
Data type: PLNNROptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for CP_BD_DIRECT_INPUT_PLAN
PLKO_DI_TAB - Table of headers to be copied
Data type: PLKO_DIOptional: No
Call by Reference: No ( called with pass by value option)
KNOWL_ALLOC_DI_TAB - Assignment Information for Relationships
Data type: RCUOB1Optional: No
Call by Reference: No ( called with pass by value option)
KNOWL_BASIC_OBJ_DI_TAB -
Data type: RCUKB1_DIOptional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_BASIC_DI_TAB -
Data type: RCUKB1Optional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_NAMES_OBJ_DI_TAB -
Data type: RCUKBT1_DIOptional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_NAMES_DI_TAB -
Data type: RCUKBT1Optional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_DOCUS_OBJ_DI_TAB -
Data type: RCUKDO1_DIOptional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_DOCUS_DI_TAB -
Data type: RCUKDOC1Optional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_SOURCE_OBJ_DI_TAB -
Data type: RCUKN1_DIOptional: Yes
Call by Reference: No ( called with pass by value option)
KNOWL_SOURCE_DI_TAB -
Data type: RCUKN1Optional: Yes
Call by Reference: No ( called with pass by value option)
OBJ_NULL_FIELD_TAB - Table of fields not to be copied
Data type: OBJ_NFIELDOptional: No
Call by Reference: No ( called with pass by value option)
MAPL_DI_TAB - Table of material allocations to task list to be copied
Data type: MAPL_DIOptional: No
Call by Reference: No ( called with pass by value option)
ERROR_PLAN_DI_TAB - Table of error status records
Data type: ERROR_DIOptional: No
Call by Reference: No ( called with pass by value option)
ERROR_PLAN_TAB - Table of error messages
Data type: CMFMSGOptional: No
Call by Reference: No ( called with pass by value option)
PLPO_DI_TAB - Table of operations to be copied
Data type: PLPO_DIOptional: No
Call by Reference: No ( called with pass by value option)
PLFL_DI_TAB - Table of sequences to be copied
Data type: PLFL_DIOptional: No
Call by Reference: No ( called with pass by value option)
PLMZ_DI_TAB - Table of component allocations to be copied
Data type: PLMZ_DIOptional: No
Call by Reference: No ( called with pass by value option)
PLFH_DI_TAB - Table of production resources/tools to be copied
Data type: PLFH_DIOptional: No
Call by Reference: No ( called with pass by value option)
TEXT_OBJ_DI_TAB - Table of text objects to be copied
Data type: TXT_OBJ_DIOptional: No
Call by Reference: No ( called with pass by value option)
TEXT_DI_TAB - Table of text lines to be copied
Data type: TLINEOptional: No
Call by Reference: No ( called with pass by value option)
KNOWL_ALLOC_OBJ_DI_TAB -
Data type: RCUOB1_DIOptional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for CP_BD_DIRECT_INPUT_PLAN 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_plko_di_tab | TYPE STANDARD TABLE OF PLKO_DI, " | |||
| lv_error_di_exp | TYPE ERROR_DI, " | |||
| lv_rc271_di_imp | TYPE RC271_DI, " | |||
| lt_knowl_alloc_di_tab | TYPE STANDARD TABLE OF RCUOB1, " | |||
| lt_knowl_basic_obj_di_tab | TYPE STANDARD TABLE OF RCUKB1_DI, " | |||
| lt_knowl_basic_di_tab | TYPE STANDARD TABLE OF RCUKB1, " | |||
| lt_knowl_names_obj_di_tab | TYPE STANDARD TABLE OF RCUKBT1_DI, " | |||
| lt_knowl_names_di_tab | TYPE STANDARD TABLE OF RCUKBT1, " | |||
| lt_knowl_docus_obj_di_tab | TYPE STANDARD TABLE OF RCUKDO1_DI, " | |||
| lt_knowl_docus_di_tab | TYPE STANDARD TABLE OF RCUKDOC1, " | |||
| lt_knowl_source_obj_di_tab | TYPE STANDARD TABLE OF RCUKN1_DI, " | |||
| lt_knowl_source_di_tab | TYPE STANDARD TABLE OF RCUKN1, " | |||
| lt_obj_null_field_tab | TYPE STANDARD TABLE OF OBJ_NFIELD, " | |||
| lv_plnnr_exp | TYPE PLNNR, " | |||
| lt_mapl_di_tab | TYPE STANDARD TABLE OF MAPL_DI, " | |||
| lv_rc27m_di_imp | TYPE RC27M_DI, " '' | |||
| lt_error_plan_di_tab | TYPE STANDARD TABLE OF ERROR_DI, " | |||
| lt_error_plan_tab | TYPE STANDARD TABLE OF CMFMSG, " | |||
| lt_plpo_di_tab | TYPE STANDARD TABLE OF PLPO_DI, " | |||
| lv_save_di_imp | TYPE SAVE_DI, " | |||
| lt_plfl_di_tab | TYPE STANDARD TABLE OF PLFL_DI, " | |||
| lt_plmz_di_tab | TYPE STANDARD TABLE OF PLMZ_DI, " | |||
| lt_plfh_di_tab | TYPE STANDARD TABLE OF PLFH_DI, " | |||
| lt_text_obj_di_tab | TYPE STANDARD TABLE OF TXT_OBJ_DI, " | |||
| lt_text_di_tab | TYPE STANDARD TABLE OF TLINE, " | |||
| lt_knowl_alloc_obj_di_tab | TYPE STANDARD TABLE OF RCUOB1_DI. " |
|   CALL FUNCTION 'CP_BD_DIRECT_INPUT_PLAN' "NOTRANSL: Arbeitspläne über Direct Input pflegen |
| EXPORTING | ||
| RC271_DI_IMP | = lv_rc271_di_imp | |
| RC27M_DI_IMP | = lv_rc27m_di_imp | |
| SAVE_DI_IMP | = lv_save_di_imp | |
| IMPORTING | ||
| ERROR_DI_EXP | = lv_error_di_exp | |
| PLNNR_EXP | = lv_plnnr_exp | |
| TABLES | ||
| PLKO_DI_TAB | = lt_plko_di_tab | |
| KNOWL_ALLOC_DI_TAB | = lt_knowl_alloc_di_tab | |
| KNOWL_BASIC_OBJ_DI_TAB | = lt_knowl_basic_obj_di_tab | |
| KNOWL_BASIC_DI_TAB | = lt_knowl_basic_di_tab | |
| KNOWL_NAMES_OBJ_DI_TAB | = lt_knowl_names_obj_di_tab | |
| KNOWL_NAMES_DI_TAB | = lt_knowl_names_di_tab | |
| KNOWL_DOCUS_OBJ_DI_TAB | = lt_knowl_docus_obj_di_tab | |
| KNOWL_DOCUS_DI_TAB | = lt_knowl_docus_di_tab | |
| KNOWL_SOURCE_OBJ_DI_TAB | = lt_knowl_source_obj_di_tab | |
| KNOWL_SOURCE_DI_TAB | = lt_knowl_source_di_tab | |
| OBJ_NULL_FIELD_TAB | = lt_obj_null_field_tab | |
| MAPL_DI_TAB | = lt_mapl_di_tab | |
| ERROR_PLAN_DI_TAB | = lt_error_plan_di_tab | |
| ERROR_PLAN_TAB | = lt_error_plan_tab | |
| PLPO_DI_TAB | = lt_plpo_di_tab | |
| PLFL_DI_TAB | = lt_plfl_di_tab | |
| PLMZ_DI_TAB | = lt_plmz_di_tab | |
| PLFH_DI_TAB | = lt_plfh_di_tab | |
| TEXT_OBJ_DI_TAB | = lt_text_obj_di_tab | |
| TEXT_DI_TAB | = lt_text_di_tab | |
| KNOWL_ALLOC_OBJ_DI_TAB | = lt_knowl_alloc_obj_di_tab | |
| . " CP_BD_DIRECT_INPUT_PLAN | ||
ABAP code using 7.40 inline data declarations to call FM CP_BD_DIRECT_INPUT_PLAN
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_rc27m_di_imp) | = ''. | |||
Search for further information about these or an SAP related objects