mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-05 05:16:16 +08:00

git-svn-id: https://subversion.assembla.com/svn/abap2xlsx/trunk@22 b7d68dce-7c3c-4a99-8ce0-9ea847f5d049
459 lines
21 KiB
XML
459 lines
21 KiB
XML
<?xml version="1.0" encoding="utf-16"?>
|
|
<PROG NAME="ZDEMO_EXCEL11" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100809" UNAM="FEMIA" UDAT="20100924" VERN="000043" RSTAT="K" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153901" IDATE="20100924" ITIME="153901" UCCHECK="X">
|
|
<textPool>
|
|
<language SPRAS="E">
|
|
<textElement ID="R" ENTRY="Export Organisation and Contact Persons using ABAP2XLSX" LENGTH="55 "/>
|
|
<textElement ID="S" KEY="COUNTRY" ENTRY="D ." LENGTH="19 "/>
|
|
<textElement ID="S" KEY="MAXSEL" ENTRY="D ." LENGTH="27 "/>
|
|
<textElement ID="S" KEY="MD" ENTRY=" Select by master data" LENGTH="29 "/>
|
|
<textElement ID="S" KEY="PARTNER" ENTRY="D ." LENGTH="9 "/>
|
|
<textElement ID="S" KEY="PARTNERC" ENTRY="D ." LENGTH="19 "/>
|
|
<textElement ID="S" KEY="POSTLCOD" ENTRY="D ." LENGTH="19 "/>
|
|
<textElement ID="S" KEY="REL" ENTRY=" Select by relationship" LENGTH="30 "/>
|
|
<textElement ID="S" KEY="RELTYP" ENTRY="D ." LENGTH="9 "/>
|
|
</language>
|
|
</textPool>
|
|
<source>*&---------------------------------------------------------------------*
|
|
*& Report ZDEMO_EXCEL11
|
|
*& Export Organisation and Contact Persons using ABAP2XLSX
|
|
*&---------------------------------------------------------------------*
|
|
*&
|
|
*&
|
|
*&---------------------------------------------------------------------*
|
|
|
|
REPORT zdemo_excel11.
|
|
|
|
TYPE-POOLS: abap.
|
|
|
|
DATA: central_search TYPE bapibus1006_central_search,
|
|
addressdata_search TYPE bapibus1006_addr_search,
|
|
others_search TYPE bapibus1006_other_data.
|
|
DATA: searchresult TYPE TABLE OF bapibus1006_bp_addr,
|
|
return TYPE TABLE OF bapiret2.
|
|
DATA: lines TYPE i.
|
|
FIELD-SYMBOLS: <searchresult_line> LIKE LINE OF searchresult.
|
|
DATA: centraldata TYPE bapibus1006_central,
|
|
centraldataperson TYPE bapibus1006_central_person,
|
|
centraldataorganization TYPE bapibus1006_central_organ.
|
|
DATA: addressdata TYPE bapibus1006_address.
|
|
DATA: relationships TYPE TABLE OF bapibus1006_relations.
|
|
FIELD-SYMBOLS: <relationship> LIKE LINE OF relationships.
|
|
DATA: relationship_centraldata TYPE bapibus1006002_central.
|
|
DATA: relationship_addresses TYPE TABLE OF bapibus1006002_addresses.
|
|
FIELD-SYMBOLS: <relationship_address> LIKE LINE OF relationship_addresses.
|
|
|
|
DATA: lt_download TYPE TABLE OF zexcel_s_org_rel.
|
|
FIELD-SYMBOLS: <download> LIKE LINE OF lt_download.
|
|
|
|
PARAMETERS: md TYPE flag RADIOBUTTON GROUP act.
|
|
|
|
SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE a.
|
|
PARAMETERS: partnerc TYPE bu_type DEFAULT 2, " Organizations
|
|
postlcod TYPE ad_pstcd1 DEFAULT '8334*',
|
|
country TYPE land1 DEFAULT 'DE',
|
|
maxsel TYPE bu_maxsel DEFAULT 100.
|
|
SELECTION-SCREEN END OF BLOCK a.
|
|
|
|
PARAMETERS: rel TYPE flag RADIOBUTTON GROUP act DEFAULT 'X'.
|
|
|
|
SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE b.
|
|
PARAMETERS: reltyp TYPE bu_reltyp DEFAULT 'BUR011',
|
|
partner TYPE bu_partner DEFAULT '191'.
|
|
SELECTION-SCREEN END OF BLOCK b.
|
|
|
|
INITIALIZATION.
|
|
a = 'Select by master data'.
|
|
b = 'Select by relationship'.
|
|
|
|
START-OF-SELECTION.
|
|
IF md = abap_true.
|
|
" Read all Companies by Master Data
|
|
central_search-partnercategory = partnerc.
|
|
addressdata_search-postl_cod1 = postlcod.
|
|
addressdata_search-country = country.
|
|
others_search-maxsel = maxsel.
|
|
others_search-no_search_for_contactperson = 'X'.
|
|
|
|
CALL FUNCTION 'BAPI_BUPA_SEARCH_2'
|
|
EXPORTING
|
|
centraldata = central_search
|
|
addressdata = addressdata_search
|
|
OTHERS = others_search
|
|
TABLES
|
|
searchresult = searchresult
|
|
return = return.
|
|
|
|
SORT searchresult BY partner.
|
|
DELETE ADJACENT DUPLICATES FROM searchresult COMPARING partner.
|
|
ELSEIF rel = abap_true.
|
|
" Read by Relationship
|
|
SELECT but050~partner1 AS partner FROM but050
|
|
INNER JOIN but000 ON but000~partner = but050~partner1 AND but000~type = '2'
|
|
INTO CORRESPONDING FIELDS OF TABLE searchresult
|
|
WHERE but050~partner2 = partner
|
|
AND but050~reltyp = reltyp.
|
|
ENDIF.
|
|
|
|
DESCRIBE TABLE searchresult LINES lines.
|
|
WRITE: / 'Number of search results: ', lines.
|
|
|
|
LOOP AT searchresult ASSIGNING <searchresult_line>.
|
|
" Read Details of Organization
|
|
CALL FUNCTION 'BAPI_BUPA_CENTRAL_GETDETAIL'
|
|
EXPORTING
|
|
businesspartner = <searchresult_line>-partner
|
|
IMPORTING
|
|
centraldataorganization = centraldataorganization.
|
|
" Read Standard Address of Organization
|
|
CALL FUNCTION 'BAPI_BUPA_ADDRESS_GETDETAIL'
|
|
EXPORTING
|
|
businesspartner = <searchresult_line>-partner
|
|
IMPORTING
|
|
addressdata = addressdata.
|
|
|
|
" Add Organization to Download
|
|
APPEND INITIAL LINE TO lt_download ASSIGNING <download>.
|
|
" Fill Organization Partner Numbers
|
|
CALL FUNCTION 'BAPI_BUPA_GET_NUMBERS'
|
|
EXPORTING
|
|
businesspartner = <searchresult_line>-partner
|
|
IMPORTING
|
|
businesspartnerout = <download>-org_number
|
|
businesspartnerguidout = <download>-org_guid.
|
|
|
|
MOVE-CORRESPONDING centraldataorganization TO <download>.
|
|
MOVE-CORRESPONDING addressdata TO <download>.
|
|
CLEAR: addressdata.
|
|
|
|
" Read all Relationships
|
|
CLEAR: relationships.
|
|
CALL FUNCTION 'BAPI_BUPA_RELATIONSHIPS_GET'
|
|
EXPORTING
|
|
businesspartner = <searchresult_line>-partner
|
|
TABLES
|
|
relationships = relationships.
|
|
DELETE relationships WHERE relationshipcategory <> 'BUR001'.
|
|
LOOP AT relationships ASSIGNING <relationship>.
|
|
" Read details of Contact person
|
|
CALL FUNCTION 'BAPI_BUPA_CENTRAL_GETDETAIL'
|
|
EXPORTING
|
|
businesspartner = <relationship>-partner2
|
|
IMPORTING
|
|
centraldata = centraldata
|
|
centraldataperson = centraldataperson.
|
|
" Read details of the Relationship
|
|
CALL FUNCTION 'BAPI_BUPR_CONTP_GETDETAIL'
|
|
EXPORTING
|
|
businesspartner = <relationship>-partner1
|
|
contactperson = <relationship>-partner2
|
|
IMPORTING
|
|
centraldata = relationship_centraldata.
|
|
" Read relationship address
|
|
CLEAR: relationship_addresses.
|
|
|
|
CALL FUNCTION 'BAPI_BUPR_CONTP_ADDRESSES_GET'
|
|
EXPORTING
|
|
businesspartner = <relationship>-partner1
|
|
contactperson = <relationship>-partner2
|
|
TABLES
|
|
addresses = relationship_addresses.
|
|
|
|
READ TABLE relationship_addresses
|
|
ASSIGNING <relationship_address>
|
|
WITH KEY standardaddress = 'X'.
|
|
|
|
IF <relationship_address> IS ASSIGNED.
|
|
" Read Relationship Address
|
|
CLEAR addressdata.
|
|
CALL FUNCTION 'BAPI_BUPA_ADDRESS_GETDETAIL'
|
|
EXPORTING
|
|
businesspartner = <searchresult_line>-partner
|
|
addressguid = <relationship_address>-addressguid
|
|
IMPORTING
|
|
addressdata = addressdata.
|
|
|
|
APPEND INITIAL LINE TO lt_download ASSIGNING <download>.
|
|
CALL FUNCTION 'BAPI_BUPA_GET_NUMBERS'
|
|
EXPORTING
|
|
businesspartner = <relationship>-partner1
|
|
IMPORTING
|
|
businesspartnerout = <download>-org_number
|
|
businesspartnerguidout = <download>-org_guid.
|
|
|
|
CALL FUNCTION 'BAPI_BUPA_GET_NUMBERS'
|
|
EXPORTING
|
|
businesspartner = <relationship>-partner2
|
|
IMPORTING
|
|
businesspartnerout = <download>-contpers_number
|
|
businesspartnerguidout = <download>-contpers_guid.
|
|
|
|
MOVE-CORRESPONDING centraldataorganization TO <download>.
|
|
MOVE-CORRESPONDING addressdata TO <download>.
|
|
MOVE-CORRESPONDING centraldataperson TO <download>.
|
|
MOVE-CORRESPONDING relationship_centraldata TO <download>.
|
|
|
|
WRITE: / <relationship>-partner1, <relationship>-partner2.
|
|
WRITE: centraldataorganization-name1(20), centraldataorganization-name2(10).
|
|
WRITE: centraldataperson-firstname(15), centraldataperson-lastname(15).
|
|
WRITE: addressdata-street(25), addressdata-house_no,
|
|
addressdata-postl_cod1, addressdata-city(25).
|
|
ENDIF.
|
|
ENDLOOP.
|
|
|
|
ENDLOOP.
|
|
|
|
DATA: lo_excel TYPE REF TO zcl_excel,
|
|
lo_excel_writer TYPE REF TO zif_excel_writer,
|
|
lo_worksheet TYPE REF TO zcl_excel_worksheet,
|
|
lo_style_body TYPE REF TO zcl_excel_style,
|
|
lo_border_dark TYPE REF TO zcl_excel_style_border,
|
|
lo_border_light TYPE REF TO zcl_excel_style_border,
|
|
column_dimension TYPE REF TO zcl_excel_worksheet_columndime,
|
|
row_dimension TYPE REF TO zcl_excel_worksheet_rowdimensi.
|
|
|
|
DATA: lv_style_body_odd_guid TYPE zexcel_cell_style,
|
|
lv_style_body_even_guid TYPE zexcel_cell_style,
|
|
lv_style_body_green TYPE zexcel_cell_style,
|
|
lv_style_body_odd_n_guid TYPE zexcel_cell_style,
|
|
lv_style_body_even_n_guid TYPE zexcel_cell_style.
|
|
|
|
DATA: row TYPE zexcel_cell_row.
|
|
|
|
DATA: lv_file TYPE xstring,
|
|
lv_bytecount TYPE i,
|
|
lt_file_tab TYPE STANDARD TABLE OF solisti1.
|
|
|
|
DATA: lt_field_catalog TYPE zexcel_t_fieldcatalog,
|
|
ls_table_settings TYPE zexcel_s_table_settings.
|
|
|
|
DATA: column TYPE zexcel_cell_column,
|
|
column_alpha TYPE zexcel_cell_column_alpha,
|
|
value TYPE zexcel_cell_value.
|
|
|
|
FIELD-SYMBOLS: <fs_field_catalog> TYPE zexcel_s_fieldcatalog.
|
|
|
|
" Creates active sheet
|
|
CREATE OBJECT lo_excel.
|
|
|
|
" Create border object
|
|
CREATE OBJECT lo_border_dark.
|
|
lo_border_dark->border_color = zcl_excel_style_color=>c_black.
|
|
lo_border_dark->border_style = zcl_excel_style_border=>c_border_thin.
|
|
"Create style with border odd
|
|
lo_style_body = lo_excel->add_new_style( ).
|
|
lo_style_body->fill->filltype = zcl_excel_style_fill=>c_fill_solid.
|
|
lo_style_body->fill->fgcolor = zcl_excel_style_color=>c_gray.
|
|
lo_style_body->borders->allborders = lo_border_dark.
|
|
lv_style_body_odd_guid = lo_style_body->get_guid( ).
|
|
"Create style with border even
|
|
lo_style_body = lo_excel->add_new_style( ).
|
|
lo_style_body->fill->fgcolor = zcl_excel_style_color=>c_yellow.
|
|
lo_style_body->borders->allborders = lo_border_dark.
|
|
lv_style_body_even_guid = lo_style_body->get_guid( ).
|
|
"Create style with border and green fill
|
|
lo_style_body = lo_excel->add_new_style( ).
|
|
lo_style_body->fill->fgcolor = zcl_excel_style_color=>c_green.
|
|
lo_style_body->borders->allborders = lo_border_dark.
|
|
lv_style_body_green = lo_style_body->get_guid( ).
|
|
"Create style numeric with border odd
|
|
lo_style_body = lo_excel->add_new_style( ).
|
|
lo_style_body->fill->filltype = zcl_excel_style_fill=>c_fill_solid.
|
|
lo_style_body->fill->fgcolor = zcl_excel_style_color=>c_gray.
|
|
lo_style_body->borders->allborders = lo_border_dark.
|
|
lo_style_body->number_format->format_code = zcl_excel_style_number_format=>c_format_number.
|
|
lv_style_body_odd_n_guid = lo_style_body->get_guid( ).
|
|
"Create style numeric with border odd
|
|
lo_style_body = lo_excel->add_new_style( ).
|
|
lo_style_body->borders->allborders = lo_border_dark.
|
|
lo_style_body->number_format->format_code = zcl_excel_style_number_format=>c_format_number.
|
|
lv_style_body_even_n_guid = lo_style_body->get_guid( ).
|
|
|
|
" Get active sheet
|
|
lo_worksheet = lo_excel->get_active_worksheet( ).
|
|
lo_worksheet->title = 'Internal table'.
|
|
|
|
lt_field_catalog = zcl_excel_common=>get_fieldcatalog( ip_table = lt_download ).
|
|
|
|
LOOP AT lt_field_catalog ASSIGNING <fs_field_catalog>.
|
|
CASE <fs_field_catalog>-fieldname.
|
|
WHEN 'ORG_NUMBER'.
|
|
<fs_field_catalog>-position = 1.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'CONTPERS_NUMBER'.
|
|
<fs_field_catalog>-position = 2.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'NAME1'.
|
|
<fs_field_catalog>-position = 3.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'NAME2'.
|
|
<fs_field_catalog>-position = 4.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'STREET'.
|
|
<fs_field_catalog>-position = 5.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'HOUSE_NO'.
|
|
<fs_field_catalog>-position = 6.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'POSTL_COD1'.
|
|
<fs_field_catalog>-position = 7.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'CITY'.
|
|
<fs_field_catalog>-position = 8.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'COUNTRYISO'.
|
|
<fs_field_catalog>-position = 9.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'FIRSTNAME'.
|
|
<fs_field_catalog>-position = 10.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'LASTNAME'.
|
|
<fs_field_catalog>-position = 11.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'FUNCTIONNAME'.
|
|
<fs_field_catalog>-position = 12.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'DEPARTMENTNAME'.
|
|
<fs_field_catalog>-position = 13.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'TEL1_NUMBR'.
|
|
<fs_field_catalog>-position = 14.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'TEL1_EXT'.
|
|
<fs_field_catalog>-position = 15.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'FAX_NUMBER'.
|
|
<fs_field_catalog>-position = 16.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'FAX_EXTENS'.
|
|
<fs_field_catalog>-position = 17.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN 'E_MAIL'.
|
|
<fs_field_catalog>-position = 18.
|
|
<fs_field_catalog>-dynpfld = abap_true.
|
|
WHEN OTHERS.
|
|
<fs_field_catalog>-dynpfld = abap_false.
|
|
ENDCASE.
|
|
ENDLOOP.
|
|
|
|
ls_table_settings-top_left_column = 'A'.
|
|
ls_table_settings-top_left_row = '2'.
|
|
ls_table_settings-table_style = zcl_excel_table=>builtinstyle_medium5.
|
|
|
|
lo_worksheet->bind_table( ip_table = lt_download
|
|
is_table_settings = ls_table_settings
|
|
it_field_catalog = lt_field_catalog ).
|
|
LOOP AT lt_download ASSIGNING <download>.
|
|
row = sy-tabix + 2.
|
|
IF NOT <download>-org_number IS INITIAL
|
|
AND <download>-contpers_number IS INITIAL.
|
|
" Mark fields of Organization which can be changed green
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'C'
|
|
ip_row = row
|
|
ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'D'
|
|
ip_row = row
|
|
ip_style = lv_style_body_green
|
|
).
|
|
* CATCH zcx_excel. " Exceptions for ABAP2XLSX
|
|
ELSEIF NOT <download>-org_number IS INITIAL
|
|
AND NOT <download>-contpers_number IS INITIAL.
|
|
" Mark fields of Relationship which can be changed green
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'L' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'M' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'N' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'O' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'P' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'Q' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
lo_worksheet->set_cell_style(
|
|
ip_column = 'R' ip_row = row ip_style = lv_style_body_green
|
|
).
|
|
ENDIF.
|
|
ENDLOOP.
|
|
" Add Fieldnames in first row and hide the row
|
|
LOOP AT lt_field_catalog ASSIGNING <fs_field_catalog>
|
|
WHERE position <> '' AND dynpfld = abap_true.
|
|
column = <fs_field_catalog>-position.
|
|
column_alpha = zcl_excel_common=>convert_column2alpha( column ).
|
|
value = <fs_field_catalog>-fieldname.
|
|
lo_worksheet->set_cell( ip_column = column_alpha
|
|
ip_row = 1
|
|
ip_value = value
|
|
ip_style = lv_style_body_even_guid ).
|
|
ENDLOOP.
|
|
" Hide first row
|
|
row_dimension = lo_worksheet->get_row_dimension( 1 ).
|
|
row_dimension->set_visible( abap_false ).
|
|
|
|
" Set Column width
|
|
column_dimension = lo_worksheet->get_column_dimension( 'A' ).
|
|
column_dimension->set_width( ip_width = 11 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'B' ).
|
|
column_dimension->set_width( ip_width = 11 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'C' ).
|
|
column_dimension->set_width( ip_width = 35 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'E' ).
|
|
column_dimension->set_width( ip_width = 18 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'F' ).
|
|
column_dimension->set_width( ip_width = 5 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'G' ).
|
|
column_dimension->set_width( ip_width = 6 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'H' ).
|
|
column_dimension->set_width( ip_width = 12 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'I' ).
|
|
column_dimension->set_width( ip_width = 3 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'J' ).
|
|
column_dimension->set_width( ip_width = 13 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'K' ).
|
|
column_dimension->set_width( ip_width = 13 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'L' ).
|
|
column_dimension->set_width( ip_width = 13 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'M' ).
|
|
column_dimension->set_width( ip_width = 13 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'N' ).
|
|
column_dimension->set_width( ip_width = 12 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'O' ).
|
|
column_dimension->set_width( ip_width = 9 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'P' ).
|
|
column_dimension->set_width( ip_width = 12 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'Q' ).
|
|
column_dimension->set_width( ip_width = 9 ).
|
|
column_dimension = lo_worksheet->get_column_dimension( 'R' ).
|
|
column_dimension->set_width( ip_width = 40 ).
|
|
|
|
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
|
|
lv_file = lo_excel_writer->write_file( lo_excel ).
|
|
|
|
" Convert to binary
|
|
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
|
|
EXPORTING
|
|
buffer = lv_file
|
|
IMPORTING
|
|
output_length = lv_bytecount
|
|
TABLES
|
|
binary_tab = lt_file_tab.
|
|
|
|
" Save the file
|
|
CALL FUNCTION 'GUI_DOWNLOAD'
|
|
EXPORTING
|
|
bin_filesize = lv_bytecount
|
|
filename = 'C:\ZDEMO_EXCEL11.xlsx'
|
|
filetype = 'BIN'
|
|
TABLES
|
|
data_tab = lt_file_tab.</source>
|
|
</PROG>
|