SAP ABAP Excel'den itab veri alma (Excel to Internal Table)
Belirli bir excel dosyasındaki veriyi itaba almak günlük programlarımızda en çok kullandığımız yapılardan biridir.
*Excel formatında bir itab oluşturuyoruz
DATA: begin of gt_excel OCCURS 0,
col1(255),
col2(255),
col3(255),
col4(255),
end of gt_excel.
*Excel import fonksiyonun tablosu
DATA: intern LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE,
wa_intern LIKE LINE OF intern.
*/dosya seçme ekranı
PARAMETERS : xdosya TYPE ibipparms-path OBLIGATORY.
*/dosya seçme ekranı
AT SELECTION-SCREEN ON VALUE-REQUEST FOR xdosya.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
IMPORTING
file_name = xdosya.
START-OF-SELECTION.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = xdosya
i_begin_col = 1
i_begin_row = 2
i_end_col = 15
i_end_row = 99999
TABLES
intern = intern
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3
.
IF sy-subrc <> 0.
MESSAGE 'Dosya okuma hatası!' TYPE 'E'.
EXIT.
ENDIF.
LOOP AT intern.
CASE intern-col.
WHEN 1.
gt_excel-col1 = intern-value.
WHEN 2.
gt_excel-col2 = intern-value.
WHEN 3.
gt_excel-col3 = intern-value.
WHEN 4.
gt_excel-col4 = intern-value.
ENDCASE.
AT END OF row.
APPEND gt_excel.
CLEAR gt_excel.
ENDAT.
ENDLOOP.
Kaydol:
Kayıt Yorumları (Atom)
Hiç yorum yok:
Yorum Gönder