Всем привет!
Решили вы эту проблему? Если да, то интересует все таки каким образом.
А вот как решил ее я.
У меня на одном из пользовательских компов (Win 10, Office 2016, SapGui 7400, патч 14) - похожая ситуация.
Я определил, что не создаются OLE-объекты (проблема в DOCS) вот в этом куске:
Code:
*&---------------------------------------------------------------------*
*& Form OpenForm
*&---------------------------------------------------------------------*
FORM OpenForm
.......
.......
.......
Call method of App 'Workbooks' = Docs.
Call method of Docs 'Open'
EXPORTING
#1 = <FILE_TEMP>. "FILE_NAME.
Call method of App 'ActiveWorkbook' = Item.
.......
.......
.......
Не знаю почему, поскольку на других компах с такой же конфигурацией (Win 10, Office 2016, SapGui 7400, патч 14) - все работает, грешу на McAfee, а может и что-то другое.
А вот с DEBUG_MODE = 'X' - тоже работает.
Я подумал - почему?
Посмотрел на различия создания объекта Excel.Application и увидел, что с DEBUG_MODE = 'X' устанавливается видимость Visible = 1.
ОК. Почему бы не включить видимость (а потом ее отключить) в режиме DEBUG_MODE = ''?
И вот что у меня вышло - и после этого все работает.
Code:
.......
.......
.......
Call method of App 'Workbooks' = Docs.
Call method of Docs 'Open'
EXPORTING
#1 = <FILE_TEMP>. "FILE_NAME.
CALL FUNCTION 'FLUSH'.
IF Docs IS INITIAL AND DEBUG_MODE IS INITIAL.
free_object docs.
Set property of App 'Visible' = 1.
CALL FUNCTION 'FLUSH'.
Call method of App 'Workbooks' = Docs.
Call method of Docs 'Open'
EXPORTING
#1 = <FILE_TEMP>. "FILE_NAME.
CALL FUNCTION 'FLUSH'.
Set property of App 'Visible' = 0.
CALL FUNCTION 'FLUSH'.
ENDIF.
Call method of App 'ActiveWorkbook' = Item.
.......
.......
.......
Если я где-то указал что-то лишнее - не судите строго.
Но еще раз - после этого все работает.