Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

problem with bapi

Former Member
0 Likes
549

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

3 REPLIES 3
Read only

Former Member
0 Likes
495

Hi Friend,

Check this link for detailed information on BAPI_FIXEDASSET_CHANGE:

http://abap.wikiprog.com/wiki/BAPI_FIXEDASSET_CHANGE

Regards,

Chandra Sekhar

Read only

Former Member
0 Likes
495

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.

Read only

former_member761936
Active Participant
0 Likes
495

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.