SAP ASSET_MASTERRECORD_MAINTENANCE Function Module for
ASSET_MASTERRECORD_MAINTENANCE is a standard asset masterrecord maintenance 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 asset masterrecord maintenance FM, simply by entering the name ASSET_MASTERRECORD_MAINTENANCE into the relevant SAP transaction such as SE37 or SE38.
Function Group: AIST
Program Name: SAPLAIST
Main Program: SAPLAIST
Appliation area: A
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:
Function ASSET_MASTERRECORD_MAINTENANCE 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 'ASSET_MASTERRECORD_MAINTENANCE'".
EXPORTING
* I_ANFORD_BILD = 'X' "
* I_DATEN = ' ' "
* I_DIALOG = ' ' "
* I_DYNNR = '0098' "
* I_INVEST_MASN = ' ' "
* I_OHNE_SICHERN = 'X' "
* I_OLD_DATA = ' ' "Legacy Data Transfer
* I_RANL1 = ' ' "
* I_RANL2 = ' ' "
* I_RBUKR = ' ' "
* I_NASSETS = '001' "
* I_ANLI = ' ' "
* I_REPID = 'SAPLAIST' "
* I_TRTYP = 'H' "
* I_UNTNR = ' ' "
* I_XNACH = ' ' "
* I_OHNE_VERBUCHUNG = ' ' "
* I_COMPLEX = ' ' "
* I_PRUEF = ' ' "
* I_DEAKT = '0' "
* I_EQUI = 'X' "Automatic Maintenance of Equipment from Asset Master Record
* I_FUND_INVEST = ' ' "
* I_ANLKL = ' ' "Asset Class
* I_ANLA = "
* I_ANLAX = "
* I_ANLZ = "
* I_ANLZX = "
* I_ANLV = "
* I_ANLVX = "
* I_ANLI2 = "
* I_ANLI2X = "
* I_ANLU = "
* I_ANLHTXT = "Asset main number text
* I_ANLKL_FIX = ' ' "
* I_ANLHTXTX = "Checkbox
* I_REORG_CHANGE = "Asset Change Due to Reorganization
* I_ANLN1 = ' ' "
* I_ANLN2 = ' ' "
* I_BUKRS = ' ' "Company Code
* I_BUKRS_FIX = ' ' "
* I_GSBER_FIX = ' ' "
IMPORTING
E_ANLN1 = "
E_ANLN2 = "
E_PARM_FLAG = "
E_BUKRS = "Company Code
E_ERROR = "
E_ANLH = "
E_ANLA = "
E_ANLV = "
E_ANLU = "
TABLES
* T_ANLZ = "
* T_ANLB = "
* T_ANLBX = "
* T_ANLC = "
* T_NEW_ASSETS = "
EXCEPTIONS
NO_ANLKL = 1 TRTYP_INVALID = 2 ASSET_INCOMPLETE = 3
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_SAPLAIST_001 Exchange Number Range
EXIT_SAPLAIST_002 Transfer Data for User Subscreens
EXIT_SAPLAIST_003 Transfer of User-Defined Fields to SAP Master Data Transactions
IMPORTING Parameters details for ASSET_MASTERRECORD_MAINTENANCE
I_ANFORD_BILD -
Data type: T020-KOARTDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_DATEN -
Data type: RAIST01Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_DIALOG -
Data type: T020-AKTYPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_DYNNR -
Data type: SY-DYNNRDefault: '0098'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_INVEST_MASN -
Data type: T020-AKTYPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_OHNE_SICHERN -
Data type: T020-KOARTDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_OLD_DATA - Legacy Data Transfer
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_RANL1 -
Data type: RA02S-RANL1Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_RANL2 -
Data type: RA02S-RANL2Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_RBUKR -
Data type: RA02S-RBUKRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_NASSETS -
Data type: RA02S-NASSETSDefault: '001'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLI -
Data type: ANLIDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_REPID -
Data type: SY-REPIDDefault: 'SAPLAIST'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_TRTYP -
Data type: T020-AKTYPDefault: 'H'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_UNTNR -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_XNACH -
Data type: RA02S-XNACHDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_OHNE_VERBUCHUNG -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_COMPLEX -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_PRUEF -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_DEAKT -
Data type: T020-KOARTDefault: '0'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_EQUI - Automatic Maintenance of Equipment from Asset Master Record
Data type: EQUI_MAINTAINDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_FUND_INVEST -
Data type: T020-AKTYPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLKL - Asset Class
Data type: ANKA-ANLKLDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLA -
Data type: ANLAOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLAX -
Data type: ANLAXOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLZ -
Data type: ANLZOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLZX -
Data type: ANLZXOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLV -
Data type: ANLVOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLVX -
Data type: ANLVXOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLI2 -
Data type: ANLIOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLI2X -
Data type: ANLIXOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLU -
Data type: ANLUOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLHTXT - Asset main number text
Data type: ANLH-ANLHTXTOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLKL_FIX -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLHTXTX - Checkbox
Data type: XFELDOptional: Yes
Call by Reference: No ( called with pass by value option)
I_REORG_CHANGE - Asset Change Due to Reorganization
Data type: FAA_REORG_CHANGEOptional: Yes
Call by Reference: Yes
I_ANLN1 -
Data type: ANLA-ANLN1Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ANLN2 -
Data type: ANLA-ANLN2Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_BUKRS - Company Code
Data type: ANLA-BUKRSDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_BUKRS_FIX -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_GSBER_FIX -
Data type: T020-KOARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for ASSET_MASTERRECORD_MAINTENANCE
E_ANLN1 -
Data type: ANLA-ANLN1Optional: No
Call by Reference: No ( called with pass by value option)
E_ANLN2 -
Data type: ANLA-ANLN2Optional: No
Call by Reference: No ( called with pass by value option)
E_PARM_FLAG -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
E_BUKRS - Company Code
Data type: ANLA-BUKRSOptional: No
Call by Reference: No ( called with pass by value option)
E_ERROR -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
E_ANLH -
Data type: ANLHOptional: No
Call by Reference: No ( called with pass by value option)
E_ANLA -
Data type: ANLAOptional: No
Call by Reference: No ( called with pass by value option)
E_ANLV -
Data type: ANLVOptional: No
Call by Reference: No ( called with pass by value option)
E_ANLU -
Data type: ANLUOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for ASSET_MASTERRECORD_MAINTENANCE
T_ANLZ -
Data type: ANLZOptional: Yes
Call by Reference: No ( called with pass by value option)
T_ANLB -
Data type: ANLBOptional: Yes
Call by Reference: No ( called with pass by value option)
T_ANLBX -
Data type: ANLBXOptional: Yes
Call by Reference: No ( called with pass by value option)
T_ANLC -
Data type: ANLCOptional: Yes
Call by Reference: No ( called with pass by value option)
T_NEW_ASSETS -
Data type: RAIST06Optional: Yes
Call by Reference: Yes
EXCEPTIONS details
NO_ANLKL -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
TRTYP_INVALID -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
ASSET_INCOMPLETE -
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for ASSET_MASTERRECORD_MAINTENANCE 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_t_anlz | TYPE STANDARD TABLE OF ANLZ, " | |||
lv_e_anln1 | TYPE ANLA-ANLN1, " | |||
lv_no_anlkl | TYPE ANLA, " | |||
lv_i_anford_bild | TYPE T020-KOART, " 'X' | |||
lv_i_daten | TYPE RAIST01, " SPACE | |||
lv_i_dialog | TYPE T020-AKTYP, " SPACE | |||
lv_i_dynnr | TYPE SY-DYNNR, " '0098' | |||
lv_i_invest_masn | TYPE T020-AKTYP, " SPACE | |||
lv_i_ohne_sichern | TYPE T020-KOART, " 'X' | |||
lv_i_old_data | TYPE T020-KOART, " SPACE | |||
lv_i_ranl1 | TYPE RA02S-RANL1, " SPACE | |||
lv_i_ranl2 | TYPE RA02S-RANL2, " SPACE | |||
lv_i_rbukr | TYPE RA02S-RBUKR, " SPACE | |||
lv_i_nassets | TYPE RA02S-NASSETS, " '001' | |||
lv_i_anli | TYPE ANLI, " SPACE | |||
lt_t_anlb | TYPE STANDARD TABLE OF ANLB, " | |||
lv_e_anln2 | TYPE ANLA-ANLN2, " | |||
lv_trtyp_invalid | TYPE ANLA, " | |||
lv_i_repid | TYPE SY-REPID, " 'SAPLAIST' | |||
lv_i_trtyp | TYPE T020-AKTYP, " 'H' | |||
lv_i_untnr | TYPE T020-KOART, " SPACE | |||
lv_i_xnach | TYPE RA02S-XNACH, " SPACE | |||
lv_i_ohne_verbuchung | TYPE T020-KOART, " SPACE | |||
lv_i_complex | TYPE T020-KOART, " SPACE | |||
lv_i_pruef | TYPE T020-KOART, " SPACE | |||
lv_i_deakt | TYPE T020-KOART, " '0' | |||
lv_i_equi | TYPE EQUI_MAINTAIN, " 'X' | |||
lv_i_fund_invest | TYPE T020-AKTYP, " SPACE | |||
lv_i_anlkl | TYPE ANKA-ANLKL, " SPACE | |||
lt_t_anlbx | TYPE STANDARD TABLE OF ANLBX, " | |||
lv_e_parm_flag | TYPE ANLBX, " | |||
lv_asset_incomplete | TYPE ANLBX, " | |||
lv_i_anla | TYPE ANLA, " | |||
lv_i_anlax | TYPE ANLAX, " | |||
lv_i_anlz | TYPE ANLZ, " | |||
lv_i_anlzx | TYPE ANLZX, " | |||
lv_i_anlv | TYPE ANLV, " | |||
lv_i_anlvx | TYPE ANLVX, " | |||
lv_i_anli2 | TYPE ANLI, " | |||
lv_i_anli2x | TYPE ANLIX, " | |||
lv_i_anlu | TYPE ANLU, " | |||
lv_i_anlhtxt | TYPE ANLH-ANLHTXT, " | |||
lt_t_anlc | TYPE STANDARD TABLE OF ANLC, " | |||
lv_e_bukrs | TYPE ANLA-BUKRS, " | |||
lv_i_anlkl_fix | TYPE T020-KOART, " SPACE | |||
lv_i_anlhtxtx | TYPE XFELD, " | |||
lv_i_reorg_change | TYPE FAA_REORG_CHANGE, " | |||
lv_e_error | TYPE FAA_REORG_CHANGE, " | |||
lv_i_anln1 | TYPE ANLA-ANLN1, " SPACE | |||
lt_t_new_assets | TYPE STANDARD TABLE OF RAIST06, " | |||
lv_e_anlh | TYPE ANLH, " | |||
lv_i_anln2 | TYPE ANLA-ANLN2, " SPACE | |||
lv_e_anla | TYPE ANLA, " | |||
lv_i_bukrs | TYPE ANLA-BUKRS, " SPACE | |||
lv_e_anlv | TYPE ANLV, " | |||
lv_i_bukrs_fix | TYPE T020-KOART, " SPACE | |||
lv_e_anlu | TYPE ANLU, " | |||
lv_i_gsber_fix | TYPE T020-KOART. " SPACE |
  CALL FUNCTION 'ASSET_MASTERRECORD_MAINTENANCE' " |
