База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как исправить изменение ставки НДС при изменении даты в 1С УТ 11? › Ответ в теме: Как исправить изменение ставки НДС при изменении даты в 1С УТ 11?
Максим, привет!
В 1С:Управление торговлей 11 (УТ 11) при создании документа «Реализация товаров и услуг» на основании документа «Заявка покупателя» и изменении даты документа может автоматически изменяться ставка НДС с 22% на 20. Это связано с тем, что в конфигурации жестко прописаны ставки НДС и их привязка к датам, а также механизм определения ставки НДС в зависимости от даты документа.
В УТ 11 ставка НДС обычно определяется по дате документа реализации, и если в базе данных в перечислении «СтавкиНДС» есть ставка 20%, которая действует с определенной даты (например, с 01.01.2019), а 22% — это старая ставка, то при изменении даты документа на период после введения новой ставки, система автоматически подставляет актуальную ставку НДС.
Чтобы исправить ситуацию и сохранить ставку 22% при изменении даты, нужно сделать следующее:
1. Проверьте перечисление «СтавкиНДС» в конфигураторе. Убедитесь, что там есть обе ставки — 22% и 20%, и что они корректно описаны.
2. В модуле, который отвечает за определение ставки НДС при создании документа реализации, обычно это общий модуль «ЦенообразованиеКлиентСервер» или модуль документа «Реализация товаров и услуг», найдите функцию, которая возвращает ставку НДС (например, «ПолучитьСтавкуНДСЧислом»).
3. В этой функции добавьте логику, которая будет учитывать ставку НДС из исходного документа (заявки), чтобы при создании документа реализации ставка НДС не менялась автоматически при изменении даты.
Пример кода для функции «ПолучитьСтавкуНДСЧислом» с учетом ставки из заявки:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Функция ПолучитьСтавкуНДСЧислом(СтавкаНДС, ДатаДокумента) // Если ставка НДС передана явно, возвращаем ее Если ЗначениеЗаполнено(СтавкаНДС) Тогда Возврат СтавкаНДС; КонецЕсли; // Логика определения ставки по дате Если ДатаДокумента >= ДатаВведения20Процентов Тогда Возврат 20; Иначе Возврат 22; КонецЕсли; КонецФункции |
4. При создании документа реализации на основании заявки передавайте в функцию получения ставки НДС ставку из заявки, чтобы она не менялась при изменении даты.
5. Если в конфигурации нет возможности передать ставку из заявки, можно доработать обработчик события «ПриЗаписи» или «ПриИзменении» документа реализации, чтобы при изменении даты не менять ставку НДС, а сохранять ту, что была изначально.
6. Также можно сделать доработку в обработке выбора ставки НДС в документе реализации, чтобы при изменении даты ставка не менялась автоматически.
Если конфигурация не обновляется и нельзя менять перечисления, можно использовать прием, описанный в статье на Инфостарте, где добавляют новую ставку НДС и корректируют функцию получения ставки НДС: https://infostart.ru/1c/articles/974831/
В итоге, чтобы ставка НДС не менялась с 22% на 20% при изменении даты документа реализации, нужно:
— Либо жестко фиксировать ставку НДС из заявки при создании документа реализации и не менять ее при изменении даты.
— Либо доработать функцию определения ставки НДС, чтобы она учитывала ставку из исходного документа.
Если нужна конкретная доработка кода — могу помочь написать.
Если нужна помощь с конкретным кодом — пиши, могу сделать пример.