Рано или поздно развивающийся бизнес сталкивается с необходимостью детализации учета. В программе 1С:Бухгалтерия 3.0 по умолчанию может быть отключен складской учет, либо вестись только в количественном выражении. Когда руководство принимает решение включить полноценный учет запасов по складам в количестве и сумме, перед бухгалтером и техническим специалистом встает сложная задача.
После включения соответствующей настройки в параметрах учета все прошлые документы движения ТМЦ остаются без привязки к конкретным местам хранения (в аналитике отображается пустой склад — <...>). В этой статье мы подробно разберем, как быстро и правильно перенести остатки на новые реальные склады, а также выясним, как победить частую ошибку проведения документов Корректировка реализации прошлых периодов, когда программа сообщает, что товара «было реализовано меньше, чем возвращается».
---
Когда мы включаем настройку складского учета (меню Администрирование — Параметры учета — Настройка плана счетов — Учет запасов и устанавливаем флаг «По складам (местам хранения)» в положении «По количеству и сумме»), вся накопленная номенклатура на счетах 10, 41, 43 зависает на пустом субконто.
Стандартный Помощник ввода начальных остатков в данном случае не заполняется автоматически, так как программа не может самостоятельно угадать, на какой именно из вновь созданных складов нужно распределить материалы или товары. Рассмотрим три наиболее эффективных способа решения этой задачи.
Этот способ является самым чистым с точки зрения методологии учета, поскольку он не затрагивает документы прошлых периодов и не требует перепроведения старой первичной документации.
Проанализируем пошаговый алгоритм выполнения этой операции:
Операция на дату начала ведения складского учета.41.01 «Товары на складах» или 10.01 «Сырье и материалы»).41.01).<...>).Преимущество метода: Происходит корректное «закрытие» остатков по пустому субконто складского учета и их одновременное оприходование на реальное место хранения. Баланс счетов при этом не нарушается.
Если позиций номенклатуры в базе данных слишком много (тысячи наименований), ручной ввод через операции становится невозможным. В этом случае мы можем применить обходной технический маневр с использованием документов внутренней инвентаризации и перемещения:
Инвентаризация товаров. В поле «Склад» оставим пустое значение. Нажмем кнопку Заполнить — Заполнить по остаткам на складе. Программа соберет все остатки, числящиеся без склада.Ctrl + A), нажмем правую кнопку мыши и выберем команду «Скопировать строки».Перемещение товаров. Нам необходимо указать склад-отправитель и склад-получатель. Но поскольку отправитель у нас пустой, стандартным образом провести документ программа не позволит. Склады создается один-единственный технический склад (например, «Временный»). При активации константы складского учета программа автоматически ассоциирует все старые движения с этим складом. После этого мы можем легко перенести остатки со склада «Временный» на любые новые реальные склады стандартным документом Перемещение товаров, вставив скопированные строки через команду «Вставить строки».Также стоит отметить, что в современных релизах конфигурации 1С:Бухгалтерия 3.0 в документе Перемещение товаров отлично работает механизм «Подбор по остаткам», который позволяет быстро отфильтровать и перенести нужные позиции.
Важное предупреждение: Каким бы способом вы ни воспользовались для переноса остатков, после записи документов обязательно нужно выполнить процедуру «Закрытие месяца», начиная с периода переноса. Это необходимо, чтобы система корректно пересчитала себестоимость списания ТМЦ с учетом новой аналитики.
---
После успешного переноса остатков текущие документы начинают проводиться без нареканий. Однако часто возникает ситуация, когда в текущем периоде требуется оформить документ Корректировка реализации (или возврат) по сделке, совершенной в прошлом периоде — еще до того, как был включен учет по складам.
При попытке проведения корректировки программа выдает критическую ошибку проведения. Выясним причину этого поведения системы.
При проведении корректировки реализации «в сторону уменьшения» (когда покупатель возвращает товар) встроенные алгоритмы общего модуля УчетТоваров обращаются к регистру бухгалтерии Хозрасчетный. Программа пытается сопоставить склад из текущей настройки со складом, указанным в исходном документе отгрузки. Поскольку в старой реализации складской учет отсутствовал, поле склада там пустое. Программа производит запрос к базе данных, видит отгрузку со склада в размере «0» штук и блокирует проведение корректировки, так как нельзя вернуть товар, который (по данным склада) не отгружался.
Рассмотрим 4 практических способа, как победить эту ошибку.
Если корректировочный документ нужно провести незамедлительно, а времени на программные манипуляции нет, выполним следующие шаги:
Корректировка реализации и проведем его. Поскольку контроль складов отключен, программа успешно запишет и проведет документ.Минусы метода: Этот метод имеет серьезные недостатки. Во-первых, во время отключения контроля другие пользователи могут случайно провести свои документы без указания складов. Во-вторых, проводки корректировки сформируются без аналитики склада, и на счетах учета снова возникнет «пустота», которую придется закрывать вручную.
Чтобы программа успешно сопоставила данные, нам нужно сделать так, чтобы в старом документе реализации был указан склад. Но перепроводить прошлый закрытый период нельзя — это приведет к изменению себестоимости и искажению налоговой отчетности. Мы можем пойти на хитрость:
Реализация (акты, накладные, УПД).Склад и укажем наш новый реальный склад (например, «Основной»).Теперь в документе реализации поле «Склад» заполнено, но проводки по-прежнему остаются старыми (без склада). Если корректировка все еще выдает ошибку, нам потребуется скорректировать проводки старого документа без его перепроведения. Для этого программисты часто используют специальный код для точечной записи набора движений:
// Пример программной записи аналитики склада в проводки старого документа
НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(СсылкаНаСтаруюРеализацию);
НаборЗаписей.Прочитать();
Для Каждого Запись Из НаборЗаписей Цикл
// Проверяем Кредит счета 41.01 (или 10)
Если Запись.СчетКт = ПланыСчетов.Хозрасчетный.ТоварыНаСкладах Тогда
// Устанавливаем реальный склад в субконто "Склады"
Запись.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Склады] = РеальныйСклад;
КонецЕсли;
КонецЦикла;
НаборЗаписей.Записать();
После выполнения этой несложной процедуры Корректировка реализации мгновенно запишется и проведется без каких-либо ошибок контроля остатков.
Если мы не хотим прибегать к программированию и изменять старые документы, мы можем воспользоваться стандартной возможностью ручного вмешательства в проводки:
Корректировка реализации.Дт 90.02.1 - Кт 41.01 (со знаком минус) мы явно указываем наш новый реальный склад.Зачастую механизмы контроля остатков в документе Возврат товаров от покупателя в системе 1С настроены более гибко и мягко, нежели в документе Корректировка реализации.
Если корректировка категорически отказывается проводиться, рекомендуется рассмотреть возможность отражения этой операции через возврат. В документе возврата присутствует явное и обязательное для заполнения поле «Склад». Программа позволяет выбрать реальный склад-получатель, на который физически прибудет товар, и во многих релизах успешно игнорирует отсутствие склада в исходной исторической реализации.
---
Переход на складской учет в работающей информационной базе требует от бухгалтера и администратора повышенного внимания. Подведем итоги совместной работы:
<...> в кредит и приходующей товары на новые склады в дебет.Групповое изменение реквизитов для подстановки склада в прошлые реализации «без проверок» либо оформляйте операцию через стандартный документ возврата.Оборотно-сальдовая ведомость по счету (например, 41 или 10) с группировкой по субконто «Склады» и проверьте, чтобы в базе не осталось незакрытых сумм или количеств по пустому складу.