Перейти к концу метаданных
Переход к началу метаданных

Механизм клонирования - позволяет создавать новые сущности на основании уже существующих записей других сущностей.

Созданные в системе Настройки клонирования находятся в справочнике Настройки клонирования:

При создании экземпляра справочника Настройки клонирования можно указать:

Наименование - название настройки клонирования.

Сущность-источник - клонируемая сущность, записи которой будут использованы для создания новых сущностей (сущность, из которой производится копирование).

Сущность-приемник - сущность, записи которой будут созданы на основании записей из Сущности-источника (сущность, в которую производится копирование).

Класс-копир - ссылка на алгоритм клонирования, который позволяет разработчику "вклиниться" в процесс для собственных нужд (класс, который программно реализует клонирование данной сущности).

  • Если выбран класс-копир, то ТЧ "Сопоставление полей" не отображается на форме

Параметр - параметр клонирования, доступен для Класса клонирования. Позволяет запросить дополнительные параметры.

Открывать клонированные - если флаг установлен, то система открывает созданные сущности в интерфейсе.

Сохранять клонированные - если флаг установлен, то система сохраняет созданные сущности (без открытия).

Клонировать вложения - возможность клонировать вложения при клонировании документов (по умолчанию false).

Операция создания - актуально только для документов, запускает указанную операцию создания, если не установлен флаг "Сохранять клонированные"

Сопоставление полей - указывает связь конкретного столбца из сущности-источника с полем сущности-приемника:

  1. Поле - ссылка на поле сущности-приемника;
  2. Поле-источник - ссылка на поле сущности-источника;
  3. Нумератор - алгоритм автоматического заполнения полей;
  4. Значение - строка, которая вставляется в поле, независимо от имени столбца;
  5. Рег. выражение поиска/ Рег. выражение замены - строки, используемые в качестве параметров функции поиска/замены, результат которой записывается в поле сущности-приемника.
  6. Запросить у пользователя - если флаг установлен (тогда поля: "Значение", "Поле-источник", "Нумератор", "Рег. выражение поиска", "Рег. выражение замены" не доступны), то при клонировании система выдает простую форму с указанными полями (возможно предзаполненными). Например: клонируем пользователя. На поле "Наименование" устанавливаем флаг "Запросить у пользователя". Тогда в процессе клонирования выходит простая форма с возможностью задать логин пользователя.
    Это позволяет при клонировании с сохранением ТЧ выставлять ключевые поля, по которым проверяется уникальность, и избегать ошибок нарушения уникальности при сохранении.

  1. Нельзя создавать настройки клонирования для абстрактных сущностей. Для проверки сущности на абстрактность предназначено событие сущности с одноименным названием, которое должно быть включено.
    При попытке осуществить клонирование абстрактных сущностей система выдает ошибку:
  2. Если не указано ни одного элемента в табличной части "Сопоставление полей", то склонированная запись будет идентична клонируемой записи. При указании полей в табличной части "Сопоставление полей" при клонировании будут скопированы только они.
  3. При клонировании основной сущности с зависимыми сущностями (ТЧ, МЛ) зависимые сущности также будут склонированы. В этом случае будут склонированы все записи из табличной части или мультиссылки. (warning) Если основная сущность имеет виртуальные гриды, то они не будут склонированы.
  4. При настройке отдельного шаблона клонирования для табличной части или мультиссылки пользователь получит возможность клонировать отдельно запись этой табличной части или мультиссылки. Т.е. на панели инструментов табличной части или мультиссылки появится кнопка "Клонировать".
  5. Если клонируемая сущность имеет уникальный индекс, то при попытке склонировать запись этой сущности система выдаст сообщение об ошибке:
  6. Механизм открытия предзаполненной формы по XML сделан так, что вначале сохраняются данные (в транзакции), потом генерируется форма, затем транзакция откатывается.
  7. Если кнопка "Клонировать" расположена на панели инструментов виртуального грида, находящегося на форме документа, то она будет активной только при начатой операцией над документом, поскольку только так можно менять поля документа. Обратите внимание, что виртуальный грид должен быть в изменяемых полях документа.

    Но если кнопка "Клонировать" расположена на панели инструментов внешнего поля, то она будет активна даже при не начатой операцией над документом.