Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Uploding the Records into ztable from excel sheet

Former Member
0 Kudos
75

Hi Friends,

i wrote a program tp upload the records from excel sheet into ztable..

probelm is :

Record aleardy in ztbale :

vendor num Document land1 Name1

(key field) (key field) (key field)

100 abc us MMMM

Record Excel Sheet :

100 abc us SSSS

Note : vendor num Document land1 are KEY FEILDS IN ZTABLE.

we do not CHANGE the ztable RECORD..but Excel sheet

Records should be uplod into the Ztable...

pls tell me the LOGIC FRO MY BELOW CODE.

.code :

DATA: it_excel LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE.

TYPES: BEGIN OF t_record,

field1 LIKE it_excel-value,

field2 LIKE it_excel-value,

field3 LIKE it_excel-value,

field4 LIKE it_excel-value,

field5 LIKE it_excel-value,

field6 LIKE it_excel-value,

field7 LIKE it_excel-value,

END OF t_record.

DATA: it_record TYPE STANDARD TABLE OF t_record INITIAL SIZE 0,

wa_record TYPE t_record.

DATA: gd_currentrow TYPE i.

DATA: it_datatab TYPE TABLE OF ZTEST WITH HEADER LINE.

************************************************************************

  • S E L E C T I O N - S C R E E N

************************************************************************

PARAMETERS: p_file TYPE rlgrap-filename.

************************************************************************

  • AT S E L E C T I O N - S C R E E N ON VALUE REQUEST

************************************************************************

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

field_name = 'P_FILE'

IMPORTING

file_name = p_file.

************************************************************************

  • START-OF-SELECTION

************************************************************************

START-OF-SELECTION.

PERFORM it_data.

&----


*& Form it_data

&----


FORM it_data.

CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'

EXPORTING

filename = p_file

i_begin_col = '1'

i_begin_row = '1'

i_end_col = '256'

i_end_row = '65536'

TABLES

intern = it_excel

EXCEPTIONS

inconsistent_parameters = 1

upload_ole = 2

OTHERS = 3.

IF sy-subrc NE 0.

MESSAGE e010(zz) WITH text-001. "Problem uploading Excel Spreadsheet

ENDIF.

SORT it_excel BY row col.

READ TABLE it_excel INDEX 1.

*

*

gd_currentrow = it_excel-row.

LOOP AT it_excel.

IF it_excel-row NE gd_currentrow.

it_datatab-mandt = wa_record-field1.

it_datatab-LIFNR = wa_record-field2.

it_datatab-land1 = wa_record-field3.

it_datatab-blart = wa_record-field4.

it_datatab-name1 = wa_record-field5.

APPEND it_datatab.

CLEAR wa_record.

gd_currentrow = it_excel-row.

ENDIF.

CASE it_excel-col.

WHEN '0001'.

wa_record-field1 = it_excel-value.

WHEN '0002'.

wa_record-field2 = it_excel-value.

WHEN '0003'.

wa_record-field3 = it_excel-value.

WHEN '0004'.

wa_record-field4 = it_excel-value.

WHEN '0005'.

wa_record-field5 = it_excel-value.

ENDCASE.

ENDLOOP.

it_datatab-mandt = wa_record-field1.

it_datatab-LIFNR = wa_record-field2.

it_datatab-land1 = wa_record-field3.

it_datatab-blart = wa_record-field4.

it_datatab-name1 = wa_record-field5.

APPEND it_datatab.

CLEAR wa_record.

MODIFY ZTEST FROM TABLE it_datatab.

if sy-subrc = 0.

Write: 'Updation has been Completed Sucessfully'.

else.

write:/ 'Updation failed'.

endif.

Regrads,

Venu.

4 REPLIES 4

Former Member
0 Kudos
54

Hi,

Instead of using MODIFY ZTEST FROM TABLE it_datatab, use INSERT ZTEST FROM TABLE it_datatab.

Regards,

Roberto.

0 Kudos
54

Hi Friend,

when i am uisng

INSERT ZTEST FROM TABLE it_datatab.

the program giving SHORT DUMP...

logic pls.

regrads,

0 Kudos
54

Try this,

INSERT ZTEST FROM TABLE it_datatab.

COMMIT WORK AND WAIT.

And i think that it_datatab should have the same structure of your Z table.

Regards,

Roberto.

Former Member
0 Kudos
54

Have you tried inserting from itab accepting duplicate keys?