В современных релизах конфигурации 1С:Бухгалтерия предприятия 3.0 пользователи часто сталкиваются с ситуацией, когда номер грузовой таможенной декларации (ГТД) в печатных формах УПД или счетов-фактур обрезается до 23 знаков. Это происходит потому, что программа строго следует Постановлению Правительства № 1137 (в редакции № 981), которое требует указывать именно регистрационный номер декларации (состоящий из трех блоков), а не полный номер с учетом порядкового номера товара (четвертый блок). Однако на практике многие контрагенты, особенно крупные заводы, продолжают требовать указания полного номера ГТД. Разберем подробно, как решить эту задачу программными и административными методами.
Для начала проанализируем ситуацию с технической точки зрения. В последних редакциях 1С произошла глубокая переработка справочника НомераГТД. Раньше номер хранился в одной строке, теперь же система разделяет понятие "Регистрационный номер" и "Наименование".
Основной реквизит РегистрационныйНомер в справочнике теперь имеет жесткое ограничение — 23 символа. Даже если вы попытаетесь ввести более длинное значение вручную в пользовательском режиме, типовые механизмы (например, в процедуре ПередЗаписью модуля объекта справочника) могут очищать "лишние" данные. Более того, при формировании печатных форм система использует специальную функцию получения представления ГТД, которая программно отсекает всё, что идет после третьего слеша.
Первым делом нам необходимо подготовить метаданные для хранения расширенной информации. Если мы просто увеличим длину реквизита Номер в конфигураторе, этого может быть недостаточно, так как в логике проведения документов и формирования книги покупок/продаж задействованы другие поля.
Разберем последовательность действий:
НомераГТД.РегистрационныйНомер. Нам необходимо увеличить его длину (например, до 30 или 40 символов, чтобы гарантированно уместить четвертый блок).ПередЗаписью:
Процедура ПередЗаписью(Отказ)
// Типовой код может содержать функции нормализации номера
// Если в коде есть вызов функций типа ОбщегоНазначенияБП.ПолучитьРегистрационныйНомерГТД,
// они могут принудительно обрезать номер до 23 знаков.
КонецПроцедуры
Важно: Прямое изменение типовой конфигурации затруднит дальнейшие обновления. Рекомендуется выполнять эти действия через расширение конфигурации.
Даже если мы сохраним полный номер в базе, в печатную форму УПД он может попасть в обрезанном виде. Это связано с тем, что в параметрах макета часто используется параметр ПредставлениеГТД, который формируется программно «на лету».
Рассмотрим, как изменить логику заполнения макета:
УниверсальныйПередаточныйДокумент (или СчетФактура).ПредставлениеГТД попробуем подставить прямой параметр НомерГТД. Это заставит систему брать значение непосредственно из справочника без дополнительной обработки типовыми функциями.Часто программисты сталкиваются с тем, что изменения в коде или макете конфигурации не отражаются в печатной форме. Выясним причину этого явления. 1С:Бухгалтерия 3.0 позволяет пользователям редактировать макеты самостоятельно. Если пользователь когда-либо нажимал кнопку «Изменить» для макета УПД, система создает пользовательский макет, который имеет приоритет над системным.
Для решения этой проблемы выполним следующие действия:
Проанализируем ситуацию с электронным документооборотом. Это критически важный момент. Формат XML-файла УПД, утвержденный ФНС, предполагает строгое описание полей. Поле для регистрационного номера ГТД в электронном формате часто ограничено теми самыми 23 символами.
Если мы принудительно запишем в это поле 27–30 знаков (с 4-м блоком):
Поэтому, если ваш клиент использует ЭДО, лучше выводить 4-й блок только в печатную форму для визуального контроля, не меняя структуру данных, уходящих в XML.
Посмотрим на ситуацию с прослеживаемостью. Если товар является прослеживаемым, то в графе 11 указывается РНПТ (регистрационный номер партии товара). Для импортных товаров РНПТ формируется именно как НомерГТД + Порядковый номер товара (тот самый 4-й блок). В этом случае длина номера законно составляет 27–29 знаков, и 1С корректно обрабатывает такие номера.
Если же товар не является прослеживаемым, 1С будет применять логику отсечения 4-го блока. Выясним, нельзя ли обойти проблему через механизм РНПТ, однако это может привести к неверному отражению данных в отчетности по прослеживаемости, поэтому такой путь не рекомендуется.
Для реализации требования клиента о выводе 4-го блока ГТД в 1С:Бухгалтерия 3.0, необходимо выполнить комплекс мер:
НомераГТД.Помните, что с точки зрения законодательства (письма ФНС), указание только 23 знаков не является ошибкой и не может служить основанием для отказа в вычете НДС. Требование заводов о 4-м блоке является скорее традицией или особенностью их внутренних учетных систем, нежели законодательной необходимостью.