Skip to Content
0
Former Member
May 08, 2007 at 04:40 PM

doubt in call method program

19 Views

hi,

I am getting error as i marked BOLD in this program...can u give solutions for that..

REPORT YSBDC6.

TABLES:LFA1.

DATA:BEGIN OF ITAB OCCURS 0,

LIFNR LIKE LFA1-LIFNR,

LAND1 LIKE LFA1-LAND1,

NAME1 LIKE LFA1-NAME1,

END OF ITAB.

DATA:BEGIN OF JTAB OCCURS 0.

INCLUDE STRUCTURE BDCDATA.

DATA:END OF JTAB.

DATA:BEGIN OF KTAB OCCURS 0.

INCLUDE STRUCTURE BDCMSGCOLL.

DATA:END OF KTAB.

CALL METHOD CL_GUI_FRONTEND_SERVICES=>GUI_UPLOAD

EXPORTING

FILENAME = 'C:\PRABA.TXT'

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

CHANGING

DATA_TAB = ITAB[].

LOOP AT ITAB[] INTO ITAB.

REFRESH JTAB.

PERFORM SUB USING 'YVTRANS' '100'.

PERFORM SUB1 USING:'LFA1-LIFNR' ITAB-LIFNR,

'LFA1-LAND1' ITAB-LAND1,

'LFA1-NAME1' ITAB-NAME1.

PERFORM SUB1 USING 'BDC_OKCODE' 'INSERT'.

CALL TRANSACTION 'YVTRANS' USING JTAB MODE 'A' MESSAGES INTO KTAB.

LOOP AT KTAB.

IF KTAB-MSGTYP = 'I' OR KTAB-MSGNR = 000.

WRITE: /1 'vendor', 15 ITAB-LIFNR, 25 'INSERTED'.

ELSEIF

KTAB-MSGTYP ='E' OR KTAB-MSGNR = 001.

WRITE: /1 'vendor', 15 ITAB-LIFNR, 25 'NOT INSERTED'.

ENDIF.

<b>REFRESH KTAB."ERROR IN THIS LINE 'YOU MAY NOT

"Delete or overwrite table 'ktab' with in a loop through itself</b>

ENDLOOP.

ENDLOOP.

FORM SUB USING A B.

CLEAR JTAB.

JTAB-PROGRAM = A.

JTAB-DYNPRO = B.

JTAB-DYNBEGIN = 'X'.

APPEND JTAB.

ENDFORM.

FORM SUB1 USING C D.

CLEAR JTAB.

JTAB-FNAM = C.

JTAB-FVAL = D.

APPEND JTAB.

ENDFORM.