..4 Совместимость с OpenOffice
Для создания/изменения формуляра необходимо, чтобы на локальной машине разработчика был установлен MS Excel 2007 (или выше) .
Однако, для открытия результирующего XLSX-файла на локальной машине пользователя, возможно использование любого другого приложения взамен MS Office. Этим приложением может быть, например, OpenOffice.
ПРИМЕЧАНИЕ:
Встроенный в Ф.М.'ZXLWB_CALLFORM' просмотрщик совместим только с MS Office. По этому необходимо использовать Ф.М.'ZXLWB_CALLFORM' только для получения результирующего XLSX-файла и сохранения его на локальной машине пользователя. После этого можно открыть его любым доступным приложением, например, при помощи метода CL_GUI_FRONTEND_SERVICES=>EXECUTE .
Пример программы печати:
REPORT z_shipping_label.
* declare a context
DATA gs_context TYPE zcontext_shipping_label .
* fill the context
gs_context-to_name = 'Dan Tedford' .
gs_context-to_street = '811 Alworth Avenue' .
gs_context-to_town = 'Middlefield' .
gs_context-to_state = 'CA' .
gs_context-to_zip = '98567' .
* save file to desktop
CALL FUNCTION 'ZXLWB_CALLFORM'
EXPORTING
iv_formname = 'SHIPPING_LABEL'
iv_context_ref = gs_context
iv_viewer_suppress = 'X'
iv_save_as = 'C:\Users\Igor\Desktop\QQQ.XLSX'
EXCEPTIONS
OTHERS = 2.
IF sy-subrc NE 0 .
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 .
ENDIF .
*open file in OpenOffice
cl_gui_frontend_services=>execute(
EXPORTING
synchronous = 'X'
application = 'SOFFICE.EXE'
parameter = 'C:\Users\Igor\Desktop\QQQ.XLSX'
operation = 'OPEN'
maximized = 'X'
EXCEPTIONS
OTHERS = 10 ).