Zugriff auf den Prozeßauftrag

Hier zeigen wir Ihnen, wie Sie aus dem Kundenauftrag heraus auf die Daten des Prozeßauftrags herankommen.

Falls das Programm bereits auf den Fertigungsauftrag zugegriffen hat, steht der Auftrag noch im Speicher. In diesem Fall können die aktuellen Daten mit dem Funktionsbaustein CO_BT_CAUFV_READ_WITH_KEY gelesen werden.

Sollten die Daten nicht vorhanden sein, löst der Baustein eine Exception aus und die Daten müssen mit VB_CP_HEADER_DATA von der Datenbank nachgelesen werden.

Beide Bausteine Liefern die Kopfdaten und Positionsdaten eines Auftrags zurück.

Coding

*– Datendefinitionen
DATA: zx_aufvd LIKE caufvd,
      zx_afpod LIKE afpod.

*– Init
CLEAR: zx_aufvd, zx_afpod.

*– Lesen aus internem Speicher
CALL FUNCTION ‘CO_BT_CAUFV_READ_WITH_KEY’
     EXPORTING
          aufnr_act      = l_aufnr
          no_dialog_info = ‘X’
     IMPORTING
          caufvd_exp     = zx_aufvd
          afpod_exp      = zx_afpod
     EXCEPTIONS
          not_found      = 1
          OTHERS         = 2.
IF sy-subrc > 0.
*– Auf den Prozeßauftrag wurde noch nicht zugegriffen: Von DB lesen
  CALL FUNCTION ‘VB_CP_HEADER_DATA’
       EXPORTING
            i_aufnr         = l_aufnr
       IMPORTING
            e_caufvd        = zx_aufvd
            e_afpod         = zx_afpod
       EXCEPTIONS
            order_not_found = 1
            OTHERS          = 2.
ENDIF.

 

Enno Wulff