‎2008 Nov 12 4:21 AM
Hi Guys,
when i am sending data from excel to sap ,getting error here
plz modify this code.
Convert the excel data to row-wise data
LOOP AT it_upload_data.
l_col_no = it_upload_data-col.
CONCATENATE 'WA_TAB-cell_' l_col_no INTO w_field.
-
> ASSIGN (w_field) TO <fs>.
IF sy-subrc = 0.
<fs> = it_upload_data-value.
ENDIF.
AT END OF row.
APPEND wa_tab TO it_tab.
CLEAR wa_tab.
ENDAT.
thanks
‎2008 Nov 12 4:45 AM
Hi
First, close the other post where you asked for the excel to SAP. And now, check this sample code to upload file from excel to the program..to process it again for BDC:
parameters: P_FNAME type RLGRAP-FILENAME MODIF ID P1," default 'C:\Documents and Settings\pri\Desktop\open PO.xls',
UNIXFILE type RLGRAP-FILENAME MODIF ID P2.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FNAME.
CALL FUNCTION 'F4_FILENAME'
* EXPORTING
* PROGRAM_NAME = SYST-CPROG
* DYNPRO_NUMBER = SYST-DYNNR
* FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_FNAME.
Data: XL_itab type alsmex_tabline occurs 1 with header line.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME = p_fname
I_BEGIN_COL = 2
I_BEGIN_ROW = 12
I_END_COL = 5
I_END_ROW = 15
TABLES
INTERN = xl_itab
* EXCEPTIONS
* INCONSISTENT_PARAMETERS = 1
* UPLOAD_OLE = 2
* OTHERS = 3
loop at xl_itab.
case xl_itab-col.
when '1'.
wa_itab-vendor = xl_itab-value.
when '2'.
wa_itab-docdate = xl_itab-value.
when '3'.
wa_itab-purorg = xl_itab-value.
when '4'.
wa_itab-purgrp = xl_itab-value.
append wa_itab to it_itab.
endcase.
endloop.Regards,
Vishwa.
‎2008 Nov 12 4:45 AM
Hi
First, close the other post where you asked for the excel to SAP. And now, check this sample code to upload file from excel to the program..to process it again for BDC:
parameters: P_FNAME type RLGRAP-FILENAME MODIF ID P1," default 'C:\Documents and Settings\pri\Desktop\open PO.xls',
UNIXFILE type RLGRAP-FILENAME MODIF ID P2.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FNAME.
CALL FUNCTION 'F4_FILENAME'
* EXPORTING
* PROGRAM_NAME = SYST-CPROG
* DYNPRO_NUMBER = SYST-DYNNR
* FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_FNAME.
Data: XL_itab type alsmex_tabline occurs 1 with header line.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME = p_fname
I_BEGIN_COL = 2
I_BEGIN_ROW = 12
I_END_COL = 5
I_END_ROW = 15
TABLES
INTERN = xl_itab
* EXCEPTIONS
* INCONSISTENT_PARAMETERS = 1
* UPLOAD_OLE = 2
* OTHERS = 3
loop at xl_itab.
case xl_itab-col.
when '1'.
wa_itab-vendor = xl_itab-value.
when '2'.
wa_itab-docdate = xl_itab-value.
when '3'.
wa_itab-purorg = xl_itab-value.
when '4'.
wa_itab-purgrp = xl_itab-value.
append wa_itab to it_itab.
endcase.
endloop.Regards,
Vishwa.
‎2008 Nov 12 4:58 AM
Hi,
Instead of the below code
CONCATENATE 'WA_TAB-cell_' l_col_no INTO w_field.
------------------------------------> ASSIGN (w_field) TO <fs>.
You need this,
CONCATENATE 'CELL' l_col_no INTO w_field.
ASSIGN COMPONENT w_field OF STRUCUTRE wa_tab TO <fs>.
This will work as per your requirement
Cheers,
Kothand