Danke für die Antwort.Romaniac hat geschrieben: sollte es keine geignete Funktion dafür geben würde ich einen CALL TRANSACTION USING bdc_tab versuchen, das ist praktisch wie ein Batch Input zu programmieren:
auf deinen Kommentar hin habe ich das einfach noch einmal überprüft und einfach einen Batch-Input ausgeführt.Romaniac hat geschrieben:Ich kenne kein Unternehmen dass ohne Batch Input arbeitet.
Code: Alles auswählen.
*___ Füllen und Aufrufen der Fehlerposition.
CLEAR: lt_bdcdata.
bdc_dynpro( EXPORTING iv_program = lc_prog
iv_dynpro = 0200
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_field( EXPORTING iv_fnam = 'BDC_OKCODE'
iv_fval = '/00'
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_field( EXPORTING iv_fnam = 'RIWO00-QMNUM'
iv_fval = <ls_qmfe>-qmnum " Zu suchende Fehlermeldung
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_dynpro( EXPORTING iv_program = lc_prog
iv_dynpro = 7200
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_field( EXPORTING iv_fnam = 'BDC_OKCODE'
iv_fval = '=10\TAB10'
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_dynpro( EXPORTING iv_program = lc_prog
iv_dynpro = 7204
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_field( EXPORTING iv_fnam = 'BDC_OKCODE'
iv_fval = '=PSDT'
CHANGING
ct_bdcdata = lt_bdcdata ).
bdc_field( EXPORTING iv_fnam = 'BDC_CURSOR'
iv_fval = 'VIQMFE-OTGRP(' && <ls_qmfe>-fenum && ')' " Zu suchende Meldungsposition
CHANGING ct_bdcdata = lt_bdcdata ).
bdc_transaction( EXPORTING iv_tcode = 'QM03'
CHANGING ct_bdcdata = lt_bdcdata ).
Code: Alles auswählen.
METHOD bdc_dynpro.
DATA: ls_bdcdata TYPE bdcdata.
CLEAR: ls_bdcdata.
ls_bdcdata-program = iv_program.
ls_bdcdata-dynpro = iv_dynpro.
ls_bdcdata-dynbegin = 'X'.
APPEND ls_bdcdata TO ct_bdcdata.
ENDMETHOD. "bdc_dynpro
METHOD bdc_field.
DATA: ls_bdcdata TYPE bdcdata.
CLEAR: ls_bdcdata.
IF iv_fval <> '/'.
ls_bdcdata-fnam = iv_fnam.
ls_bdcdata-fval = iv_fval.
APPEND ls_bdcdata TO ct_bdcdata.
ENDIF.
ENDMETHOD. "bdc_field
METHOD bdc_transaction.
DATA: ls_bdcdata TYPE bdcdata.
CLEAR: ls_bdcdata.
CALL TRANSACTION iv_tcode
USING ct_bdcdata
MODE 'E'.
CLEAR: ls_bdcdata, ct_bdcdata.
ENDMETHOD. "bdc_transaction