Почему возникает ошибка "Поле не найдено 'ТаблицаТовары.ПрослеживаемыйКомплект'" при проведении "Отчета о розничных продажах" в 1С:Бухгалтерии 3.0 после загрузки из торговой системы?

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

При работе с программными продуктами 1С, особенно в связке с торговыми конфигурациями, такими как "Штрих-М: Торговое предприятие 7" или "1С:Управление торговлей", пользователи могут столкнуться с ошибкой "Поле не найдено 'ТаблицаТовары.ПрослеживаемыйКомплект'" во время проведения документа "Отчет о розничных продажах". Эта проблема часто проявляется после обмена данными и может быть довольно сложной для диагностики, так как затрагивает функционал прослеживаемости товаров, введенный в законодательство РФ для контроля за импортными товарами.

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

Общая причина ошибки: Функционал прослеживаемости товаров

Ошибка "Поле не найдено 'ТаблицаТовары.ПрослеживаемыйКомплект'" прямо указывает на то, что система 1С:Бухгалтерия 3.0 пытается получить доступ к полю ПрослеживаемыйКомплект во временной таблице ТаблицаТовары, но это поле отсутствует. Появление этого поля напрямую связано с внедрением Национальной системы прослеживаемости товаров. Это означает, что конфигурация 1С:Бухгалтерия ожидает обработки данных, относящихся к прослеживаемым товарам, которые могли быть импортированы и попадают под требования законодательства. Отсутствие этого поля может быть вызвано несколькими факторами: либо в системе 1С:Бухгалтерия не активирован соответствующий функционал, либо версия программы устарела, либо данные поступают из внешней системы без необходимой информации о прослеживаемости, либо есть проблемы с режимом совместимости.

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

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

  1. Обновление конфигурации 1С:Бухгалтерия 3.0

    Прежде всего, крайне важно убедиться, что ваша конфигурация 1С:Бухгалтерия 3.0 обновлена до последней актуальной версии. Функционал прослеживаемости товаров был добавлен в 1С:Бухгалтерию 8, начиная с версии 3.0.95 (в соответствии с Федеральным законом от 09.11.2020 № 371-ФЗ). Если версия вашей Бухгалтерии ниже, то поле ПрослеживаемыйКомплект может просто отсутствовать в структуре данных, что и вызывает ошибку. Мы рекомендуем регулярно обновлять конфигурации 1С, чтобы использовать все актуальные возможности и соответствовать изменениям законодательства.

  2. Проверка и включение функционала прослеживаемости

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

    1. Перейдите в раздел "Администрирование".
    2. Выберите пункт "Функциональность".
    3. На вкладке "Внешняя торговля" установите флажок "Приобретение и реализация прослеживаемых товаров".

    Включение этой опции позволяет системе корректно обрабатывать все данные, связанные с прослеживаемыми товарами.

  3. Настройка номенклатуры для прослеживаемых товаров

    Для товаров, которые подлежат прослеживаемости, необходимо корректно настроить их карточки номенклатуры. Мы рекомендуем проверить следующее:

    1. Откройте "Справочники", затем "Номенклатура" и выберите соответствующий товар.
    2. В карточке номенклатуры найдите реквизит "Маркировка и контроль".
    3. Убедитесь, что для прослеживаемого товара установлено значение "Прослеживаемый товар" или "Прослеживаемый товар(ы) в составе комплекта".
    4. Также обязательно заполните поле "Код ТН ВЭД ЕАЭС", выбрав его из классификатора. Это критически важно для корректного учета прослеживаемости.
  4. Проверка настройки 'Валюта регламентированного учета'

    Как было замечено на форуме, в некоторых случаях проблема могла быть связана с некорректной настройкой валюты регламентированного учета. Несмотря на то, что это не напрямую относится к прослеживаемости, это базовая настройка, которая может влиять на проведение многих документов. Убедитесь, что в константе Константа.ВалютаРегламентированногоУчета установлена правильная валюта (например, Российский рубль).

  5. Анализ и обновление правил обмена данными

    При обмене между "Штрих-М: Торговое предприятие 7" (или УТ 11.5) и 1С:Бухгалтерией 3.0 используются планы обмена и правила конвертации данных. Если эти правила устарели и не учитывают новые поля, связанные с прослеживаемостью, то данные могут загружаться некорректно, что приведет к ошибке. Мы советуем проверить актуальность используемых правил обмена. В некоторых случаях может потребоваться запросить обновленный комплект правил обмена у разработчиков "Штрих-М" или фирмы 1С, если обмен ведется через типовые механизмы.

  6. Проверка режима совместимости расширений и конфигурации

    Это один из ключевых моментов, который, по всей видимости, помог пользователям форума. Режим совместимости определяет, с какой версией платформы 1С:Предприятие конфигурация или расширение должно быть совместимо. Если основная конфигурация или какое-либо расширение работает в режиме совместимости, который ниже, чем требуется для функционала прослеживаемости (например, 8.3.10, а функционал требует 8.3.16 или выше), это может привести к тому, что новые поля будут невидимы для кода, работающего в более старом режиме.

    Чтобы проверить и, при необходимости, изменить режим совместимости:

    1. Откройте конфигурацию в режиме "Конфигуратор".
    2. Для основной конфигурации перейдите в "Конфигурация" -> "Свойства конфигурации" и проверьте значение поля "Режим совместимости" на вкладке "Основные". Мы рекомендуем установить его на актуальную версию платформы, с которой вы работаете (например, 8.3.16 или выше).
    3. Если вы используете расширения, перейдите в "Конфигурация" -> "Расширения конфигурации". Для каждого расширения откройте его свойства и также проверьте "Режим совместимости". Убедитесь, что он соответствует требованиям.

    Например, если в вашей системе есть расширение, которое было разработано для более старой версии платформы и его режим совместимости установлен, скажем, на 8.3.10, оно может игнорировать или некорректно обрабатывать поля, введенные в более поздних версиях, что потенциально приводит к ошибке "Поле не найдено". Мы должны синхронизировать режимы совместимости, чтобы избежать таких конфликтов.

  7. Проверка соответствия данных по прослеживаемости

    Ошибки могут возникать из-за несоответствия реквизитов прослеживаемости (РНПТ, количество, стоимость, единица измерения) между данными, поступающими из "Штрих-М", и ожиданиями 1С:Бухгалтерии, или данными Национальной системы прослеживаемости. Мы тщательно проверяем, что в исходной системе ("Штрих-М") учет прослеживаемости ведется корректно и что все необходимые данные передаются в 1С:Бухгалтерию.

  8. Учет комплектов с прослеживаемыми товарами

    Если в "Отчете о розничных продажах" фигурируют комплекты, содержащие прослеживаемые товары, для них также требуется специальная настройка и указание РНПТ (регистрационный номер партии товара) входящих в комплект прослеживаемых товаров. Мы проверяем, что все компоненты комплекта правильно учтены и имеют необходимые реквизиты прослеживаемости.

  9. Настройки формы документа 'Отчет о розничных продажах'

    В редких случаях после обновления могли "слететь" настройки формы документа. Мы можем попробовать проверить и вернуть видимость полей, связанных с прослеживаемостью, через меню "Еще" -> "Изменить форму" непосредственно в документе "Отчет о розничных продажах".

  10. Отладка запроса в модуле документа

    Для более глубокого понимания проблемы, особенно если предыдущие шаги не помогли, мы можем прибегнуть к отладке. Сообщение об ошибке указывает на конкретную строку кода: {Документ.ОтчетОРозничныхПродажах.МодульМенеджера(3192)}: Ошибка при вызове метода контекста (ВыполнитьПакет) Результат = Запрос.ВыполнитьПакет;. Это означает, что ошибка происходит при выполнении пакета запросов, формируемых в модуле менеджера документа.

    Мы рассмотрим следующий алгоритм отладки:

    1. В "Конфигураторе" откройте модуль менеджера документа "ОтчетОРозничныхПродажах".
    2. Найдите строку, указанную в ошибке (или ближайшую к ней, где происходит выполнение запроса, например, Запрос.ВыполнитьПакет();).
    3. Установите точку останова (F9) перед этой строкой.
    4. В режиме "Предприятие" попробуйте провести проблемный документ "Отчет о розничных продажах".
    5. Когда отладчик остановится на точке останова, мы можем проанализировать объект Запрос. Особое внимание уделим свойству Запрос.Текст, которое содержит текст выполняемого SQL-запроса. Именно здесь мы сможем увидеть, где формируется временная таблица ТаблицаТовары и почему в ней отсутствует поле ПрослеживаемыйКомплект.

    Примерная структура кода, которую мы будем искать и анализировать:

    
    // ...
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ИдентификаторДокумента", Документ.Ссылка);
    // ... здесь формируется текст запроса, возможно, с использованием временных таблиц
    Запрос.Текст = "
    |ВЫБРАТЬ
    |   Товары.Ссылка КАК Товар,
    |   Товары.Количество КАК Количество,
    |   // ... другие поля
    |   ТОГДА ТаблицаТовары.ПрослеживаемыйКомплект // <--- Ожидается это поле
    |ИЗ
    |   Документ.ОтчетОРозничныхПродажах.Товары КАК Товары
    |   // ... возможно, здесь создается или заполняется временная таблица ТаблицаТовары
    |;
    // ... далее пакет запросов
    |ВЫБРАТЬ
    |   ТаблицаТовары.Товар,
    |   ТаблицаТовары.Количество,
    |   ТаблицаТовары.ПрослеживаемыйКомплект // <--- Здесь происходит обращение к полю, которого нет
    |ИЗ
    |   #ВТ_ТаблицаТовары КАК ТаблицаТовары
    |ГДЕ
    |   ТаблицаТовары.ПрослеживаемыйКомплект ЕСТЬ НЕОПРЕДЕЛЕНО
    |;
    ";
    // ...
    Результат = Запрос.ВыполнитьПакет(); // <--- Здесь возникает ошибка
    // ...
    

    Анализируя Запрос.Текст, мы выясним, на каком этапе и при каких условиях должно было появиться поле ПрослеживаемыйКомплект, и почему оно отсутствует в момент выполнения запроса. Это позволит нам точно определить, является ли проблема следствием отсутствия данных в источнике, неактивной функции или конфликта версий/режимов совместимости.

Таким образом, для успешного устранения ошибки "Поле не найдено 'ТаблицаТовары.ПрослеживаемыйКомплект'" необходим комплексный подход. Начнем с обновления конфигурации и проверки основных настроек прослеживаемости, затем перейдем к анализу правил обмена и, самое главное, режимов совместимости. Если проблема сохраняется, глубокая отладка запроса в модуле документа поможет выявить корневую причину.

← На главную