В процессе работы с конфигурацией «1С:Бухгалтерия государственного учреждения» (БГУ) или другими типовыми решениями на платформе 1С:Предприятие 8.3, специалисты часто сталкиваются с ситуацией, когда в справочнике Контрагенты реквизит ЮридическоеФизическоеЛицо остается незаполненным. На первый взгляд это может показаться ошибкой ввода, однако за этим скрываются как технические особенности архитектуры различных редакций программы, так и специфические методологические задачи учета. В рамках данной статьи мы подробно разберем, почему возникает такая ситуация, какие последствия она несет для отчетности и в каких случаях пустое значение является допустимым.
Проанализируем сначала техническую сторону вопроса. Важно понимать, что структура этого реквизита менялась от версии к версии. В современных конфигурациях, таких как «Бухгалтерия предприятия 3.0» или «БГУ 2.0», этот реквизит чаще всего представлен как ПеречислениеСсылка.ЮридическоеФизическоеЛицо. В таком случае система обычно жестко требует выбора одного из значений: «Юридическое лицо», «Физическое лицо», «Обособленное подразделение» или «Государственный орган».
Однако в более старых редакциях (например, БГУ 1.0) или в сильно кастомизированных базах, этот реквизит может иметь составной тип данных. Рассмотрим типичный пример состава такого типа:
СправочникСсылка.ЮридическиеЛицаСправочникСсылка.ФизическиеЛицаВ этой схеме справочник Контрагенты выступает в роли «оболочки» для управленческого учета и связи с договорами, а детальная информация (ИНН, КПП, адреса) хранится в подчиненных справочниках. Если связь не установлена, реквизит остается пустым. Выясним, почему это происходит на практике.
Разберем основные сценарии, при которых контрагент создается без привязки к конкретному юридическому или физическому лицу:
Посмотрим на специфику государственных учреждений. В БГУ часто сосуществуют справочники Дети, Студенты и Контрагенты. Бывает так, что аналитика на счете 205.31 (Расчеты по доходам от оказания платных услуг) ведется в разрезе контрагентов, где записи создаются автоматически при загрузке данных из внешних систем (например, из систем образования). Если внешняя система не передает признак «Юр/Физ лицо», запись в справочнике Контрагенты создается пустой. Проанализируем ситуацию: для системы учета это допустимо, пока не потребуется формирование регламентированной отчетности или счетов-фактур.
Несмотря на то что технически платформа 1С позволяет оставлять это поле незаполненным, рассмотрим, к каким проблемам это может привести в дальнейшем:
Если вы разрабатываете обработку или отчет и вам нужно отфильтровать таких контрагентов, разберем пример кода. В случае составного типа данных проверка будет выглядеть следующим образом:
// Проверка на пустое значение в реквизите составного типа
Если Не ЗначениеЗаполнено(КонтрагентОбъект.ЮридическоеФизическоеЛицо) Тогда
Сообщить("Для контрагента " + КонтрагентОбъект.Наименование + " не указан тип лица!");
КонецЕсли;
// Если тип реквизита - Перечисление, проверяем на пустое значение ссылки
Если КонтрагентОбъект.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ПустаяСсылка() Тогда
// Действия по обработке пустого значения
КонецЕсли;
Проанализируем данный код: использование функции ЗначениеЗаполнено() является универсальным способом для проверки как ссылочных типов, так и перечислений. Рекомендуется внедрять подобные проверки в обработчики события ПередЗаписью в модуле объекта справочника Контрагенты, чтобы минимизировать появление некорректных данных.
Подводя итог нашему анализу, можно сказать, что существование контрагентов без заполненного типа ЮридическоеФизическоеЛицо — это чаще всего либо следствие миграции данных из старых систем (например, из 7.7), либо результат работы с «черновиками» записей.
Мы рекомендуем придерживаться следующих правил:
Таким образом, мы выяснили причину появления таких записей и определили, что для полноценного бухгалтерского и налогового учета заполнение типа контрагента является обязательным условием стабильной работы системы.