mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-05 13:46:17 +08:00
Demo convert for #143; Changed DEMO32 and included two examples; bind alv and converter export
git-svn-id: https://subversion.assembla.com/svn/abap2xlsx/trunk@267 b7d68dce-7c3c-4a99-8ce0-9ea847f5d049
This commit is contained in:
parent
7f249f89eb
commit
b0b4abea76
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0" encoding="utf-16"?>
|
<?xml version="1.0" encoding="utf-16"?>
|
||||||
<PROG NAME="ZDEMO_EXCEL32" VARCL="X" SUBC="1" CNAM="RTURNHEIM" CDAT="20120212" UNAM="RTURNHEIM" UDAT="20120212" VERN="000012" RMAND="800" RLOAD="E" FIXPT="X" SDATE="20120212" STIME="174140" IDATE="20120212" ITIME="174140" UCCHECK="X">
|
<PROG NAME="ZDEMO_EXCEL32" VARCL="X" SUBC="1" CNAM="RTURNHEIM" CDAT="20120212" UNAM="RTURNHEIM" UDAT="20120317" VERN="000025" RMAND="800" RLOAD="E" FIXPT="X" SDATE="20120317" STIME="174011" IDATE="20120317" ITIME="174011" UCCHECK="X">
|
||||||
<textPool>
|
<textPool>
|
||||||
<language SPRAS="E">
|
<language SPRAS="E">
|
||||||
<textElement ID="R" ENTRY="abap2xlsx Demo: Bind ALV OLE2" LENGTH="29 "/>
|
<textElement ID="R" ENTRY="abap2xlsx Demo: Export ALV" LENGTH="26 "/>
|
||||||
<textElement ID="S" KEY="P_PATH" ENTRY="D ." LENGTH="9 "/>
|
<textElement ID="S" KEY="P_PATH" ENTRY="D ." LENGTH="9 "/>
|
||||||
</language>
|
</language>
|
||||||
</textPool>
|
</textPool>
|
||||||
|
@ -66,6 +66,9 @@
|
||||||
<pfstatus_fun CODE="&XPA" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_EXPAND" ICON_ID="@3S@" FUN_TEXT="Expand"/>
|
<pfstatus_fun CODE="&XPA" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_EXPAND" ICON_ID="@3S@" FUN_TEXT="Expand"/>
|
||||||
<pfstatus_fun CODE="&XXL" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_XXL" ICON_ID="@DJ@" FUN_TEXT="Spreadsheet..." PATH="A"/>
|
<pfstatus_fun CODE="&XXL" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_XXL" ICON_ID="@DJ@" FUN_TEXT="Spreadsheet..." PATH="A"/>
|
||||||
<pfstatus_fun CODE="EXCEL" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_XLV" ICON_ID="@J3@" FUN_TEXT="Excel" ICON_TEXT="Export to Excel"/>
|
<pfstatus_fun CODE="EXCEL" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_XLV" ICON_ID="@J3@" FUN_TEXT="Excel" ICON_TEXT="Export to Excel"/>
|
||||||
|
<pfstatus_fun CODE="EXCELBIND" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_XLS" ICON_ID="@J2@" FUN_TEXT="Excel bind" ICON_TEXT="Excel bind"/>
|
||||||
|
<pfstatus_fun CODE="EXCELCELL" TEXTNO="001" TEXT_TYPE="S" TEXT_NAME="ICON_XXL" ICON_ID="@DJ@" FUN_TEXT="Excel converter"/>
|
||||||
|
<pfstatus_fun CODE="EXCELCONV" TEXTNO="001" TEXT_TYPE="S" ICON_ID="@DJ@" FUN_TEXT="Excel converter" ICON_TEXT="Excel converter"/>
|
||||||
<pfstatus_fun CODE="P+" TEXTNO="001" TEXT_TYPE="S" FUN_TEXT="Next page"/>
|
<pfstatus_fun CODE="P+" TEXTNO="001" TEXT_TYPE="S" FUN_TEXT="Next page"/>
|
||||||
<pfstatus_fun CODE="P++" TEXTNO="001" TEXT_TYPE="S" FUN_TEXT="Last Page"/>
|
<pfstatus_fun CODE="P++" TEXTNO="001" TEXT_TYPE="S" FUN_TEXT="Last Page"/>
|
||||||
<pfstatus_fun CODE="P-" TEXTNO="001" TEXT_TYPE="S" FUN_TEXT="Previous Page"/>
|
<pfstatus_fun CODE="P-" TEXTNO="001" TEXT_TYPE="S" FUN_TEXT="Previous Page"/>
|
||||||
|
@ -164,14 +167,15 @@
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="18" PFNO="33"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="18" PFNO="33"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="19" PFNO="34"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="19" PFNO="34"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="20" PFNO="09"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="20" PFNO="09"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="21" PFNO="S"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="21" PFNO="13"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="22" PFNO="41"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="22" PFNO="S"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="23" PFNO="07"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="23" PFNO="41"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="24" PFNO="S"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="24" PFNO="07"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="25" PFNO="18"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="25" PFNO="S"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="26" PFNO="26"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="26" PFNO="18"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="27" PFNO="27"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="27" PFNO="26"/>
|
||||||
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="28" PFNO="19"/>
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="28" PFNO="27"/>
|
||||||
|
<pfstatus_but PFK_CODE="000001" CODE="0001" NO="29" PFNO="19"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="01" FUNCODE="&ELP" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="01" FUNCODE="&ELP" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="02" FUNCODE="&IC1" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="02" FUNCODE="&IC1" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="03" FUNCODE="&F03" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="03" FUNCODE="&F03" FUNNO="001"/>
|
||||||
|
@ -179,8 +183,9 @@
|
||||||
<pfstatus_pfk CODE="000001" PFNO="06" FUNCODE="&SAL" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="06" FUNCODE="&SAL" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="07" FUNCODE="&NFO" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="07" FUNCODE="&NFO" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="08" FUNCODE="&NTE" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="08" FUNCODE="&NTE" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="09" FUNCODE="EXCEL" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="09" FUNCODE="EXCELBIND" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="12" FUNCODE="&F12" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="12" FUNCODE="&F12" FUNNO="001"/>
|
||||||
|
<pfstatus_pfk CODE="000001" PFNO="13" FUNCODE="EXCELCONV" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="15" FUNCODE="&F15" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="15" FUNCODE="&F15" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="18" FUNCODE="&CRB" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="18" FUNCODE="&CRB" FUNNO="001"/>
|
||||||
<pfstatus_pfk CODE="000001" PFNO="19" FUNCODE="&CRE" FUNNO="001"/>
|
<pfstatus_pfk CODE="000001" PFNO="19" FUNCODE="&CRE" FUNNO="001"/>
|
||||||
|
@ -290,6 +295,9 @@
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="DSAL"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="DSAL"/>
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="ENTE"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="ENTE"/>
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXCEL"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXCEL"/>
|
||||||
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXCELBIND"/>
|
||||||
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXCELCELL"/>
|
||||||
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXCELCONV"/>
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXIT"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXIT"/>
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXPA"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="EXPA"/>
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="FILD"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="FILD"/>
|
||||||
|
@ -324,11 +332,11 @@
|
||||||
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="ZSUM"/>
|
<pfstatus_set STATUS="ALV_STATUS" FUNCTION="ZSUM"/>
|
||||||
<pfstatus_doc OBJ_TYPE="A" OBJ_CODE="000001" MODAL="D" INT_NOTE="Standard User Interface STANDARD"/>
|
<pfstatus_doc OBJ_TYPE="A" OBJ_CODE="000001" MODAL="D" INT_NOTE="Standard User Interface STANDARD"/>
|
||||||
<pfstatus_doc OBJ_TYPE="P" OBJ_CODE="000001" MODAL="D" NORM="X" INT_NOTE="Standard Maximum Interaction"/>
|
<pfstatus_doc OBJ_TYPE="P" OBJ_CODE="000001" MODAL="D" NORM="X" INT_NOTE="Standard Maximum Interaction"/>
|
||||||
<pfstatus_doc OBJ_TYPE="B" OBJ_CODE="000001" SUB_CODE="0001" MODAL="D" NORM="X" INT_NOTE="Standard Maximum Interaction"/>
|
<pfstatus_doc OBJ_TYPE="B" OBJ_CODE="000001" SUB_CODE="0001" MODAL="D" INT_NOTE="Standard Maximum Interaction"/>
|
||||||
</pfstatus>
|
</pfstatus>
|
||||||
<source>*--------------------------------------------------------------------*
|
<source>*--------------------------------------------------------------------*
|
||||||
* REPORT ZDEMO_EXCEL32
|
* REPORT ZDEMO_EXCEL32
|
||||||
* Demo for method zcl_excel_worksheet-bind_object:
|
* Demo for export options from ALV GRID:
|
||||||
* export data from ALV (CL_GUI_ALV_GRID) object or cl_salv_table object
|
* export data from ALV (CL_GUI_ALV_GRID) object or cl_salv_table object
|
||||||
* to Excel.
|
* to Excel.
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
|
@ -373,7 +381,7 @@ DATA: l_path TYPE string, " local dir
|
||||||
lv_file_separator TYPE c.
|
lv_file_separator TYPE c.
|
||||||
|
|
||||||
CONSTANTS:
|
CONSTANTS:
|
||||||
lv_default_file_name TYPE string VALUE '90_Bind_Object.xlsx'.
|
lv_default_file_name TYPE string VALUE '32_Export_ALV.xlsx'.
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
*START-OF-SELECTION
|
*START-OF-SELECTION
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
|
@ -386,7 +394,7 @@ START-OF-SELECTION.
|
||||||
SELECT *
|
SELECT *
|
||||||
INTO TABLE gt_sbook[]
|
INTO TABLE gt_sbook[]
|
||||||
FROM sbook "#EC CI_NOWHERE
|
FROM sbook "#EC CI_NOWHERE
|
||||||
UP TO 10 ROWS.
|
UP TO 100 ROWS.
|
||||||
|
|
||||||
* Display ALV
|
* Display ALV
|
||||||
* ------------------------------------------
|
* ------------------------------------------
|
||||||
|
@ -424,43 +432,74 @@ START-OF-SELECTION.
|
||||||
* ALV user command
|
* ALV user command
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
FORM user_command .
|
FORM user_command .
|
||||||
IF sy-ucomm = 'EXCEL'.
|
|
||||||
|
|
||||||
* get save file path
|
* get save file path
|
||||||
cl_gui_frontend_services=>get_sapgui_workdir( CHANGING sapworkdir = l_path ).
|
cl_gui_frontend_services=>get_sapgui_workdir( CHANGING sapworkdir = l_path ).
|
||||||
cl_gui_cfw=>flush( ).
|
cl_gui_cfw=>flush( ).
|
||||||
cl_gui_frontend_services=>directory_browse(
|
cl_gui_frontend_services=>directory_browse(
|
||||||
EXPORTING initial_folder = l_path
|
EXPORTING initial_folder = l_path
|
||||||
CHANGING selected_folder = l_path ).
|
CHANGING selected_folder = l_path ).
|
||||||
|
|
||||||
IF l_path IS INITIAL.
|
IF l_path IS INITIAL.
|
||||||
cl_gui_frontend_services=>get_sapgui_workdir(
|
cl_gui_frontend_services=>get_sapgui_workdir(
|
||||||
CHANGING sapworkdir = lv_workdir ).
|
CHANGING sapworkdir = lv_workdir ).
|
||||||
l_path = lv_workdir.
|
l_path = lv_workdir.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
cl_gui_frontend_services=>get_file_separator(
|
cl_gui_frontend_services=>get_file_separator(
|
||||||
CHANGING file_separator = lv_file_separator ).
|
CHANGING file_separator = lv_file_separator ).
|
||||||
|
|
||||||
CONCATENATE l_path lv_file_separator lv_default_file_name
|
CONCATENATE l_path lv_file_separator lv_default_file_name
|
||||||
INTO l_path.
|
INTO l_path.
|
||||||
|
|
||||||
|
|
||||||
|
CASE sy-ucomm.
|
||||||
|
WHEN 'EXCELBIND'.
|
||||||
* export file to save file path
|
* export file to save file path
|
||||||
|
|
||||||
PERFORM export_to_excel.
|
PERFORM export_to_excel_bind.
|
||||||
|
|
||||||
ENDIF.
|
WHEN 'EXCELCONV'.
|
||||||
|
|
||||||
|
PERFORM export_to_excel_conv.
|
||||||
|
|
||||||
|
ENDCASE.
|
||||||
ENDFORM. " USER_COMMAND
|
ENDFORM. " USER_COMMAND
|
||||||
|
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
* FORM EXPORT_TO_EXCEL
|
* FORM EXPORT_TO_EXCEL_CONV
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
* This subroutine is principal demo session
|
* This subroutine is principal demo session
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
FORM export_to_excel.
|
FORM export_to_excel_conv.
|
||||||
DATA: lo_converter TYPE REF TO zcl_excel_converter.
|
DATA: lo_converter TYPE REF TO zcl_excel_converter.
|
||||||
* create zcl_excel_worksheet object
|
|
||||||
|
|
||||||
|
CREATE OBJECT lo_converter.
|
||||||
|
*TRY.
|
||||||
|
lo_converter->convert(
|
||||||
|
EXPORTING
|
||||||
|
io_alv = lo_salv
|
||||||
|
it_table = gt_sbook
|
||||||
|
i_row_int = 2
|
||||||
|
i_column_int = 2
|
||||||
|
* i_table =
|
||||||
|
* i_style_table =
|
||||||
|
* io_worksheet =
|
||||||
|
* CHANGING
|
||||||
|
* co_excel =
|
||||||
|
).
|
||||||
|
* CATCH zcx_excel .
|
||||||
|
*ENDTRY.
|
||||||
|
lo_converter->write_file( i_path = l_path ).
|
||||||
|
|
||||||
|
ENDFORM. "EXPORT_TO_EXCEL_CONV
|
||||||
|
|
||||||
|
*--------------------------------------------------------------------*
|
||||||
|
* FORM EXPORT_TO_EXCEL_BIND
|
||||||
|
*--------------------------------------------------------------------*
|
||||||
|
* This subroutine is principal demo session
|
||||||
|
*--------------------------------------------------------------------*
|
||||||
|
FORM export_to_excel_bind.
|
||||||
|
* create zcl_excel_worksheet object
|
||||||
CREATE OBJECT lo_excel.
|
CREATE OBJECT lo_excel.
|
||||||
lo_worksheet = lo_excel->get_active_worksheet( ).
|
lo_worksheet = lo_excel->get_active_worksheet( ).
|
||||||
lo_worksheet->set_title( ip_title = 'Sheet1' ).
|
lo_worksheet->set_title( ip_title = 'Sheet1' ).
|
||||||
|
@ -479,7 +518,7 @@ FORM export_to_excel.
|
||||||
|
|
||||||
PERFORM write_file.
|
PERFORM write_file.
|
||||||
|
|
||||||
ENDFORM. "EXPORT_TO_EXCEL
|
ENDFORM. "EXPORT_TO_EXCEL_BIND
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
*& Form WRITE_FILE
|
*& Form WRITE_FILE
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
Loading…
Reference in New Issue
Block a user