venerdì 24 luglio 2009

Creare messaggio sulla NAST

Per poter generare un messaggio sulla tabella di sistema NAST è possibile utilizzare il seguente codice:

DATA: XNAST LIKE VNAST OCCURS 20 WITH HEADER LINE.

Per prima cosa devono essere selezionate dalla tabella t685b le caratteristiche del messaggio che vogliamo creare; nel mio caso era un messaggio custom (v_kschl = 'ZPDF').

SELECT SINGLE * FROM t685b
WHERE kappl = 'EF' AND kschl = v_kschl.


Successivamente è necessario valorizzare la tabella interna che conterrà tutte le info del messaggio che stiamo creando:

xnast-kappl = 'EF'.
xnast-mandt = sy-mandt.
xnast-objky = tb_ekko-ebeln.
xnast-kschl = 'ZPDF'.
xnast-spras = sy-langu.
xnast-erdat = '20080202'.
xnast-nacha = t685b-nacha .
xnast-anzal = 0 .
xnast-vsztp = t685b-vsztp .
xnast-usnam = sy-uname .
xnast-ldest = 'LOCL'.
xnast-objtype = 'BUS2012'.
xnast-nauto = 'X'.
xnast-vstat = '0'.
xnast-dsuf2 = tb_ekko-ebeln.
xnast-tdid ='BEWG'.
xnast-tdspras = 'IT'.
xnast-tdreceiver = sy-uname .
xnast-tdcovtitle = 'NEW PURCHASE ORDER PRINTOUT'.

APPEND xnast.

Una volta valorizzata la tabella dovranno essere chiamate le seguenti funzioni:

CALL FUNCTION 'RV_MESSAGES_INSERT'
TABLES
tab_xnast = xnast
EXCEPTIONS
OTHERS = 1.

CALL FUNCTION 'RV_MESSAGES_UPDATE'
EXPORTING
msg_kappl = xnast-kappl
msg_no_update_task = 'X'
EXCEPTIONS
OTHERS = 1.

Nessun commento:

Posta un commento