2008 Aug 21 7:57 AM
hello
experts
i have a requirement to change fixed assets. if i want 2 do it with bapi
how shall i proceed?
i have got the bapi name bapi_fixed asset change
but as i am new 2 bapi i don know the respective steps
plz guide me
thanx in advance
BAPI's are nothing but same as the function module so if you know how to paas import export and table parameter then you can use the BAPI.
2008 Aug 21 8:00 AM
Hi Friend,
Check this link for detailed information on BAPI_FIXEDASSET_CHANGE:
http://abap.wikiprog.com/wiki/BAPI_FIXEDASSET_CHANGE
Regards,
Chandra Sekhar
2008 Aug 22 7:13 AM
BAPI's are nothing but same as the function module so if you know how to paas import export and table parameter then you can use the BAPI.
2008 Aug 22 11:19 AM
Hi ,
Try this code
*&---------------------------------------------------------------------*
*& Report ZMILA_OSS_0000170346_2007
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zmila_oss_0000170346_2007.
PARAMETERS:
* Daten sind ausgelegt für Mdt 004
p_bukrs TYPE bukrs DEFAULT '1000',
p_anln1 TYPE anln1 DEFAULT '3474',
p_c1 TYPE xfeld RADIOBUTTON GROUP comm ,
p_c2 TYPE xfeld RADIOBUTTON GROUP comm DEFAULT 'X',
p_012 TYPE xfeld RADIOBUTTON GROUP ordr DEFAULT 'X',
p_120 TYPE xfeld RADIOBUTTON GROUP ordr,
p_201 TYPE xfeld RADIOBUTTON GROUP ordr.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK ovw WITH FRAME TITLE ovw.
SELECTION-SCREEN COMMENT /1(75) comm0.
SELECTION-SCREEN COMMENT /1(75) comm1.
SELECTION-SCREEN COMMENT /1(75) comm2.
SELECTION-SCREEN END OF BLOCK ovw.
INITIALIZATION.
ovw = 'TEST-DATEN (Mdt 004)'.
comm0 = 'Bukrs ist immer 1000'.
comm1 = 'Anlage ohne Equi.: 3474'.
comm2 = 'Anlage mit Equi. : 3475'.
DATA:
lt_anlz TYPE TABLE OF anlz,
ls_anlz TYPE anlz,
lv_anln2 TYPE anln2,
ls_tdd TYPE bapi1022_feglg003,
ls_tddx TYPE bapi1022_feglg003x,
ls_return TYPE bapiret2.
SELECT * FROM anlz INTO TABLE lt_anlz
WHERE bukrs EQ p_bukrs
AND anln1 EQ p_anln1.
LOOP AT lt_anlz INTO ls_anlz.
* todo: nur aktuelles intervall ziehen
ENDLOOP.
DO 3 TIMES.
IF sy-index = 1.
IF p_012 = 'X'. lv_anln2 = '0000'. ENDIF.
IF p_120 = 'X'. lv_anln2 = '0001'. ENDIF.
IF p_201 = 'X'. lv_anln2 = '0002'. ENDIF.
ENDIF.
IF sy-index = 2.
IF p_012 = 'X'. lv_anln2 = '0001'. ENDIF.
IF p_120 = 'X'. lv_anln2 = '0002'. ENDIF.
IF p_201 = 'X'. lv_anln2 = '0000'. ENDIF.
ENDIF.
IF sy-index = 3.
IF p_012 = 'X'. lv_anln2 = '0002'. ENDIF.
IF p_120 = 'X'. lv_anln2 = '0000'. ENDIF.
IF p_201 = 'X'. lv_anln2 = '0001'. ENDIF.
ENDIF.
LOOP AT lt_anlz INTO ls_anlz WHERE anln2 EQ lv_anln2.
EXIT.
ENDLOOP.
CHECK sy-subrc EQ 0.
CASE ls_anlz-kostl.
WHEN '0000001000'. ls_tdd-costcenter = '0000001010'.
WHEN '0000001010'. ls_tdd-costcenter = '0000001000'.
WHEN OTHERS. ls_tdd-costcenter = '0000001000'.
ENDCASE.
ls_tddx-costcenter = 'X'.
CALL FUNCTION 'BAPI_FIXEDASSET_CHANGE'
EXPORTING
companycode = p_bukrs
asset = p_anln1
subnumber = lv_anln2
* GROUPASSET =
* GENERALDATA =
* GENERALDATAX =
* INVENTORY =
* INVENTORYX =
* POSTINGINFORMATION =
* POSTINGINFORMATIONX =
timedependentdata = ls_tdd
timedependentdatax = ls_tddx
* ALLOCATIONS =
* ALLOCATIONSX =
* ORIGIN =
* ORIGINX =
* INVESTACCTASSIGNMNT =
* INVESTACCTASSIGNMNTX =
* NETWORTHVALUATION =
* NETWORTHVALUATIONX =
* REALESTATE =
* REALESTATEX =
* INSURANCE =
* INSURANCEX =
* LEASING =
* LEASINGX =
IMPORTING
return = ls_return.
* TABLES
* DEPRECIATIONAREAS =
* DEPRECIATIONAREASX =
* INVESTMENT_SUPPORT =
* EXTENSIONIN =
WRITE: ls_return-id, ls_return-number, ls_return-message(50).
IF p_c1 = 'X'.
COMMIT WORK AND WAIT.
ENDIF.
ENDDO.
IF p_c2 = 'X'.
COMMIT WORK AND WAIT.
ENDIF.
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |