SAP 固定资产调拨接口

固定资产调拨

  DATA: lv_index TYPE i,
        lv_flag  TYPE i.

  DATA: ls_generaldata        TYPE bapi1022_feglg001,
        ls_generaldatax       TYPE bapi1022_feglg001x,
        ls_timedependentdata  TYPE bapi1022_feglg003,
        ls_timedependentdatax TYPE bapi1022_feglg003x,
        ls_allocations        TYPE bapi1022_feglg004,
        ls_allocationsx       TYPE bapi1022_feglg004x,
        ls_origin             TYPE bapi1022_feglg009,
        ls_originx            TYPE bapi1022_feglg009x,
        ls_return             TYPE bapiret2.

  DESCRIBE TABLE it_data[] LINES lv_index.

  IF lv_index EQ 0.

    o_type = 'E'.
    o_msg = '无传入数据'.

  ELSE.

    LOOP AT it_data.

      "增加前导零
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          input  = it_data-anln1
        IMPORTING
          output = it_data-anln1.


      "增加前导零
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          input  = it_data-anln2
        IMPORTING
          output = it_data-anln2.

      ls_generaldata-descript = it_data-txt50.  "资产描述
      ls_generaldata-descript2 = it_data-txa50. "附加资产描述
      ls_generaldata-serial_no = it_data-sernr. "序列号
      ls_generaldata-invent_no = it_data-invnr. "库存号
      ls_generaldata-quantity = it_data-menge.  "数量

      ls_generaldatax-descript = 'X'.  "资产描述
      ls_generaldatax-descript2 = 'X'. "附加资产描述
      ls_generaldatax-serial_no = 'X'. "序列号
      ls_generaldatax-invent_no = 'X'. "库存号
      ls_generaldatax-quantity = 'X'.  "数量

      ls_timedependentdata-from_date = it_data-adatu. "开始日期
      ls_timedependentdata-to_date = '99991231'.      "结束日期
      ls_timedependentdata-costcenter = it_data-kostl."成本中心
      ls_timedependentdata-room = it_data-raumn.      "房间
      ls_timedependentdata-intern_ord = it_data-caufn."内部订单

      ls_timedependentdatax-from_date = 'X'. "开始日期
      ls_timedependentdatax-to_date = 'X'.   "结束日期
      ls_timedependentdatax-costcenter = 'X'."成本中心
      ls_timedependentdatax-room = 'X'.      "房间
      ls_timedependentdatax-intern_ord = 'X'."内部订单

      ls_allocations-evalgroup1 = it_data-ord41.  "获取方式
      ls_allocations-evalgroup2 = it_data-ord42.  "使用状态
      ls_allocations-evalgroup4 = it_data-ord44.  "政府项目
      ls_allocations-evalgroup5 = it_data-ord44.  "政府项目(课题)

      ls_allocationsx-evalgroup1 = 'X'.  "获取方式
      ls_allocationsx-evalgroup2 = 'X'.  "使用状态
      ls_allocationsx-evalgroup4 = 'X'.  "政府项目
      ls_allocationsx-evalgroup5 = 'X'.  "政府项目(课题)

      ls_origin-vendor_no = it_data-lifnr.    "供应商
      ls_origin-manufacturer = it_data-herst. "资产制造商

      ls_originx-vendor_no = 'X'.    "供应商
      ls_originx-manufacturer = 'X'. "资产制造商

      CALL FUNCTION 'BAPI_FIXEDASSET_CHANGE'
        EXPORTING
          companycode        = it_data-bukrs
          asset              = it_data-anln1
          subnumber          = it_data-anln2
          generaldata        = ls_generaldata
          generaldatax       = ls_generaldatax
          timedependentdata  = ls_timedependentdata
          timedependentdatax = ls_timedependentdatax
          allocations        = ls_allocations
          allocationsx       = ls_allocationsx
          origin             = ls_origin
          originx            = ls_originx
        IMPORTING
          return             = ls_return.
      .
      IF ls_return-type CA 'EAX'.
        lv_flag = lv_flag + 1.
        o_type = 'E'.
        o_msg = ls_return-message.
        ot_data-ztype = 'E'.
        ot_data-zmsg = ls_return-message.
        CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
      ELSE.
        ot_data-ztype = 'S'.
        ot_data-zmsg = ls_return-message.
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
          EXPORTING
            wait = 'X'.
      ENDIF.

      "去除前导零
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = it_data-anln1
        IMPORTING
          output = ot_data-anln1.

      "去除前导零
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = it_data-anln2
        IMPORTING
          output = ot_data-anln2.

      APPEND ot_data.

      CLEAR:it_data,
            ot_data,
            ls_return,
            ls_generaldata,
            ls_generaldatax,
            ls_timedependentdata,
            ls_timedependentdatax,
            ls_allocations,
            ls_allocationsx,
            ls_origin,
            ls_originx.

    ENDLOOP.

    IF lv_flag  GT 1.
      o_type = 'E'.
      o_msg = '有多行调拨失败请查看明细数据'.
    ENDIF.

    IF o_type IS INITIAL.
      o_type = 'S'.
      o_msg = '固定资产调拨成功'.
    ENDIF .

  ENDIF.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SAP固定资产期初导入是指将企业的固定资产数据首次导入到SAP系统中,以便于系统能够对企业的固定资产进行管理和跟踪。 首先,进行SAP固定资产期初导入前,需要准备相关的数据。这包括企业的固定资产、资产分类、资产原值、资产启用日期等信息。同时,根据企业的具体情况,还需要准备好相应的凭证和文档,例如购置发票、购置合同等。 接下来,进行实际的固定资产期初导入操作。首先,在SAP系统中创建一个新的资产公司代码,然后建立相关的折旧区域和折旧键。接着,根据企业准备的数据,逐个录入固定资产的基本信息和相关属性。在录入的过程中,需要注意准确性和完整性,确保数据的正确性和可靠性。 随后,进行固定资产的折旧计算。根据资产的折旧区域和折旧键,系统会自动计算每个资产的折旧额,并生成相应的折旧凭证。这样,企业就能够方便地了解每个资产的折旧情况,以及资产的净值变化。 最后,进行固定资产的期初折旧核对。在导入固定资产期初数据后,应该进行折旧核对,确保期初折旧准确无误。如果发现有误差,需要及时调整和修正,以保证固定资产管理的准确性和可靠性。 总的来说,SAP固定资产期初导入是企业引入SAP系统后的重要步骤。通过正确地导入固定资产数据,可以实现对企业资产的全面管理和跟踪,提高资产利用效率和管理水平。但是,在进行导入时要注意数据的准确性和完整性,以及与系统的适配性,确保导入操作顺利进行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值