Простий перенесення довідників ii
Є функції настройки зіставлення.
Є реалізація під 1С: Підприємство 8.2.
Не дивлячись на скепсис деяких учасників обговорення, попередній "простий перенесення довідників" виявився затребуваний, при тому, що в ньому не було ніяких налаштувань. Втім, це був один з перших моїх дослідів програмування під 8.1.
Так вийшло, що підвернувся клієнт, який попросив зробити перенесення довідників вже під 8.2. Скориставшись нагодою, зробив обробку універсальної, додавши можливість установки перенесення, коли потрібно переносити дані між неідентичних довідниками.
Структура зіставлення розвантаженого довідника з наявними в базі налаштовується в обробці завантаження на відповідній закладці. При виборі користувачем зіставляється довідника, обробка буде намагатися автоматично зіставити реквізити довідника з вивантажують даними. Цю настройку можна змінювати вручну.
Структура зіставлення розвантаженого довідника з наявними в базі може бути збережена і автоматично завантажена в наступний раз, при перенесенні такого ж довідника. Файл структури зіставлення автоматично буде присвоєно таке ж, як ім'я файлу перенесення довідника, для якого проводиться настройка, тільки з розширенням ini.
У реалізації під 8.1 все одно можна зателефонувати обробок вивантаження-завантаження зі складу конфігурації.
Як приклад такого виклику реалізована пакетна вивантаження довідників з 8.1.
Під 8.2 реалізована лише завантаження з усіма параметрами, як і в 8.1. Це не конвертація, а окрема реалізація на керованих формах. (До речі, моя перша прога на 8.2, так що привітайте і не штовхайте)
При необхідності використання вивантаження в складі конфігурації без відкриття форми, досить вставити наступний код:
Індикатор може в параметрах відсутні. Це також може бути індикатор з якоїсь іншої форми.
При необхідності використання завантаження в складі конфігурації без відкриття форми, потрібно вставити наступний код:
Метод УстановітьІмяФайла спробує знайти для файлу перенесення збережену структуру зіставлення, і якщо така є в каталозі перенесення, то завантажить її.
Якщо збережена структура зіставлення в каталозі перенесення відсутній, то зіставити вивантажений довідник з наявними в базі автоматично.
Можливо використовувати реквізити обробки:
Значення від 0 до 3, відповідають режимам відпрацювання ситуації, коли в базі є елементи довідника з таким же кодом, як у завантажуються.
0 - не додавати нові елементи
1 - додавати з новим кодом
2 - змінювати наявні
3 - сприймати, як помилку
Перед завантаженням, обробка виконує перевірку відповідності даних при завантаженні зі структурою довідника і даними бази. При значенні ІСТИНА обробка виконає лише перевірку, не змінюючи склад довідників.
Якщо цей параметр виставити в БРЕХНЯ, то обробка буде завантажувати дані, не дивлячись на зустрілися помилки при перевірці. В іншому випадку, обробка скасує завантаження, якщо на етапі перевірки будуть виявлені проблеми.