Хочу поделиться с вами небольшой доработкой, которая существенно облегчает мне работу с конвертацией.
История вопроса такова. В конвертации есть замечательная функция автоматического создания ПКО, однако пользоваться ей практически невозможно вследствие того, что применительно к реквизитам, которые имеют составной тип, она создает много ненужных правил, усложняя тем самым работу по их настройке.
Я доработал конвертацию таким образом, что для реквизитов, имеющих составной тип, эта функция не срабатывает. Для таких реквизитов я создаю отдельные ПКО только тех типов, которые мне нужны. Если не указывать для такого реквизита (как, впрочем, и для обычного) ПКО, то программа конвертации сама попробует подобрать соответствующее типу правило при выгрузке.
Доработка заключается в том, что надо добавить вот такой код :
// это составной тип - НЕ надо искать
Если Источник.Типы.Количество() > 1 Тогда
Возврат Ложь;
КонецЕсли;
в начало функции НужноИскатьИлиСоздаватьПКОДляДанных обработки АвтонастройкаПравилКонвертацииСвойств.
Чем более похожи конфигурации источника и приемника, тем ощутимее эффект. А написание правил для ситуации, когда источник и приемник совпадают, вообще занимает пару минут.
Есть такое. Случайно нажал кнопку и куча мусора в правилах
Именно это я и имел ввиду!
Несомненно полезная, обязательно попробую! После создания многих ненужных правил не нужно будет тратить время для приведения правил в удобочитаемый вид. Да и удалять лишние ненужные элементы в конфигурации, в которой добавлено около 10 конвертаций проблематично, анализ помеченных объектов занимает большую часть времени. Спасибо!
Спасибо.
Пожалуйста!
Класс. Спасибо, за информацию. Очень полезная доработка.
Пользуйтесь на здоровье!
Развивая идею — можно завести константу типа булево НеСоздаватьДляСоставныхТипов и внутри условия Если Источник.Типы.Количество() > 1 Тогда
проверять ее значение, если истина — тогда Возврат Ложь; так можно будет управлять работой функционала в пользовательском режиме.
Согласен. Честно говоря, идея лежит на поверхности. Я удивлен что такой настройки нет в типовой поставке.
1. А это касается ПКС с кучей ссылочных объектов (например, ДокументОснование) или только ПКС отдельных ссылок?
2. Если Да — как потом добавить объекты в такие ПКС? Они же опять будут плодиться как грибы после дождя…
Как правило, из всех перечисленных типов у меня используется один — два. Их и надо описать. Для реквизита составного типа ПКО не указываем. Конвертация сама будет искать ПКО конкретного типа, такого как у конвертируемого значения.
Спасибо. Возьмем на заметку. Я бы посоветовал отправить слезное письмо «разрабам» в 1С о недоделке такого важного момента…
Попытаюсь конечно 🙂
Взял в копилку на заметку.
На здоровье!