Добавление ставки НДС 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 час.

image_pdfimage_print

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Вам может также понравиться...

комментарий 31

  1. Павел:

    Добрый день! Требуется подобная доработка. УСН + НДС 5%

  2. Инна:

    у меня тоже база не обновлялась с 2016 года, но не получается добавить ставку((((

  3. Инна:

    Вот вы написали:»Затем добавил новые значения перечислений, заменив синонимы, подставленные 1С по умолчанию на нужные:», не могли бы вы подробнее написать куда нужно зайти что бы изменить ставку? оч.нужно

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

  4. Алекс:

    Приветствую, интересует связаться с Вами по поводу описанного обновления. Просто стоит точно этот же релиз, но с минимум доработок, если не сложно ответьте на ******@gmail.com

  5. Роман:

    Здравствуйте. После доработки проверяли взаимодействие с ККТ? пробивает чеки?

  6. Андрей:

    Плохо не плохо но кто то на этой хрени обогащается -))

    • Вообще если бы код 1с был написан методически правильно, то добавление новой ставки НДС не потребовало бы таких мастшабных доработок конфигурации. Но увы, мы имеем на улице Селезневской то, что имеем.

  7. Елена:

    добрый день. у меня 1С:Предприятие 8.1 (8.1.15.14), Бухгалтерия предприятия, редакция 1.6 (1.6.29.2). много-много времени никаких доработок не производилось. думала ставку по ндс легко добавить/изменить как ставки с зарплаты. не тут то было. своего программиста нет. сможете ли вы мне помочь?

  8. Яна:

    Здравствуйте! Такая же проблема, нужна ставка и 22 и 5 процентов ндс, стали усн+ндс 5%, а в базе невозможно работать( можете помочь?

    Бухгалтерия предприятия, редакция 3.0 (3.0.140.40)

  9. Валентин:

    Добрый день. Такой вариант, к сожалению, не заработал. за 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

  10. Наталья:

    Добрый день! Мне тоже необходимо добавить ставку НДС 22 %. Свяжитесь пожалуйста со мной.

  1. 04.01.2026

    […] этом я уже несколько набил руку в прошлый раз, когда обновлял УПП, поэтому использовал этот […]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *