Початкові дії під час роботи конфігурації
1. У конфігурації має бути передбачений механізм, що автоматично визначає як факт першого запуску конфігурації та виконує початкове заповнення інформаційної бази мінімально необхідними даними, так і факт першого запуску нового релізу та виконує необхідні зміни в базі (оновлення даних ІБ). Зокрема, таку можливість надає підсистема "Оновлення версії ІБ" Бібліотеки стандартних підсистем.
1. У конфігурації має бути передбачений механізм, що автоматично визначає як факт першого запуску конфігурації та виконує початкове заповнення інформаційної бази мінімально необхідними даними, так і факт першого запуску нового релізу та виконує необхідні зміни в базі (оновлення даних ІБ). Зокрема, таку можливість надає підсистема «Оновлення версії ІБ» Бібліотеки стандартних підсистем.
|
Методична рекомендація (корисна порада) 2. Початкове заповнення ІБ може бути поділено на обов'язкове, без якого конфігурація не працюватиме, і необов'язкове, яке полегшує початок експлуатації продукту, але не є суворо обов'язковим. 3. За результатами обробки інформаційної бази під час першого запуску конфігурації або під час першого запуску нового релізу конфігурації рекомендується виводити адміністратору системи опис конфігурації або опис змін у цій версії конфігурації. |
4. Ситуації, коли обробку не проведено в необхідному обсязі, мають контролюватися конфігурацією. При цьому користувачеві має виводитися попередження про виникнення проблемної ситуації. Для виведення докладного протоколу про виконані операції та помилки, що виникли, слід використовувати журнал реєстрації.
5. За наявності в конфігурації можливості роботи в розподіленій інформаційній базі (РІБ), слід реалізовувати логіку оновлення даних ІБ у підпорядкованих вузлах таким чином, щоб вона
- виконувалася після завантаження вже оновлених даних із головного вузла;
- виключала повторну обробку одних і тих самих даних, а тим більше — повторне створення нових даних. Іншими словами, повторна обробка ІБ має відпрацьовувати коректно.
Інакше:
- якщо під час оновлення підпорядкованого вузла ІБ безумовно створюються нові дані, то вони будуть багаторазово створені в кожному з вузлів РІБ і розмножені в усіх вузлах під час чергового обміну даними.
- якщо під час оновлення підпорядкованого вузла ІБ безумовно змінюються будь-які дані, то вони будуть зареєстровані для вивантаження назад у головний вузол. Це призведе до додаткового надлишкового навантаження на канал зв'язку між вузлами.
Наприклад, неправильно:
ПрофильОбъект = Справочники.ПрофилиГруппДоступа.СоздатьЭлемент(); ПрофильОбъект.Наименование = НСтр("ru = 'Бухгалтер'"); ПрофильОбъект.Предустановленный = Истина; ПрофильОбъект.Записать();
правильно:
НаименованиеПрофиля = НСтр("ru = 'Бухгалтер'"); Запрос = Новый Запрос( "ВЫБРАТЬ | ИСТИНА |ИЗ | Справочник.ПрофилиГруппДоступа КАК ПрофилиГруппДоступа |ГДЕ | ПрофилиГруппДоступа.Наименование = &Наименование И | ПрофилиГруппДоступа.Предустановленный = ИСТИНА"); Запрос.УстановитьПараметр("Наименование", НаименованиеПрофиля); // Якщо елемента немає, потрібно створити новий. Если Запрос.Выполнить().Пустой() Тогда ПрофильОбъект = Справочники.ПрофилиГруппДоступа.СоздатьЭлемент(); ПрофильОбъект.Наименование = НаименованиеПрофиля; ПрофильОбъект.Предустановленный = Истина; ПрофильОбъект.Записать(); КонецЕсли