Я пытаюсь запустить программу QAD mfg / pro (работающую на Progress 10.1) с помощью команды mbpro. Я предоставил своему сценарию оболочки базу данных, Propath и другие параметры запуска. Когда я запускаю сценарий, mbpro запускает программу .r. Но проблема, с которой я сталкиваюсь, заключается в том, что когда моя программа работает через mbpro, она не может найти такие переменные, как global_db и т. д. Я получаю сообщение об ошибке в errorfile.err:
Shared variable global_user_lang_dir has not yet been created. (392)
Когда я запускаю ту же программу из меню mfg / pro, она работает без проблем. Это заставляет меня думать, что среда не загружена всей информацией. Нужно ли мне запускать mf.p вместе с mbpro для загрузки всех переменных среды? Мой файл сценария выглядит следующим образом:
exec $DLC/bin/mbpro \
sports
-p xxtestprogram.r\
-d mdy -yy 1990 -Bt 350 -c 30 -D 100 -mmax 3000 -nb 200 -s 3500 \
> errorfile.err
Вам нужно будет запустить mf.p при запуске вашего сеанса - вероятно, как более или менее первое, что делает xxtestprogram.r.
В зависимости от специфики того, как вы закодировали xxtestprogram и что должно существовать, прежде чем оно может даже запуститься, вам может даже потребоваться резервное копирование шага и создание оболочки, которая запускает mf.p и затем запускает xxtestprogram.
Тестовая программа выполняет запрос к двум таблицам и проецирует пару столбцов из результата в текстовый файл. Основная проблема в том, что я использую gpalias3.p для переключения баз данных в тестовой программе. Для этого требуются такие переменные, как global_db и т. д.