Как нумеровать счета-фактуры в течение дня и для чего это нужно

28.05.15

Разработка - Механизмы типовых конфигураций

В материале описывается, что нужно сделать в конфигурации, чтобы автоматическая нумерация документов выполнялась с применением префикса, включающего в себя дату выставления документа.
Приведен пример нумерации «Выданного счета-фактуры» в пределах дня для типовой конфигурации «Бухгалтерия предприятия», версии 2.0.

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

Перейти к сути...

Справедливости ради надо отметить, что согласно пп. 1 п. 5 ст. 169 НК РФ счет-фактура должна иметь порядковый номер, который указывается в строке 1. Если опустить различные уточнения по поводу дробей и признаков аванса, больше никаких требований нет. Более того, ошибки, не препятствующие идентификации продавца, покупателя, наименования товаров (работ, услуг), их стоимости, а также налоговой ставки и суммы налога, предъявленной покупателю, не являются основанием для отказа в принятии к вычету сумм налога (абз. 2 п. 2 той же статьи).

И зачем так серьезно относиться к нумерации этих документов? Читай тут: спокойный сон дороже.

Этот материал, для тех, кто во всём хочет навести порядок.

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

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

Для таких случаев важна точность полученной информации и не особенно важна последовательность: внутри дня номера все равно будут последовательны (главное чтобы день не поменялся!).

Нумеровать документы в 1С таким образом можно вручную, специальными обработками (например, такой) или исправить конфигурацию, чтобы нумерация ставилась автоматически. Плюсы и минусы каждого варианта считать Вам, поговорим об автоматике.

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

Возьмем за основу конфигурацию «Бухгалтерия предприятия 2.0»,

Документы будем нумеровать с префиксом «ПППГГММДД», где

  • ППП – основной префикс, строящийся по правилам типовой конфигурации,
  • ГГ – две последние цифры года выставления документа,
  • ММ – две цифры месяца выставления,
  • ДД – две цифры дня в месяце из даты документа.

Оставшееся от полной длины номера количество символов – это длина номера документа внутри дня (например, если общая длина номера документа – 12 символов, а наш префикс использует 9, тогда максимальный номер счета-фактуры за день – 999).

Ограничимся одним только документом «Счет-фактура выданный».

Примечание:

  • В приведенном примере используется объект конфигурации «Нумератор». Вообще, этот объект применяют, когда надо получить сквозную нумерацию для разных типов документов (в нашем случае при внедрении их было три). Если использовать только один тип документа, то пункты 1.2, 2 и 3 можно пропустить.
  • Если необходимо использовать другие документы, которые должны нумероваться в течение дня вместе со счетами-фактурами в сквозном порядке (например, существовавший когда-то в конфигурации документ «КорректировочныйСчетФактураВыданный»), тогда для них нужно выполнить шаги с номерами 1.2, 3, 6, 7.1.
  • Если конфигурация не находится на поддержке (полностью своя), то нет надобности в пункте 1.
  1. Сначала нам необходимо настроить правила поддержки конфигурации и некоторых объектов в значение «Объект редактируется с сохранением поддержки» (без подчиненных объектов). См. Меню-Конфигурация-Поддержка-НастройкаПоддержки, правая кнопка мыши на нужном объекте. Это будут такие объекты, как
    1. Сама конфигурация (мы будем создавать новые объекты),
    2. «Документ.СчетФактуруВыданный» (будем править Нумератор),
    3. «Событие.ПриУстановкеНовогоНомераДокумента» из ветки «Общие.Подписки на события» (будем убирать «СчетФактуруВыданный» из стандартного метода нумерации).

  2. Создадим новый нумератор для нашего случая с именем «СчетаФактурыВыданные». Внимание! Длина номера в текущей конфигурации  БУ 2.0 равна 12! Пусть не вводит в заблуждение число 11 с картинки (это было сделано давно, когда длина номера для документов была такой и в нашей конфигурации она остается такой до сих пор).

  3. У объекта типа «Документ.СчетФактураВыданный» установим свойство «Нумератор» в значение созданного в п.2 нумератора «СчетаФактурыВыданные».

  4. Создадим ОбщийМодуль с именем «ЭтоДопОбработчики».

  5. Вставим в этот модуль процедуру, которая будет следующего содержания:
    // Используется в Событии ПриУстановкеНовогоНомера 
    // для документа СчетФактураВыданный 
    Процедура  ПриУстановкеНовогоНомераДокументаСчетФактураВыданныйПриУстановкеНовогоНомера(Источник, СтандартнаяОбработка, Префикс) Экспорт
    
          ОбщегоНазначения.ДобавитьПрефиксОрганизации(Источник, Префикс);
    
          ОбщегоНазначения.ДобавитьПрефиксУзла(Префикс);
    
          Если ТипЗнч(Источник.Ссылка) = Тип("ДокументСсылка.СчетФактураВыданный") 
             И Источник.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда 
    
               Префикс = Префикс + "А"; 
          КонецЕсли; 
    
          Префикс = Лев(Префикс + "0000", 3) + Формат(Источник.Дата, "ДФ=""ггММдд"""); 
    
    КонецПроцедуры
  6. У объекта «Событие.ПриУстановкеНовогоНомераДокумента» из свойства «Источник» уберем «Документ.СчетФактураВыданный».
  7. Создадим новый объект «Событие. ПриУстановкеНовогоНомераДокументаСчетФактураВыданный», отметим
    1. в «Источнике»: «Документ.СчетФактураВыданный»,
    2. в «Обработчике»: созданную нами процедуру на шаге 5 «ЭтоДопОбработчики.ПриУстановкеНовогоНомераДокументаСчетФактураВыданныйПриУстановкеНовогоНомера».

