Auftrag im Dialog anlegen

Hier stellen wir Ihnen ein BAPI vor, mit dem Sie Kundenauftragsfelder vorbelegen können um den Kundenauftrag dann im Dialog weiter bearbeiten zu lassen. Diese Funktionalität ist z.B. dann nützlich, wenn für einen Prozeß gleichbleibende Daten an verschiedenen Stellen erfasst werden müssen. Die Vorbelegung vereinfacht den Prozeß.

*** Datenstrukturen für BAPI
  DATA ls_sales_header_in      TYPE bapisdhead1.
  DATA ls_sales_header_inx     TYPE bapisdhead1x.
  DATA lv_salesdocument_ex     TYPE vbeln.
  DATA lt_return               TYPE STANDARD TABLE OF bapiret2.
  DATA ls_return               TYPE                   bapiret2.
  DATA lt_sales_partners       TYPE STANDARD TABLE OF bapipartnr.
  DATA ls_sales_partners       TYPE                   bapipartnr.

  FIELD-SYMBOLS: <val>, <valx>.

*** init data
  CLEAR: ls_sales_header_in
       , ls_sales_header_inx
       , lv_salesdocument_ex
       , lt_return
       , lt_sales_items_in
       , lt_sales_items_inx
       , lt_sales_partners
       , ls_return
       , ls_sales_items_in
       , ls_sales_items_inx
       , ls_sales_partners.

*** Felder vorbelegen
  ls_sales_header_in-doc_type    = ‘ZTA3’.
  ls_sales_header_in-sales_org   = ‘1000’.
  ls_sales_header_in-distr_chan  = ’01’.
  ls_sales_header_in-division    = ’01’.
  ls_sales_header_in-sales_grp   = ‘3A’.
  ls_sales_header_in-sales_off   = ‘WEST’.
  ls_sales_header_in-ord_reason  = ‘Z6’.
  ls_sales_header_in-compl_dlv   = ‘X’.

*** Partner
*** Auftraggeber
  ls_sales_partners-partn_role = ‘AG’.
  ls_sales_partners-partn_numb = ‘0000012345’.
  APPEND ls_sales_partners TO lt_sales_partners.

*** Warenempfänger
  IF NOT zvoev-kunwe IS INITIAL.
    ls_sales_partners-partn_role = ‘WE’.
    ls_sales_partners-partn_numb = ‘0030022222’.
    APPEND ls_sales_partners TO lt_sales_partners.
  ENDIF.

*** Kundenauftrag im Dialog anlegen
  CALL FUNCTION ‘BAPI_SALESDOCU_CREATEWITHDIA’
    EXPORTING
      sales_header_in     = ls_sales_header_in
      sales_header_inx    = ls_sales_header_inx
      convert_parvw_auart = ‘ ‘
      synchronous         = ‘X’
    IMPORTING
      salesdocument_ex    = lv_salesdocument_ex
    TABLES
      return              = lt_return
      sales_partners      = lt_sales_partners.

Enno Wulff

Leave a Comment