1

私は新卒です。SAP ABAP の経験はわずか 2 か月です。

契約リストの見積日を求められました。そのためには、everh テーブルから crm ビジネス トランザクション番号を取得する必要があります。

ここで、プログラム crm_order_read でこのトランザクション番号を使用し、エクスポート パラメータ et_orderadm_i を取得する必要があります。このパラメータで GUID が使用可能になり、作成日時 (見積日) も取得されます。

プログラムcrm_order_readでトランザクション番号(object_id)を渡す方法を理解できませんか? 利用可能な汎用モジュール crm_order_id もありますが、トランザクション番号であるインポート パラメータはありません。

繰り返しになりますが、エクスポート パラメータ et_orderadm_i にはどのように見積日が含まれるのでしょうか? コードを書く方法を見つけることができません。

4

1 に答える 1

2

通常、CRM_ORDER_READ に ID を渡すのではなく、GUID を渡します。

とにかくIDしか利用できない場合は、最初にアプローチを変更することをお勧めします。または、テーブル CRMD_ORDERADM_H を選択します。

どのオブジェクトがどの GUID を持っているかは、SE16 => CRMD_ORDERADM_H => F8 で確認できます。

ただし、プログラム SE38=>CRM_ORDER_READ の汎用モジュール CRM_ORDER_READ を ID でテストすることもできます。

テンプレートとして使用できる基本的なコーディングを次に示します。

        INCLUDE crm_object_names_con.

        data:
                lv_guid                TYPE crmt_object_guid,
                lt_guid                TYPE crmt_object_guid_tab,
                lt_req_obj             TYPE crmt_object_name_tab,
                lt_orderadm_i          TYPE crmt_orderadm_i_wrkt,
                ls_orderadm_i          TYPE crmt_orderadm_i_wrk,
                lt_orderadm_h          TYPE crmt_orderadm_h_wrkt,
                ls_orderadm_h          TYPE crmt_orderadm_h_wrk.

        CLEAR lt_guid.
        INSERT lv_guid INTO TABLE lt_guid.
        INSERT gc_object_name-orderadm_h   INTO TABLE lt_req_obj.
        INSERT gc_object_name-orderadm_i INTO TABLE lt_req_obj.
        CALL FUNCTION 'CRM_ORDER_READ'
          EXPORTING
            it_header_guid       = lt_guid
            it_requested_objects = lt_req_obj
          IMPORTING  
            et_orderadm_h        = lt_orderadm_h. 
            et_orderadm_i        = lt_orderadm_i. 


        READ TABLE lt_orderadm_i INTO ls_orderadm_i INDEX 1.


        LOOP AT lt_orderadm_i INTO ls_orderadm_i .

        ENDLOOP.

ヒント:

CRM_ORDER_READ をダブルクリックしてそこに移動し、別のデータ型が必要な場合はそこからエクスポートされたデータ型を取得します。

CRM_ORDER_READ で、使用場所リストをクリックして、他の場所でどのように実装されているかを確認します。

日付は ORDERADM_H-POSTING_DATE で確認できます。

于 2016-04-18T12:12:30.317 に答える