ОбъектМетаданных: Документ.ЕстьИзмененияРасширениямиКонфигурации

Методы · ChangedByConfigurationExtensions

Возвращает Истина, если сам объект или один из его дочерних объектов изменен (в том числе, и добавлением нового дочернего объекта) расширениями в текущем сеансе.

Синтаксис

ЕстьИзмененияРасширениямиКонфигурации()
Полное описание, параметры и ограничения

ОбъектМетаданных: Документ.ЕстьИзмененияРасширениямиКонфигурации (MetadataObject: Document.ChangedByConfigurationExtensions)

ОбъектМетаданных: Документ (MetadataObject: Document)

ЕстьИзмененияРасширениямиКонфигурации (ChangedByConfigurationExtensions)

Доступен, начиная с версии 8.3.9.

Синтаксис:
ЕстьИзмененияРасширениямиКонфигурации()
Описание:

Возвращает Истина, если сам объект или один из его дочерних объектов изменен (в том числе, и добавлением нового дочернего объекта) расширениями в текущем сеансе.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.

Использование в версии:

Доступен, начиная с версии 8.3.9.

Методическая информация

Практические примеры

Проверить происхождение описания заявки без изменения расширений

Проверка изменения расширением и поиск расширения, добавившего объект, отвечают на разные вопросы. На собственной базе без расширений показываем начальное состояние.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Создайте НОВУЮ пустую файловую учебную базу, не копию рабочего каталога. В Конфигураторе задайте корню имя Учебная85. Не добавляйте эти объекты в рабочую УТ/КА2/УНФ/БП.

  2. Справочники → Добавить: имя УчебныеТовары. Длина кода 10, тип кода Строка, автонумерация и контроль уникальности включены, длина наименования 100.

  3. Для УчебныеТовары включите иерархию групп и элементов. Добавьте реквизиты Артикул (Строка, длина 20) и Цена (Число, 12 цифр, 2 дробных, неотрицательное). Проверка заполнения для этих учебных реквизитов не устанавливается.

  4. Добавьте табличную часть Штрихкоды: Штрихкод (Строка, длина 20) и Основной (Булево). Обновите конфигурацию базы данных. Модули объектов оставьте пустыми.

  5. Создайте серверный общий модуль УчебныеЗадачи и команду учебной обработки, вызывающую ВыполнитьПример() Экспорт. Каждый фрагмент выполняйте отдельно, не склеивайте их в одну процедуру.

  6. Документы → Добавить: имя УчебнаяЗаявка, тип номера Строка, длина 9, автонумерация включена. Проведение запретите: это только учебный документ без движений.

  7. Добавьте реквизит Комментарий (Строка, длина 100) и табличную часть Товары: Товар (СправочникСсылка.УчебныеТовары), Количество (Число, 9 цифр, 0 дробных, неотрицательное), Цена (Число, 12 цифр, 2 дробных, неотрицательное). Модуль документа пустой.

  8. Обновите конфигурацию базы данных. Эти имена существуют только в созданной учебной конфигурации, не подразумеваются в типовой базе.

  9. Выполняйте только в новой базе Учебная85. Проверки читают настройки УчебнаяЗаявка; документы не создаются, не записываются и не проводятся.

  10. Не добавляйте документу свои команды, макеты, характеристики, дополнительные индексы или основания ввода. Расширения в учебную базу не устанавливайте.


Если Метаданные.Справочники.Найти("УчебныеТовары") = Неопределено Тогда
    ВызватьИсключение "Сначала создайте учебный справочник по подготовке";
КонецЕсли;

Если Метаданные.Документы.Найти("УчебнаяЗаявка") = Неопределено Тогда
    ВызватьИсключение "Сначала создайте УчебнаяЗаявка по подготовке";
КонецЕсли;
Описание = Метаданные.Документы.УчебнаяЗаявка;
Сообщить(Не Описание.ЕстьИзмененияРасширениямиКонфигурации());
Сообщить(Описание.РасширениеКонфигурации() = Неопределено);
Сообщить("Принадлежность заявки: " + Строка(Описание.ПринадлежностьОбъекта));
Сообщить("Тип связи с расширяемым объектом: " + Строка(ТипЗнч(Описание.ОбъектРасширяемойКонфигурации)));

Разбор по шагам

  1. ЕстьИзмененияРасширениямиКонфигурации учитывает сам объект и дочерние объекты в текущем сеансе.

  2. РасширениеКонфигурации относится к расширению, добавившему объект. Уже существующая заявка может быть изменена расширением без добавления нового объекта.

  3. Принадлежность и связь расширяемого объекта нужны для разбора собственных/заимствованных метаданных, не для ссылки на запись документа.

  4. Код ничего не устанавливает и не переключает. Две проверки относятся к специально подготовленной базе без расширений.

Как проверить результат

  1. Две проверки дают Истина.

  2. Последние сообщения показывают фактические сведения; UUID связи не подставляется как произвольный номер заявки.

Ожидаемый результат

Диагностика происхождения схемы документа без вмешательства в состав расширений.

На что обратить внимание

  1. Отсутствие добавившего расширения не доказывает отсутствие изменений другими расширениями.

  2. После изменения активного состава расширений сеанс и результат проверки могут отличаться.

  3. Это не поиск автора или истории изменения конкретной заявки.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.