• SAP 取得因为折旧价值变动的固定资产的方法


    由于需要将固定资产价值变动后的数据实时传送给OA系统,找了很多都只到期间,最后想了个间接的方法,通过科目变动去判断固定资产价值有没有变动。

    目前使用折旧科目进行判断,后期可以加入固定资产价值变动的其他科目。

     DATA:LT_ASSET_INFO TYPE STANDARD TABLE OF    ZSFI008,
           LS_ASSET_INFO TYPE ZSFI008.
      FIELD-SYMBOLS  : <LT_PAY_DATA>   TYPE ANY TABLE .
      FIELD-SYMBOLS : <LT_TEST> TYPE ANY . "LIKE LINE OF  it_tab .
      DATA LR_PAY_DATA  TYPE REF TO DATA.
    RANGES:LR_SAKNR FOR SKA1-SAKNR."定义折旧科目
    "根据折旧科目日期去取价值变动的资产,用于下传OA
      LR_SAKNR-SIGN = 'I'.
      LR_SAKNR-OPTION = 'EQ'.
      LR_SAKNR-LOW = '1602010001'.
      APPEND LR_SAKNR.
      CLEAR LR_SAKNR.
      LR_SAKNR-SIGN = 'I'.
      LR_SAKNR-OPTION = 'EQ'.
      LR_SAKNR-LOW = '1602020001'.
      APPEND LR_SAKNR.
      CLEAR LR_SAKNR.
      LR_SAKNR-SIGN = 'I'.
      LR_SAKNR-OPTION = 'EQ'.
      LR_SAKNR-LOW = '1602030001'.
      APPEND LR_SAKNR.
      CLEAR LR_SAKNR.
      LR_SAKNR-SIGN = 'I'.
      LR_SAKNR-OPTION = 'EQ'.
      LR_SAKNR-LOW = '1602040001'.
      APPEND LR_SAKNR.
      CLEAR LR_SAKNR.
      LR_SAKNR-SIGN = 'I'.
      LR_SAKNR-OPTION = 'EQ'.
      LR_SAKNR-LOW = '1602050001'.
      APPEND LR_SAKNR.
      CLEAR LR_SAKNR.
      LR_SAKNR-SIGN = 'I'.
      LR_SAKNR-OPTION = 'EQ'.
      LR_SAKNR-LOW = '1602990001'.
      APPEND LR_SAKNR.
      CLEAR LR_SAKNR.
    
    CL_SALV_BS_RUNTIME_INFO=>SET( EXPORTING DISPLAY = ABAP_FALSE   METADATA = ABAP_FALSE DATA = ABAP_TRUE ).
          SUBMIT FAGL_ACCOUNT_ITEMS_GL "根据FAGLL03总账科目取数
          USING SELECTION-SCREEN '1000'
                WITH SD_SAKNR IN LR_SAKNR
                WITH SD_BUKRS IN S_BUKRS6
                WITH X_AISEL = 'X'
                WITH X_CLSEL = SPACE
                WITH X_OPSEL = SPACE
                WITH SO_BUDAT IN S_ERDAT6
    *VIA  SELECTION-SCREEN
          EXPORTING LIST TO MEMORY AND RETURN.
          IF SY-SUBRC = 0.
            TRY.
                CL_SALV_BS_RUNTIME_INFO=>GET_DATA_REF( IMPORTING R_DATA = LR_PAY_DATA ).
                ASSIGN LR_PAY_DATA->* TO <LT_PAY_DATA>.
              CATCH CX_SALV_BS_SC_RUNTIME_INFO.
                MESSAGE `Unable to retrieve ALV data` TYPE 'E'.
            ENDTRY.
          ENDIF.
          CL_SALV_BS_RUNTIME_INFO=>CLEAR_ALL( ).
          IF <LT_PAY_DATA> IS  ASSIGNED.
            LT_DATA_6 = CORRESPONDING #( <LT_PAY_DATA> ).
          ENDIF.
    SORT LT_DATA_6 BY BUKRS ANLN1 ANLN2.
      DELETE ADJACENT DUPLICATES FROM LT_DATA_6 COMPARING BUKRS ANLN1 ANLN2.

    取出所有资产后,就可以根据ANLC去读取价值传送给OA

  • 相关阅读:
    浅谈 js字符串 trim 方法之正则篇
    各大型网站使用的服务器空间运行环境盘点
    博客打开慢?请禁用WordPress默认的谷歌字体!
    巧妙设计:让页面活起来
    最流行的JavaScript库jQuery不再支持旧版IE
    Spring各个版本源码下载地址
    mysql 修改字符集
    Spring AOP aspectjweaver.jar与aopalliance-1.0.jar 下载地址
    <<Java | Java正则表达式 | 学习总结>>
    <Java并发编程实战 | 前言 | 学习总结>
  • 原文地址:https://www.cnblogs.com/BruceKing/p/15333445.html
Copyright © 2020-2023  润新知