Всё!

 

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

Спасибо за внимание.

нумерация счет-фактура префикс методика

См. также

Расширяем возможности дополнительных обработок и настраиваем их отладку

БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Уже не одна веб-страница исписана знаниями о дополнительных обработках, как создать, как подключить. Есть масса вариантов, как их можно отладить. Я разобрался в кишках работы библиотеки и покажу, как можно расширить возможности дополнительных отчетов, а также покажу удобный способ отладки.

07.02.2024    2347    YA_418728146    11    

40

Регистры накопления в 1С:КА2 и 1С:ERP для расчета НДФЛ, страховых взносов и взаиморасчетов с сотрудниками на январь 2024 года. Краткое описание

Зарплата Механизмы типовых конфигураций Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет НДФЛ Абонемент ($m)

Для расчета зарплаты и соответствующих налогов в конфигурациях 1С:КА2 и 1С:ERP используется 22 регистра накопления, 7 регистров сведений, 1 регистр расчета и бухгалтерские проводки. В таблице приведены названия этих регистров, указаны основные регистраторы и виды движений приход/расход. В описании приводится краткое функциональное назначение регистров в основных зарплатных процессах. Описание регистров родилось из черновиков при написании различных отчетов и обработок при эксплуатации 1С-овских конфигураций и исправлении ошибок по НДФЛ, взаиморасчетов с сотрудниками и прочих. Информация не претендует на полноценное описание работы регистров, скорее это дискуссионный материал. Но, возможно, кому-то пригодится и сократит время при подготовке отчетности за непростой (в плане учета зарплаты) 2023 год. А возможно, кто-то поделится своим опытом.

1 стартмани

10.01.2024    1013    6    2ncom    3    

8

Шаблоны новых объектов 1С для 1С:Бухгалтерии предприятия

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 1С:Бухгалтерия 3.0 Бесплатно (free)

Используются для создания новых объектов в конфигурации, чтобы не забыть, что нужно сделать. Сделано на примере 1С:Бухгалтерия предприятия, в других конфигурациях могут быть другие, а могут быть и похожие объекты.

28.12.2023    4823    mrXoxot    11    

99

Ключи аналитик учета в ЕРП, КА, УТ

Механизмы типовых конфигураций Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Управленческий учет Бесплатно (free)

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

08.11.2023    7027    ids79    25    

74

Распределение по базе среднего в ЗИКГУ 3.1

Зарплата Механизмы типовых конфигураций Платформа 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 Россия Бюджетный учет Абонемент ($m)

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

1 стартмани

14.09.2023    445    2    Vlx    0    

1

Расширение типового механизма настройки заполнения бухгалтерской отчетности (на примере конфигурации 1С:ERP. Управление холдингом 3.1.8.15)

