资产主数据分配 评估组1 修改

 

开发过程中遇到一个需求去修改资产主数据的分配评估组,业务顾问给了一个bapi :BAPI_FIXEDASSET_CHANGE,测试这个函数没有对应的修改参数。测试标准程序AS02后发现有个函数可以实现资产主数据的创建修改删除,不用BDC就可以实现,很强大

找到这个函数后写了个测试程序,实现需求

*&---------------------------------------------------------------------*
*& Report  ZTEST_ZCBFF
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZTEST_ZCXG.
DATA: BEGIN OF xanla OCCURS 14.
        INCLUDE STRUCTURE ranla.
DATA: END OF xanla.
*                                       Stammdaten-Hauptnr ANLH
DATA: BEGIN OF xanlh     OCCURS 1.
        INCLUDE STRUCTURE ranlh.
DATA: END OF xanlh.
DATA: BEGIN OF xanlu OCCURS 01.
        INCLUDE STRUCTURE ranlu.
DATA: END OF xanlu.
*                                       Jahreswerte        ANLC
"DATA: BEGIN OF XANLC OCCURS 14.
"        INCLUDE STRUCTURE rANLC.
"DATA: END OF XANLC.
*                                       Einzelpostenkopf ANEK
DATA: BEGIN OF xanek OCCURS 4.
        INCLUDE STRUCTURE ranek.
DATA: END OF xanek.
*                                       Einzelposten   ANEP
"DATA: BEGIN OF XANEP OCCURS 28.        " bei Änderungsbel. bereits
"        INCLUDE STRUCTURE rANEP.       " definiert
"DATA: END OF XANEP.
*                                       Anteilig. Werte  ANEA
DATA: BEGIN OF xanea OCCURS 28.
        INCLUDE STRUCTURE ranea.
DATA: END OF xanea.
*                                       ANLK Herkunftsdaten
DATA: BEGIN OF xanlk OCCURS 50.
        INCLUDE STRUCTURE ranlk.
DATA: END OF xanlk.
*                                       Anlagentexte
DATA: BEGIN OF xanlt OCCURS 3.
        INCLUDE STRUCTURE ranlt.
DATA: END OF xanlt.

************************************************************************
*                                       Userfelder ANLU
DATA: BEGIN OF yanlu OCCURS 14.
        INCLUDE STRUCTURE ranlu.
DATA: END OF yanlu.
*                                       ANLI
DATA: BEGIN OF yanli OCCURS 14.
        INCLUDE STRUCTURE ranli.
DATA: END OF yanli.
*                                       Stammdaten-Hauptnr ANLH
DATA: BEGIN OF yanlh     OCCURS 1.
        INCLUDE STRUCTURE ranlh.
DATA: END OF yanlh.
*                                       Anlagenstamm
DATA: BEGIN OF yanla OCCURS 1.
        INCLUDE STRUCTURE ranla.
DATA: END OF yanla.
*                                       Bewertungsbereiche ANLB
"DATA: BEGIN OF YANLB OCCURS 14.
"        INCLUDE STRUCTURE rANLB.
"DATA: END OF YANLB.
*                                       Zeitabh. Daten ANLZ
"DATA: BEGIN OF YANLZ OCCURS 05.
"        INCLUDE STRUCTURE rANLZ.
"DATA: END OF YANLZ.
*                                       Versicherungsdaten ANLV
"DATA: BEGIN OF YANLV OCCURS 02.
"        INCLUDE STRUCTURE rANLV.
"DATA: END OF YANLV.
*                                       Jahreswerte        ANLC
"DATA: BEGIN OF YANLC OCCURS 14.
"       INCLUDE STRUCTURE rANLC.
"DATA: END OF YANLC.
*                                       Einzelpostenkopf ANEK
DATA: BEGIN OF yanek OCCURS 4.
        INCLUDE STRUCTURE ranek.
