SAP CO_ZV_ORDER_POST Function Module for NOTRANSL: Schlussroutine Auftrag hinzufuegen / aendern
CO_ZV_ORDER_POST is a standard co zv order post 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: Schlussroutine Auftrag hinzufuegen / aendern 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 co zv order post FM, simply by entering the name CO_ZV_ORDER_POST into the relevant SAP transaction such as SE37 or SE38.
Function Group: COZV
Program Name: SAPLCOZV
Main Program: SAPLCOZV
Appliation area: C
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function CO_ZV_ORDER_POST 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 'CO_ZV_ORDER_POST'"NOTRANSL: Schlussroutine Auftrag hinzufuegen / aendern.
EXPORTING
* COMMIT_FLAG = ' ' "Indicator, that really needed from commit
* PRSEL_IMP = ' ' "Control table print
* T496D_MIX_IMP = ' ' "Control table print list control
TRANS_TYP = "Transaction type (create/change)
* NO_GUI_MESSAGE = ' ' "Indicator: No GUI messages displayed
* FLG_REL_TRANS = ' ' "Indicator: Call up takes place from release transaction
* FLG_CALLED_FROM_PDC = ' ' "Indicator: From external data input
* FLG_PROOF = ' ' "Indicator: Purchase requisitions checked
* REQ_EXISTS = 'X' "Indicator: To process purchase requisitions
* NO_DIALOG = ' ' "Indicator: Process no dialogs
* FLG_NO_CLASSIFICATION = ' ' "
* EXT_FLG = ' ' "Direct call outside of CO
* FLG_NO_TEXT_PROCESS = ' ' "
* FLG_CHECK_ONLY = "
* FLG_NO_PROOF = "
* FLG_NO_SCHEDULING = ' ' "
* FLG_NO_CALCULATION = ' ' "
* FLG_PROJECT_VERSION = 'X' "
* FLG_CALLER_CJ9K = ' ' "
* FLG_NO_BUDGET_CHECK = ' ' "
* IV_COMMIT_WORK_AND_WAIT = ' ' "
* FLG_ACT = ' ' "Indicator actual posting (currently, confirmation)
* FLG_NO_STAT = ' ' "
* FLG_USER = ' ' "Indicator: No update changer in the order
* FLG_WAIT = ' ' "Changes online (print)
* NETZPLAN = ' ' "Network to be changed
* AUFNR_SINGLE = ' ' "Order to be posted individually
* PROCESS_AT_COMMIT = ' ' "Function module is called from commit routine
IMPORTING
FIRST_AUFNR = "Number of first processed order/network
FIRST_AUTYP = "Category of first order
E_FLG_LVS_ERROR = "
TABLES
* CAUFVD_NUM_EXP = "Order numbers temporary/new
* OBJN_TAB_EXP = "
EXCEPTIONS
NO_CHANGE = 1 UPDATE_REJECT = 2 BUDGET_REJECT = 3 TEXT_ERROR = 4
Customer Function user exits
Below is a list of CUSTOMER FUNCTION exit user exits that are available within this program and maybe relevant for this FM.EXIT_SAPLCOZV_001 User Exit for Checking or Changing Header Fields During Order Maintenance
IMPORTING Parameters details for CO_ZV_ORDER_POST
COMMIT_FLAG - Indicator, that really needed from commit
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PRSEL_IMP - Control table print
Data type: PRSELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
T496D_MIX_IMP - Control table print list control
Data type: T496DDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
TRANS_TYP - Transaction type (create/change)
Data type: TC10-TRTYPOptional: No
Call by Reference: No ( called with pass by value option)
NO_GUI_MESSAGE - Indicator: No GUI messages displayed
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_REL_TRANS - Indicator: Call up takes place from release transaction
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_CALLED_FROM_PDC - Indicator: From external data input
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_PROOF - Indicator: Purchase requisitions checked
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
REQ_EXISTS - Indicator: To process purchase requisitions
Data type: RC27X-FLG_SELDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
NO_DIALOG - Indicator: Process no dialogs
Data type: RC27X-FLG_SELDefault: ' '
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_CLASSIFICATION -
Data type: RC27X-FLG_SELDefault: ' '
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXT_FLG - Direct call outside of CO
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_TEXT_PROCESS -
Data type: RC27X-FLG_SELDefault: ' '
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_CHECK_ONLY -
Data type: RC27X-FLG_SELOptional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_PROOF -
Data type: RC27X-FLG_SELOptional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_SCHEDULING -
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_CALCULATION -
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_PROJECT_VERSION -
Data type: RC27X-FLG_SELDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_CALLER_CJ9K -
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_BUDGET_CHECK -
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
IV_COMMIT_WORK_AND_WAIT -
Data type: FLAGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_ACT - Indicator actual posting (currently, confirmation)
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_NO_STAT -
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_USER - Indicator: No update changer in the order
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FLG_WAIT - Changes online (print)
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
NETZPLAN - Network to be changed
Data type: CAUFV-AUFNRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
AUFNR_SINGLE - Order to be posted individually
Data type: CAUFV-AUFNRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PROCESS_AT_COMMIT - Function module is called from commit routine
Data type: RC27X-FLG_SELDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for CO_ZV_ORDER_POST
FIRST_AUFNR - Number of first processed order/network
Data type: AUFK-AUFNROptional: No
Call by Reference: No ( called with pass by value option)
FIRST_AUTYP - Category of first order
Data type: AUFK-AUTYPOptional: No
Call by Reference: No ( called with pass by value option)
E_FLG_LVS_ERROR -
Data type: FLAGOptional: No
Call by Reference: Yes
TABLES Parameters details for CO_ZV_ORDER_POST
CAUFVD_NUM_EXP - Order numbers temporary/new
Data type: CAUFVDNOptional: Yes
Call by Reference: No ( called with pass by value option)
OBJN_TAB_EXP -
Data type: OBJN_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
NO_CHANGE - There Was No Change
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
UPDATE_REJECT - Update terminated/refused
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
BUDGET_REJECT - Budget exceeded
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
TEXT_ERROR -
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for CO_ZV_ORDER_POST 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_no_change | TYPE STRING, " | |||
| lv_commit_flag | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_first_aufnr | TYPE AUFK-AUFNR, " | |||
| lt_caufvd_num_exp | TYPE STANDARD TABLE OF CAUFVDN, " | |||
| lv_prsel_imp | TYPE PRSEL, " SPACE | |||
| lv_t496d_mix_imp | TYPE T496D, " SPACE | |||
| lv_trans_typ | TYPE TC10-TRTYP, " | |||
| lv_no_gui_message | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_rel_trans | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_called_from_pdc | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_proof | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_req_exists | TYPE RC27X-FLG_SEL, " 'X' | |||
| lv_no_dialog | TYPE RC27X-FLG_SEL, " ' ' | |||
| lv_flg_no_classification | TYPE RC27X-FLG_SEL, " ' ' | |||
| lv_ext_flg | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_first_autyp | TYPE AUFK-AUTYP, " | |||
| lt_objn_tab_exp | TYPE STANDARD TABLE OF OBJN_TAB, " | |||
| lv_update_reject | TYPE OBJN_TAB, " | |||
| lv_flg_no_text_process | TYPE RC27X-FLG_SEL, " ' ' | |||
| lv_flg_check_only | TYPE RC27X-FLG_SEL, " | |||
| lv_flg_no_proof | TYPE RC27X-FLG_SEL, " | |||
| lv_flg_no_scheduling | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_no_calculation | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_project_version | TYPE RC27X-FLG_SEL, " 'X' | |||
| lv_flg_caller_cj9k | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_no_budget_check | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_iv_commit_work_and_wait | TYPE FLAG, " SPACE | |||
| lv_flg_act | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_budget_reject | TYPE RC27X, " | |||
| lv_e_flg_lvs_error | TYPE FLAG, " | |||
| lv_text_error | TYPE FLAG, " | |||
| lv_flg_no_stat | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_user | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_flg_wait | TYPE RC27X-FLG_SEL, " SPACE | |||
| lv_netzplan | TYPE CAUFV-AUFNR, " SPACE | |||
| lv_aufnr_single | TYPE CAUFV-AUFNR, " SPACE | |||
| lv_process_at_commit | TYPE RC27X-FLG_SEL. " SPACE |
|   CALL FUNCTION 'CO_ZV_ORDER_POST' "NOTRANSL: Schlussroutine Auftrag hinzufuegen / aendern |
| EXPORTING | ||
| COMMIT_FLAG | = lv_commit_flag | |
| PRSEL_IMP | = lv_prsel_imp | |
| T496D_MIX_IMP | = lv_t496d_mix_imp | |
| TRANS_TYP | = lv_trans_typ | |
| NO_GUI_MESSAGE | = lv_no_gui_message | |
| FLG_REL_TRANS | = lv_flg_rel_trans | |
| FLG_CALLED_FROM_PDC | = lv_flg_called_from_pdc | |
| FLG_PROOF | = lv_flg_proof | |
| REQ_EXISTS | = lv_req_exists | |
| NO_DIALOG | = lv_no_dialog | |
| FLG_NO_CLASSIFICATION | = lv_flg_no_classification | |
| EXT_FLG | = lv_ext_flg | |
| FLG_NO_TEXT_PROCESS | = lv_flg_no_text_process | |
| FLG_CHECK_ONLY | = lv_flg_check_only | |
| FLG_NO_PROOF | = lv_flg_no_proof | |
| FLG_NO_SCHEDULING | = lv_flg_no_scheduling | |
| FLG_NO_CALCULATION | = lv_flg_no_calculation | |
| FLG_PROJECT_VERSION | = lv_flg_project_version | |
| FLG_CALLER_CJ9K | = lv_flg_caller_cj9k | |
| FLG_NO_BUDGET_CHECK | = lv_flg_no_budget_check | |
| IV_COMMIT_WORK_AND_WAIT | = lv_iv_commit_work_and_wait | |
| FLG_ACT | = lv_flg_act | |
| FLG_NO_STAT | = lv_flg_no_stat | |
| FLG_USER | = lv_flg_user | |
| FLG_WAIT | = lv_flg_wait | |
| NETZPLAN | = lv_netzplan | |
| AUFNR_SINGLE | = lv_aufnr_single | |
| PROCESS_AT_COMMIT | = lv_process_at_commit | |
| IMPORTING | ||
| FIRST_AUFNR | = lv_first_aufnr | |
| FIRST_AUTYP | = lv_first_autyp | |
| E_FLG_LVS_ERROR | = lv_e_flg_lvs_error | |
| TABLES | ||
| CAUFVD_NUM_EXP | = lt_caufvd_num_exp | |
| OBJN_TAB_EXP | = lt_objn_tab_exp | |
| EXCEPTIONS | ||
| NO_CHANGE = 1 | ||
| UPDATE_REJECT = 2 | ||
| BUDGET_REJECT = 3 | ||
| TEXT_ERROR = 4 | ||
| . " CO_ZV_ORDER_POST | ||
ABAP code using 7.40 inline data declarations to call FM CO_ZV_ORDER_POST
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 FLG_SEL FROM RC27X INTO @DATA(ld_commit_flag). | ||||
| DATA(ld_commit_flag) | = ' '. | |||
| "SELECT single AUFNR FROM AUFK INTO @DATA(ld_first_aufnr). | ||||
| DATA(ld_prsel_imp) | = ' '. | |||
| DATA(ld_t496d_mix_imp) | = ' '. | |||
| "SELECT single TRTYP FROM TC10 INTO @DATA(ld_trans_typ). | ||||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_no_gui_message). | ||||
| DATA(ld_no_gui_message) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_rel_trans). | ||||
| DATA(ld_flg_rel_trans) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_called_from_pdc). | ||||
| DATA(ld_flg_called_from_pdc) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_proof). | ||||
| DATA(ld_flg_proof) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_req_exists). | ||||
| DATA(ld_req_exists) | = 'X'. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_no_dialog). | ||||
| DATA(ld_no_dialog) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_classification). | ||||
| DATA(ld_flg_no_classification) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_ext_flg). | ||||
| DATA(ld_ext_flg) | = ' '. | |||
| "SELECT single AUTYP FROM AUFK INTO @DATA(ld_first_autyp). | ||||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_text_process). | ||||
| DATA(ld_flg_no_text_process) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_check_only). | ||||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_proof). | ||||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_scheduling). | ||||
| DATA(ld_flg_no_scheduling) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_calculation). | ||||
| DATA(ld_flg_no_calculation) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_project_version). | ||||
| DATA(ld_flg_project_version) | = 'X'. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_caller_cj9k). | ||||
| DATA(ld_flg_caller_cj9k) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_budget_check). | ||||
| DATA(ld_flg_no_budget_check) | = ' '. | |||
| DATA(ld_iv_commit_work_and_wait) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_act). | ||||
| DATA(ld_flg_act) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_no_stat). | ||||
| DATA(ld_flg_no_stat) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_user). | ||||
| DATA(ld_flg_user) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_flg_wait). | ||||
| DATA(ld_flg_wait) | = ' '. | |||
| "SELECT single AUFNR FROM CAUFV INTO @DATA(ld_netzplan). | ||||
| DATA(ld_netzplan) | = ' '. | |||
| "SELECT single AUFNR FROM CAUFV INTO @DATA(ld_aufnr_single). | ||||
| DATA(ld_aufnr_single) | = ' '. | |||
| "SELECT single FLG_SEL FROM RC27X INTO @DATA(ld_process_at_commit). | ||||
| DATA(ld_process_at_commit) | = ' '. | |||
Search for further information about these or an SAP related objects