Как исправить ошибку подписания ЭДО «Значение не является значением объектного типа (Свойства)» в 1С?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

Разберем ситуацию, когда после обновления конфигурации (например, 1С:Управление торговлей до версии 11.5.17.205 или 1С:Розница) пользователи сталкиваются с невозможностью отправить электронные документы контрагентам. При попытке подписания процесс прерывается, а в журнале регистрации фиксируется ошибка криптографии: Не удалось получить данные для подписания по причине: Значение не является значением объектного типа (Свойства). Рассмотрим подробнее, почему возникает эта проблема и как ее оперативно устранить.

Проанализируем причины возникновения ошибки

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

  1. Ошибка библиотеки электронных документов (БЭД). В некоторых релизах конфигураций (включая УТ 11.5 и Документооборот) сбой при обращении к свойству Свойства возникает из-за программной недоработки платформы или модуля обработки форматов. При формировании XML-файла функция возвращает пустой массив или значение Неопределено вместо ожидаемого объекта с реквизитами.
  2. Некорректные данные в исходном документе. Если в учетном документе (реализации или счете-фактуре) есть незаполненные обязательные поля, битые ссылки (например, на удаленную номенклатуру) или некорректно указаны коды маркировки, 1С не может правильно сгенерировать данные для XML.
  3. Рассинхронизация настроек с оператором ЭДО. Кешированные настройки форматов для конкретного контрагента могли устареть, из-за чего программа пытается применить неактуальный шаблон генерации электронного документа.

Рассмотрим основное решение: очистка регистра правил форматов

Данный метод был успешно применен на практике в конфигурациях 1С:Управление торговлей (редакция 11) и 1С:Розница (редакция 2.3). Разберем по шагам алгоритм сброса некорректных правил сериализации:

  1. Откройте меню функций технического специалиста и найдите регистр сведений ПравилаПреобразованияФорматов.
  2. В открывшемся списке удалите проблемные записи. Обязательно удалите все строки с названием «Произвольный XML», а также записи с вариантом заполнения для УПД (например, значения, начинающиеся на «СЧФДОП...»). Если вы сомневаетесь, какие именно строки вызывают сбой, смело очищайте регистр полностью — система восстановит их позже.
  3. Перейдите в рабочее место Текущие дела ЭДО.
  4. В верхней панели нажмите команду Диагностика ЭДО. В процессе диагностики регистр автоматически перезаполнится актуальными и корректными правилами от вашего оператора.

Рассмотрим временное решение со сменой формата в документе

Если вам нужно срочно отправить документ, а времени на очистку регистров и диагностику нет, попробуем применить обходной маневр с ручной сменой формата отправки:

  1. Откройте электронный документ, который требуется отправить контрагенту.
  2. В правой верхней части формы найдите гиперссылку Настроить форматирование (обычно она выделена синим цветом) и нажмите на нее.
  3. В раскрывшемся списке выберите устаревший формат передачи. Например, нижний пункт — передача товаров в формате MMB-7-10/551@. Использование этого старого, но надежного формата чаще всего позволяет успешно сгенерировать XML и выполнить отправку.

Проанализируем дополнительные способы решения проблемы

Если базовые шаги не помогли устранить ошибку криптографии, выполним ряд дополнительных действий:

  1. Пересоздание электронного документа. Некорректный формат может быть жестко привязан к уже созданному, но не отправленному электронному документу. Принудительно отвяжите или пометьте на удаление текущий зависший электронный документ (через список присоединенных документов) и сформируйте его заново на основании учетного документа.
  2. Принудительное обновление настроек ЭДО. Перейдите в справочник НастройкиЭДО, откройте настройку взаимодействия с проблемным контрагентом и выполните команду Обновить данные настройки, чтобы запросить актуальные классификаторы.
  3. Очистка кеша 1С. Временные файлы (кеш) как на стороне клиентского приложения, так и на сервере 1С могут хранить старые правила сериализации XML. Очистите кеш и проверьте наличие исправительных патчей для вашей версии конфигурации.
  4. Альтернативный вариант отправки (через Личный кабинет). В случае критической необходимости выгрузите электронный документ из 1С на жесткий диск в виде XML-файла (без подписания). Зайдите в веб-версию личного кабинета вашего оператора ЭДО (например, Тензор, Калуга Астрал, Контур), загрузите файл и подпишите его непосредственно в браузере.
  5. Использование внешней программы. Выгруженный XML-файл также можно подписать внешней утилитой, такой как КриптоАРМ, и передать контрагенту, если такой способ документооборота допускается регламентом вашей работы.

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

← На главную