пятница, 19 ноября 2010 г.

Запуск бизнес-правил из командной строки

Для автоматизации запуска Hyperion Business Rules есть утилита CmdLnLauncher.bat, находящаяся в папке \Hyperion\products\Essbase\eas\console\bin\. Но у меня при попытке её использования я получил такую красоту:
Exception in thread "main" java.lang.NoClassDefFoundError: com/hyperion/hbr/cmdlnlauncher/CmdLineLauncher
Попробовал заменить относительные пути на абсолютные – заработало:

CmdLnLauncher2.bat

@echo off

set CPATH=C:\Hyperion\products\Essbase\eas\console\lib\CmdLnLauncher.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\easclientplugin.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\log4j-1.2.8.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\framework_common.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\eas_common.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\jaxp-api.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\jdom.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\dom.jar
set CPATH=%CPATH%;C:\Hyperion\products\Essbase\eas\console\lib\xercesImpl.jar

C:\Hyperion\common\JRE\Sun\1.5.0\bin\java.exe -DHBR_HOME=C:\Hyperion\products\Essbase\eas\ -cp %CPATH% com.hyperion.hbr.cmdlnlauncher.CmdLineLauncher %1 %2 %3 %4 %5 %6

Выполнение запускается следующим образом:

CmdLnLauncher2.bat [-P"пароль"] -S"сервер_eas" -U"логин" -r"бизнес_правило"|-s"последовательность" [-f"значения_переменных.xml"]

Несколько комментариев:
  • Пароль можно не вводить, тогда он будет запрошен в момент запуска; если же он задается в командной строке, то должен идти первым параметром
  • Пароль можно сохранить в зашифрованном виде с помощью лежащей рядом утилиты PasswordEncryption.bat
  • Запускаться может или бизнес-правило, или посделовательность – надо оставить одно из двух
  • Если файл значения_переменных.xml находится не в одной папке с CmdLnLauncher2.bat, то надо задать полный путь к нему (этот параметр работает только для бизнес-правил; для последовательностей используются их значения по умолчанию)
  • Параметр -validate, как несложно догадаться, задает режим проверки бизнес-правила или последовательности без их выполнения

Файл значения_переменных.xml генерируется следующим образом:
  1. Открываем Essbase Administration Services Console
  2. Находим бизнес-правило, в контекстном меню выбираем Automate launch variables
  3. Заполняем значения переменных
  4. Жмём Automate и сохраняем получившийся значения_переменных.xml

Подробности – в Hyperion Business Rules Administrator’s Guide.

Комментариев нет:

Отправить комментарий