Как изменить настройки учета запасов в 1С:Бухгалтерии 3.0 и обойти ошибку «Превышено максимальное количество видов субконто»

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

При ведении учета в программе 1С:Бухгалтерия предприятия 3.0 в течение длительного времени требования бизнеса могут меняться. Типичный пример — необходимость детализировать учет запасов до конкретных складов (мест хранения) как по количеству, так и по стоимости, в то время как ранее велся лишь общий количественный учет или учет по номенклатуре в целом. При попытке изменить эти настройки в работающей базе пользователи часто сталкиваются со следующей ошибкой системы:

Ошибка при записи счета 004.01... Превышено максимальное количество видов субконто на счете.

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

Выясняем причину ошибки: почему возникает ограничение?

Проанализируем архитектуру платформы «1С:Предприятие». В свойствах любого плана счетов (в нашем случае это предопределенный план счетов Хозрасчетный) существует жесткое системное ограничение — «Максимальное количество субконто». По умолчанию в типовых конфигурациях это значение равно 3. Это означает, что ни один бухгалтерский счет не может содержать более трех разрезов аналитики (видов субконто).

Давайте посмотрим на стандартный забалансовый счет 004.01 («Товары на складе»), который используется для учета принятых на комиссию ценностей. При включенной настройке партионного и складского учета на нем должны располагаться следующие субконто:

  1. Номенклатура
  2. Партии
  3. Склады

Однако в нетиповых или измененных базах (как в ситуации автора темы) на счете 004.01 зачастую уже присутствует стороннее субконто — например, Контрагенты. Оно могло быть добавлено программистами для упрощения отслеживания комитентов напрямую через забалансовый счет. В итоге при попытке включить стандартный складской учет через интерфейс программы система пытается добавить четвертое субконто Склады, что вызывает закономерный отказ платформы.

Важное примечание: Дублировать контрагента на счете 004.01 избыточно. В типовом механизме 1С:БП 3.0 информация о комитенте уже заложена внутри первого субконто Партии (в качестве партии выступает документ поступления, где комитент четко указан в поле «Контрагент»).

Шаг 1. Освобождаем место под субконто «Склады»

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

Для программного удаления лишнего субконто и подготовки счета напишем следующий код:


ПланыСчетов.Хозрасчетный.НайтиПоКоду("004.01").ПолучитьОбъект();
// Находим индекс субконто "Контрагенты" в табличной части ВидыСубконто
ИндексУдаления = -1;
Для Каждого СтрокаСубконто Из СчетОбъект.ВидыСубконто Цикл
    Если СтрокаСубконто.ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты Тогда
        ИндексУдаления = СчетОбъект.ВидыСубконто.Индекс(СтрокаСубконто);
        Прервать;
    КонецЕсли;
КонецЦикла;

Если ИндексУдаления >= 0 Тогда
    СчетОбъект.ВидыСубконто.Удалить(ИндексУдаления);
    СчетОбъект.Записать();
    Сообщить("Субконто Контрагенты успешно удалено со счета 004.01");
КонецЕсли;

Выполнение этого кода удалит лишнюю аналитику, освободив место для стандартных механизмов.

Шаг 2. Включаем складской учет в параметрах программы

После удаления лишнего субконто система позволит беспрепятственно применить необходимые настройки. Разберем по шагам, как это сделать:

  1. Переходим в раздел Администрирование, далее выбираем пункт Параметры учета.
  2. Открываем гиперссылку Настройки учета запасов.
  3. В строке Учет по складам (местам хранения) нажимаем кнопку изменения настроек и выбираем вариант По количеству и сумме (или просто По количеству, в зависимости от требований заказчика).
  4. Сохраняем изменения. Программа автоматически добавит субконто Склады на все необходимые счета учета ТМЦ, включая 10, 21, 41, 43, 003.01, 004.01 и другие.

Важный нюанс интерфейса: куда пропало поле «Склад»?

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

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

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

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

Рассмотрим возможные пути решения этой проблемы, оценив их плюсы и риски.

Вариант А. Полное перепроведение базы (Не рекомендуется)

Кажется логичным просто запустить групповое перепроведение документов за все 5 лет. Однако в реальных базах это делать категорически запрещено по следующим причинам:

Вариант Б. Программное заполнение регистра бухгалтерии (Опасно)

Некоторые специалисты предлагают написать обработку, которая напрямую перезапишет субконто Склады в проводках регистра бухгалтерии РегистрБухгалтерии.Хозрасчетный без фактического перепроведения документов.

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

Вариант В. Метод «Среза и переноса остатков» (Рекомендуемый подход)

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

Разберем по шагам этот процесс:

  1. Выбираем дату перехода на новый учет. Идеально подходит 1-е число нового года или квартала (например, 1 января). Предыдущий период должен быть полностью закрыт, а отчетность сдана.
  2. До включения новой настройки складского учета создаем документ Списание товаров (или материалов) датой 31.12.20XX 23:59:58. В этом документе списываем все остатки ТМЦ со всех счетов учета в ноль. Все проводки будут сформированы по пустой аналитике склада.
  3. Включаем в параметрах учета складской учет («По количеству и сумме»), как это описано в Шаге 2.
  4. Создаем документ Оприходование товаров датой 31.12.20XX 23:59:59. Заполняем его табличную часть теми же позициями и ценами, что и в документе списания, но теперь для каждой строки принудительно указываем конкретный реальный склад, на котором фактически лежат ТМЦ.
  5. Поскольку документы списания и оприходования задействуют счета доходов и расходов (например, 91 и 94), их обороты могут исказить финансовый результат за год. Чтобы этого не произошло, аккуратно нивелируем (схлопываем) эти суммы с помощью документа Операция, введенная вручную.

Этот метод гарантирует, что весь прошлый учет за 5 лет останется нетронутым, себестоимость прошлых лет не изменится, а с 1 января вы начнете вести чистый, аккуратный учет запасов в разрезе складов по количеству и стоимости.

← На главную