SAP ARCHIVE_OBJECT_CHANGE Function Module for
ARCHIVE_OBJECT_CHANGE is a standard archive object change SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, 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 archive object change FM, simply by entering the name ARCHIVE_OBJECT_CHANGE into the relevant SAP transaction such as SE37 or SE38.
Function Group: ARGN
Program Name: SAPLARGN
Main Program: SAPLARGN
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:
Function ARCHIVE_OBJECT_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 'ARCHIVE_OBJECT_CHANGE'".
EXPORTING
* ARCHIVE_PROGRAM = "
* ARCH_COUNT = "
* READ_REPORT = "
* CONTENT_REPO = "
* READARCSYS = "
* BTCEVENTID = "
* BTCEVTPARM = "
* DEL_EVENT = "
* PROD_VARIA = "
* TEST_VARIA = "
* ARCH_LINK = "
* DELETE_PROGRAM = "
* STORE_FRST = "
* FIRST_PROGRAM = "
* LAST_PROGRAM = "
* CALL_DELET = "
* ARCH_GUILT = "
* RELOADFILE = "
* INTERRUPT = "
* ARCH_LAST = "
* LAST_VARIA = "
* DEVCLASS = "
* FOR_ALL_CLIENTS = "
* TRANSPORT_ORDER = "
OBJECT = "
* RETRIEVAL_PROGRAM = "
* FILEINTERN = "
* ARCH_DEL = "
* ARCH_COMIT = "
* ARCH_SIZE = "
TABLES
* USED_CLASSES = "
* CUSTOM_TRANSACTIONS = "
EXCEPTIONS
OBJECT_NOT_FOUND = 1 ACTION_NOT_ALLOWED = 2 TRANSPORT_ORDER_REQUESTED = 3 TRANSPORT_CONNECTION_ERROR = 4 TADIR_ERROR = 5
IMPORTING Parameters details for ARCHIVE_OBJECT_CHANGE
ARCHIVE_PROGRAM -
Data type: ARCH_OBJ-REORGA_PRGOptional: Yes
Call by Reference: Yes
ARCH_COUNT -
Data type: ARCH_USR-ARCH_COUNTOptional: Yes
Call by Reference: Yes
READ_REPORT -
Data type: ARCH_RPRG-READ_PRGOptional: Yes
Call by Reference: Yes
CONTENT_REPO -
Data type: ARCH_USR-CREPOptional: Yes
Call by Reference: Yes
READARCSYS -
Data type: ARCH_USR-READARCSYSOptional: Yes
Call by Reference: Yes
BTCEVENTID -
Data type: ARCH_USR-BTCEVENTIDOptional: Yes
Call by Reference: Yes
BTCEVTPARM -
Data type: ARCH_USR-BTCEVTPARMOptional: Yes
Call by Reference: Yes
DEL_EVENT -
Data type: ARCH_USR-DEL_EVENTOptional: Yes
Call by Reference: Yes
PROD_VARIA -
Data type: ARCH_USR-PROD_VARIAOptional: Yes
Call by Reference: Yes
TEST_VARIA -
Data type: ARCH_USR-TEST_VARIAOptional: Yes
Call by Reference: Yes
ARCH_LINK -
Data type: ARCH_USR-ARCH_LINKOptional: Yes
Call by Reference: Yes
DELETE_PROGRAM -
Data type: ARCH_OBJ-DELETE_PRGOptional: Yes
Call by Reference: Yes
STORE_FRST -
Data type: ARCH_USR-STORE_FRSTOptional: Yes
Call by Reference: Yes
FIRST_PROGRAM -
Data type: ARCH_OBJ-FIRST_PRGOptional: Yes
Call by Reference: Yes
LAST_PROGRAM -
Data type: ARCH_OBJ-LAST_PRGOptional: Yes
Call by Reference: Yes
CALL_DELET -
Data type: ARCH_OBJ-CALL_DELETOptional: Yes
Call by Reference: Yes
ARCH_GUILT -
Data type: ARCH_OBJ-ARCH_GUILTOptional: Yes
Call by Reference: Yes
RELOADFILE -
Data type: ARCH_OBJ-RELOADFILEOptional: Yes
Call by Reference: Yes
INTERRUPT -
Data type: ARCH_OBJ-INTERRUPTOptional: Yes
Call by Reference: Yes
ARCH_LAST -
Data type: ARCH_USR-ARCH_LASTOptional: Yes
Call by Reference: Yes
LAST_VARIA -
Data type: ARCH_USR-LAST_VARIAOptional: Yes
Call by Reference: Yes
DEVCLASS -
Data type: DEVCLASSOptional: Yes
Call by Reference: Yes
FOR_ALL_CLIENTS -
Data type: ARCH_OBJ-ARCH_CLIENOptional: Yes
Call by Reference: Yes
TRANSPORT_ORDER -
Data type: TRKORROptional: Yes
Call by Reference: Yes
OBJECT -
Data type: ARCH_OBJ-OBJECTOptional: No
Call by Reference: Yes
RETRIEVAL_PROGRAM -
Data type: ARCH_OBJ-RETRIE_PRGOptional: Yes
Call by Reference: Yes
FILEINTERN -
Data type: ARCH_USR-FILENAMEOptional: Yes
Call by Reference: Yes
ARCH_DEL -
Data type: ARCH_USR-ARCH_DELOptional: Yes
Call by Reference: Yes
ARCH_COMIT -
Data type: ARCH_USR-ARCH_COMITOptional: Yes
Call by Reference: Yes
ARCH_SIZE -
Data type: ARCH_USR-ARCH_SIZEOptional: Yes
Call by Reference: Yes
TABLES Parameters details for ARCHIVE_OBJECT_CHANGE
USED_CLASSES -
Data type: ARCH_CLSOptional: Yes
Call by Reference: Yes
CUSTOM_TRANSACTIONS -
Data type: SSM_TCODESOptional: Yes
Call by Reference: Yes
EXCEPTIONS details
OBJECT_NOT_FOUND -
Data type:Optional: No
Call by Reference: Yes
ACTION_NOT_ALLOWED -
Data type:Optional: No
Call by Reference: Yes
TRANSPORT_ORDER_REQUESTED -
Data type:Optional: No
Call by Reference: Yes
TRANSPORT_CONNECTION_ERROR -
Data type:Optional: No
Call by Reference: Yes
TADIR_ERROR -
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for ARCHIVE_OBJECT_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_used_classes | TYPE STANDARD TABLE OF ARCH_CLS, " | |||
lv_archive_program | TYPE ARCH_OBJ-REORGA_PRG, " | |||
lv_object_not_found | TYPE ARCH_OBJ, " | |||
lv_arch_count | TYPE ARCH_USR-ARCH_COUNT, " | |||
lv_read_report | TYPE ARCH_RPRG-READ_PRG, " | |||
lv_content_repo | TYPE ARCH_USR-CREP, " | |||
lv_readarcsys | TYPE ARCH_USR-READARCSYS, " | |||
lv_btceventid | TYPE ARCH_USR-BTCEVENTID, " | |||
lv_btcevtparm | TYPE ARCH_USR-BTCEVTPARM, " | |||
lv_del_event | TYPE ARCH_USR-DEL_EVENT, " | |||
lv_prod_varia | TYPE ARCH_USR-PROD_VARIA, " | |||
lv_test_varia | TYPE ARCH_USR-TEST_VARIA, " | |||
lv_arch_link | TYPE ARCH_USR-ARCH_LINK, " | |||
lv_delete_program | TYPE ARCH_OBJ-DELETE_PRG, " | |||
lv_action_not_allowed | TYPE ARCH_OBJ, " | |||
lt_custom_transactions | TYPE STANDARD TABLE OF SSM_TCODES, " | |||
lv_store_frst | TYPE ARCH_USR-STORE_FRST, " | |||
lv_first_program | TYPE ARCH_OBJ-FIRST_PRG, " | |||
lv_last_program | TYPE ARCH_OBJ-LAST_PRG, " | |||
lv_call_delet | TYPE ARCH_OBJ-CALL_DELET, " | |||
lv_arch_guilt | TYPE ARCH_OBJ-ARCH_GUILT, " | |||
lv_reloadfile | TYPE ARCH_OBJ-RELOADFILE, " | |||
lv_interrupt | TYPE ARCH_OBJ-INTERRUPT, " | |||
lv_arch_last | TYPE ARCH_USR-ARCH_LAST, " | |||
lv_last_varia | TYPE ARCH_USR-LAST_VARIA, " | |||
lv_devclass | TYPE DEVCLASS, " | |||
lv_for_all_clients | TYPE ARCH_OBJ-ARCH_CLIEN, " | |||
lv_transport_order_requested | TYPE ARCH_OBJ, " | |||
lv_transport_order | TYPE TRKORR, " | |||
lv_object | TYPE ARCH_OBJ-OBJECT, " | |||
lv_transport_connection_error | TYPE ARCH_OBJ, " | |||
lv_tadir_error | TYPE ARCH_OBJ, " | |||
lv_retrieval_program | TYPE ARCH_OBJ-RETRIE_PRG, " | |||
lv_fileintern | TYPE ARCH_USR-FILENAME, " | |||
lv_arch_del | TYPE ARCH_USR-ARCH_DEL, " | |||
lv_arch_comit | TYPE ARCH_USR-ARCH_COMIT, " | |||
lv_arch_size | TYPE ARCH_USR-ARCH_SIZE. " |
  CALL FUNCTION 'ARCHIVE_OBJECT_CHANGE' " |
