SAP CVAPI_DOC_MAINTAIN Function Module for DE-EN-LANG-SWITCH-NO-TRANSLATION
CVAPI_DOC_MAINTAIN is a standard cvapi doc maintain SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for DE-EN-LANG-SWITCH-NO-TRANSLATION 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 cvapi doc maintain FM, simply by entering the name CVAPI_DOC_MAINTAIN into the relevant SAP transaction such as SE37 or SE38.
Function Group: CVAPI01
Program Name: SAPLCVAPI01
Main Program: SAPLCVAPI01
Appliation area: M
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function CVAPI_DOC_MAINTAIN 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 'CVAPI_DOC_MAINTAIN'"DE-EN-LANG-SWITCH-NO-TRANSLATION.
EXPORTING
* PF_HOSTNAME = ' ' "Rechnername des Frontends
* NO_EXIT_CALL = ' ' "
PS_DRAW = "Dokumentdaten
* PF_STATUSLOG = ' ' "Eintrag Statusprotokoll
* PF_REVLEVEL = "Revisionsstand
* PS_API_CONTROL = "API-Kontrollstruktur
* PF_FTP_DEST = ' ' "FTP-Destination
* PF_HTTP_DEST = ' ' "HTTP-Destination
* PF_CONTENT_PROVIDE = ' ' "How is the content of the original transferred
* PF_ACTION = "
IMPORTING
PSX_MESSAGE = "Messages
PFX_DOKAR = "Dokumentart
PFX_DOKNR = "Dokumentnummer
PFX_DOKVR = "Dokumentversion
PFX_DOKTL = "Teildokument
TABLES
* PT_DRAD_X = "Objektverknüpfungen
* PT_DRAT_X = "Kurztexte
* PT_FILES_X = "Originale
* PT_COMP_X = "Komponenten
* DOCUMENTDESCRIPTIONS = "
* PT_CONTENT = "Originals for documents
IMPORTING Parameters details for CVAPI_DOC_MAINTAIN
PF_HOSTNAME - Rechnername des Frontends
Data type: TDWD-NTADRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
NO_EXIT_CALL -
Data type: BAPI_DOC_AUX-FLAGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PS_DRAW - Dokumentdaten
Data type: DRAWOptional: No
Call by Reference: No ( called with pass by value option)
PF_STATUSLOG - Eintrag Statusprotokoll
Data type: DRAP-PROTFDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PF_REVLEVEL - Revisionsstand
Data type: MCDOK-REVLVOptional: Yes
Call by Reference: No ( called with pass by value option)
PS_API_CONTROL - API-Kontrollstruktur
Data type: CVAPI_API_CONTROLOptional: Yes
Call by Reference: No ( called with pass by value option)
PF_FTP_DEST - FTP-Destination
Data type: RFCDES-RFCDESTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PF_HTTP_DEST - HTTP-Destination
Data type: RFCDES-RFCDESTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PF_CONTENT_PROVIDE - How is the content of the original transferred
Data type: MCDOK-CONTENT_PROVIDEDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PF_ACTION -
Data type: STRINGOptional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for CVAPI_DOC_MAINTAIN
PSX_MESSAGE - Messages
Data type: MESSAGESOptional: No
Call by Reference: No ( called with pass by value option)
PFX_DOKAR - Dokumentart
Data type: DRAW-DOKAROptional: No
Call by Reference: No ( called with pass by value option)
PFX_DOKNR - Dokumentnummer
Data type: DRAW-DOKNROptional: No
Call by Reference: No ( called with pass by value option)
PFX_DOKVR - Dokumentversion
Data type: DRAW-DOKVROptional: No
Call by Reference: No ( called with pass by value option)
PFX_DOKTL - Teildokument
Data type: DRAW-DOKTLOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for CVAPI_DOC_MAINTAIN
PT_DRAD_X - Objektverknüpfungen
Data type: DMS_DB_DRADOptional: Yes
Call by Reference: Yes
PT_DRAT_X - Kurztexte
Data type: DMS_DB_DRATOptional: Yes
Call by Reference: Yes
PT_FILES_X - Originale
Data type: CVAPI_DOC_FILEOptional: Yes
Call by Reference: Yes
PT_COMP_X - Komponenten
Data type: CVAPI_DOC_COMPOptional: Yes
Call by Reference: Yes
DOCUMENTDESCRIPTIONS -
Data type: BAPI_DOC_DRATOptional: Yes
Call by Reference: Yes
PT_CONTENT - Originals for documents
Data type: DRAOOptional: Yes
Call by Reference: Yes
Copy and paste ABAP code example for CVAPI_DOC_MAINTAIN 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_pt_drad_x | TYPE STANDARD TABLE OF DMS_DB_DRAD, " | |||
| lv_pf_hostname | TYPE TDWD-NTADR, " SPACE | |||
| lv_psx_message | TYPE MESSAGES, " | |||
| lv_no_exit_call | TYPE BAPI_DOC_AUX-FLAG, " SPACE | |||
| lv_ps_draw | TYPE DRAW, " | |||
| lv_pfx_dokar | TYPE DRAW-DOKAR, " | |||
| lt_pt_drat_x | TYPE STANDARD TABLE OF DMS_DB_DRAT, " | |||
| lv_pfx_doknr | TYPE DRAW-DOKNR, " | |||
| lt_pt_files_x | TYPE STANDARD TABLE OF CVAPI_DOC_FILE, " | |||
| lv_pf_statuslog | TYPE DRAP-PROTF, " SPACE | |||
| lv_pfx_dokvr | TYPE DRAW-DOKVR, " | |||
| lt_pt_comp_x | TYPE STANDARD TABLE OF CVAPI_DOC_COMP, " | |||
| lv_pf_revlevel | TYPE MCDOK-REVLV, " | |||
| lv_pfx_doktl | TYPE DRAW-DOKTL, " | |||
| lv_ps_api_control | TYPE CVAPI_API_CONTROL, " | |||
| lt_documentdescriptions | TYPE STANDARD TABLE OF BAPI_DOC_DRAT, " | |||
| lt_pt_content | TYPE STANDARD TABLE OF DRAO, " | |||
| lv_pf_ftp_dest | TYPE RFCDES-RFCDEST, " SPACE | |||
| lv_pf_http_dest | TYPE RFCDES-RFCDEST, " SPACE | |||
| lv_pf_content_provide | TYPE MCDOK-CONTENT_PROVIDE, " SPACE | |||
| lv_pf_action | TYPE STRING. " |
|   CALL FUNCTION 'CVAPI_DOC_MAINTAIN' "DE-EN-LANG-SWITCH-NO-TRANSLATION |
| EXPORTING | ||
| PF_HOSTNAME | = lv_pf_hostname | |
| NO_EXIT_CALL | = lv_no_exit_call | |
| PS_DRAW | = lv_ps_draw | |
| PF_STATUSLOG | = lv_pf_statuslog | |
| PF_REVLEVEL | = lv_pf_revlevel | |
| PS_API_CONTROL | = lv_ps_api_control | |
| PF_FTP_DEST | = lv_pf_ftp_dest | |
| PF_HTTP_DEST | = lv_pf_http_dest | |
| PF_CONTENT_PROVIDE | = lv_pf_content_provide | |
| PF_ACTION | = lv_pf_action | |
| IMPORTING | ||
| PSX_MESSAGE | = lv_psx_message | |
| PFX_DOKAR | = lv_pfx_dokar | |
| PFX_DOKNR | = lv_pfx_doknr | |
| PFX_DOKVR | = lv_pfx_dokvr | |
| PFX_DOKTL | = lv_pfx_doktl | |
| TABLES | ||
| PT_DRAD_X | = lt_pt_drad_x | |
| PT_DRAT_X | = lt_pt_drat_x | |
| PT_FILES_X | = lt_pt_files_x | |
| PT_COMP_X | = lt_pt_comp_x | |
| DOCUMENTDESCRIPTIONS | = lt_documentdescriptions | |
| PT_CONTENT | = lt_pt_content | |
| . " CVAPI_DOC_MAINTAIN | ||
ABAP code using 7.40 inline data declarations to call FM CVAPI_DOC_MAINTAIN
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 NTADR FROM TDWD INTO @DATA(ld_pf_hostname). | ||||
| DATA(ld_pf_hostname) | = ' '. | |||
| "SELECT single FLAG FROM BAPI_DOC_AUX INTO @DATA(ld_no_exit_call). | ||||
| DATA(ld_no_exit_call) | = ' '. | |||
| "SELECT single DOKAR FROM DRAW INTO @DATA(ld_pfx_dokar). | ||||
| "SELECT single DOKNR FROM DRAW INTO @DATA(ld_pfx_doknr). | ||||
| "SELECT single PROTF FROM DRAP INTO @DATA(ld_pf_statuslog). | ||||
| DATA(ld_pf_statuslog) | = ' '. | |||
| "SELECT single DOKVR FROM DRAW INTO @DATA(ld_pfx_dokvr). | ||||
| "SELECT single REVLV FROM MCDOK INTO @DATA(ld_pf_revlevel). | ||||
| "SELECT single DOKTL FROM DRAW INTO @DATA(ld_pfx_doktl). | ||||
| "SELECT single RFCDEST FROM RFCDES INTO @DATA(ld_pf_ftp_dest). | ||||
| DATA(ld_pf_ftp_dest) | = ' '. | |||
| "SELECT single RFCDEST FROM RFCDES INTO @DATA(ld_pf_http_dest). | ||||
| DATA(ld_pf_http_dest) | = ' '. | |||
| "SELECT single CONTENT_PROVIDE FROM MCDOK INTO @DATA(ld_pf_content_provide). | ||||
| DATA(ld_pf_content_provide) | = ' '. | |||
Search for further information about these or an SAP related objects