Как исправить ошибки «Недопустимый тип» и «Имя события недопустимо» при внедрении БИД?

Программист 1С v8.3 (Управляемые формы) 1С:Документооборот IT и автоматизация бизнеса
← На главную

При внедрении Библиотеки интеграции с «1С:Документооборотом» (БИД) в рабочую или нетиповую конфигурацию разработчики часто сталкиваются с ошибками проверки метаданных. Система сообщает о проблемах в подписках на события, таких как ИнтеграцияС1СДокументооборотОбработкаЗаполненияДокументы и ИнтеграцияС1СДокументооборотПередЗаписьюДокумента, выдавая сообщения «Недопустимый тип» и «Имя события недопустимо для указанного источника события». Разберем, почему возникают эти ошибки и как их исправить.

Анализ причин ошибки

Корень проблемы кроется в механизме работы самой БИД. Библиотека является универсальным инструментом и не знает заранее, с какими именно документами вашей информационной базы ей предстоит работать. Для этого в ее структуре предусмотрены специальные «переопределяемые» объекты, которые нужно настроить на этапе внедрения.

Ошибки возникают, потому что подписки на события ссылаются на источник, который не был корректно сконфигурирован. В нашем случае источником для подписок является определяемый тип ИнтеграцияС1СДокументооборотДокументыОбъектыПереопределяемый. После объединения конфигураций этот тип оказывается либо пустым, либо (что хуже) содержит некорректный тип данных, например, Строка. Платформа «1С:Предприятие» не может применить события ОбработкаЗаполнения или ПередЗаписью к пустому месту или строке, из-за чего и сообщает об ошибке.

Еще одна сложность — объекты БИД после добавления в конфигурацию находятся на поддержке, что блокирует их прямое редактирование. Однако это ограничение можно обойти стандартными средствами конфигуратора.

Пошаговое решение проблемы

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

Шаг 1. Включение возможности изменения объектов на поддержке

Поскольку объекты БИД, включая нужные нам определяемые типы и подписки, находятся на поддержке, их нельзя изменять напрямую. Чтобы получить доступ к их настройкам, не снимая конфигурацию с поддержки полностью, выполним следующие действия:

  1. Откройте конфигурацию в режиме «Конфигуратор».
  2. В дереве конфигурации нажмите правой кнопкой мыши на самый верхний узел (название вашей конфигурации).
  3. В контекстном меню выберите пункт «Поддержка» -> «Настройка поддержки...».
  4. В открывшемся окне нажмите кнопку «Включить возможность изменения».
  5. Система покажет предупреждение. Согласитесь с ним. В окне настройки напротив всех объектов будут установлены правила поддержки «Объект поставщика редактируется с сохранением поддержки».
  6. Нажмите «Закрыть». Теперь вы можете точечно изменять нужные объекты метаданных.

Важно: эта операция является стандартной и безопасной. Она позволяет адаптировать типовые механизмы под нужды конкретной конфигурации, не теряя при этом возможности дальнейшего обновления.

Шаг 2. Настройка состава определяемого типа

Это ключевой этап решения проблемы. Нам нужно «объяснить» библиотеке интеграции, с какими именно документами нашей информационной базы она будет работать.

  1. В дереве метаданных найдите ветку Общие -> Определяемые типы.
  2. Найдите в списке определяемый тип ИнтеграцияС1СДокументооборотДокументыОбъектыПереопределяемый и откройте его двойным щелчком.
  3. Перейдите на вкладку «Тип». Скорее всего, вы увидите, что в качестве типа указана простая Строка, или поле пустое. Это и есть причина ошибки.
  4. Снимите флажок с типа Строка, если он установлен.
  5. Над списком типов данных нажмите на кнопку с тремя точками («Выбор») или просто начните разворачивать дерево типов.
  6. В дереве типов найдите ветку ДокументОбъект. Раскройте ее и отметьте галочками все виды документов, которые должны участвовать в интеграции с «1С:Документооборотом» (например, РеализацияТоваровУслуг, ЗаказКлиента и т.д.).
  7. Нажмите «ОК», чтобы сохранить изменения в составе типа.

Теперь определяемый тип содержит конкретные ссылки на объекты документов вашей конфигурации, и платформа сможет корректно определить источник для подписок на события.

Шаг 3. Проверка подписок на события

После правильной настройки определяемого типа платформа должна автоматически исправить ошибки в подписках. Однако для полной уверенности стоит выполнить проверку вручную.

  1. В дереве метаданных найдите ветку Общие -> Подписки на события.
  2. Найдите подписку ИнтеграцияС1СДокументооборотОбработкаЗаполненияДокументы и откройте ее свойства.
  3. Убедитесь, что в поле «Источник» теперь указан настроенный нами определяемый тип ИнтеграцияС1СДокументооборотДокументыОбъектыПереопределяемый.
  4. Проверьте, что в поле «Событие» выбрано значение ОбработкаЗаполнения.
  5. Повторите аналогичную проверку для подписки ИнтеграцияС1СДокументооборотПередЗаписьюДокумента. Для нее событием должно быть ПередЗаписью.

После выполнения этих шагов сохраните конфигурацию базы данных (клавиша F7). Ошибки проверки метаданных должны исчезнуть.

Важное замечание: БИД и БСП — не одно и то же

В процессе решения может возникнуть вопрос: «А можно ли интегрировать только объекты, созданные на основе Библиотеки стандартных подсистем (БСП)?» Ответ — нет.

БИД является самостоятельной библиотекой, и ее можно внедрить в любую конфигурацию, даже полностью самописную. Главное — правильно указать, какие именно документы, справочники и другие объекты вашей системы будут участвовать в интеграции. Для этого и служат переопределяемые объекты (в основном, определяемые типы), которые мы настраивали выше. Вы можете интегрировать любые ваши объекты, достаточно лишь включить их в состав соответствующих определяемых типов БИД.

← На главную