AMBA手動減価償却変更値BAPI_ASSET_VALUE_ADJUST_POST

BDCをサポートせず、BAPIのみをサポートします

 

データ:

        lt_ztfi034bは、ヘッダー行のあるztfi034bのテーブルのようなものです。

 

  データorigindocreferenceタイプbapifapo_doc_ref。

  データgeneralpostingdataタイプbapifapo_gen_info。

  datavalueadjustdataタイプbapifapo_value_adjustment。

  データアカウント割り当てタイプbapifapo_acc_ass。

  データさらに投稿データタイプbapifapo_add_info。

  データドキュメント参照タイプbapifapo_doc_ref。

  データの戻り値の型bapiret2。

  データadjustareavaluesタイプbapifapo_areavaluesの標準テーブル。

  bapiret2のデータreturn_allタイプの標準テーブル。

 

  gt_alvでループします。ここでsel = 'X'です。

    clear:origindocreference、generalpostingdata、valueadjustdata、documentreference、return、

    return_all、return_all []。

    origindocreference-obj_type = 'AMBU'。

 

    generalpostingdata-username = sy-uname。

    generalpostingdata-doc_type = 'AF'。

    generalpostingdata-doc_date = sy-datum。

    generalpostingdata-pstng_date = sy-datum。

    generalpostingdata-fis_period = p_monat。

    generalpostingdata-trans_date = sy-datum。

    generalpostingdata-comp_code = gt_alv-bukrs。

    generalpostingdata-assetmaino = gt_alv-anln1。

    generalpostingdata-assetsubno = gt_alv-anln2。

    gt_alv-active(4)= sy-date(4)の場合。

      generalpostingdata-assettrtyp = '610'。

    そうしないと。

      generalpostingdata-assettrtyp = '600'。

    endif。

 

    generalpostingdata-depr_area = gt_alv-afabe。 "減価償却領域

    if gt_alv-afabe = '1'。 "帳簿の減価償却

      generalpostingdata-ledger_group = '0L'。

      generalpostingdata-acc_principle = 'GAAP'。

    elseif gt_alv-afabe = '10 '。 "IFRS帳簿の減価償却

      generalpostingdata-ledger_group = 'Z1'。

      generalpostingdata-acc_principle = '60 '。

    elseif gt_alv-afabe = '11 '。 "減価償却費

      generalpostingdata-ledger_group = 'Z2'。

      generalpostingdata-acc_principle = 'TAX'。

    endif。

 

    valueadjustdata-amount = gt_alv-mdres。

    valueadjustdata-amount_long = gt_alv-mdres。

    valueadjustdata-valuedate = sy-datum。

    valueadjustdata-currency = gt_alv-waers。

* valueadjustdata-currency_iso = 'CNY'。

 

    関数 'BAPI_ASSET_VALUE_ADJUST_POST'を呼び出します

      エクスポート

        origindocreference = origindocreference

        generalpostingdata = generalpostingdata

        valueadjustdata = valueadjustdata

        accountassignments = accountassignments

        morepostingdata = morepostingdata

      インポート

        documentreference = documentreference

        リターン=リターン

      テーブル

        Adjustareavalues = Adjustareavalues

        return_all = return_all。

    documentreferenceが初期でない場合。

      gt_alv-rtype = 'S'。

* READ TABLE return_all INDEX1。

* gt_alv-rtmsg = return_all-

* gt_alv-rtmsg = '成功'。

      gt_alv-creat = 'X'。

      関数 'BAPI_TRANSACTION_COMMIT'を呼び出す

        エクスポート

          待機= 'X'。

      メッセージID戻り値の型タイプ戻り値の型番号戻り値の数

        return-message_v1を使用return-message_v2

             return-message_v3 return-message_v4

             data(lv_msg)に。

      移動-対応するgt_alvをlt_ztfi034bに。

      lt_ztfi034b-gjahr = p_gjahr。

      lt_ztfi034b-月= p_month。

      lt_ztfi034bを追加します。

    そうしないと。

      関数 'BAPI_TRANSACTION_ROLLBACK'を呼び出します。

      gt_alv-rtype = 'E'。

      メッセージID戻り値の型タイプ戻り値の型番号戻り値の数

        return-message_v1を使用return-message_v2

             return-message_v3 return-message_v4

             lv_msgに。

      gt_alv-rtmsg = lv_msg。

    endif。

    gt_alvを変更します。

  エンドループ。

 

  lt_ztfi034b []が初期値でない場合。

    テーブルlt_ztfi034bからztfi034bを変更します。

  endif。

 

おすすめ

転載: blog.csdn.net/cylcylcylcylwo/article/details/114077585