DATA: END OF yanek.
*                                       Einzelposten   ANEP
"DATA: BEGIN OF YANEP OCCURS 28.
"        INCLUDE STRUCTURE rANEP.
"DATA: END OF YANEP.
*                                       Anteilig. Werte  ANEA
* table with the NEW content of: ANLZ
DATA: BEGIN OF XANLZ OCCURS 20.
        INCLUDE STRUCTURE RANLZ.
DATA: END OF XANLZ.

* table with the NEW content of: ANLV
DATA: BEGIN OF XANLV OCCURS 20.
        INCLUDE STRUCTURE RANLV.
DATA: END OF XANLV.

************************************************************************
*                                       Stammdaten ANLI
DATA: BEGIN OF xanli OCCURS 14.
        INCLUDE STRUCTURE ranli.
DATA: END OF xanli.
*
DATA: BEGIN OF XANLB OCCURS 20.
        INCLUDE STRUCTURE RANLB.
DATA: END OF XANLB.

DATA: BEGIN OF XANLBZA OCCURS 20.
        INCLUDE STRUCTURE RANLBZA.
DATA: END OF XANLBZA.
DATA: BEGIN OF XANLC OCCURS 20.
        INCLUDE STRUCTURE RANLC.
DATA: END OF XANLC.

DATA: BEGIN OF XANEP OCCURS 20.
        INCLUDE STRUCTURE RANEP.
DATA: END OF XANEP.

DATA: xanla_sam LIKE xanla OCCURS WITH HEADER LINE,
      xanlh_sam LIKE xanlh OCCURS WITH HEADER LINE,
      xanlt_sam LIKE xanlt OCCURS WITH HEADER LINE,
      xanlz_sam LIKE  xanlz OCCURS WITH HEADER LINE,
      xanlv_sam LIKE xanlv OCCURS WITH HEADER LINE,
      xanlu_sam LIKE xanlu OCCURS WITH HEADER LINE,
      xanli_sam LIKE xanli OCCURS WITH HEADER LINE,
      xanlb_sam LIKE xanlb OCCURS WITH HEADER LINE,
      xanlbza_sam LIKE xanlbza OCCURS WITH HEADER LINE,  "<< TDDP
      xanlc_sam LIKE xanlc OCCURS WITH HEADER LINE,
      xanep_sam LIKE xanep OCCURS WITH HEADER LINE,
      xanea_sam LIKE xanea OCCURS WITH HEADER LINE,
      xanek_sam LIKE xanek OCCURS WITH HEADER LINE,
      xanlk_sam LIKE xanlk OCCURS WITH HEADER LINE,

      yanlh_sam LIKE yanlh OCCURS WITH HEADER LINE.
SELECT FROM ANLA
  INTO CORRESPONDING FIELDS OF TABLE XANLA_SAM
  WHERE ANLN1 = '000010000017' AND
        BUKRS = '3201'.
XANLA_SAM-ORD41 = '04'.
XANLA_SAM-KZ = 'U'.
MODIFY XANLA_SAM TRANSPORTING ORD41 WHERE ORD41 NE '99'.
MODIFY XANLA_SAM TRANSPORTING KZ WHERE KZ IS INITIAL.

  CALL FUNCTION 'RA_ASSET_MODIFIKATION'
       TABLES
            t_anea     = xanea_sam
            t_anek     = xanek_sam
            t_anep     = xanep_sam
            t_anla     = xanla_sam
            t_anlb     = xanlb_sam
            t_anlbza   = xanlbza_sam
            t_anlc     = xanlc_sam
            t_anlv     = xanlv_sam
            t_anlu     = xanlu_sam
            t_anlz     = xanlz_sam
            t_anlh     = xanlh_sam
            t_anli     = xanli_sam
            t_anlk     = xanlk_sam
            t_anlt     = xanlt_sam
            t_anlh_old = yanlh_sam.
*.
*.
  COMMIT WORK AND WAIT.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值