Zugriff auf das Protokoll bei Lieferungsanlage

Wenn Lieferungen per Batchinput angelegt werden, dann hat man leider keinen Zugriff auf das erzeugte Protokoll. Das ist ärgerlich. Mit einem kleinen Trick geht es dennoch.

In den Userexits besteht die Möglichkeit, die Meldungen abzufangen und ins SAP-Memory zu exportieren. Im rufenden Programm kann die Tabelle wieder importiert und ausgegeben werden.

Export der Meldungstabelle

Das folgende Coding bezieht sich auf den Modulpool SAPMV50A.

Falls die Lieferung nicht angelegt werden kann, wird der USEREXIT_REFRESH_DOCUMENT durchlaufen. Hier steht noch die Tabelle CVBFS zur Verfügung. In dieser Tabelle stehen die aufgelaufenen Meldungen.

Warnungen, die bei der Anlage der Lieferung erzeugt werden, können im USEREXIT_SAVE_DOCUMENT abgegriffen werden.

Verwenden Sie zum Export das folgende Coding:

*** Export der Meldungstabelle 
IF t180-tcode =
‚VL01‘ AND sy-binpt <> space.
  EXPORT cvbfs TO MEMORY ID ‚ZX_CVBFS‘.
ENDIF.

Import der Meldungstabelle

import cvbfs to t_cvbfs from memory id ‚ZX_CVBFS‘.
if not t_cvbfs[] is initial.
  loop at t_cvbfs.
*** Meldung sammeln
    call function ‚MESSAGE_STORE‘
         exporting
              arbgb = t_cvbfs-msgid
              msgty = t_cvbfs-msgty
              msgv1 = t_cvbfs-msgv1
              msgv2 = t_cvbfs-msgv2
              msgv3 = t_cvbfs-msgv3
              msgv4 = t_cvbfs-msgv4
              txtnr = t_cvbfs-msgno
              zeile = g_zeile
         exceptions
              others = 3.
  endloop.
endif.

Mit den Funktionsbausteinen MESSAGE_STORE und MESSAGES_SHOW können Sie die Meldungen in einem schicken Fenster ausgeben

Enno Wulff
follow me