Как исправить ошибку «Поле не найдено СправочникСертификатов.Ссылка.СписокПользователей.Пользователь» при открытии реализации?

Программист 1С v8.3 (Обычные формы) 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

При открытии документов реализации товаров и услуг или других учетных форм пользователи могут столкнуться с аварийным завершением работы и системной ошибкой в общем модуле подсистемы электронного документооборота:


{ОбщийМодуль.ЭлектронныеДокументыСлужебный.Модуль(6111)}: Ошибка при вызове метода контекста (ВыполнитьПакет)
    РезультатЗапроса = Запрос.ВыполнитьПакет();
по причине:
{(124, 35)}: Поле не найдено "СправочникСертификатов.Ссылка.СписокПользователей.Пользователь"
И (СправочникСертификатов.Ссылка.СписокПользователей.Пользователь = &Пользователь

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

Причины возникновения ошибки

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

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

Способ 1. Очистка кэша информационной базы (основное решение)

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

  1. Удаление и повторное добавление базы в списке:

    Завершим работу всех сеансов 1С. В окне запуска выберем проблемную информационную базу, запишем путь к ней (или параметры подключения к серверу), удалим базу из списка кнопкой Удалить и затем добавим её заново через кнопку Добавить. При этом платформа создаст новый каталог кэша для данного подключения.

  2. Ручная очистка каталогов временных файлов:

    Перейдем в каталоги временных данных пользователя Windows и удалим папки с буквенно-цифровыми идентификаторами (GUID):

    %APPDATA%\1C\1Cv8

    %LOCALAPPDATA%\1C\1Cv8

  3. Использование параметра командной строки:

    В окне запуска 1С перейдем в Изменить информационной базы и в поле Дополнительные параметры запуска укажем параметр /ClearCache.

Способ 2. Устранение последствий некорректного обновления

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

  1. Откроем информационную базу в режиме Конфигуратор монопольно.
  2. Внесем любое незначительное изменение (например, добавим пробел в комментарий любого общего модуля), чтобы активировать кнопку сохранения конфигурации базы данных.
  3. Выполним обновление конфигурации базы данных штатным образом (клавиша F7).
  4. Выполним пункт меню Конфигурация -> Проверка конфигурации с включенной проверкой логической целостности и поиска синтаксических ошибок в запросах.
  5. При использовании клиент-серверного варианта перезапустим службу агента сервера 1C:Enterprise Server Agent для сброса серверного кэша рабочих процессов.

Способ 3. Проверка прав доступа и привилегированного режима

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


УстановитьПривилегированныйРежим(Истина);
РезультатЗапроса = Запрос.ВыполнитьПакет();
УстановитьПривилегированныйРежим(Ложь);

Настройка отображения договоров в документах (дополнительно)

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

Чтобы вернуть отображение поля выбора договора, выполним следующие действия:

  1. Перейдем в раздел программы: Главное -> Настройки -> Функциональность.
  2. Переключимся на вкладку Расчеты.
  3. Установим флаг Учет по договорам.

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

← На главную