EXPORTING | ||
ARCHIVE_PROGRAM | = lv_archive_program | |
ARCH_COUNT | = lv_arch_count | |
READ_REPORT | = lv_read_report | |
CONTENT_REPO | = lv_content_repo | |
READARCSYS | = lv_readarcsys | |
BTCEVENTID | = lv_btceventid | |
BTCEVTPARM | = lv_btcevtparm | |
DEL_EVENT | = lv_del_event | |
PROD_VARIA | = lv_prod_varia | |
TEST_VARIA | = lv_test_varia | |
ARCH_LINK | = lv_arch_link | |
DELETE_PROGRAM | = lv_delete_program | |
STORE_FRST | = lv_store_frst | |
FIRST_PROGRAM | = lv_first_program | |
LAST_PROGRAM | = lv_last_program | |
CALL_DELET | = lv_call_delet | |
ARCH_GUILT | = lv_arch_guilt | |
RELOADFILE | = lv_reloadfile | |
INTERRUPT | = lv_interrupt | |
ARCH_LAST | = lv_arch_last | |
LAST_VARIA | = lv_last_varia | |
DEVCLASS | = lv_devclass | |
FOR_ALL_CLIENTS | = lv_for_all_clients | |
TRANSPORT_ORDER | = lv_transport_order | |
OBJECT | = lv_object | |
RETRIEVAL_PROGRAM | = lv_retrieval_program | |
FILEINTERN | = lv_fileintern | |
ARCH_DEL | = lv_arch_del | |
ARCH_COMIT | = lv_arch_comit | |
ARCH_SIZE | = lv_arch_size | |
TABLES | ||
USED_CLASSES | = lt_used_classes | |
CUSTOM_TRANSACTIONS | = lt_custom_transactions | |
EXCEPTIONS | ||
OBJECT_NOT_FOUND = 1 | ||
ACTION_NOT_ALLOWED = 2 | ||
TRANSPORT_ORDER_REQUESTED = 3 | ||
TRANSPORT_CONNECTION_ERROR = 4 | ||
TADIR_ERROR = 5 | ||
. " ARCHIVE_OBJECT_CHANGE |
ABAP code using 7.40 inline data declarations to call FM ARCHIVE_OBJECT_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 REORGA_PRG FROM ARCH_OBJ INTO @DATA(ld_archive_program). | ||||
"SELECT single ARCH_COUNT FROM ARCH_USR INTO @DATA(ld_arch_count). | ||||
"SELECT single READ_PRG FROM ARCH_RPRG INTO @DATA(ld_read_report). | ||||
"SELECT single CREP FROM ARCH_USR INTO @DATA(ld_content_repo). | ||||
"SELECT single READARCSYS FROM ARCH_USR INTO @DATA(ld_readarcsys). | ||||
"SELECT single BTCEVENTID FROM ARCH_USR INTO @DATA(ld_btceventid). | ||||
"SELECT single BTCEVTPARM FROM ARCH_USR INTO @DATA(ld_btcevtparm). | ||||
"SELECT single DEL_EVENT FROM ARCH_USR INTO @DATA(ld_del_event). | ||||
"SELECT single PROD_VARIA FROM ARCH_USR INTO @DATA(ld_prod_varia). | ||||
"SELECT single TEST_VARIA FROM ARCH_USR INTO @DATA(ld_test_varia). | ||||
"SELECT single ARCH_LINK FROM ARCH_USR INTO @DATA(ld_arch_link). | ||||
"SELECT single DELETE_PRG FROM ARCH_OBJ INTO @DATA(ld_delete_program). | ||||
"SELECT single STORE_FRST FROM ARCH_USR INTO @DATA(ld_store_frst). | ||||
"SELECT single FIRST_PRG FROM ARCH_OBJ INTO @DATA(ld_first_program). | ||||
"SELECT single LAST_PRG FROM ARCH_OBJ INTO @DATA(ld_last_program). | ||||
"SELECT single CALL_DELET FROM ARCH_OBJ INTO @DATA(ld_call_delet). | ||||
"SELECT single ARCH_GUILT FROM ARCH_OBJ INTO @DATA(ld_arch_guilt). | ||||
"SELECT single RELOADFILE FROM ARCH_OBJ INTO @DATA(ld_reloadfile). | ||||
"SELECT single INTERRUPT FROM ARCH_OBJ INTO @DATA(ld_interrupt). | ||||
"SELECT single ARCH_LAST FROM ARCH_USR INTO @DATA(ld_arch_last). | ||||
"SELECT single LAST_VARIA FROM ARCH_USR INTO @DATA(ld_last_varia). | ||||
"SELECT single ARCH_CLIEN FROM ARCH_OBJ INTO @DATA(ld_for_all_clients). | ||||
"SELECT single OBJECT FROM ARCH_OBJ INTO @DATA(ld_object). | ||||
"SELECT single RETRIE_PRG FROM ARCH_OBJ INTO @DATA(ld_retrieval_program). | ||||
"SELECT single FILENAME FROM ARCH_USR INTO @DATA(ld_fileintern). | ||||
"SELECT single ARCH_DEL FROM ARCH_USR INTO @DATA(ld_arch_del). | ||||
"SELECT single ARCH_COMIT FROM ARCH_USR INTO @DATA(ld_arch_comit). | ||||
"SELECT single ARCH_SIZE FROM ARCH_USR INTO @DATA(ld_arch_size). | ||||
Search for further information about these or an SAP related objects