Отчет иногда возвращает 0 записей в сценарии SAP GUI

Итак, я записал сценарий с помощью регистратора SAP GUI. Я просто запускаю 7 отчетов и сохраняю содержимое в файл Excel. Код скучный, просто какой-то вариант.

session.findById("wnd[1]/usr/ctxtDY_FILENAME").text = "SAP_ALL.TXT" session.findById("wnd[1]/usr/ctxtDY_FILENAME").caretPosition = 11

Но иногда в отчете нет записей.

  1. Я подозреваю, что есть что-то, что я могу проверить, чтобы сохранить отчет или перейти к использованию if/then/else но не могу найти хороший пример. Как я могу поймать и исправить после этой или других ошибок?
  2. Есть ли способ sapshcutИли структурировать скрипт, чтобы избежать этой проблемы?
  3. Кроме того, есть ли способ выполнить скрипт из командной строки, передавая в качестве параметров идентификатор пользователя и пароль?

Соответствующие примеры приветствуются. Я бы RTFM, но у меня его нет.

1 ответ

  1. Если отчет является сеткой, то вы можете попробовать следующее.

например:

...
session.findById("wnd[0]/tbar[1]/btn[8]").press
on error resume next
'This command must be recorded once in your environment. It's a   mouseclick in the first line.
session.findById("wnd[0]/usr  /subSUB_AREA_ROOT:SAPLREIS_GUI_CONTROLLER:0200/subSUB_AREA:SAPLREIS_GUI_CONTROLLER:1000/cntlCC_LIST/shellcont/shell").currentCellRow = 1
if err.number = 0 then
   on error goto 0
   ...
   session.findById("wnd[1]/usr/ctxtDY_FILENAME").text = "SAP_ALL.TXT"
   session.findById("wnd[1]/usr/ctxtDY_FILENAME").caretPosition = 11
   ...
else
   on error goto 0
   ...
end if
...
  1. Пожалуйста, посмотрите на следующую ссылку:

VBA 2010 - Скрыть все окна SAP, используя.iconify

С уважением, ScriptMan

Другие вопросы по тегам