Конфігурація та розширення
Описано команди пакетного режиму конфігуратора для збереження, завантаження, об'єднання, порівняння та оновлення конфігурацій і розширень, а також для роботи з файлами конфігурації.
/DumpCfg <ім'я cf-файлу> [-Extension <Ім’я розширення>]
Виконує збереження конфігурації або розширення конфігурації у файл. Збереження конфігурації розширення виконується за умови коректного зазначення параметра -Extension.
/LoadCfg <ім'я cf-файлу> [-Extension <Ім’я розширення>]
Виконує завантаження конфігурації або розширення конфігурації з файлу. Завантаження конфігурації розширення виконується за умови коректного зазначення параметра -Extension. Якщо під час завантаження розширення відсутнє в інформаційній базі, його буде створено із зазначеним ім'ям. Якщо розширення, зазначене в -Extension, підключено до сховища конфігурації, його завантаження неможливе.
/MergeCfg <ім'я cf- або cfe-файлу> -Settings <ім'я файлу налаштувань> [-EnableSupport | -DisableSupport] [-IncludeObjectsByUnresolvedRefs | -ClearUnresolvedRefs] [-Extension <Ім'я розширення>] [-force]
Виконує об'єднання поточної конфігурації або розширення з файлом конфігурації або розширення, використовуючи файл налаштувань.
Можна використовувати такі параметри:
- <ім'я cf- або cfe-файлу> – ім'я файлу з конфігурацією (cf-файл) або розширенням (cfe-файл) для об'єднання;
- -Settings <ім'я файлу налаштувань> – дає змогу зазначити ім'я файлу з налаштуваннями об'єднання конфігурацій;
- -EnableSupport – поставити конфігурацію на підтримку, якщо є можливість об'єднання з постановкою на підтримку (правила підтримки мають бути зазначені у файлі налаштувань);
- -DisableSupport – не виконувати постановку на підтримку, навіть якщо така можливість є;
- -IncludeObjectsByUnresolvedRefs – якщо в налаштуваннях об'єднання є об'єкти, не включені до списку об'єднання й відсутні в основній конфігурації, але на які є посилання з об'єктів, включених до списку, такі об'єкти також позначаються для об'єднання та виконується спроба продовжити об'єднання. Спроби виконуються, доки не залишиться об'єктів із посиланнями на невключені об'єкти або доки не буде вибрано всю конфігурацію. Аналогічно кнопці Позначити все для об'єднання у вікні з невирішеними посиланнями, але з повторенням спроб;
- -ClearUnresolvedRefs – посилання на об'єкти, не включені до списку об'єктів для об'єднання, буде очищено. Аналогічно кнопці Продовжити у вікні з невирішеними посиланнями;
- -Extension <Ім'я розширення> – ім'я розширення, з яким виконуватиметься об'єднання;
-force – виконувати об'єднання за наявності:
- попереджень про вилучення об'єктів, на які є посилання в об'єктах, що не беруть участі в об'єднанні (такі об'єкти буде виключено з об'єднання);
- попередження про застосування налаштувань.
- Якщо параметр не зазначено, об'єднання буде перервано у вищевказаних випадках.
Якщо одночасно зазначено один із параметрів -EnableSupport або -DisableSupport і параметр -Extension, об'єднання буде перервано з помилкою. Якщо є можливість поставити конфігурацію на підтримку та не зазначено -EnableSupport або -DisableSupport, об'єднання буде перервано з помилкою. Якщо можливості поставити конфігурацію на підтримку немає, але зазначено параметр -EnableSupport або -DisableSupport, об'єднання також буде перервано з помилкою.
Якщо є можливість поставити конфігурацію на підтримку, зазначено параметр -EnableSupport, але у файлі налаштувань немає елемента SupportRules, установлюються такі правила підтримки:
Нові об'єкти постачальника:
- Об'єктам із правилом постачальника Зміни дозволені встановлюється правило підтримки Об'єкт постачальника не редагується.
- Об'єктам із правилом постачальника Зміни не рекомендуються встановлюється правило підтримки Об'єкт постачальника не редагується.
Ідентичні об'єкти або об'єкти з правилом об'єднання Взяти з нової конфігурації постачальника:
- Об'єктам із правилом постачальника Зміни дозволені встановлюється правило підтримки Об'єкт постачальника не редагується.
- Об'єктам із правилом постачальника Зміни не рекомендуються встановлюється правило підтримки Об'єкт постачальника не редагується.
Змінені об'єкти з правилом об'єднання, відмінним від Взяти з нової конфігурації постачальника:
- Об'єктам із правилом постачальника Зміни дозволені встановлюється правило підтримки Об'єкт редагується зі збереженням підтримки.
- Об'єктам із правилом постачальника Зміни не рекомендуються встановлюється правило підтримки Об'єкт редагується зі збереженням підтримки.
Якщо буде виявлено нерозв'язані посилання в об'єктах конфігурації, що об'єднується (другої), і не зазначено параметри -IncludeObjectsByUnresolvedRefs або -ClearUnresolvedRefs, об'єднання буде перервано, а для кожного об'єкта до файлу виведення службових повідомлень буде виведено список властивостей об'єктів, у яких є нерозв'язані посилання, та список невключених об'єктів за цими посиланнями.
Попередження виводяться до файлу виведення службових повідомлень незалежно від -force.
/CompareCfg -FirstConfigurationType <тип конфігурації> [-FirstName <ім'я конфігурації>] [-FirstFile <шлях до файлу>] [-FirstVersion <номер версії>] -SecondConfigurationType <тип конфігурації> [-SecondName <ім'я конфігурації>] [-SecondFile <шлях до файлу>] [-SecondVersion <номер версії>] [-MappingRule <правило>] [-Objects <ім'я файлу>] -ReportType <тип звіту> [-IncludeChangedObjects] [-IncludeDeletedObjects] [-IncludeAddedObjects] -ReportFormat <тип формату> -ReportFile <ім'я файлу>
Виконує порівняння двох конфігурацій і формує файл зі звітом про порівняння.
Можна використовувати такі параметри:
-FirstConfigurationType <тип конфігурації> – тип першої конфігурації для порівняння. Параметр може набувати таких значень:
- MainConfiguration – основна конфігурація;
- DBConfiguration – конфігурація бази даних;
- VendorConfiguration – конфігурація постачальника;
- ExtensionConfiguration – розширення конфігурації;
- ExtensionDBConfiguration – розширення конфігурації з бази даних;
- ConfigurationRepository – конфігурація зі сховища конфігурації;
- ExtensionConfigurationRepository – розширення конфігурації зі сховища конфігурації;
- File – файл конфігурації/розширення конфігурації.
-FirstName <додатковий ідентифікатор> – ім'я першої конфігурації. Значення параметра може набувати таких значень залежно від значення параметра /FirstConfigurationType:
- VendorConfiguration – ім'я конфігурації постачальника;
- ExtensionConfiguration – ім'я розширення конфігурації;
- ExtensionDBConfiguration – ім'я розширення конфігурації з бази даних.
Для інших значень параметра /FirstConfigurationType цей параметр не застосовується.
- -FirstFile – шлях до файлу конфігурації (.cf) або розширення конфігурації (.cfe). Цей параметр має сенс лише тоді, коли параметр -FirstConfigurationType має значення File.
- -FirstVersion – версія сховища конфігурації. Цей параметр має сенс лише тоді, коли параметр -FirstConfigurationType має значення ConfigurationRepository або ExtensionConfigurationRepository.
- -SecondConfigurationType <тип конфігурації> – тип другої конфігурації для порівняння. Значення параметра повністю еквівалентні значенням параметра -FirstConfigurationType.
- -SecondName <додатковий ідентифікатор> – ім'я другої конфігурації. Цілком аналогічно параметру -FirstName.
- -SecondFile – шлях до файлу конфігурації (.cf) або розширення конфігурації (.cfe). Цілком аналогічно параметру -FirstFile.
- -SecondVersion – версія сховища конфігурації. Цілком аналогічно параметру -FirstVersion.
-MappingRule <правило> – правило встановлення відповідностей об'єктів для випадків, коли конфігурації не перебувають у відносинах «батько-нащадок»:
- ByObjectName – за іменами об'єктів (використовується за замовчуванням);
- ByObjectIDs – за внутрішніми ідентифікаторами.
- -Objects <ім'я файлу> – шлях до файлу зі списком об'єктів, які братимуть участь в операції. Якщо файл зазначено, в операції беруть участь лише вказані у файлі об'єкти, інакше бере участь вся конфігурація.
- -IncludeChangedObjects – включати до звіту змінені підпорядковані об'єкти.
- -IncludeDeletedObjects – включати до звіту вилучені підпорядковані об'єкти.
- -IncludeAddedObjects – включати до звіту додані підпорядковані об'єкти.
-ReportType <тип звіту> – тип звіту про порівняння:
- Brief – короткий звіт;
- Full – повний звіт.
-ReportFormat <тип формату> – визначає формат файлу звіту:
- txt – текстовий документ;
- mxl – табличний документ.
- -ReportFile <ім'я файлу> – визначає ім'я файлу, до якого буде поміщено звіт про порівняння.
/UpdateDBCfg [-Dynamic<Режим>] [-BackgroundStart] [-BackgroundCancel] [-BackgroundFinish [-Visible]] [-BackgroundSuspend] [-BackgroundResume] [-WarningsAsErrors] [-Server] [-v1|-v2] [-Extension <Ім'я розширення>]
Виконує оновлення конфігурації бази даних. Перед реструктуризацією виконується перевірка підпису мобільного клієнта. Діагностичні повідомлення, що виводяться за замовчуванням, вважаються попередженнями та не блокують оновлення конфігурації бази даних.
Слід враховувати, що механізм фонового оновлення не пов'язаний із вибором механізму реструктуризації. Якщо зазначено виконання фонового оновлення, вибір варіанта механізму реструктуризації (-v1|-v2) буде проігноровано.
Можна використовувати такі параметри:
-Dynamic<Режим> – ознака використання динамічного оновлення. Можливі такі варіанти режиму:
- - – явно забороняє динамічне оновлення;
- + – дозволяє динамічне оновлення. Спочатку виконується спроба звичайного оновлення, а в разі невдачі – спроба динамічного оновлення. За відсутності параметра -Dynamic+ або у разі використання -Dynamic без зазначення режиму також виконується динамічне оновлення.
- -BackgroundStart – запускає фонове оновлення конфігурації бази даних і завершує роботу. Якщо додатково зазначено параметр -Dynamic або -Dynamic+, спочатку виконується спроба динамічного оновлення, а в разі її невдалого завершення запускається фонове оновлення.
- -BackgroundCancel – скасовує раніше запущене фонове оновлення конфігурації бази даних.
- -BackgroundFinish – завершує фонове оновлення конфігурації бази даних, виконуючи фазу прийняття змін: здійснюється спроба встановити монопольне блокування бази даних і виконати фінальну фазу. Якщо встановлено прапорець -Visible, у разі неможливості завершити фонове оновлення, тобто перейти до фази прийняття змін, виводиться діалогове вікно з кнопками Скасувати, Повторити, Завершити сеанси та повторити. Якщо прапорець не встановлено, виконання завершується з помилкою.
- -BackgroundSuspend – призупиняє фонове оновлення конфігурації бази даних.
- -BackgroundResume – продовжує раніше призупинене фонове оновлення конфігурації бази даних.
- -WarningsAsErrors – усі попереджувальні повідомлення трактуватимуться як помилки.
-Server – оновлення виконується на сервері та має сенс лише у клієнт-серверному варіанті роботи. Якщо параметр використовується разом із фоновим оновленням, то:
- фаза актуалізації завжди виконується на сервері;
- фаза обробки та фаза прийняття змін можуть виконуватися як на клієнті, так і на сервері;
- дозволено запускати фонове оновлення на боці клієнта, а завершувати на боці сервера, або навпаки;
- оптимізований механізм реструктуризації не використовується: параметр -v2 ігнорується, якщо його зазначено.
- -v1|-v2 – визначає версію використовуваного механізму реструктуризації. Якщо версію механізму реструктуризації не зазначено (-v1 або -v2), використовуватиметься механізм реструктуризації тієї версії, яку зазначено у файлі conf.cfg на боці клієнтської прикладної програми. Інакше буде використано зазначену версію механізму. Якщо зазначено оптимізований механізм реструктуризації, але його використання конфліктує з іншими параметрами, буде використано звичайний механізм реструктуризації.
- -Extension <Ім'я розширення> – буде виконано оновлення зазначеного розширення.
Вибір використовуваного механізму реструктуризації відбувається за такими правилами:
- якщо в командному рядку явно зазначено версію механізму реструктуризації, використовуватиметься зазначений механізм;
- якщо в командному рядку немає значення версії механізму реструктуризації, використовуватиметься механізм реструктуризації, заданий параметром UpdateDBCfg у файлі conf.cfg на боці клієнтської програми.
- у будь-якому разі параметр -Server означає, що реструктуризація виконуватиметься на сервері. Ця команда не впливає на вибір використовуваного механізму реструктуризації.
Параметр /UpdateDBCfg дозволено зазначати після параметрів:
- /LoadCfg;
- /UpdateCfg;
- /ConfigurationRepositoryUpdateCfg;
- /LoadConfigFiles;
- /LoadConfigFromFiles;
- /MobileAppUpdatePublication;
- /MobileAppWriteFile;
- /MobileClientDigiSign;
- /MobileClientWriteFile.
/DumpDBCfg <ім’я cf/cfe-файлу> [-Extension <Ім’я розширення>]
Виконує збереження конфігурації бази даних або конфігурації розширення, що зберігається в базі даних, у файл. Збереження конфігурації розширення виконується за умови коректного зазначення параметра -Extension.
/DumpDBCfgList [-Extension <Ім’я розширення>] [-AllExtensions]
Виводить ім’я основної конфігурації, якщо не зазначено жодного параметра, або ім’я розширення чи розширень. Можна використовувати такі параметри:
- -Extension – виводить ім’я зазначеного розширення;
- -AllExtensions – виводить імена всіх розширень.
/RollbackCfg
Виконує повернення до конфігурації бази даних.
У разі зазначення параметра -Extension відбудеться повернення до конфігурації, збереженої в базі даних, для зазначеного розширення.
/DeleteCfg [-Extension <Ім’я розширення>] [-AllExtensions]
Виконує вилучення розширення із зазначеним ім’ям. Зазначення параметра -AllExtensions призведе до вилучення всіх розширень. Використання команди без параметра неприпустиме.
/DumpConfigFiles <каталог вивантаження> [-Module] [-Template] [-Help] [-AllWritable] [-Picture] [-Right] [-Extension <Ім’я розширення>]
Дає змогу вивантажувати деякі властивості об'єктів конфігурації (модулі, макети, картинки, права доступу та довідкову інформацію) у файли. Можна використовувати такі параметри:
- <каталог вивантаження> – каталог розташування файлів властивостей;
- -Module – ознака необхідності вивантаження модулів;
- -Template – ознака необхідності вивантаження макетів;
- -Help – ознака необхідності вивантаження довідкової інформації;
- -AllWritable – ознака вивантаження властивостей лише об'єктів, доступних для запису;
- -Picture – ознака вивантаження спільних картинок;
- -Right – ознака вивантаження прав;
- -Extension – вивантаження буде виконано для зазначеного розширення.
/LoadConfigFiles <каталог завантаження> [-Module] [-Template] [-Help] [-AllWritable] [-Picture] [-Right] [-Extension <Ім’я розширення>]
Дає змогу завантажувати деякі властивості об'єктів конфігурації (модулі, макети, картинки, права доступу та довідкову інформацію) з файлів. Можна використовувати такі параметри:
- <каталог завантаження> – каталог розташування файлів властивостей;
- -Module – ознака необхідності завантаження модулів;
- -Template – ознака необхідності завантаження макетів;
- -Help – ознака необхідності завантаження довідкової інформації;
- -AllWritable – ознака завантаження властивостей лише об'єктів, доступних для запису;
- -Picture – ознака завантаження спільних картинок;
- -Right – ознака завантаження прав;
- -Extension – завантаження буде виконано до зазначеного розширення. Якщо розширення підключено до сховища, об'єкти, що завантажуються, мають бути захоплені у сховище.
Якщо команду пакетного режиму запуску виконано успішно, повертається код 0, інакше – 1 (101 – за наявності помилок у даних).
/DumpConfigToFiles <каталог вивантаження> [-Format <режим>] [-Extension <Ім'я розширення>] [-AllExtensions] [-update] [-force] [-getChanges <ім'я файлу>] [-configDumpInfoForChanges <ім'я файлу>] [ -listFile <ім'я файлу>] [-configDumpInfoOnly]
Виконує вивантаження конфігурації у файли. Можна використовувати такі параметри:
-Format – визначає формат вивантаження конфігурації у файли:
- Plain – лінійний формат;
- Hierarchical – ієрархічний формат (за замовчуванням).
- -Extension – виконується вивантаження зазначеного розширення.
- -AllExtensions – вивантажуються всі розширення, але основна конфігурація не вивантажується. Кожне розширення вивантажується до каталогу зі своїм ім'ям.
- -update – указує на необхідність оновити раніше виконане вивантаження, тобто буде вивантажено лише ті об'єкти, версії яких відрізняються від версій раніше вивантажених об'єктів.
- Файл версій (ConfigDumpInfo.xml) буде отримано з поточного каталогу вивантаження. Якщо поточна версія формату вивантаження не збігається з версією формату у файлі версій або файл версій не знайдено, буде згенеровано помилку. Після завершення вивантаження файл версії оновлюється.
Можливе спільне використання з параметрами:
- -force – якщо поточна версія формату вивантаження не збігається з версією формату у файлі версій, виконується повне вивантаження;
- -configDumpInfoForChanges – якщо поточний каталог вивантаження перед початком роботи не порожній, буде згенеровано помилку. Відповідність поточної версії формату вивантаження та версії формату вивантаження у файлі версій не перевіряється. Під час вивантаження генерується новий файл версій. Файл, зазначений у параметрі -configDumpInfoForChanges, не змінюється.
- -force – виконати повне вивантаження у разі виявлення розбіжностей між поточною версією формату вивантаження, отриманою під час спроби оновлення, та версією формату, записаною у файлі версій (ConfigDumpInfo.xml). Використовується лише разом із параметром -update. В інших випадках ігнорується.
- -getChanges <ім'я файлу> – у зазначеному файлі буде сформовано список змін поточної конфігурації відносно вивантаження версії, каталог якої є параметром команди /DumpConfigToFiles. Для цього параметра ім'я файлу є обов'язковим.
- Може використовуватися разом із параметром -configDumpInfoForChanges; у такому разі зміни буде обчислено відносно файлу версій (ConfigDumpInfo.xml), зазначеного у цьому параметрі. Якщо під час використання параметра -configDumpInfoForChanges файл версій не знайдено, буде згенеровано помилку.
- -configDumpInfoForChanges <ім'я файлу> – указує файл версій (ConfigDumpInfo.xml), який буде використано для порівняння змін. Для цього параметра зазначення повного імені файлу версій є обов'язковим.
- Цей параметр використовується лише спільно з параметрами -update та -getChanges.
- -listFile <ім'я файлу> – указує файл зі списком об'єктів, які буде вивантажено незалежно від того, чи були вони змінені. Для цього параметра ім'я файлу є обов'язковим.
- Об'єкти зі списку буде повністю вивантажено, за винятком підпорядкованих об'єктів, які є окремими об'єктами розробки. Для вивантаження таких підпорядкованих об'єктів їх слід зазначити у списку.
- Якщо об'єкт зі списку має підпорядковані об'єкти, які не є окремими об'єктами розробки, але мають зовнішні властивості, зовнішні властивості таких об'єктів також буде вивантажено.
- У файлі, що містить імена об'єктів для вивантаження, можна зазначити ідентифікатор Configuration, який є еквівалентом кореня конфігурації. Якщо у файлі є ідентифікатор Configuration, після якого не зазначено ім'я кореневого об'єкта конфігурації, під час вивантаження цей ідентифікатор буде еквівалентний повному імені кореневого об'єкта конфігурації, тобто запис виду Configuration.Help еквівалентний запису Configuration.Ім'яКонфігурації.Help.
- Можна одночасно використовувати повні та скорочені варіанти написання імен: лише з ідентифікатором Configuration або з повним ім'ям кореневого об'єкта конфігурації. За потреби вивантаження двох зовнішніх властивостей кореневого об'єкта конфігурації, наприклад Help і Splash, у файлі зі списком об'єктів можна зазначити такі рядки:
Configuration.Help Configuration.Ім'яКонфігурації.Splash
- Цей параметр використовується лише окремо від інших параметрів.
- -configDumpInfoOnly – зазначення цього параметра означає, що під час вивантаження формується лише файл версій (ConfigDumpInfo.xml). Якщо в командному рядку зазначено параметр -format, файл версій буде сформовано для зазначеного формату вивантаження. За замовчуванням файл версій формується для ієрархічного формату вивантаження.
- Цей параметр може поєднуватися лише з параметром -format. Поєднання з іншими параметрами неприпустиме.
/LoadConfigFromFiles <каталог завантаження> [-Extension <Ім'я розширення>] [-AllExtensions] -files «<файли>» -listFile <файлСписку> -Format <режим> [-updateConfigDumpInfo]
Виконує завантаження конфігурації з файлів. Завантаження розширення в основну конфігурацію й навпаки не підтримується. У разі повного завантаження файлів конфігурації формат завантаження, лінійний або ієрархічний, визначається автоматично. Для часткового завантаження автоматичне визначення формату не підтримується, тому формат слід явно зазначити за допомогою -Format.
Можна використовувати такі параметри:
- -Extension – виконується завантаження зазначеного розширення. Якщо розширення немає, його буде створено. Якщо розширення підключено до сховища, повне завантаження такого розширення не підтримується. Можливе часткове завантаження, якщо об'єкти, що завантажуються, захоплені у сховище конфігурації розширення.
- -AllExtensions – виконується завантаження розширень із файлів. Кожен підкаталог у цьому каталозі вважається розширенням. Параметр несумісний із параметрами -files або -listFile.
- -files – указує, які файли мають бути завантажені під час часткового завантаження конфігурації з файлів. Кожен файл може бути зазначений як із повним шляхом, так і зі шляхом відносно каталогу завантаження. Список файлів має бути зазначений у лапках, файли перелічуються через кому. Параметр несумісний із параметром -AllExtensions.
- -listFile – описує файл, який містить список файлів для завантаження. У списку кожний рядок має містити лише одне ім'я файлу, а ім'я може бути як повним, із зазначенням повного шляху до файлу, так і зі шляхом відносно каталогу завантаження. Рядки мають розділятися символом переведення рядка. Переведення рядка підтримується як у варіанті Windows, так і у варіанті Linux. Файл має бути в кодуванні UTF-8. Порожні рядки не підтримуються. Рядок може бути пропущений, якщо починається з REM. Параметр несумісний із параметром -AllExtensions.
-Format – визначає формат вивантаження конфігурації у файли:
- Plain – лінійний формат;
- Hierarchical – ієрархічний формат (за замовчуванням).
- Параметр використовується лише разом із параметрами -files або -listFile.
- -updateConfigDumpInfo – указує, що наприкінці завантаження в каталозі буде створено файл версій (ConfigDumpInfo.xml), який відповідатиме завантаженій конфігурації. Якщо виконується часткове завантаження, тобто використовуються параметри -files або -listFile, наявний файл версій буде оновлено.
- У разі одночасного зазначення параметрів -files та -listFile буде використано параметр, який у командному рядку зазначено першим.