Как правильно перейти на ставку НДС 20% в 1С 7.7 Бухгалтерии и ТиС

Программист 1С v7.7 Налоговый учет Торговля и дистрибуция
← На главную

Переход на новую ставку НДС 20% для пользователей платформы 1С 7.7 стал серьезным испытанием, так как эта версия программы уже не находится на полноценной поддержке, и многие механизмы автоматизации, доступные в 1С 8.3, здесь отсутствуют. В рамках данной статьи мы разберем алгоритм действий, проанализируем возможные ошибки и выясним, как обеспечить корректное формирование отчетности в переходный период.

Шаг 1: Обновление конфигурации до актуального релиза

Прежде всего, нам необходимо убедиться, что база данных готова к работе с новой ставкой. Несмотря на ограниченную поддержку, фирма «1С» выпустила специальные обновления для типовых решений. Для 1С:Бухгалтерии 7.7 это релиз 7.70.646 (и выше), а для 1С:Торговля и Склад 9.2 — релиз 7.70.998. Рассмотрим, что именно меняется в системе при обновлении:

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

Шаг 2: Изменение настроек системы и справочников

Просто обновить программу недостаточно. Проанализируем, какие действия нужно выполнить в пользовательском режиме. Во-первых, необходимо изменить значение константы «Основная ставка НДС». Установим ее в значение 20% с 1 января соответствующего года. Это позволит новым документам автоматически подставлять актуальную ставку.

Во-вторых, рассмотрим работу со справочником Номенклатура. В 1С 7.7 ставка НДС жестко привязана к каждой карточке товара или услуги. Чтобы не менять сотни позиций вручную, воспользуемся специальной обработкой «Пересчет ставок НДС в справочнике Номенклатура», которая поставляется в составе обновления. Если же вы работаете в самописной базе, разберем пример простейшего кода для массовой замены:


Спр = СоздатьОбъект("Справочник.Номенклатура");
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент() = 1 Цикл
    Если Спр.ЭтоГруппа() = 1 Тогда
        Продолжить;
    КонецЕсли;
    Если Спр.СтавкаНДС = Перечисление.СтавкиНДС.НДС18 Тогда
        Спр.СтавкаНДС = Перечисление.СтавкиНДС.НДС20;
        Спр.Записать();
        Сообщить("Обновлен товар: " + Спр.Наименование);
    КонецЕсли;
КонецЦикла;

Важный нюанс: Данную обработку следует запускать только после завершения всех операций за старый год. Если вы измените ставку в справочнике в середине декабря, то при перевыставлении документов за 2018 год программа может ошибочно подтянуть 20%.

Шаг 3: Решение проблемы с валютными документами

Разберем специфическую ситуацию, описанную пользователями на практике: в документах 2018 года ставка указана верно (18%), проводки сформированы корректно, однако в печатных формах по валютным счетам сумма НДС рассчитывается исходя из 20%. Выясним причину этой ошибки.

В платформе 7.7 алгоритмы печати часто вынесены в ГлобальныйМодуль или внешние формы .ert. Проблема заключается в том, что функция расчета суммы НДС может обращаться к текущему значению константы ОсновнаяСтавкаНДС или использовать РабочаяДата() вместо даты документа. Проанализируем типовой фрагмент кода, который требует правки:


// Было (ошибочный вариант):
Ставка = Константа.ОсновнаяСтавкаНДС.Получить(РабочаяДата());

// Стало (правильный вариант):
Ставка = Константа.ОсновнаяСтавкаНДС.Получить(ДатаДок);

Если в вашей базе печать валютных документов «едет», проверьте модуль документа (процедуру Печать) и убедитесь, что выбор ставки жестко привязан к параметру ДатаДок. Это позволит системе корректно рассчитывать 18% для старых документов даже в том случае, если текущая дата на компьютере — 2019 год.

Шаг 4: Учет переходных периодов (Авансы и Возвраты)

Самый сложный блок — это методология учета. Рассмотрим ситуацию, когда аванс получен в 2018 году (18%), а отгрузка товара происходит в 2019 году (20%). Согласно законодательству, отгрузка должна пройти по ставке 20%.

В 1С 7.7, в отличие от восьмой версии, нет автоматизированного помощника по доплате 2% НДС. Посмотрим, как это реализовать практически:

  1. Если покупатель доплачивает 2% НДС в 2019 году, на эту сумму необходимо выставить корректировочный счет-фактуру к «авансовому» счету-фактуре 2018 года.
  2. В документе СтрокаКнигиПродаж или ЗаписьКнигиПродаж придется вручную корректировать суммы, чтобы отразить разницу.
  3. При возврате товаров, отгруженных в 2018 году, необходимо использовать ставку 18%. Следите за тем, чтобы при подборе номенклатуры в документ возврата программа не подставила 20% из карточки товара. В 7.7 это контролируется только вручную бухгалтером в табличной части документа.

Шаг 5: Настройка торгового оборудования (ККТ)

Для пользователей конфигурации «Торговля и Склад» критически важна работа с онлайн-кассами. Даже если вы изменили ставку в 1С, кассовый аппарат может продолжать печатать 18% или выдавать ошибку. Выясним, что нужно проверить:

Проанализируем файл обработки обслуживания кассы (обычно это fr_comm.ert или shtrih_m_kkt.ert). В коде этой обработки есть таблица соответствия налоговых ставок 1С и налоговых групп в ФР (фискальном регистраторе). Нам нужно убедиться, что значение Перечисление.СтавкиНДС.НДС20 корректно передает индекс налоговой группы, которая в настройках самой кассы запрограммирована как 20%. Зачастую требуется обновление драйвера ККТ и прошивки самого аппарата до версии, поддерживающей НДС 20%.

Заключение

Переход на ставку 20% в 1С 7.7 требует комплексного подхода. Мы рассмотрели технические аспекты (обновление релизов, правка кода печатных форм) и организационные моменты (массовое изменение справочников). Главный совет для администраторов «семерки»: тщательно проверяйте внешние печатные формы и обработки, так как именно в них чаще всего встречаются «зашитые» старые алгоритмы расчета, которые игнорируют дату документа и используют актуальные константы.

← На главную