abap2xlsx/ZA2X/PROG/ZDEMO_EXCEL24.slnk
Stefan Schmöcker 23643ca2db #148 - Changing the demoreports
git-svn-id: https://subversion.assembla.com/svn/abap2xlsx/trunk@275 b7d68dce-7c3c-4a99-8ce0-9ea847f5d049
2012-03-23 22:19:29 +00:00

92 lines
4.3 KiB
XML

<?xml version="1.0" encoding="iso-8859-2"?>
<PROG NAME="ZDEMO_EXCEL24" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20110129" UNAM="K2_SCHMOECK" UDAT="20120323" VERN="000029" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20120323" STIME="212638" IDATE="20120323" ITIME="212638" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" LENGTH="70 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZDEMO_EXCEL23
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel24.
TYPE-POOLS: abap.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
column_dimension TYPE REF TO zcl_excel_worksheet_columndime,
lo_hyperlink TYPE REF TO zcl_excel_hyperlink.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE solix_tab.
DATA: lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
DATA: lv_value TYPE string.
CONSTANTS: gc_save_file_name TYPE string VALUE &apos;24_Sheets_with_different_default_date_formats.xlsx&apos;.
INCLUDE zdemo_excel_outputopt_incl.
START-OF-SELECTION.
&quot; Creates active sheet
CREATE OBJECT lo_excel.
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_worksheet-&gt;set_title( ip_title = &apos;Sheet1&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 1 ip_value = &apos;Default Date Format&apos; ).
&quot; Insert current date
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 3 ip_value = &apos;Current Date:&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 4 ip_value = sy-datum ).
lo_hyperlink = zcl_excel_hyperlink=&gt;create_internal_link( iv_location = &apos;Sheet2!A1&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 6 ip_value = &apos;This is a link to the second sheet&apos; ip_hyperlink = lo_hyperlink ).
column_dimension = lo_worksheet-&gt;get_column_dimension( ip_column = &apos;A&apos; ).
column_dimension-&gt;set_auto_size( ip_auto_size = abap_true ).
&quot; Second sheet
lo_worksheet = lo_excel-&gt;add_new_worksheet( ).
lo_worksheet-&gt;set_default_excel_date_format( zcl_excel_style_number_format=&gt;c_format_date_yyyymmdd ).
lo_worksheet-&gt;set_title( ip_title = &apos;Sheet2&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 1 ip_value = &apos;Date Format set to YYYYMMDD&apos; ).
&quot; Insert current date
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 3 ip_value = &apos;Current Date:&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 4 ip_value = sy-datum ).
lo_hyperlink = zcl_excel_hyperlink=&gt;create_internal_link( iv_location = &apos;Sheet3!B2&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 6 ip_value = &apos;This is link to the third sheet&apos; ip_hyperlink = lo_hyperlink ).
&quot; Third sheet
lo_worksheet = lo_excel-&gt;add_new_worksheet( ).
&quot; TODO: It seems that the zcl_excel_style_number_format=&gt;c_format_date_yyyymmddslash
&quot; does not produce a valid output
lo_worksheet-&gt;set_default_excel_date_format( zcl_excel_style_number_format=&gt;c_format_date_yyyymmddslash ).
lo_worksheet-&gt;set_title( ip_title = &apos;Sheet3&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 1 ip_value = &apos;Date Format set to YYYY/MM/DD&apos; ).
&quot; Insert current date
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 3 ip_value = &apos;Current Date:&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 4 ip_value = sy-datum ).
lo_hyperlink = zcl_excel_hyperlink=&gt;create_internal_link( iv_location = &apos;Sheet1!B2&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;A&apos; ip_row = 6 ip_value = &apos;This is link to the first sheet&apos; ip_hyperlink = lo_hyperlink ).
lo_excel-&gt;set_active_sheet_index_by_name( &apos;Sheet1&apos; ).
*** Create output
lcl_output=&gt;output( lo_excel ).</source>
</PROG>