天天看點

ABAP調用事務方法

    經常需要在報表程式中調用其他事務,SAP提供了一些Function直接調用,也可以通過call transaction的語句來實作。

一、系統Function Module

SAP系統提供的Function Group有:

V06A:  SD Document Flow and Status Display

MEEXT: External Function for Purchasing

MESHOW:Display Purchasing Document

CK50:  Explanation Facilities

EDI5:  EDI: display data, status, ctrl record

Function group: V06A  (SD Document Flow and Status Display) 中包含了SD子產品中SO、DN和Billing相關事務的調用Function。如下:  

"直接調用顯示SO的Tcode:VA03, 參數vbtyp可以參看Table:VBUK的VBTYP字段,這裡值C表示order

  CALL FUNCTION 'RV_CALL_DISPLAY_TRANSACTION'

    EXPORTING

*      bukrs          = wa_bseg-gjahr

*      fcode          = 'VA03'

*      gjahr          = '2012'

*     LGNUM          = '   '

      posnr          = wa_bseg-buzei

      vbeln          = wa_bseg-belnr

*     AUFNR          =

      vbtyp          = 'C'

*     FI_APPLI       = '  '

          .

Function group: MESHOW  (Display Purchasing Document) 中包含了MM子產品中PO相關事務的調用Function。如下:  

"直接調用顯示PO的Tcode:ME23N

CALL FUNCTION 'ME_DISPLAY_PURCHASE_DOCUMENT'

    EXPORTING

      i_ebeln              = itab-ebeln

      i_ebelp              = itab-ebelp

    EXCEPTIONS

      not_found            = 1

      no_authority         = 2

      invalid_call         = 3

      preview_not_possible = 4

      OTHERS               = 5.

Function group: MEEXT  (External Function for Purchasing) 中包含了MM子產品中Material、Info record、REQUISITION、Vendor等相關事務的調用Function。如下:

"調用Tcode:MM03

  CALL FUNCTION 'MMPUR_MATERIAL_DISPLAY'

    EXPORTING

      im_matnr = itab-matnr

      im_werks = itab-werks

      im_lgort = itab-lgort.

二、Call Transaction

Call Transaction的方法也很簡單,其界面上的參數可以通過SET PARAMETER ID 來設定,如下:

"調用FB03,顯示FI Document

  SET PARAMETER ID 'BLN' FIELD  wa_bseg-belnr.

  SET PARAMETER ID 'GJR' FIELD  wa_bseg-gjahr.

  SET PARAMETER ID 'BUK' FIELD  wa_bseg-bukrs.

  CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.

至于PARAMETER ID的擷取,直接通過 F1幫助 =》 Technical Information =》 PARAMETER ID。

ABAP調用事務方法