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