Error msgs in call transaction mode using RFBIBL00
Hi Gurus,
I am using FRBIBL00 program in call transaction mode to post FI documents and i am getting the below msgs:
FB012 Session 1 : Special character for 'empty field' is /
F5201 Posting period 008 0831 is not open
FB012 Session 1 : Special character for 'empty field' is /
FB007 Session 1 session name TEST1 was opened
FB008 Session 1 session name TEST1 was created
Please help me in resolving this.
Regards'
Madan.
Hi Prabhu/Vishwa,
Thanks for your quick response.
I am calling RFBIBL00 in "call transaction" mode to post FI ocs.
here is the format of the file written on to the application server.
Session - 0TEST1 100KBQ9FCEC 00000000X/
Header - 1FB01 20080816SAYBP120080831/ CHF / / 20080831/ / / / /
Item level - 2BBSEG 50/ // 79378 / / / IU// /
2BBSEG 40/ // 79378 / / / IU// /
2BBSEG 50/ // 42266 / / / IU// /
2BBSEG 40/ // 42266 / / / IU// /
The file format is correct, it is working fine in case of Batch session method.
I want it to work for both Batch session and Call transaction.
Please help me to reslove call transaction mode.
Regards'
Madan.
Similar Messages
-
Type of error in the log file while using using call transaction mode u2018Eu2019
Hi Gurus,
Please Answer for this qusetion urgently
what type of error exactly you will be seeing in the log file while using call transaction mode u2018Eu2019?
Thanks/
Radha.Hi,
Can you be clear.
In call transaction , no error logs are created, you have to handle the errors explicitly using the structure BDCMSGCOLL.
Whenever you use E mode then if the transaction encounters any of the errors i.e. data type mismatching or invalid values etc, it will stop at that screen.
You can handle the errors in call transaction in the following method.
create a table using the structure BDCMSGCOLL.
then
loop at ......
CALL TRANSACTION 'XK01' USING I_BDCDATA MODE 'N' UPDATE 'S' MESSAGES INTO I_MESGTAB.
endloop.
SORT I_MESGTAB BY MSGID MSGV1 ASCENDING.
DELETE ADJACENT DUPLICATES FROM I_MESGTAB.
LOOP AT I_MESGTAB.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = I_MESGTAB-MSGID
LANG = I_MESGTAB-MSGSPRA
NO = I_MESGTAB-MSGNR
V1 = I_MESGTAB-MSGV1
V2 = I_MESGTAB-MSGV2
V3 = I_MESGTAB-MSGV3
V4 = I_MESGTAB-MSGV4
IMPORTING
MSG = MESG1.
IF I_MESGTAB-MSGTYP = 'S' .
WA_SUCCMESG-MESG = MESG1.
APPEND WA_SUCCMESG TO I_SUCCMESG.
else IF I_MESGTAB-MSGTYP = 'E' .
WA_ERRMESG-MESG = MESG1.
APPEND WA_ERRMESG TO I_ERRMESG.
ENDIF.
ENDLOOP.
Hope this is clear.
Thanks and Regards. -
How will you collect error records in call transaction method
hello
how will handle errors in call transaction method...DATA: BEGIN OF ITAB OCCURS 0,
F1(10) TYPE C,
F2(18) TYPE C,
F3(15) TYPE C,
END OF ITAB.
DATA: BEGIN OF ITAB1 OCCURS 0,
F1(2) TYPE C,
F2(10) TYPE C,
F3(18) TYPE C,
F4(15) TYPE C,
END OF ITAB1.
DATA : ITAB2 LIKE ITAB OCCURS 0 WITH HEADER LINE,
IT_SUCCESS LIKE ITAB OCCURS 0 WITH HEADER LINE,
IT_ERROR LIKE ITAB OCCURS 0 WITH HEADER LINE.
DATA : BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
T_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
CALL TRANSACTION 'VA01' USING BDCDATA MODE 'N' UPDATE 'S'
MESSAGES INTO T_BDCMSGCOLL.
PERFORM ERRORHANDLING TABLES ITAB2 USING COUNT1 COUNT2.
REFRESH BDCDATA.
FORM ERRORHANDLING TABLES P_ITAB2 STRUCTURE ITAB
USING P_COUNT1
P_COUNT2.
IF SY-SUBRC <> 0.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = SY-MSGID
LANG = '-D'
NO = SY-MSGNO
V1 = SY-MSGV1
V2 = SY-MSGV2
V3 = SY-MSGV3
V4 = SY-MSGV4
IMPORTING
MSG = T_BDCMSGCOLL
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF P_COUNT1 = 1.
WRITE : / ' The records not loaded are '.
P_COUNT1 = P_COUNT1 + 1.
ENDIF.
LOOP AT P_ITAB2.
WRITE : / P_ITAB2-F1 , P_ITAB2-F2 , P_ITAB2-F3 .
CLEAR P_ITAB2.
DELETE P_ITAB2 INDEX 1.
ENDLOOP.
WRITE : /.
ELSE.
IF P_COUNT2 = 1.
WRITE : / ' The records loaded are '.
P_COUNT2 = P_COUNT2 + 1.
ENDIF.
LOOP AT P_ITAB2.
WRITE : / P_ITAB2-F1 , P_ITAB2-F2 , P_ITAB2-F3 .
CLEAR P_ITAB2.
DELETE P_ITAB2 INDEX 1.
ENDLOOP.
WRITE : /.
ENDIF.
ENDFORM. " errorhandling -
Error in BDC CALL TRANSACTION METHOD..
hai i got an error in doing BDC CALL TRANSACTION METHOD
Error:diffrent number of parameters in FORM and PERFORM(routine :FILL_SCREEN_DETAILS:,number of formal parameters :3,number of actual parameters:1)
PROGRAM
REPORT ZDEMO_UPLOAD_COST_CENTER_DATA.
DATA:BEGIN OF WA_DATA,
KOKRS TYPE KOKRS,"CONTROLLING AREA
KOSTL TYPE KOSTL,"COST CENTER
DATAB TYPE DATAB,"START DATE
DATBI TYPE DATBI,"END DATE
KTEXT TYPE KTEXT,"NAME
LTEXT TYPE LTEXT,"DESCRIPTION
VERAK TYPE VERAK,"PERSON RESPONSIBLE
KOSAR TYPE KOSAR, "COST CENTER CATEGORY
KHINR TYPE KHINR,"HIERARCHY AREA
BUKRS TYPE BUKRS,"COMPANY CODE
GSBER TYPE GSBER,"BUISINESS AREA
END OF WA_DATA.
*TYPES:IT_DATA TYPE STANDARD TABLE OF TY_DATA.
DATA:IT_DATA LIKE TABLE OF WA_DATA,
IT_BDCDATA LIKE TABLE OF BDCDATA,
WA_BDCDATA LIKE LINE OF IT_BDCDATA,
IT_BDCMSGCOLL LIKE TABLE OF BDCMSGCOLL,
WA_BDCMSGCOLL LIKE LINE OF IT_BDCMSGCOLL.
DATA :V_FILE TYPE STRING.
CONSTANTS :C_KS01(4) TYPE C VALUE 'KS01',
C_X(1) TYPE C VALUE 'X',
C_A(1) TYPE C VALUE 'A'.
SELECTION-SCREEN:BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
PARAMETER :PA_FILE LIKE FC03TAB-PL00_FILE OBLIGATORY.
SELECTION-SCREEN:END OF BLOCK B1.
*AT SELECTION SCREEN ON VALUE REQUEST
* EVENT TO BE TRIGGERED WHEN WE PRESS F4.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR PA_FILE.
PERFORM GET_F4_FOR_FILE USING PA_FILE.
* START-OF-SELECTION
START-OF-SELECTION.
*WE NEED TO MOVE THE PA_FILE INTO ANOTHER VARIABLE OF TYPE STRING
*AS WE ARE GOING TO USE THE SAME IN THE FM:GUI_UPLOAD THERE THE FILE TYPE IS STRING
V_FILE = PA_FILE.
PERFORM UPLOAD_FILE_T0_ITAB USING V_FILE CHANGING IT_DATA.
*FILL THE SCREEN AND FIELD DETAILS
LOOP AT IT_DATA INTO WA_DATA.
REFRESH IT_BDCDATA.
*FIRST SCREEN DETAILS
PERFORM FILL_SCREEN_DETAILS USING 'SAPLKMA1''0200''X'.
*CURSOR DETAILS
PERFORM FILL_FIELD_DETAILS USING 'BDC_CURSOR''CSKSZ-KOKRS'.
*OK CODE DETAILS
PERFORM FILL_FIELD_DETAILS USING 'BDC_OKCODE''/00'.
*CONTROLLING AREA
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-KOKRS' WA_DATA-KOKRS.
*COST CENTER DETAILS
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-KOSTL' WA_DATA-KOSTL.
* START DATE
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-DATAB_ANFO' WA_DATA-DATAB.
*END DATE
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-DATBI_ANFO' WA_DATA-DATBI.
*NEXT SCREEN DETAILS
PERFORM FILL_SCREEN_DETAILS USING 'SAPLKMA1''0299''X'.
*OKCODE DETAILS
PERFORM FILL_FIELD_DETAILS USING 'BDC_OKCODE''=BU'.
*SUBSCRN FIELD DETAILS
PERFORM FILL_FIELD_DETAILS USING 'BDC_SUBSCR''BDC-SUBSCR'.
*CURSOR DETAILS
PERFORM FILL_FIELD_DETAILS USING 'BDC_CURSOR''CSKSZ-WAERS'.
*NAME
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-KTEXT' WA_DATA-KTEXT.
*DESCRIPTION
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-LTEXT' WA_DATA-LTEXT.
*PERSON RESPONSIBLE
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-VERAK' WA_DATA-VERAK.
*COST CENTER CATEGORY
PERFORM FILL_FIELD_DETAILS USING'CSKSZ-KOSAR' WA_DATA-KOSAR.
*HIERARCHY AREA
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-KHINR' WA_DATA-KHINR.
*COMPANY CODE
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-BUKRS' WA_DATA-BUKRS.
*BUISINESS AREA
PERFORM FILL_FIELD_DETAILS USING 'CSKSZ-GSBER' WA_DATA-GSBER.
*CALL THE TRANSACTION
CALL TRANSACTION C_KS01 USING IT_BDCDATA
MODE C_A "ALL SCREENS
"N-NO SCREENS
"E-ERROR SCREENS ONLY
UPDATE 'A' "ASYNCHRONOUS
"SYNCHRONOUS
MESSAGES INTO IT_BDCMSGCOLL.
ENDLOOP.
* FORM FILL SCREEN_DETAILS
FORM FILL_SCREEN_DETAILS USING PROGRAM LIKE BDCDATA-PROGRAM
DYNPRO LIKE BDCDATA-DYNPRO
DYNBEGIN LIKE BDCDATA-DYNBEGIN.
CLEAR WA_BDCDATA.
WA_BDCDATA-PROGRAM = PROGRAM.
WA_BDCDATA-DYNPRO = DYNPRO.
WA_BDCDATA-DYNBEGIN = DYNBEGIN.
APPEND WA_BDCDATA TO IT_BDCDATA.
ENDOFRM.
* FORM FILL_FIELD_DETAILS
FORM FILL_FIELD_DETAILS USING FNAM FVAL.
CLEAR WA_BDCDATA.
WA_BDCDATA-FNAM = FNAM.
WA_BDCDATA-FVAL = FVAL.
APPEND WA_BDCDATA TO IT_BDCDATA.
ENDFORM.
* FORM GETE_F4_FOR_FILE
*DISPLAY ALL THE FILES IN THE SYSTEM FOR SELECTION
*P_PA_FILE NAME OF THE FILE
FORM GET_F4_FOR_FILE USING P_PA_FILE.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
* EXPORTING
* PROGRAM_NAME = SYST-REPID
* DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = 'PA_FILE'
* STATIC = ' '
* MASK = ' '
CHANGING
FILE_NAME = PA_FILE.
* EXCEPTIONS
* MASK_TOO_LONG = 1
* OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM.
* FORM UPLOAD_FILE_TO_ITAB
* FP_V_FILE = FILE NAME
*FP_IT_DATA = INTERNAL TABLE TO STORE THE DATA
FORM UPLOAD_FILE_TO_ITAB USING FP_V_FILE CHANGING FP_IT_DATA LIKE IT_DATA.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = FP_V_FILE
HAS_FIELD_SEPARATOR = ' X'
TABLES
DATA_TAB =FP_IT_DATA.
ENDFORM.
Edited by: saifudheenc on Aug 7, 2010 5:09 PMhi
try to add spaces between parameters :
example:
PERFORM FILL_SCREEN_DETAILS USING 'SAPLKMA1' '0200' 'X'.
regards,darek -
Call transaction mode 'A' and mode 'N'
Hi all
In my below mentioned code statement bdc call transaction eg33 mode 'A' is working fine in both programs main program and called(submit) program (highlighted here). But if I give mode 'N' in both called and calling program call transaction the called program using submit is not at all called. Suggest me what to do if i want to run it in background.Write now its runing in foreground and user has to press enter many times which i want to avoid.
REPORT zac_eg33 NO STANDARD PAGE HEADING
LINE-SIZE 100.
TABLES: EABL,
BUT000,
ZISUH0003.
DATA: IT_STATUS TYPE ZISUH0003.
DATA: G_INDEX TYPE I,
G_START_COL TYPE I VALUE '1', "start column
G_START_ROW TYPE I VALUE '14', "start row
G_END_COL TYPE I VALUE '18', "maximum column
G_END_ROW TYPE I VALUE '75', "maximum row
G_TEXT(20), "stores error messages
G_PAGES TYPE I,
G_CURRENT_PAGE TYPE I,
G_COUNT LIKE SY-DBCNT.
data: l_file type file_table,
file1 type string,
l_title type string,
LENGTH TYPE I,
FILES type filetable,
SUBRC type i,
STR_FILE type STRING,
D_FILE type RLGRAP-FILENAME,
filename TYPE String,
L_itab_date(10).
FIELD-SYMBOLS : <FS>.
DATA msgtext(80).
DATA: IT_EXCEL LIKE STANDARD TABLE OF ALSMEX_TABLINE WITH HEADER LINE,
IT_MESS TYPE STANDARD TABLE OF BDCMSGCOLL WITH HEADER LINE.
TYPES: BEGIN OF TY_OPEN,
HAUS LIKE REG30-HAUS,
EADAT(10),
GERAETNEU LIKE REG30-GERAETNEU,
MESSDRCK LIKE REG30-MESSDRCK,
ZWSTANDCE LIKE REG30-ZWSTANDCE,
XYZ LIKE EGPLD-DEVLOC,
END OF TY_OPEN.
DATA : T_ANLAGE LIKE EANLD-ANLAGE,
VSTELLE LIKE EVBS-VSTELLE,
S_ANLAGE LIKE EANLD-ANLAGE,
temp_c(7).
DATA: IT_OPEN TYPE STANDARD TABLE OF TY_OPEN WITH HEADER LINE.
DATA: BDCDATA1 TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE.
SELECTION-SCREEN BEGIN OF BLOCK 1 WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN SKIP 2.
PARAMETERS: P_FILE like RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN SKIP 2.
SELECTION-SCREEN END OF BLOCK 1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE .
PERFORM GET_FILE_NAME.
MOVE FILENAME TO P_FILE.
*START-OF-SELECTION.
*CLEAR IT_EXCEL.
START-OF-SELECTION.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME = p_file
I_BEGIN_COL = 1 "VF_START_COL
I_BEGIN_ROW = 2 "VF_START_ROW
I_END_COL = 5 "VF_END_COL
I_END_ROW = 10000 "VF_END_ROW
TABLES
INTERN = IT_EXCEL
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF IT_EXCEL[] IS INITIAL.
G_TEXT = 'No Data Uploaded'.
ELSE.
SORT IT_EXCEL BY ROW COL.
LOOP AT IT_EXCEL.
MOVE : IT_EXCEL-COL TO G_INDEX.
ASSIGN COMPONENT G_INDEX OF STRUCTURE IT_OPEN TO <FS>.
MOVE IT_EXCEL-VALUE TO <FS>.
AT END OF ROW.
IF NOT IT_OPEN IS INITIAL.
APPEND IT_OPEN." TO IT_LINE.
CLEAR IT_OPEN.
CLEAR IT_EXCEL.
ENDIF.
ENDAT.
ENDLOOP.
ENDIF.
REFRESH IT_EXCEL.
ULINE.
FORMAT COLOR 3 ON.
WRITE: /1 sy-vline ,
2 'Material No.' ,
25 sy-vline,
2 'Logs' ,
100 sy-vline.
uline.
FORMAT COLOR OFF.
LOOP AT IT_OPEN.
REFRESH BDCDATA1.
clear : temp_c.
move it_open-MESSDRCK to temp_c.
condense : temp_c.
PERFORM MAP1.
*CALL TRANSACTION 'EG33' USING BDCDATA1 MODE 'A' MESSAGES INTO IT_MESS.
GET PARAMETER ID 'GEP' FIELD it_open-XYZ.
SET PARAMETER ID 'IFL' FIELD it_open-XYZ.
*MESSAGE X003(IA) INTO msgtext.
*IF MSGTEXT = 'Only single installation is allowed at functional location &'.
*EXIT.
*ELSE.
SUBMIT ZIL02_BDC and return.*
ENDIF.
DATA: G_INSNO LIKE IT_OPEN-HAUS.
IF NOT IT_MESS[] IS INITIAL.
G_INSNO = IT_OPEN-HAUS.
PERFORM GET_MESSAGES TABLES IT_MESS USING G_INSNO." IT_LINE.
ENDIF.
READ TABLE IT_MESS WITH KEY MSGTYP = 'E'.
IF SY-SUBRC NE 0.
READ TABLE IT_MESS WITH KEY MSGTYP = 'S' MSGNR = '622'.
IF SY-SUBRC EQ 0.
SELECT SINGLE VSTELLE FROM EVBS INTO VSTELLE WHERE HAUS = IT_OPEN-HAUS.
SELECT SINGLE ANLAGE FROM EANL INTO T_ANLAGE WHERE VSTELLE = VSTELLE.
MOVE T_ANLAGE TO IT_STATUS-ANLAGE.
MOVE 'X' TO IT_STATUS-RFC.
*perform get_date_format using IT_OPEN-EADAT.
MOVE IT_OPEN-EADAT TO IT_STATUS-ADATE.
SELECT SINGLE ANLAGE FROM ZISUH0003 INTO S_ANLAGE WHERE ANLAGE =
T_ANLAGE.
IF SY-SUBRC EQ 4.
INSERT ZISUH0003 FROM IT_STATUS.
ELSE.
UPDATE ZISUH0003 FROM IT_STATUS.
ENDIF.
ENDIF.
ENDIF.
REFRESH IT_MESS.
CLEAR IT_MESS.
ENDLOOP.
*PERFORM BDC_OPEN_READING.
MESSAGE S013(ZPS).
*& Form GET_FILE_NAME
text
--> p1 text
<-- p2 text
FORM GET_FILE_NAME .
REFRESH FILES.
call method cl_gui_frontend_services=>file_open_dialog
exporting
window_title = l_title
changing
file_table = files
rc = subrc
exceptions
file_open_dialog_failed = 1
cntl_error = 2
error_no_gui = 3
others = 4.
check sy-subrc = 0.
loop at files into l_file.
str_file = l_file.
move str_file to filename.
exit.
endloop.
ENDFORM. " GET_FILE_NAME
*& Form BDC_OPEN_READING
text
--> p1 text
<-- p2 text
FORM BDC_OPEN_READING .
*DATA: G_INSNO LIKE IT_OPEN-HAUS.
*IF NOT IT_MESS[] IS INITIAL.
G_INSNO = IT_OPEN-HAUS.
PERFORM GET_MESSAGES TABLES IT_MESS USING G_INSNO." IT_LINE.
*ENDIF.
*READ TABLE IT_MESS WITH KEY MSGTYP = 'E'.
*IF SY-SUBRC NE 0.
*READ TABLE IT_MESS WITH KEY MSGTYP = 'S' MSGNR = '622'.
*IF SY-SUBRC EQ 0.
*SELECT SINGLE VSTELLE FROM EVBS INTO VSTELLE WHERE HAUS = IT_OPEN-HAUS.
*SELECT SINGLE ANLAGE FROM EANL INTO T_ANLAGE WHERE VSTELLE = VSTELLE.
*MOVE T_ANLAGE TO IT_STATUS-ANLAGE.
*MOVE 'X' TO IT_STATUS-RFC.
**perform get_date_format using IT_OPEN-EADAT.
*MOVE IT_OPEN-EADAT TO IT_STATUS-ADATE.
*SELECT SINGLE ANLAGE FROM ZISUH0003 INTO S_ANLAGE WHERE ANLAGE =
*T_ANLAGE.
IF SY-SUBRC EQ 4.
INSERT ZISUH0003 FROM IT_STATUS.
ELSE.
UPDATE ZISUH0003 FROM IT_STATUS.
ENDIF.
ENDIF.
ENDIF.
REFRESH IT_MESS.
CLEAR IT_MESS.
*ENDLOOP.
ENDFORM. " BDC_OPEN_READING
Start new screen *
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR BDCDATA1.
BDCDATA1-PROGRAM = PROGRAM.
BDCDATA1-DYNPRO = DYNPRO.
BDCDATA1-DYNBEGIN = 'X'.
APPEND BDCDATA1.
ENDFORM.
Insert field *
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR BDCDATA1.
BDCDATA1-FNAM = FNAM.
BDCDATA1-FVAL = FVAL.
APPEND BDCDATA1.
ENDIF.
ENDFORM.
*& Form MAP1
text
--> p1 text
<-- p2 text
FORM MAP1 .
perform bdc_dynpro using 'SAPLE30D' '0100'.
perform bdc_field using 'BDC_CURSOR'
'REG30-GERAETNEU'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'REG30-HAUS'
IT_OPEN-HAUS. "'100000000033'.
perform bdc_field using 'REG30-EADAT'
IT_OPEN-EADAT. "'18.02.2006'.
perform bdc_field using 'REG30-GERAETNEU'
IT_OPEN-GERAETNEU. "'66a'.
perform bdc_dynpro using 'SAPLE30D' '0220'.
perform bdc_field using 'BDC_CURSOR'
'REG30-TEMP_AREA(02)'.
perform bdc_field using 'BDC_OKCODE'
'=SAVE'.
perform bdc_field using 'REG30-MESSDRCK'
temp_c. "IT_OPEN-MESSDRCK'0.0125'.
perform bdc_field using 'REG30-GERWECHS'
'05'.
perform bdc_field using 'REG30-ANZDAYSOFPERIOD(01)'
'30'.
perform bdc_field using 'REG30-ZWSTANDCE(01)'
IT_OPEN-ZWSTANDCE. "'10'.
perform bdc_field using 'REG30-ZWSTANDCE(02)'
'0'.
perform bdc_field using 'REG30-PERVERBR(01)'
'0'.
perform bdc_field using 'REG30-PERVERBR(02)'
'0'.
perform bdc_field using 'REG30-TEMP_AREA(01)'
'0001'.
perform bdc_field using 'REG30-TEMP_AREA(02)'
'0001'.
perform bdc_field using 'REG30-PR_AREA_AI(01)'
'0001'.
perform bdc_field using 'REG30-PR_AREA_AI(02)'
'0001'.
ENDFORM. " MAP1
*& Form get_date_format
text
-->P_IT_ORDER_TABLE_C_DATE text
FORM get_date_format USING L_ITAB_DATE." LIKE SY-DATUM.
data: d_temp(4),
m_temp(2),
y_temp(4).
*move L_ITAB_DATE to L_ITAB_DATE.
y_temp = L_ITAB_DATE(4).
m_temp = L_ITAB_DATE+4(2).
d_temp = L_ITAB_DATE+6(2).
CONCATENATE d_temp '.' m_temp '.' y_temp into L_ITAB_DATE.
ENDFORM. " get_date_format
*& Form GET_MESSAGES
text
-->P_IT_MESS text
-->P_G_INSNO text
FORM GET_MESSAGES TABLES IT_MESS STRUCTURE BDCMSGCOLL USING G_INSNO .
TABLES T100.
DATA: L_MSTRING(255).
LOOP AT IT_MESS WHERE MSGTYP = 'E' OR MSGTYP = 'S'.
SELECT SINGLE * FROM T100 WHERE SPRSL = IT_MESS-MSGSPRA
AND ARBGB = IT_MESS-MSGID
AND MSGNR = IT_MESS-MSGNR.
IF SY-SUBRC = 0.
L_MSTRING = T100-TEXT.
IF L_MSTRING CS '&1'.
REPLACE '&1' WITH IT_MESS-MSGV1 INTO L_MSTRING.
REPLACE '&2' WITH IT_MESS-MSGV2 INTO L_MSTRING.
REPLACE '&3' WITH IT_MESS-MSGV3 INTO L_MSTRING.
REPLACE '&4' WITH IT_MESS-MSGV4 INTO L_MSTRING.
ELSE.
REPLACE '&' WITH IT_MESS-MSGV1 INTO L_MSTRING.
REPLACE '&' WITH IT_MESS-MSGV2 INTO L_MSTRING.
REPLACE '&' WITH IT_MESS-MSGV3 INTO L_MSTRING.
REPLACE '&' WITH IT_MESS-MSGV4 INTO L_MSTRING.
ENDIF.
CONDENSE L_MSTRING.
ENDIF.
CONDENSE G_INSNO.
CONCATENATE 'For' ' ' G_INSNO ',' L_MSTRING INTO L_MSTRING SEPARATED BY SPACE.
FORMAT COLOR 2 ON.
*IF IT_MESS-MSGTYP = 'S' AND IT_MESS-MSGNR = '622'.
*WRITE: 1 sy-vline,
L_MSTRING under 'Error Messages',
100 sy-vline.
*ULINE.
*ELSEIF IT_MESS-MSGTYP = 'E'.
WRITE: 1 sy-vline,
L_MSTRING under 'Logs',
100 sy-vline.
ULINE.
*ENDIF.
ENDLOOP.
ENDFORM. " GET_MESSAGES
code for ZIL02_BDC
.report ZIL02_BDC
no standard page heading line-size 255.
*data : XYZ LIKE EGPLD-DEVLOC.
TYPES: BEGIN OF TY_OPEN,
HAUS LIKE REG30-HAUS,
EADAT(10),
GERAETNEU LIKE REG30-GERAETNEU,
MESSDRCK LIKE REG30-MESSDRCK,
ZWSTANDCE LIKE REG30-ZWSTANDCE,
XYZ LIKE EGPLD-DEVLOC,
END OF TY_OPEN.
DATA: IT_OPEN TYPE STANDARD TABLE OF TY_OPEN WITH HEADER LINE.
DATA: BDCDATA TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE.
GET PARAMETER ID 'GEP' FIELD it_open-XYZ.
DATA : IT_MESS TYPE STANDARD TABLE OF BDCMSGCOLL WITH HEADER LINE.
*include bdcrecx1.
start-of-selection.
perform bdc_dynpro using 'SAPMILO0' '1110'.
perform bdc_field using 'BDC_CURSOR'
'IFLO-TPLNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'IFLO-TPLNR'
it_open-xyz.
perform bdc_field using 'RILO0-TPLKZ'
'AO_GP'.
perform bdc_dynpro using 'SAPMILO0' '2100'.
perform bdc_field using 'BDC_CURSOR'
'IFLO-PLTXT'.
perform bdc_field using 'BDC_OKCODE'
'=T\04'.
perform bdc_field using 'IFLO-PLTXT'
'DEVICE LOCATION'.
perform bdc_dynpro using 'SAPMILO0' '2100'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'IFLO-PLTXT'
'DEVICE LOCATION'.
perform bdc_field using 'BDC_CURSOR'
'ITOBATTR-EINZL'.
perform bdc_field using 'ITOBATTR-IEQUI'
'X'.
perform bdc_field using 'ITOBATTR-EINZL'
'X'.
perform bdc_dynpro using 'SAPMILO0' '2100'.
perform bdc_field using 'BDC_OKCODE'
'=BU'.
perform bdc_field using 'IFLO-PLTXT'
'DEVICE LOCATION'.
perform bdc_field using 'BDC_CURSOR'
'ITOBATTR-EINZL'.
perform bdc_field using 'ITOBATTR-IEQUI'
'X'.
perform bdc_field using 'ITOBATTR-EINZL'
'X'.
CALL TRANSACTION 'IL02' USING BDCDATA MODE 'A' MESSAGES INTO IT_MESS.
Start new screen *
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR BDCDATA.
BDCDATA-PROGRAM = PROGRAM.
BDCDATA-DYNPRO = DYNPRO.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
ENDFORM. "BDC_DYNPRO
Insert field *
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDIF.
ENDFORM. "BDC_FIELDHi Michelle,
No I havent tried this way. How to do that can you tell me ?
Regards
Anu -
How to track error message when calling Transaction: va02
Hi all,
As we all know, when we change an order through T-Code: VA02, system will update modified data to corresponding database. Meanwhile, if our operate is not legal or incorrect on T-code: VA02, system will call corresponding error messages to us.
Now I want to know:
1. how to track the error messages
2. Is there any Tcode such as: SM21 that we can see the message logs after our operation?
Thanks.Hi ,
message table for call transaction
DATA: BEGIN OF G_T_MSG OCCURS 0.
INCLUDE STRUCTURE BDCMSGCOLL.
DATA: END OF G_T_MSG.
Exucute transaction via Call Transaction
CALL TRANSACTION 'FB01'
USING g_t_bdcdata
MODE g_l_mode
UPDATE 'S'
MESSAGES INTO g_t_msg .
errors will be stpored in the table g_t_msg ..
Thanks . -
Bdc error message in call transaction
Hi all,
Can anyone send me a program where they have used the ' BDCMSGCOLL ' structure and format_message FM. I need only complete program, please don't send sample codings or just a part of coding.
Points are assured.
Thanks and regards,
subbu.Hi,
Here is the BDC recording program for updating a custom field (out of 3 custom fields) in CALL TRANSACTION method depends upon which value is given in text file, based on that the corresponding radio button will be selected for that PERNR in PA30.(For 3 custom fields in PA0007) created.
Flat file contains 1) PENR 2) Custom field1 3) CF2 4) CF3.
The values are like [ '636363', ' ', 'X', ' ' ] .
Here is the complete program using BDCMSGCOLL structure.
report Y0007_BDC NO STANDARD PAGE HEADING MESSAGE-ID RP LINE-SIZE 180." LINE-COUNT 28.
DATA DECLARATION *
TYPES : BEGIN OF TY_0007,
PERNR TYPE PERNR, " PERNR
SCHKZ TYPE SCHKN, " Work Schudule
ZTERF TYPE PT_ZTERF, " Time Magmt Status
R1 TYPE C,
R2 TYPE C,
R3 TYPE C,
END OF TY_0007.
DATA : INT_0007 TYPE STANDARD TABLE OF TY_0007 WITH HEADER LINE,
WA_0007 TYPE TY_0007.
DATA: P_FNAME TYPE IBIPPARMS-PATH.
DATA : begin of int_out occurs 0,
pernr type persno,
mesg(300),
end of int_out.
DATA : BEGIN OF int_err occurs 0,
pernr type persno,
mesg(300),
end of int_err.
include bdcrecx1.
SELECTION SCREEN *
SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME.
PARAMETERS : P_PATH TYPE string.
SELECTION-SCREEN END OF BLOCK B.
SELECTION-SCREEN END OF BLOCK A.
CALL FUNCTION FOR INPUT FILE NAME *
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_path.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_FNAME.
p_path = p_fname.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
start-of-selection.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = P_PATH
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = INT_0007
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
perform open_group.
*Looping pernr values*
LOOP AT INT_0007 INTO WA_0007.
perform bdc_dynpro using 'SAPMP50A' '1000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
*INSERTING THE PERNR VALUE*
perform bdc_field using 'RP50G-PERNR'
WA_0007-PERNR. "'00001011'.
perform bdc_field using 'RP50G-TIMR6'
'X'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-CHOIC'.
perform bdc_field using 'RP50G-CHOIC'
'0007'.
perform bdc_dynpro using 'SAPMP50A' '1000'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-PERNR'.
perform bdc_field using 'BDC_OKCODE'
'=INS'.
perform bdc_field using 'RP50G-PERNR'
WA_0007-PERNR. "'1011'.
perform bdc_field using 'RP50G-TIMR6'
'X'.
perform bdc_field using 'RP50G-CHOIC'
'Planned Working Time - 0007'.
perform bdc_dynpro using 'MP000700' '2000'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0007-BEGDA'
'12/01/2007'.
perform bdc_field using 'P0007-ENDDA'
'12/31/9999'.
*INSERTING THE WORK SCHEDULE*
perform bdc_field using 'P0007-SCHKZ'
WA_0007-SCHKZ. "'N12'.
perform bdc_field using 'P0007-ZTERF'
WA_0007-ZTERF. "'1'.
*INSERTING THE OVERTIME CLASS*
IF WA_0007-R1 = 'X'.
perform bdc_field using 'ZHQ0007-OVT_ELGBLE'
'X'.
ELSEIF WA_0007-R2 = 'X'.
perform bdc_field using 'ZHQ0007-OVT_NOTELG'
'X'.
ELSEIF WA_0007-R3 = 'X'.
perform bdc_field using 'ZHQ0007-OVT_TMPELG'
'X'.
ENDIF.
*BDC output for transaction code*
perform bdc_transaction using 'pa30'. (STD)
perform f_bdc_output using 'pa30'. (write on our own)
ENDLOOP.
**Writing the output**
PERFORM f_write_output.
perform close_group.
*& Form f_write_output
text
--> p1 text
<-- p2 text
FORM f_write_output .
*For Successfull Records*
if int_OUT[] IS NOT INITIAL.
WRITE : /50 TEXT-004 color 4.
write : / sy-uline.
LOOP AT INT_OUT.
WRITE : /40 int_out-pernr,50 '-->',54 int_out-mesg.
ENDLOOP.
ENDIF.
write / sy-uline.
SKIP 2.
*For Error records*
if int_err[] IS NOT INITIAL.
WRITE /53 text-005 color 6.
write / sy-uline.
LOOP AT int_err.
write :/40 int_err-pernr,50 '-->',54 int_err-mesg.
ENDLOOP.
endif.
write / sy-uline.
ENDFORM. " f_write_output
*& Form f_bdc_output
text
-->P_0369 text
FORM f_bdc_output USING VALUE(P_0369).
DATA: L_MSTRING(480).
DATA: L_SUBRC LIKE SY-SUBRC.
REFRESH MESSTAB.
*Capturing the output message*
CALL TRANSACTION 'PA30' USING BDCDATA
MODE CTUMODE
UPDATE CUPDATE
MESSAGES INTO MESSTAB.
L_SUBRC = SY-SUBRC.
IF SMALLLOG <> 'X'.
LOOP AT MESSTAB.
*Selection for capturing the text for records*
SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA
AND ARBGB = MESSTAB-MSGID
AND MSGNR = MESSTAB-MSGNR.
IF SY-SUBRC = 0.
*Moving the text from T100 to local variable*
L_MSTRING = T100-TEXT.
IF ( MESSTAB-MSGTYP = 'W' or
MESSTAB-MSGTYP = 'S' OR
MESSTAB-MSGTYP = 'E' ).
*Moving the success records pernr and text to internal table*
IF MESSTAB-MSGTYP = 'S'.
INT_OUT-PERNR = WA_0007-PERNR.
INT_OUT-MESG = L_MSTRING.
APPEND INT_OUT.
CLEAR INT_OUT.
*Moving the success records pernr and text to internal table*
ELSEIF MESSTAB-MSGTYP = 'E'.
*For getting the error text exactly*
IF L_MSTRING CS '&1'.
REPLACE '&1' WITH MESSTAB-MSGV1 INTO L_MSTRING.
REPLACE '&2' WITH MESSTAB-MSGV2 INTO L_MSTRING.
REPLACE '&3' WITH MESSTAB-MSGV3 INTO L_MSTRING.
REPLACE '&4' WITH MESSTAB-MSGV4 INTO L_MSTRING.
ELSE.
REPLACE '&' WITH MESSTAB-MSGV1 INTO L_MSTRING.
REPLACE '&' WITH MESSTAB-MSGV2 INTO L_MSTRING.
REPLACE '&' WITH MESSTAB-MSGV3 INTO L_MSTRING.
REPLACE '&' WITH MESSTAB-MSGV4 INTO L_MSTRING.
ENDIF.
CONDENSE L_MSTRING.
INT_ERR-PERNR = WA_0007-PERNR.
INT_ERR-MESG = L_MSTRING.
APPEND INT_ERR.
CLEAR INT_ERR.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
SKIP.
ENDIF.
*& CALL FUNCTION 'BDC_OPEN_GROUP'
IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
IF E_GROUP_OPENED = ' '.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = E_GROUP
USER = E_USER
KEEP = E_KEEP
HOLDDATE = E_HDATE.
E_GROUP_OPENED = 'X'.
ENDIF.
*& CALL FUNCTION 'BDC_INSERT'
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'PA30'
TABLES
DYNPROTAB = BDCDATA.
*& CALL FUNCTION 'BDC_CLOSE_GROUP'
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
REFRESH BDCDATA.
ENDFORM. " f_bdc_output
Hope it helps u..
Kindly reward points if helpful
Regards,
Shanthi -
Error message during call transaction
Hi all,
I want to get the message type after calling the transaction method. I've simulated an input for error, and I expect that the returned message type should be 'E' or 'W'. But it (SY-MSGTY and msgtab-MSGTYP) still returns 'S' even there is error. What's wrong ?
Call transaction 'VL02N' USING BTAB MODE 'N' UPDATE 'S'.
messages into msgtab.CALL TRANSACTION tcode USING bdcdata
MODE ctumode
UPDATE cupdate
MESSAGES INTO messtab.
LOOP AT messtab.
msgtype = messtab-msgtyp.
Check what the actual tranaction is giving as message for eg. mm01 does give u a sucess message saying data for the matnr is already maintained. -
How to upload error records in call transaction method
Hi all,
While uploading data by using call transaction. If any errors occured, how can we process that error records to database.
If all records are processed. How can we display the recent records which where uploaded.
AdvanceThanks for all.Hi Bharath
You can handle this in many ways. But the easiest option to do is as below,
once the call transaction ends in error, move that particular upload data to a separate internal table. Then finally download all these data to an error file.
Besides this after processing all the records diplay the log for error. So that users can modify the error in the file and can use the same for uploading again. For the data that has been processed successfully you can display the log similarly.
The error as well as sucess messages can be obtained from the messages table.
CALL TRANSACTION TCODE USING BDCDATA
MODE CTUMODE
UPDATE CUPDATE
MESSAGES INTO MESSTAB.
Regards
Kathirvel -
Caprturing error log in call transaction?
hoiw can i get all the error in call transaction method, can any one guide me?
see this
*& Report ZMATERIAL
report zmaterial_fert.
selection-screen :begin of block bl1 with frame title text-001.
parameters : p_fname type rlgrap-filename,
p_lgort type rlgrap-filename,
p_update(1) default 'N',
p_bdcgrp(12) default 'MM_MASTER'.
selection-screen end of block bl1.
data: v_chr_opengrp type c,
r_matnr like mara-matnr,
r_werks like marc-werks,
v_str_fname type string.
data : begin of bdc_itab occurs 0.
include structure bdcdata.
data : end of bdc_itab.
data: begin of messtab occurs 0.
include structure bdcmsgcoll.
data: end of messtab.
data: begin of count,
inrec(9) type n, " input I_MATERIAL count
create(9) type n, " create count
error(9) type n, " error count
bdc(9) type n, " count of BDC creates
end of count.
data : begin of i_material occurs 0,
matnr(018) type c, "Material number
mbrsh(001) type c, "Industry sector
mtart(004) type c, "Material type
werks(004) type c, "Plant
lgort(004),
lgnum(004),
vkorg(004),
vtweg(002),
mtpos_mara(004),
spart(002),
dwerk(004),
taxkm(001),
versg(001),
MTPOS(004),
maktx(040) type c, "Material description
meins(003) type c, "Base unit of measure
matkl(009) type c, "Material group
bismt(018), "old material code
brgew(017) type c, "Gross weight
gewei(003) type c, "Weight unit
ntgew(017) type c, "Net weight
magrv(004) type c, "Matl grp pack matls
tragr(004), "
ladgr(004),
prctr(007),
EKGRP(004),
EKWSL(004),
chap(012),
mattype(001),
nogrs(001),
outmat(018),
valid(010),
curr(005),
netdeal(018),
asess(018),
disgr(004),
dismm(002) type c,
dispo(003),
LGORT(004),
disls(002),
maabc(001),
lgpro(004),
webaz(003),
lgfsb(004),
plifz(003),
STRGR(002),
fhori(003),
sfepr(004),
fevor(003),
sfcpf(006),
beskz(001),
perkz(001),
VRMOD(001),
VINT1(003),
VINT2(003),
ALTSL(001),
SBDKZ(001),
FERVOR(002),
SFCPF(006),
stprs(015),
AWSLS(006),
mtvfp(002),
STGRP(002),
*PRCTR(007),
bklas(004),
vprsv(001),
peinh(006),
*EKALR(015),
verpr(015),
hrkft(002),
*HKMAT,
kosgr(010),
*LOSGR(018),
end of i_material.
at selection-screen on value-request for p_fname.
call function 'KD_GET_FILENAME_ON_F4'
exporting
program_name = 'Z_MM_MATERIAL_UPLOAD'
dynpro_number = '1000'
field_name = 'P_FNAME'
changing
file_name = p_fname.
at selection-screen on value-request for p_lgort.
call function 'KD_GET_FILENAME_ON_F4'
exporting
program_name = 'ZMATERIAL'
dynpro_number = '1000'
field_name = 'P_FNAME'
changing
file_name = p_lgort.
start-of-selection.
if p_fname is initial.
message i016(rp) with 'Please enter a file name'.
leave list-processing.
else.
move p_fname to v_str_fname.
endif.
call function 'GUI_UPLOAD'
exporting
filetype = 'ASC'
filename = v_str_fname
has_field_separator = 'X'
tables
data_tab = i_material
exceptions
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
others = 17.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
loop at i_material.
r_matnr = i_material-matnr.
r_werks = i_material-werks.
add 1 to count-inrec.
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMMG1-MATNR'
i_material-matnr.
perform bdc_field using 'RMMG1-MTART'
i_material-mtart.
perform bdc_field using 'RMMG1-MBRSH'
i_material-mbrsh.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(17)'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MSICHTAUSW-KZSEL(01)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(02)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(03)'
'X'.
*PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(07)'
*'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(08)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(05)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(06)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(04)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(09)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(10)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(11)'
'X'.
*PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(12)'
*'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(13)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(14)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(15)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(16)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(17)'
'X'.
perform bdc_field using 'BDC_OKCODE' '=P+'.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(07)'.
perform bdc_field using 'MSICHTAUSW-KZSEL(01)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(02)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(03)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(04)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(05)'
'X'.
perform bdc_dynpro using 'SAPLMGMM' '0080'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-LGNUM'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'RMMG1-WERKS'
i_material-werks.
perform bdc_field using 'RMMG1-LGORT'
i_material-lgort.
perform bdc_field using 'RMMG1-LGNUM'
i_material-lgnum.
perform bdc_field using 'RMMG1-VKORG'
i_material-vkorg.
perform bdc_field using 'RMMG1-VTWEG'
i_material-vtweg.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARA-MEINS'
i_material-meins.
perform bdc_field using 'MARA-MATKL'
i_material-matkl.
perform bdc_field using 'MARA-BISMT'
i_material-bismt.
perform bdc_field using 'MARA-BRGEW'
i_material-brgew.
perform bdc_field using 'MARA-GEWEI'
i_material-gewei.
perform bdc_field using 'MARA-NTGEW'
i_material-ntgew.
perform bdc_field using 'MARA-MAGRV'
i_material-magrv.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARA-MEINS'
i_material-meins.
perform bdc_field using 'MARA-MATKL'
i_material-matkl.
perform bdc_field using 'MARA-SPART'
i_material-spart.
perform bdc_field using 'MVKE-DWERK'
i_material-dwerk.
perform bdc_field using 'BDC_CURSOR'
'MG03STEUER-TAXKM(01)'.
perform bdc_field using 'MG03STEUER-TAXKM(01)'
i_material-taxkm.
perform bdc_dynpro using 'SAPLMGMM' '4200'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARA-MTPOS_MARA'
i_material-mtpos_mara.
perform bdc_field using 'MVKE-versg'
i_material-versg.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARA-BRGEW'
i_material-brgew.
perform bdc_field using 'MARA-GEWEI'
i_material-gewei.
perform bdc_field using 'MARA-NTGEW'
i_material-ntgew.
perform bdc_field using 'BDC_CURSOR'
'MARA-MAGRV'.
perform bdc_field using 'MARA-MAGRV'
i_material-magrv.
perform bdc_field using 'MARA-TRAGR'
i_material-tragr.
perform bdc_field using 'MARC-LADGR'
i_material-ladgr.
perform bdc_field using 'MARC-PRCTR'
i_material-prctr.
perform bdc_field using 'MARC-MTVFP'
i_material-mtvfp.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'BDC_CURSOR'
'J_1IASSVAL-J_1IVALASS'.
perform bdc_field using 'J_1IMTCHID-J_1ICHID'
i_material-chap.
perform bdc_field using 'J_1IMTCHID-J_1ISUBIND'
'X'..
perform bdc_field using 'J_1IMTCHID-J_1ICAPIND'
i_material-mattype.
perform bdc_field using 'J_1IMTCHID-J_1IGRXREF'
i_material-nogrs.
perform bdc_field using 'J_1IMODDET-J_1IMOOM'
i_material-outmat.
perform bdc_field using 'J_1IASSVAL-J_1IFRDATE'
i_material-valid.
perform bdc_field using 'J_1IASSVAL-J_1IWAERS'
i_material-curr.
perform bdc_field using 'J_1IASSVAL-J_1IVALNDP'
i_material-netdeal.
perform bdc_field using 'J_1IASSVAL-J_1IVALASS'
i_material-asess.
*perform bdc_dynpro using 'SAPLMGMM' '4000'.
*perform bdc_field using 'BDC_OKCODE'
'/00'.
*perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
*perform bdc_field using 'MAKT-MAKTX'
I_MATERIAL-MAKTX.
*perform bdc_field using 'MVKE-MTPOS'
I_MATERIAL-MTPOS.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'ENTR'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARA-MEINS'
i_material-meins.
perform bdc_field using 'BDC_CURSOR'
'MARC-DISMM'.
perform bdc_field using 'MARC-DISMM'
i_material-dismm.
perform bdc_field using 'MARC-DISPO'
i_material-dispo.
perform bdc_field using 'MARC-DISLS'
i_material-disls.
perform bdc_field using 'MARC-MAABC'
i_material-maabc.
perform bdc_field using 'MARC-DISGR'
i_material-disgr.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARC-FHORI'
i_material-fhori.
perform bdc_field using 'MARC-LGPRO'
i_material-lgpro.
perform bdc_field using 'MARC-LGFSB'
i_material-lgfsb.
perform bdc_field using 'MARC-PLIFZ'
i_material-plifz.
*perform bdc_field using 'MARC-STRGR'
I_MATERIAL-STRGR.
perform bdc_field using 'MARC-BESKZ'
i_material-beskz.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
*perform bdc_field using 'MARC-STRGR'
I_MATERIAL-STRGR.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MARC-SAUFT'
'X'.
perform bdc_field using 'MARC-SFEPR'
i_material-sfepr.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'MArc-FEVOR'
i_material-fevor.
perform bdc_field using 'MARC-SFCPF'
i_material-sfcpf.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'BDC_CURSOR'
'MBEW-BKLAS'.
perform bdc_field using 'MBEW-BKLAS'
i_material-bklas.
perform bdc_field using 'MBEW-VPRSV'
i_material-vprsv.
perform bdc_field using 'MBEW-PEINH'
i_material-peinh.
perform bdc_field using 'MBEW-STPRS'
i_material-stprs.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
perform bdc_field using 'Mbew-kosgr'
i_material-kosgr.
perform bdc_field using 'Mbew-HKMAT'
'X'.
perform bdc_field using 'Mbew-HRKFT'
i_material-hrkft.
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MAKT-MAKTX'
i_material-maktx.
*perform bdc_field using 'Mbew-KOSGR'
I_MATERIAL-KOSGR.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
perform post_transaction.
refresh bdc_itab.
clear bdc_itab.
endloop.
end-of-selection.
perform finalization.
Start new screen *
form bdc_dynpro using program dynpro.
clear bdc_itab.
bdc_itab-program = program.
bdc_itab-dynpro = dynpro.
bdc_itab-dynbegin = 'X'.
append bdc_itab.
endform. "bdc_dynpro
Insert field *
form bdc_field using fnam fval.
if fval <> ''.
clear bdc_itab.
bdc_itab-fnam = fnam.
bdc_itab-fval = fval.
append bdc_itab.
endif.
endform. "bdc_field
*& Form POST_TRANSACTION
form post_transaction.
refresh messtab.
clear messtab.
call transaction 'MM01' using bdc_itab
mode p_update
update 'S'
messages into messtab.
submit zrpt_plantext with flatfile = p_lgort
with p_matnr = r_matnr
with p_werks = r_werks and return.
read table messtab with key msgtyp = 'E'.
if sy-subrc eq 0.
perform process_error_messages.
add 1 to count-bdc.
if v_chr_opengrp is initial.
perform bdc_open_group.
endif.
call function 'BDC_INSERT'
exporting
tcode = 'MM01'
tables
dynprotab = bdc_itab
exceptions
internal_error = 1
not_open = 2
queue_error = 3
tcode_invalid = 4
others = 5.
if sy-subrc <> 0.
case sy-subrc.
when 1.
write: / 'Internal error'.
when 2.
write: / 'Not open error'.
when 3.
write: / 'queue error'.
when 4.
write: / 'tcode invalid error'.
when others.
write: / 'other error'.
endcase.
endif.
else.
add +1 to count-create.
format intensified off.
format color col_normal.
format color col_normal off.
endif.
clear bdc_itab.
refresh bdc_itab.
endform. " POST_TRANSACTION
*& Form PROCESS_ERROR_MESSAGES
form process_error_messages.
data: begin of loc_aux_message.
include structure message.
data: end of loc_aux_message.
data : msgno type sy-msgno.
loop at messtab.
move messtab-msgnr to msgno.
call function 'WRITE_MESSAGE'
exporting
msgid = messtab-msgid
msgno = msgno
msgty = messtab-msgtyp
msgv1 = messtab-msgv1
msgv2 = messtab-msgv2
msgv3 = messtab-msgv3
msgv4 = messtab-msgv4
importing
messg = loc_aux_message
exceptions
others = 1.
if sy-subrc eq 0.
format color col_negative on.
write: /10 i_material-matnr.
write: /10 loc_aux_message.
format color col_negative off.
else.
format color col_negative on.
write: /10 i_material-matnr.
write: / 'Error creating message'.
format color col_negative off.
exit.
endif.
endloop.
endform. " PROCESS_ERROR_MESSAGES
*& Form BDC_OPEN_GROUP
form bdc_open_group.
call function 'BDC_OPEN_GROUP'
exporting
client = sy-mandt
group = p_bdcgrp
holddate = sy-datum
keep = 'X'
user = sy-uname
exceptions
client_invalid = 1
destination_invalid = 2
group_invalid = 3
group_is_locked = 4
holddate_invalid = 5
internal_error = 6
queue_error = 7
running = 8
system_lock_error = 9
user_invalid = 10
others = 11.
if sy-subrc eq 0.
v_chr_opengrp = 'X'.
endif.
endform. " BDC_OPEN_GROUP
*& Form FINALIZATION
form finalization.
if v_chr_opengrp = 'X'.
call function 'BDC_CLOSE_GROUP'
exceptions
not_open = 1
queue_error = 2
others = 3.
endif.
get time.
skip 2.
write: / 'Time', sy-uzeit.
skip.
format color col_total on.
write: / 'Total Records: ', 40 count-inrec.
write: / 'PERNR not of Emp Group 6 ', 40 count-error.
write: / 'Records Created: ', 40 count-create.
write: / 'BDC Create in group: ', 40 count-bdc.
if v_chr_opengrp = 'X'.
skip 1.
format intensified on.
format color col_negative on.
write: / 'PLEASE USE TRANSACTION "SM35" ',
'TO PROCESS THE GENERATED BDC SESSION ... ',
p_bdcgrp.
endif.
endform. " FINALIZATION -
Display error messages in Call transaction
Hi Gurus,
I have donme BDC using call transaction..can anybody help me in displaying the error messages in call transaction..
A detailed code wud be very much helpful..
full marks wud given
regards
Sahilhi check this,
PERFORM Z11_BDC_VA02.
ELSE.
MESSAGE I013 WITH TEXT-013.
ENDIF.
ELSE.
CLEAR V_FLAG.
MESSAGE E012 WITH TEXT-012.
ENDIF.
FORM z11_bdc_va02 .
*COVER 1
perform bdc_dynpro using 'SAPMV45A' '0102'.
perform bdc_field using 'BDC_CURSOR'
'VBAK-VBELN'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'VBAK-VBELN'
wa_head_detail-vbeln.
*COVER 2
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=T\03'.
perform bdc_field using 'BDC_CURSOR'
'RV45A-MABNR(01)'.
*COVER 3
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=ITNE'.
perform bdc_field using 'BDC_CURSOR'
'RV45A-MABNR(01)'.
*COVER 4
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=SICH'.
perform bdc_field using 'BDC_CURSOR'
'RV45A-KWMENG'.
perform bdc_field using 'VBAP-MATNR'
wa_head_detail-matnr.
perform bdc_field using 'RV45A-KWMENG'
v_kwmeng.
perform bdc_field using 'VBAP-VRKME'
wa_head_detail-meins.
*COVER 5
perform bdc_dynpro using 'SAPLSPO2' '0101'.
perform bdc_field using 'BDC_OKCODE'
'=OPT1'.
call transaction 'VA02' using it_tab1 mode 'A' UPDATE 'S' MESSAGES INTO
IT_TAB_ERROR.
"CAlling transaction with all screen
Loop at it_tab_error.
if it_tab_ERROR-MSGTYP = 'E' .
clear v_flag.
message I014 with TEXT-014.
else.
clear v_flag.
message I019 with TEXT-019.
endif.
endloop.
refresh it_tab1.
clear V_KWMENG.
ENDFORM. " z11_bdc_va02
Reward if helpful,
Gaurav J.
Edited by: GAURAV on Feb 4, 2008 9:10 AM -
Changes to sales order item not reflected if Call Transaction is used
I m updating another Sales Order item quantity and reason for rejection programmatically from another sales order.
The code is working fine and the quantity does get changed as well as the reason for rejection flag get set (if required). But if I go to the change log from the menu in VA02 for the order item which has been changed. It does not record the changes.
I have tried using both BDC call transaction method as well as BAPI_SALESORDER_CHANGE in neither case the change log for the order which has been changed reflects the programmatically made changes?
What m I doing wrong. Here is the code.
IF v_update_order_flg = 'X'.
REFRESH t_bdcdata.
CLEAR s_bdcdata.
REFRESH t_messtab.
PERFORM bdc_dynpro USING 'SAPMV45A' '0102'.
PERFORM bdc_field USING 'VBAK-VBELN' <wa_r_rtb_posnrs>-zrtbvbeln.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
For Going to specific Item Number
LOOP AT t_schedule_lines.
PERFORM bdc_field USING 'BDC_OKCODE' '=POPO'.
READ TABLE t_item_in WITH KEY itm_number = t_schedule_lines-itm_number.
PERFORM bdc_dynpro USING 'SAPMV45A' '0251'.
PERFORM bdc_field USING 'RV45A-POSNR' t_schedule_lines-itm_number.
PERFORM bdc_field USING 'BDC_OKCODE' '=POSI'.
PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
v_ro_qty = t_schedule_lines-req_qty.
CONDENSE v_ro_qty.
PERFORM bdc_field USING 'RV45A-KWMENG(01)' v_ro_qty.
PERFORM bdc_field USING 'VBAP-ABGRU(01)' t_item_in-reason_rej.
ENDLOOP.
PERFORM bdc_field USING 'BDC_OKCODE' '=SICH'.
v_call_transaction_flg = 'X'.
EXPORT v_call_transaction_flg TO MEMORY ID 'call_transaction'.
CALL TRANSACTION 'VA02'
USING t_bdcdata
UPDATE 'S'
MODE 'N'
MESSAGES INTO t_messtab.
v_call_transaction_flg = space.
FREE MEMORY ID 'call_transaction'.Hi Srikrisna,
This is a typical problem with BDC for updating QUANTITY and CURRENCY fields.
You need to create a character variable of the same length as your quantity field. Move your quantity value to the newly created Character variable.
Now use this new char variable in the BDC.
This correction should solve your problem.
NOTE: BDC RECOGNIZES CHARACTER FIELDS ONLY.
Regards,
Prakash Pandey -
How to resolve the error in bdc call transaction in ALV report
Dear Experts, i am executing the alv report program and in alv report program one bdc is there..
after executing output is showing in alv format but one button is there (update master)..when i am clicking update button the bdc is run but is not updated in the material master..after executing my bdc is not updated in mm02.
how to resove it?
CALL TRANSACTION 'MM02' USING BDCDATA MODE MODE
UPDATE 'S'
MESSAGES INTO MESSTAB.Hi Kaustav,
Looking at the code you attached, it appears to me that your BDC (Form USER_COMMAND) is not executed at all as you haven't passed the 'USER_COMMAND' in FM REUSE_ALV_GRID_DISPLAY for ALV display.
You must pass the importing parameter I_CALLBACK_USER_COMMAND of this FM as 'USER_COMMAND', only then this form will be executed and your BDC will run.
Thereafter, in case your BDC update fails, you can put a break-point in the form (at CALL TRANSACTION statement) and analyze the message table MESSTAB.
Hope it helps.
Regards,
Sapeksh -
Runtime error on BDC call transaction.
Hi Everyone,
I'm getting a run time error: "Runtime error SYNTAX_ERROR has occurred"
Diagnosis
Error texts from the batch input are not output
Only a placeholder
while debugging the error comes at the following line:
CALL TRANSACTION 'DSZ46C_DSAL' USING bdcdata.
can anyone help me out..
Regards
Rishika BawaHi ,
There might be a problem in transaction but not in BDC. Please run the transaction, out of the program and try to post the data.
Regards,
Sai -
Abort processing when error encountered in CALL TRANSACTION
Is there a way to abort transaction in CALL TRANSACTION <tcode> USING <bdcdata> when an error has encountered?
If there is, what should it be?In CALL TRANSACTION the standard behavior of the called transaction will be replicated. So if in VA01 the billing plan population is aborted if an error is encountered your CALL TRANSACTION will behave the same way.
BR,
Suhas
Maybe you are looking for
-
Happy new year, before the holidays my attention was drawn to an issue that supposedly the Postscript produced by the JVM is too big and hence too slow. Here are my findings. The issue Text printing via CUPS to native Postscript printers can be slow
-
Message Arrival - Show an envelope icon in the taskbar
I need to enable User Configuration - Adminstrative Templates - Microsoft Outlook 2010 - Outlook Options - Preferences - Email Options - Advanced Email Options - When New Items arrive In group policy you can either allow all or disable all, how can I
-
How do I get the Ipad to display the photo file numbers as well as the image?
-
Permission denied on the RedHat 6.2
Hi, I have created the Oracle e Dba group. I have installed OAS 4.x e WebDB 2.x for Linux. I have always the error PERMISSION DENIED when I run a command (for example: tnsping, genclntsh, .....) and therefore I can not complete the installation becau
-
Cost flow in Refurbishment process
Hello Guru, can you plz explain me below Refurbishment process more of in accounting side, ie. I want to know how cost flows? 1.Create Refurbishment Order. 2.Issue Damaged material (Movement type 201) 3.External service procurement 4.GR for External