При ведении бухгалтерского учета внеоборотных активов в программе 1С:Бухгалтерия предприятия 3.0 пользователи периодически сталкиваются с крайне специфической проблемой. При формировании стандартного отчета «Ведомость по амортизации ОС» за определенный период первоначальная стоимость основных средств на конец периода уменьшается ровно на сумму начисленной за этот период амортизации. При этом в самой ведомости сумма начисления может ошибочно попадать в колонку «Уменьшение стоимости».
Самое удивительное в этой ситуации — поведение отборов. Если сформировать точно такой же отчет, но установить в настройках жесткий отбор по конкретному основному средству или по группе (папке) основных средств, то ведомость заполняется абсолютно корректно: первоначальная стоимость остается неизменной, а амортизация правильно отображается в своей колонке и не вычитается из стоимости актива. В этой статье мы подробно разберем технические и методологические причины этой проблемы, проанализируем логику работы механизмов платформы 1С:Предприятие 8.3 и составим пошаговый план исправления базы данных.
Для того чтобы понять, почему программа ведет себя столь двояко, нам необходимо проанализировать логику построения запроса в схеме компоновки данных (СКД), на которой базируется отчет «Ведомость по амортизации ОС». Этот отчет устроен гораздо сложнее, чем обычная оборотно-сальдовая ведомость по счетам 01 или 02. Вместо прямого чтения бухгалтерских проводок ведомость сопоставляет обороты по счетам с данными периодических регистров сведений, хранящих параметры объектов учета.
Ключевую роль в формировании отчета играет регистр сведений СчетаБухгалтерскогоУчетаОС. В нем для каждого основного средства хранятся счета, на которых учитывается сам актив, его амортизация и арендные обязательства. Алгоритм формирования отчета без установленных фильтров работает следующим образом:
СчетаБухгалтерскогоУчетаОС и собирает все счета учета ОС (ресурс СчетУчета) и все счета амортизации (ресурс СчетНачисленияАмортизации) по всем объектам, когда-либо введенным в эксплуатацию.02.01 вместо 01.01), то счет 02.01 попадает в список счетов учета первоначальной стоимости.02.01 (начисление амортизации) начинает трактоваться системой как уменьшение стоимости актива. Из-за этого математический алгоритм ломается по всем основным средствам организации: первоначальная стоимость уменьшается на величину начисленной амортизации.Теперь разберем, почему при включении отбора по конкретному объекту или группе объектов отчет внезапно начинает работать правильно. Когда в настройках компоновки данных задан отбор (например, по конкретному инвентарному номеру или папке справочника), система накладывает этот фильтр на этапе формирования временных таблиц со счетами учета. В выборку попадают только те счета, которые привязаны к объектам, удовлетворяющим условиям отбора. Если среди этих объектов нет «дефектного» ОС, то счета собираются корректно (счет учета — 01.01, счет амортизации — 02.01). Ошибочный счет амортизации не проникает в список активов, и математика отчета отрабатывает без сбоев.
Практика работы с конфигурациями 1С показывает, что некорректное заполнение регистров сведений может приводить и к другим искажениям в ведомости по амортизации. Рассмотрим наиболее распространенные сценарии:
Использование счета вложений 08.03 вместо счета учета. При принятии объекта к учету бухгалтеры иногда дублируют счет затрат на приобретение (08.03) в поле «Счет учета». Это приводит к тому, что при формировании ведомости без отборов колонка «Увеличение стоимости за период» полностью обнуляется по всем основным средствам в базе, так как счет 08 исключается из стандартного алгоритма расчета поступления активов.
Специфика учета арендованного имущества на счете 03. При передаче объектов в лизинг или аренду используются счета 03.01 (Доходные вложения в материальные ценности) и 02.02 (Амортизация имущества, предоставленного во временное пользование). В ряде релизов алгоритмы ведомости некорректно сопоставляют эти пары счетов, из-за чего амортизация может одновременно отражаться в графах начисления и уменьшения стоимости, удваивая тем самым износ объекта в отчете.
Ошибки ввода начальных остатков. Существует официально зарегистрированная разработчиками 1С ошибка, связанная со специализированным документом «Ввод остатков». При некорректном заполнении дат или параметров амортизации в этом документе ведомость может неверно интерпретировать входящее сальдо и относить накопленный износ на уменьшение первоначальной стоимости активов.
Для того чтобы устранить ошибку и вернуть отчет в работоспособное состояние, нам необходимо локализовать поврежденную запись в регистре сведений и скорректировать первичные документы. Разберем этот процесс по шагам.
Пытаться найти ошибку вручную, перебирая карточки сотен основных средств, крайне неэффективно. Мы воспользуемся мощным диагностическим инструментом — Универсальным отчетом. Выполним следующие действия для его настройки:
Регистр сведений.Счета бухгалтерского учета ОС, а в качестве типа данных установим Срез последних.СчетУчета, укажем вид сравнения Не равно и выберем значение счета 01.01 (если в организации используются доходные вложения, можно добавить аналогичное исключение для счета 03.01).В результате мы получим лаконичный список, содержащий только те основные средства, у которых в качестве счета учета указан нетипичный счет (например, 02.01 или 08.03). Именно эти объекты и ломают общую ведомость по амортизации.
Если к базе данных имеет доступ программист или системный администратор, аналогичный поиск можно оперативно провести с помощью консоли запросов, выполнив следующий код:
ВЫБРАТЬ
СчетаУчетаОС.ОсновноеСредство КАК ОсновноеСредство,
СчетаУчетаОС.СчетУчета КАК НекорректныйСчетУчета,
СчетаУчетаОС.СчетНачисленияАмортизации КАК СчетАмортизации
ИЗ
РегистрСведений.СчетаБухгалтерскогоУчетаОС.СрезПоследних КАК СчетаУчетаОС
ГДЕ
СчетаУчетаОС.СчетУчета.Код ПОДОБНО "02%"
ИЛИ СчетаУчетаОС.СчетУчета.Код ПОДОБНО "08%"
После того как проблемные объекты найдены, необходимо исправить документы, сформировавшие ошибочные записи в регистре сведений:
Принятие к учету ОС, Поступление основных средств с видом операции «Принятие к учету» или документ Ввод остатков.01 (например, 01.01), а в поле «Счет начисления амортизации» — счет группы 02 (например, 02.01). Исправим допущенную ошибку.СчетаБухгалтерскогоУчетаОС правильными значениями.Если период, в котором был создан документ принятия к учету, закрыт для редактирования (установлена дата запрета изменения данных), изменять первичный документ напрямую нельзя. В этом случае мы можем прибегнуть к ручной корректировке регистров. Для этого воспользуемся документом Операция, введенная вручную. В меню «Еще» этого документа выберем пункт «Выбор регистров», найдем регистр сведений Счета бухгалтерского учета ОС, добавим его в документ и внесем корректирующую запись, указав правильный счет учета для проблемного объекта на дату начала текущего открытого периода.
После успешного исправления всех некорректных записей вернемся в форму отчета «Ведомость по амортизации ОС». Полностью очистим настройки отборов по конкретным объектам и группам, установим нужный период формирования и нажмем кнопку «Сформировать».
Проанализируем полученный результат. Теперь первоначальная стоимость всех основных средств на начало и конец периода отображается без искажений, а начисленная амортизация за период корректно распределяется по соответствующим графам отчета, не уменьшая балансовую стоимость активов. Мы успешно диагностировали и устранили сложную техническую ошибку, восстановив корректность ведения учета основных средств в программе!