EXPORTING | ||
I_ANFORD_BILD | = lv_i_anford_bild | |
I_DATEN | = lv_i_daten | |
I_DIALOG | = lv_i_dialog | |
I_DYNNR | = lv_i_dynnr | |
I_INVEST_MASN | = lv_i_invest_masn | |
I_OHNE_SICHERN | = lv_i_ohne_sichern | |
I_OLD_DATA | = lv_i_old_data | |
I_RANL1 | = lv_i_ranl1 | |
I_RANL2 | = lv_i_ranl2 | |
I_RBUKR | = lv_i_rbukr | |
I_NASSETS | = lv_i_nassets | |
I_ANLI | = lv_i_anli | |
I_REPID | = lv_i_repid | |
I_TRTYP | = lv_i_trtyp | |
I_UNTNR | = lv_i_untnr | |
I_XNACH | = lv_i_xnach | |
I_OHNE_VERBUCHUNG | = lv_i_ohne_verbuchung | |
I_COMPLEX | = lv_i_complex | |
I_PRUEF | = lv_i_pruef | |
I_DEAKT | = lv_i_deakt | |
I_EQUI | = lv_i_equi | |
I_FUND_INVEST | = lv_i_fund_invest | |
I_ANLKL | = lv_i_anlkl | |
I_ANLA | = lv_i_anla | |
I_ANLAX | = lv_i_anlax | |
I_ANLZ | = lv_i_anlz | |
I_ANLZX | = lv_i_anlzx | |
I_ANLV | = lv_i_anlv | |
I_ANLVX | = lv_i_anlvx | |
I_ANLI2 | = lv_i_anli2 | |
I_ANLI2X | = lv_i_anli2x | |
I_ANLU | = lv_i_anlu | |
I_ANLHTXT | = lv_i_anlhtxt | |
I_ANLKL_FIX | = lv_i_anlkl_fix | |
I_ANLHTXTX | = lv_i_anlhtxtx | |
I_REORG_CHANGE | = lv_i_reorg_change | |
I_ANLN1 | = lv_i_anln1 | |
I_ANLN2 | = lv_i_anln2 | |
I_BUKRS | = lv_i_bukrs | |
I_BUKRS_FIX | = lv_i_bukrs_fix | |
I_GSBER_FIX | = lv_i_gsber_fix | |
IMPORTING | ||
E_ANLN1 | = lv_e_anln1 | |
E_ANLN2 | = lv_e_anln2 | |
E_PARM_FLAG | = lv_e_parm_flag | |
E_BUKRS | = lv_e_bukrs | |
E_ERROR | = lv_e_error | |
E_ANLH | = lv_e_anlh | |
E_ANLA | = lv_e_anla | |
E_ANLV | = lv_e_anlv | |
E_ANLU | = lv_e_anlu | |
TABLES | ||
T_ANLZ | = lt_t_anlz | |
T_ANLB | = lt_t_anlb | |
T_ANLBX | = lt_t_anlbx | |
T_ANLC | = lt_t_anlc | |
T_NEW_ASSETS | = lt_t_new_assets | |
EXCEPTIONS | ||
NO_ANLKL = 1 | ||
TRTYP_INVALID = 2 | ||
ASSET_INCOMPLETE = 3 | ||
. " ASSET_MASTERRECORD_MAINTENANCE |
ABAP code using 7.40 inline data declarations to call FM ASSET_MASTERRECORD_MAINTENANCE
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 ANLN1 FROM ANLA INTO @DATA(ld_e_anln1). | ||||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_anford_bild). | ||||
DATA(ld_i_anford_bild) | = 'X'. | |||
DATA(ld_i_daten) | = ' '. | |||
"SELECT single AKTYP FROM T020 INTO @DATA(ld_i_dialog). | ||||
DATA(ld_i_dialog) | = ' '. | |||
"SELECT single DYNNR FROM SY INTO @DATA(ld_i_dynnr). | ||||
DATA(ld_i_dynnr) | = '0098'. | |||
"SELECT single AKTYP FROM T020 INTO @DATA(ld_i_invest_masn). | ||||
DATA(ld_i_invest_masn) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_ohne_sichern). | ||||
DATA(ld_i_ohne_sichern) | = 'X'. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_old_data). | ||||
DATA(ld_i_old_data) | = ' '. | |||
"SELECT single RANL1 FROM RA02S INTO @DATA(ld_i_ranl1). | ||||
DATA(ld_i_ranl1) | = ' '. | |||
"SELECT single RANL2 FROM RA02S INTO @DATA(ld_i_ranl2). | ||||
DATA(ld_i_ranl2) | = ' '. | |||
"SELECT single RBUKR FROM RA02S INTO @DATA(ld_i_rbukr). | ||||
DATA(ld_i_rbukr) | = ' '. | |||
"SELECT single NASSETS FROM RA02S INTO @DATA(ld_i_nassets). | ||||
DATA(ld_i_nassets) | = '001'. | |||
DATA(ld_i_anli) | = ' '. | |||
"SELECT single ANLN2 FROM ANLA INTO @DATA(ld_e_anln2). | ||||
"SELECT single REPID FROM SY INTO @DATA(ld_i_repid). | ||||
DATA(ld_i_repid) | = 'SAPLAIST'. | |||
"SELECT single AKTYP FROM T020 INTO @DATA(ld_i_trtyp). | ||||
DATA(ld_i_trtyp) | = 'H'. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_untnr). | ||||
DATA(ld_i_untnr) | = ' '. | |||
"SELECT single XNACH FROM RA02S INTO @DATA(ld_i_xnach). | ||||
DATA(ld_i_xnach) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_ohne_verbuchung). | ||||
DATA(ld_i_ohne_verbuchung) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_complex). | ||||
DATA(ld_i_complex) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_pruef). | ||||
DATA(ld_i_pruef) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_deakt). | ||||
DATA(ld_i_deakt) | = '0'. | |||
DATA(ld_i_equi) | = 'X'. | |||
"SELECT single AKTYP FROM T020 INTO @DATA(ld_i_fund_invest). | ||||
DATA(ld_i_fund_invest) | = ' '. | |||
"SELECT single ANLKL FROM ANKA INTO @DATA(ld_i_anlkl). | ||||
DATA(ld_i_anlkl) | = ' '. | |||
"SELECT single ANLHTXT FROM ANLH INTO @DATA(ld_i_anlhtxt). | ||||
"SELECT single BUKRS FROM ANLA INTO @DATA(ld_e_bukrs). | ||||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_anlkl_fix). | ||||
DATA(ld_i_anlkl_fix) | = ' '. | |||
"SELECT single ANLN1 FROM ANLA INTO @DATA(ld_i_anln1). | ||||
DATA(ld_i_anln1) | = ' '. | |||
"SELECT single ANLN2 FROM ANLA INTO @DATA(ld_i_anln2). | ||||
DATA(ld_i_anln2) | = ' '. | |||
"SELECT single BUKRS FROM ANLA INTO @DATA(ld_i_bukrs). | ||||
DATA(ld_i_bukrs) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_bukrs_fix). | ||||
DATA(ld_i_bukrs_fix) | = ' '. | |||
"SELECT single KOART FROM T020 INTO @DATA(ld_i_gsber_fix). | ||||
DATA(ld_i_gsber_fix) | = ' '. | |||
Search for further information about these or an SAP related objects