Спеціальні параметри запуску
Описано спеціальні параметри запуску BAS для вибору інформаційної бази, версії системи та режиму клієнта. Також розглянуто перехід за навігаційними посиланнями через параметр /url.. Параметр /IBName. Параметр /AppAutoCheckVersion. Параметр /AppAutoCheckMode. Параметр url
Параметр /IBName
У параметрі /IBName можна вказати найменування інформаційної бази для відкриття. Якщо параметр заповнено, програма запуску (або програмний файл конкретного клієнта) виконає пошук зазначеної інформаційної бази у списку інформаційних баз.
Якщо знайдено більше однієї бази із зазначеним ім’ям, запуск припиняється з виведенням повідомлення про помилку.
Якщо базу знайдено, виконується спроба відкрити цю інформаційну базу відповідно до параметрів і вибраної програми запуску (або програмного файлу конкретного клієнта).
Примітка
Якщо в найменуванні інформаційної бази є лапки, у параметрі їх потрібно подвоїти: База ""БудТоргВсе"".
Параметр /AppAutoCheckVersion
За допомогою цього параметра можна автоматично «підібрати» для запуску версію системи, необхідну для роботи з вибраною інформаційною базою.
Якщо в рядку запуску зазначено параметр /AppAutoCheckVersion, система працює за таким алгоритмом:
- Визначається версія для запуску інформаційної бази: для файлового варіанта інформаційної бази — за параметром Version файлу *.v8i, а для клієнт-серверного варіанта — «за відповіддю» сервера системи.
- Якщо вказано повний номер версії, здійснюється пошук потрібної версії (параметри InstalledLocation конфігураційних файлів). Якщо потрібну версію не встановлено на комп’ютері, здійснюється пошук дистрибутива цієї версії (параметри DistributiveLocation конфігураційних файлів). Якщо дистрибутив знайдено, встановлюється потрібна версія, а якщо ні — запуск припиняється з виведенням повідомлення про помилку.
- Якщо вказано неповний номер версії, здійснюється спроба отримати потрібний номер серед наявних версій (параметр DefaultVersion конфігураційних файлів). Якщо встановити повний номер версії не вдалося, здійснюється пошук найновішої встановленої версії (параметри InstalledLocation конфігураційних файлів) і найновішої версії, доступної для встановлення (параметри DistributiveLocation конфігураційних файлів). Якщо номер версії, доступної для встановлення, більший за номер версії, встановленої на комп’ютері, відбувається встановлення версії з більшим номером.
Параметр /AppAutoCheckMode
За допомогою цього параметра можна автоматично «підібрати» для запуску варіант клієнтської прикладної програми, необхідний для роботи.
Якщо в рядку запуску програми зазначено параметр /AppAutoCheckMode, система:
- визначає режим запуску конкретного користувача;
- визначає основний режим запуску інформаційної бази, що відкривається;
- якщо визначений режим запуску не відповідає клієнту, що запускається, виконує перезапуск потрібного клієнта тієї самої версії. Інакше завантаження поточної клієнтської програми продовжується.
Параметр url
Цей параметр дає змогу перейти за навігаційним посиланням у запущеній клієнтській прикладній програмі за дотримання певних умов. Такий параметр доступний у програмі запуску тонкого і товстого клієнта.
Загальна схема роботи з цим параметром:
- Якщо значення параметра містить зовнішнє посилання (містить інформацію про адресу інформаційної бази), на поточному комп’ютері здійснюється пошук клієнтської прикладної програми, запущеної для роботи з потрібною інформаційною базою, і в ній виконується спроба відкрити об’єкт, описаний навігаційним посиланням. Якщо вибрана інформаційна база не обслуговується жодною клієнтською прикладною програмою, запускається нова клієнтська прикладна програма із зазначенням параметра командного рядка /url.
- Якщо значенням параметра є внутрішнє посилання, значення параметра ігнорується та виконується звичайний запуск клієнтської прикладної програми.
Докладніше розглянемо дії, які виконуються під час пошуку клієнтської прикладної програми. Пошук прикладної програми відбувається так:
- Виконується пошук запущеної клієнтської прикладної програми, яка обслуговує інформаційну базу із зазначеним у значенні параметра рядком з’єднання. Регістр імені хоста та інформаційної бази не впливає на пошук. Також під час пошуку DNS-ім’я не перетворюється на IP-адресу і навпаки. Це означає, що клієнтську прикладну програму не буде знайдено, якщо в рядку з’єднання клієнтська прикладна програма використовує DNS-адресу, а в зовнішньому посиланні зазначено IP-адресу.
- Якщо прикладну програму знайдено й у ній не відкрито модальне вікно або вікно, що блокує весь інтерфейс, прикладна програма активізується та виконується спроба переходу за внутрішнім посиланням, отриманим із зовнішнього посилання, переданого як значення параметра командного рядка /url клієнтської прикладної програми.
- Якщо прикладну програму знайдено й у ній відкрито модальне вікно або вікно, що блокує весь інтерфейс, знайдена прикладна програма ігнорується, а система продовжує пошук.
- Якщо прикладну програму не знайдено, запускається нова клієнтська прикладна програма, якій у параметрі /url передається внутрішнє навігаційне посилання, отримане з вихідного посилання.
- Якщо навігаційне посилання, передане програмі запуску або клієнтській прикладній програмі, містить лише адресу інформаційної бази (наприклад, e1c://host/ib-name), після відкриття клієнтської прикладної програми жодних дій не виконується.
Під час переходу за внутрішнім навігаційним посиланням виконуються такі дії:
- Спроба переходу здійснюється після виклику обробника OnStart/ПриНачалеРаботыСистемы.
- Якщо клієнтська прикладна програма працює в режимі Форми в окремих вікнах і внутрішнє посилання є посиланням на точку навігації, замість відкриття робочого стола виконується перехід за посиланням. Інакше форма відкривається після відкриття робочого стола.
- У разі виникнення помилки виводиться діагностичне повідомлення, а прикладна програма продовжує роботу.
Якщо в командному рядку запуску вказано кілька параметрів, то:
- зазначення параметра /Execute призводить до ігнорування параметра /url;
- зазначення в параметрі /url абсолютного навігаційного посилання призводить до ігнорування параметрів з’єднання з інформаційною базою, зазначених в інших параметрах. Ігноруються такі параметри командного рядка: /F, /S, /WS, /IBName. Для параметра /IBConnection ігноруються частини рядка з’єднання, що описують інформаційну базу.
Для переходу можна використовувати зовнішні навігаційні посилання, що застосовують такі схеми:
- e1c: — товстий і тонкий клієнти;
- http: або https: — лише тонкий клієнт.
Виконати дію, еквівалентну використанню параметра /url, можна за допомогою:
- методу вбудованої мови GotoURL()/ПерейтиПоНавигационнойСсылке();
- спеціального діалогу з вікна зі списком інформаційних баз;
- стандартної форми повнотекстового пошуку (лише для схеми e1c:).