Добавление ставки НДС 22% в древнюю УПП
Клиенту понадобилось добавить ставку НДС 22% в старую УПП, которая не обновлялась с 2017 года.
Да, для УПП есть обновление, которое добавляет новую ставку НДС, но, учитывая, что база не обновлялась 7 лет, проще внести изменения в базу, чтобы добавить новую ставку.
Изменения в конфигурации
Предварительно сохранил старую конфигурацию:

Затем добавил новые значения перечислений, заменив синонимы, подставленные 1С по умолчанию на нужные:



Запустил поиск в конфигурации. Первоначальные результаты поиска впечатляют, найдено 771 строк с НДС20:

Изменения помечаю комментарием //Осипов НДС22
Сделал штук пять замен в модуле УчетНДС, налицо копирование кода в типовой УПП:

Для соответствие СоответствиеСтавок написал свою процедуру, чтобы не копировать одно и тоже, очень часто встречается описание этого соответствия, повсеместно:
СоответствиеСтавок = Новый Соответствие(); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.ПустаяСсылка(), Перечисления.СтавкиНДС.ПустаяСсылка()); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС10, Перечисления.СтавкиНДС.НДС10_110); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС18, Перечисления.СтавкиНДС.НДС18_118); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС20, Перечисления.СтавкиНДС.НДС20_120); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС10_110, Перечисления.СтавкиНДС.НДС10_110); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС18_118, Перечисления.СтавкиНДС.НДС18_118); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС20_120, Перечисления.СтавкиНДС.НДС20_120); СоответствиеСтавок.Вставить(Перечисления.СтавкиНДС.НДС0, Перечисления.СтавкиНДС.НДС18_118); _Доработки.ДобавитьСтавкиНДСВСоотсветствия(СоответствиеСтавок); ////Осипов НДС22
Сделал на всякий случай изменения в модуле УчетНДСФормированиеДвижений, их там два:

Модуль УчетНДСФормированиеОтчетности не трогал, клиент в УПП ее не формирует.
Далее пошли изменения по модулям документов.
Отчет книга покупок, продаж, план закупок и план производства не используется.
Регламентированный отчет НДС не используется.
Поработал над документами счет-фактура выданный и полученный. Там немного.
Поправил обработку «Регистрация счетов-фактур на аванс».
В книге покупок и продаж (отчеты КнигаПродаж1137 и КнигаПокупок1137) вроде бы не все так страшно. Нужно просто добавить новую ставку в группу ставок НДС 20:
СтавкиНДС20 = Новый Массив(); СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС20); СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС20_120); СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС22_122); //Осипов НДС22 СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС22);
Еще понадобилось поправить два внешних отчета — УПД и Счет. Счет поправлять не пришлось, а в УПД поправил буквально в трех местах.
Тестирование справочников и документов
В документах проверил что ставка НДС выбирается и корректно обсчитывается:

В карточках номенклатуры стояла ставка 20%:

Заменил с помощью обработки «Универсальные подбор и обработка объектов 82» на новую ставку 22%:



В настройках пользователя поменял ставку с 20% на 22%, чтобы у новых товаров подставлялась ставка 22%:

Можно сделать это сразу для всех пользователей в регистре настроек:

Заключение
Увы, 1С плохо параметризирует данные. Казалось бы, достаточно в одном месте описать новую ставку НДС, но в УПП пришлось менять довольно много где. Плохо 1С, плохо, позор Вашим архитекторам и методистам. Слишком много копи-пасты в коде. Очень плохо.
Среда: УПП 1.3.96.1 Объем: 1.5 час.




Добрый день! Требуется подобная доработка. УСН + НДС 5%
А какая конфигурация? Можете связаться со мной по контактам в разделе Контакты, обсудим.
Здравствуйте,как с вами связаться? Нам тоже нужно добавить ставку ндс 5 % и 22 %. Наша почта ********
ответил на почту.
у меня тоже база не обновлялась с 2016 года, но не получается добавить ставку((((
что именно не получается.
Вот вы написали:»Затем добавил новые значения перечислений, заменив синонимы, подставленные 1С по умолчанию на нужные:», не могли бы вы подробнее написать куда нужно зайти что бы изменить ставку? оч.нужно
к сожалению, там не только добавить значение перечисления нужно, но и в коде изменения сделать, что требует привлечения программиста, хотя и не особо квалифицированного, работа несложная.
Приветствую, интересует связаться с Вами по поводу описанного обновления. Просто стоит точно этот же релиз, но с минимум доработок, если не сложно ответьте на ******@gmail.com
ответил
Здравствуйте. После доработки проверяли взаимодействие с ККТ? пробивает чеки?
Нет. У клиента не было розничного модуля. Чеки — это отдельная тема.
У нас есть чеки. УТ 10.3.88.3 типовая (не доработана). Свяжитесь, пожалуйста со мой.
Ответил в ТЛГ
Плохо не плохо но кто то на этой хрени обогащается -))
Вообще если бы код 1с был написан методически правильно, то добавление новой ставки НДС не потребовало бы таких мастшабных доработок конфигурации. Но увы, мы имеем на улице Селезневской то, что имеем.
добрый день. у меня 1С:Предприятие 8.1 (8.1.15.14), Бухгалтерия предприятия, редакция 1.6 (1.6.29.2). много-много времени никаких доработок не производилось. думала ставку по ндс легко добавить/изменить как ставки с зарплаты. не тут то было. своего программиста нет. сможете ли вы мне помочь?
ответил почтой.
Здравствуйте! Такая же проблема, нужна ставка и 22 и 5 процентов ндс, стали усн+ндс 5%, а в базе невозможно работать( можете помочь?
Бухгалтерия предприятия, редакция 3.0 (3.0.140.40)
ответил Вам на почту
Добрый день. Такой вариант, к сожалению, не заработал. за 25 год книга формируется, за 26 уже нет даже с добавленными ставками 22%. Может у Вас получилось победить данную проблему?
В книге покупок и продаж (отчеты КнигаПродаж1137 и КнигаПокупок1137) вроде бы не все так страшно. Нужно просто добавить новую ставку в группу ставок НДС 20:
СтавкиНДС20 = Новый Массив();
СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС20);
СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС20_120);
СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС22_122); //Осипов НДС22
СтавкиНДС20.Добавить(Перечисления.СтавкиНДС.НДС22);
а что значит не формируется? не заполняются данные или ошибку выдает?
по логике достаточно добавить ставку 22% как я написал (и вы продублировали) и 22% будет попадать в колонку 20%.
Так то не отлаживал, не знаю.
Попробовал вашим способом — книга продаж за декабрь со ставкой 20% формируется, книга продаж за январь 26 уже пустая, документы не попадают в нее. Сейчас прохожусь отладчиком, скорее всего что-то надо смотреть в регистре НДСЗаписиКнигиПродаж
да, возможно нет нужных движений в регистре и это не связано со ставками НДС
Нашел ошибку отладчиком. В перечислении СтавкиНДС в модуле менеджера не было записи по ставке 22% и КнигаПродаж не видела соответственно.
пропустили, видимо. Так то суть подхода одинаковая — найти везде где 20 и добавить 22
Добрый день! Мне тоже необходимо добавить ставку НДС 22 %. Свяжитесь пожалуйста со мной.
ответил почтой.
Здравствуйте. У меня такая же проблема. Нужна ставка 22%.Если можно свяжитесь со мной, пожалуйста.
ответил почтой