Как изменить основную ставку НДС у всех пользователей в 1С:Управление торговлей 10.3?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Налоговый учет Торговля и дистрибуция
← На главную

При изменении законодательства или смене налогового режима перед администраторами и разработчиками систем на базе 1С возникает задача массового обновления ключевых реквизитов. Одним из таких реквизитов является Основная ставка НДС, которая закреплена за каждым пользователем информационной базы. В конфигурации «1С:Управление торговлей 10.3» (УТ 10.3) эта настройка определяет значение по умолчанию при создании новых документов и справочников.

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

Способ 1. Программное изменение ставки НДС (для разработчиков)

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

Настройки пользователей в конфигурации УТ 10.3 хранятся в периодическом регистре сведений НастройкиПользователей. Сами виды настроек определяются планом видов характеристик НастройкиПользователей. Чтобы изменить значение для всех пользователей сразу, нам потребуется программно считать записи этого регистра с отбором по конкретной настройке, перезаписать значение и сохранить набор записей.

Рассмотрим пример кода, который решает эту задачу. Вы можете разместить этот код в обработчике нажатия кнопки на форме вашей новой внешней обработки:


Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    // Счетчик измененных настроек
    Ном = 0; 
    
    // Создаем набор записей для работы с регистром сведений
    Набор = РегистрыСведений.НастройкиПользователей.СоздатьНаборЗаписей(); 
    
    // Устанавливаем жесткий отбор по конкретному виду настройки — Основная ставка НДС
    Набор.Отбор.Настройка.Установить(ПланыВидовХарактеристик.НастройкиПользователей.ОсновнаяСтавкаНДС); 
    
    // Читаем существующие в базе данных записи по нашему отбору
    Набор.Прочитать(); 
    
    // Перебираем полученные записи в цикле
    Для каждого ЗаписьНабора Из Набор Цикл
        
        // Переменные "Было" и "Стало" должны быть объявлены на форме как реквизиты 
        // со ссылками на значения справочника "СтавкиНДС" (например, 18% и 20%, либо 20% и 5%)
        Если ЗаписьНабора.Значение = Было Тогда 
            
            ЗаписьНабора.Значение = Стало; 
            Ном = Ном + 1; 
            
            // Выводим в окно сообщений лог операции для контроля
            Сообщить("Для пользователя: " + ЗаписьНабора.Пользователь + " установлена ставка: " + ЗаписьНабора.Значение); 
            
        КонецЕсли;
        
    КонецЦикла; 
    
    // Записываем измененный набор записей обратно в базу данных
    Набор.Записать(); 
    
    Сообщить("Обработка завершена успешно! Всего изменено настроек: " + Ном);
    
КонецПроцедуры

Проанализируем этот алгоритм. Использование объекта НаборЗаписей с установленным отбором позволяет минимизировать нагрузку на базу данных, так как система считывает и блокирует только те строки регистра, которые соответствуют настройке ОсновнаяСтавкаНДС. Это исключает риск изменения других важных параметров пользователей, таких как основные склады, организации или подразделения.

Способ 2. Альтернативный ручной способ (без программирования)

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

  1. Откройте главное меню программы и перейдите по пути: «Операции» — «Регистры сведений» — «Настройки пользователей».
  2. Перед вами откроется общий список всех настроек для всех учетных записей. Чтобы не запутаться, воспользуйтесь механизмом фильтрации. Нажмите на панели инструментов кнопку «Отбор и сортировка» (или вызовите ее через контекстное меню правой кнопкой мыши).
  3. В появившемся окне настройки отбора найдите поле «Настройка», установите для него вид сравнения «Равно» и выберите значение «Основная ставка НДС» из плана видов характеристик. Нажмите «ОК».
  4. Теперь в списке отображаются только интересующие нас настройки. Вы можете быстро пройтись по строкам списка и вручную перевыбрать старое значение ставки на новое для каждого активного пользователя.

Важная методологическая особенность: почему изменения только настроек пользователей недостаточно?

Многие начинающие администраторы и бухгалтеры совершают критическую ошибку, считая, что изменение «Основной ставки НДС» в настройках пользователей полностью решает проблему перехода на новую ставку налога. Рассмотрим подробнее, почему это не так.

Параметр «Основная ставка НДС» в карточке настроек пользователя отвечает только за заполнение значений по умолчанию. Это значение подставляется:

Однако в основных торговых документах, таких как РеализацияТоваровУслуг или ПоступлениеТоваровУслуг, ставка НДС заполняется непосредственно из карточки конкретной номенклатурной позиции. Если в карточке товара «Товар А» была указана ставка 18% или «Без НДС», то при выборе этого товара в табличную часть документа продажи подставится именно ставка из его карточки, проигнорировав любые индивидуальные настройки пользователя.

Таким образом, для корректного перехода на новую ставку НДС вам обязательно потребуется выполнить второй шаг — массово обновить ставки в справочнике Номенклатура.

Способ 3. Использование встроенного «Помощника замены ставки»

Чтобы упростить процесс глобального изменения ставок в справочнике товаров, разработчики фирмы «1С» добавили в типовую конфигурацию УТ 10.3 специальный инструмент. Рассмотрим, как им воспользоваться:

  1. Перейдите в меню: «Операции» — «Обработки» — «Помощник замены ставки» (в зависимости от релиза название может звучать как «Помощник замены ставки НДС на 20%»).
  2. Данный помощник позволяет автоматически проанализировать всю вашу базу номенклатуры.
  3. В настройках обработки вы можете задать необходимые отборы (например, по конкретным группам товаров или исключить позиции, которые продаются со ставками «Без НДС» или «10%»).
  4. После настройки фильтров запустите процесс групповой обработки. Система самостоятельно перезапишет реквизит «Ставка НДС» во всех соответствующих карточках товаров.

Если ваша база сильно кастомизирована, находится на нетиповом или очень старом релизе, где такой помощник отсутствует, вам придется воспользоваться стандартной внешней обработкой «Групповая обработка справочников и документов» или обратиться к программисту для написания аналогичного скрипта по обновлению реквизитов справочника Номенклатура.

Современный контекст: НДС при упрощенной системе налогообложения (УСН)

Описанные выше алгоритмы и подходы вновь стали чрезвычайно актуальными в связи с налоговой реформой, обязывающей многих налогоплательщиков на УСН исчислять и уплачивать НДС по ставкам 5% и 7%. Для корректной автоматической подстановки новых ставок в документы УТ 10.3 вам потребуется:

Своевременное проведение этих настроек позволит избежать ошибок при выписке первичных документов (УПД, счетов-фактур) и обеспечит корректное отражение операций в учетной системе.

← На главную