Механизмы типовых конфигураций Платформа 1С v8.3 1С:Управление холдингом 1С:Франчайзи, автоматизация бизнеса Россия Бесплатно (free)

В статье приведен алгоритм доработок типового механизма настройки заполнения бухгалтерской отчетности на примере конфигурации 1С:ERP. Управление холдингом (3.1.8.15). Цель доработок - сделать процесс настроек более гибким и удобным для пользователей

11.09.2023    1925    ICL-Soft    3    

12

Разбор механизма "Настройки полей формы" в 1С:ERP. Управление холдингом

Механизмы типовых конфигураций Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

В данной статье я постараюсь разобрать механизм, который Вам может встретиться на просторах типовой конфигурации 1С:ERP. Управление холдингом. Я не могу гарантировать, что этот механизм не исключат из следующих версий конфигурации (как, собственно, и любой другой). К сожалению, мне не удалось найти его ни в одном модуле конфигурации "Библиотеки стандартных подсистем". Мне он показался интересным, и захотелось более детально во всем этом разобраться.

18.07.2023    2154    it_box    1    

7

Работа с контактной информацией. Часть 2

Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

05.06.2023    6948    biimmap    4    

41
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. @Sonya 27 29.05.15 16:05 Сейчас в теме
Надобность в такой нумерации бывает, хотя очень удивило в свое время, реализовали подобным способом.
2. apatyukov 907 03.06.15 07:39 Сейчас в теме
ППП – основной префикс, строящийся по правилам типовой конфигурации,
ГГ – две последние цифры года выставления документа,
ММ – две цифры месяца выставления,
ДД – две цифры дня в месяце из даты документа.


ГГ-Излишний , так как контроль уникальности проходит в течении года.
3. rav_ 38 03.06.15 08:24 Сейчас в теме
(2) apatyukov, согласен.
Плюс в том, что по номеру можно легко восстановить дату :), вдруг кому надо.
4. apatyukov 907 03.06.15 08:54 Сейчас в теме
(3) дата и так указывается в первичке :)
5. Diego_Iv 34 04.06.15 09:59 Сейчас в теме
(4) apatyukov,
Наверно, чтобы быстро отследить случаи, когда дата с/ф изменялась задним числом.
6. Zhilyakovdr 142 04.06.15 14:15 Сейчас в теме
//Номер дня в году в номере документа
Префикс = Строка(ДеньГода(Источник.Дата));
Префикс = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(Префикс, 3, "0", "Слева");
УстановитьПрефиксИнформационнойБазыИОрганизации(Источник, СтандартнаяОбработка, Префикс);
7. rav_ 38 04.06.15 14:36 Сейчас в теме
(6) Zhilyakovdr, вполне можно и так.
Цель была указать подход к решению, а не описать шаблон префикса.

Если же обсуждать какой вариант шаблона лучше,
то уловить глазом ошибку в нумерации или поправить номер вручную внутри дня проще,
когда префикс именно такой, как в примере (или в посте 2), чем в Вашем случае,
но это только моё сугубо личное мнение.
8. mip128 18.06.15 11:52 Сейчас в теме
А что если поменяют дату у записанного документа? Или сначала запишут, потом ставят дату?
9. rav_ 38 19.06.15 06:39 Сейчас в теме
(8) mip128,
"А что если поменяют дату у записанного документа?"
В конфигурации БУ 2.0 (именно для нее делалась реализация) при изменении даты интерактивно срабатывает механизм:
Процедура ДатаПриИзменении(Элемент)
	
	РаботаСДиалогами.ПроверитьНомерДокумента(ЭтотОбъект, мТекущаяДатаДокумента);
	...
,
который проверяет периодичность документа и при выходе даты из этого периода очищает номер. Поскольку тут делать ничего не пришлось (все уже было), то этот момент описан не был.

Сразу скажу, что если записывать документ программно, то при заполненной дате и пустом номере
система построит последний правильно, а если программно заполнить номер чем-нибудь "левым", то номер "правильным" не станет. Программно можно делать многое, главное - делать правильно (иначе зачем)!

"Или сначала запишут, потом ставят дату?"
Насколько я понимаю, система сама контролирует наличие даты у документа при его записи (по крайней мере в типовых конфигурациях).

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