Как в 1с перенести контрагента в другую папку
В данной статье рассмотрим возможность группового перемещения элементов справочника из группы в группу. Это могут быть элементы номенклатуры, контрагенты, различние статьи и т.п.
Промежуточный результат выглядит следующим образом.
На этом наш пример можно считать законченным. Рассмотренная обработка весьма масштабируема, поэтому, поэкпериментировав с заполнениями отборов можно получить в пользование достаточно мощный и нужный инструмент. Удачи в исследованиях.
В случае, если у Вас появятся какие-либо сложности, свяжитесь с нами, мы обязательно поможем.
Обсудить операцию и задать по ней вопросы можно в форуме «1С:Вопросы и ответы».
Изменение реквизитов документов с помощью «Групповой обработки справочников и документов»
Если у Вас появились вопросы по статье или остались нерешенные проблемы обсудить их Вы можете на Форуме 1С Вопросы и ответы
Рассмотрим перенос справочника Подразделения. В базе Источнике справочник имеет иерархию элементов, а в базе Приемнике иерархию групп и элементов.
Для этого, в настройках правил обмена создадим новое правило конвертации свойств, где в Объект - приемник и Объект - источник укажем интересующие нас справочники в базе Приемнике и Базе Источнике. Затем согласимся на автоматическое создание правил конвертации свойств и правил выгрузки данных.
Если перенести данные так как есть, то в базе Приемнике на верхнем уровне элементы, которые указаны в качестве родителя, будут показаны, но на уровень вниз, переход по этим элементам будет невозможен. Для доступа ко всем элементам потребуется выбрать режим просмотра: Список.
Решение 1. Если имеется один уровень подчинения, тогда в Правиле конвертации объекта в Правиле конвертации свойств Это Группа в обработчике Перед Выгрузкой, пишем следующий код :
Таким образом, мы присваиваем свойству Это Группа значение Истина. Но, если уровней несколько, то у группы тоже будет родитель, из-за чего свойству будет присвоено значение Ложь и группа не создастся. Поэтому, данное решение подходит для одного уровня иерархии.
Решение 2. Универсальное решение. В том же обработчике пишем следующий код:
Здесь мы проверяем имеются ли в данном справочнике объекты, у которых в качестве родителя указана ссылка на текущий объект. Если такие элементы есть, значит текущий объект - группа, если нет - элемент.
Если все же необходимо перенести все элементы, именно как элементы, и сохранить возможность просмотра, в виде иерархии или дерева, то нужно просто отключить обработку правила конвертации свойства Родитель и Это Группа.
Читайте также: