Hallo Call transaction ist schon gut, erst füllst Du bdcdata wie beim Batchtinput und dann ruftst Du die Transaktion endweder Hell Mode 'A' oder dunkel E auf. Zum Test würde ich A nehmen
Hier ein Bespiel für VAP1
*'A' Anzeigen der Dynpros
*'E' Anzeigen nur, wenn ein Fehler auftrat
*'N' keine Anzeige
*Nur für Dunkel nötig begin
(DATA: begin of bdcmess occurs 0.
include structure BDCMSGCOLL.
DATA: END OF bdcmess.)
*Nur für Dunkel nötig end
*braucht Du nur wenn Dunkel begin
(MESSAGES INTO bdcmess.
commit work.)
refresh bdcdata.
*meldungen auslesen
loop at bdcmess.
.....
*braucht Du nur wenn Dunkel end
......
form dynpro using dynbegin fnam fval.
case dynbegin.
when 'X'.
clear bdcdata.
bdcdata-program = fnam.
bdcdata-dynpro = fval.
bdcdata-dynbegin = dynbegin.
append bdcdata.
when others.
clear bdcdata.
bdcdata-fnam = fnam.
bdcdata-fval = fval.
hier eine einfachere methode, ohne den "komplizierten" BDC - Aufbau:
einfach die gewünschten Felder mit SET PARAMETER ID 'MAT' FIELD g_matnr. (z.b. für die Materialnummer) füllen.
und dann die Transaktion aufrufen mit: CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.
ist wahrscheindlich die einfachste art eine Transaktion mit befüllten feldern aufzurufen.