В типовой конфигурации 1С:Бухгалтерия предприятия 3.0 отчет «Ведомость по амортизации ОС» (или альтернативный отчет по основным средствам для Бухгалтерии 3.0) предоставляет обширную информацию о состоянии основных средств, однако зачастую пользователям требуется видеть специфические даты — когда объект был куплен и когда он был фактически введен в эксплуатацию (принят к учету). Разберем подробно, как реализовать этот запрос, вывести дополнительные полезные колонки в ведомость амортизации ОС, почему поля могут не отображаться в настройках и где физически хранятся эти данные в базе.
Перед тем как переходить к техническим настройкам, проанализируем, как система фиксирует эти даты. В зависимости от выбранной методики учета в 1С, эти даты могут как совпадать, так и различаться:
Поступление (акты, накладные, УПД) с видом операции Основные средства, то приобретение и принятие к учету происходят одновременно. В этом случае обе даты в отчете будут идентичны.Поступление оборудования (счет 08.04.1), а затем отдельный документ Принятие к учету ОС (перевод на счет 01), то даты будут разными. Датой приобретения считается дата первого документа, а датой принятия к учету — дата второго.Чтобы вывести эти значения в отчет через Систему компоновки данных (СКД), нам нужно понимать, из каких таблиц их извлекать. Рассмотрим основные источники:
Принято к учету. Поле Период или Дата состояния в этом регистре и есть искомая дата ввода в эксплуатацию.Дата принятия к учету часто берется именно отсюда.Часто программисты сталкиваются с ситуацией: поле добавлено в набор данных запроса, но в режиме «1С:Предприятие» в настройках отчета (в списке доступных полей) оно отсутствует. Разберем причины и способы решения этой проблемы.
1. Проверка роли поля и флагов доступности. Откройте схему компоновки данных, перейдите на вкладку Наборы данных. Убедитесь, что для ваших новых полей (например, ДатаПриобретения) установлены галочки в колонках Поле и Условие. Если эти флаги сняты, поле будет доступно только для внутренних вычислений, но не для вывода пользователем.
2. Механизм Автозаполнения. Проанализируем настройки на уровне всего набора данных. Если флаг Автозаполнение снят, вам необходимо вручную прописать каждое новое поле в списке «Поля» ниже текста запроса. Рассмотрим пример добавления связи в запросе:
ВЫБРАТЬ
Ведомость.ОсновноеСредство,
СостоянияОС.ДатаСостояния КАК ДатаПринятияКУчету,
ПервоначальныеСведения.ДокументПринятияКУчету.Дата КАК ДатаПриобретения
ИЗ
РегистрНакопления.АмортизацияОС.Обороты КАК Ведомость
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияОС.СрезПоследних(&Период, Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияОС.ПринятоКУчету)) КАК СостоянияОС
ПО Ведомость.ОсновноеСредство = СостоянияОС.ОсновноеСредство
3. Вложенные свойства. Проверьте, не спрятаны ли эти даты внутри объекта Основное средство. В настройках отчета нажмите на «плюсик» рядом с полем Основное средство. Если в конфигурации прописаны соответствующие связи, даты можно вытащить оттуда без правки кода запроса.
Если задача стоит остро и нет времени на доработку типовой СКД ведомости, выясним, как получить эти данные через Универсальный отчет. Этот метод доступен бухгалтеру без привлечения программиста.
Регистр сведений.Первоначальные сведения ОС (бухгалтерский учет).Дата принятия к учету и через точку от объекта Основное средство — необходимые дополнительные реквизиты.Рассмотрим по шагам, как правильно модифицировать запрос, чтобы отчет работал корректно и не замедлял систему:
Состояния ОС во временную таблицу.ЛЕВОЕ СОЕДИНЕНИЕ. Это гарантирует, что если по какому-то объекту дата не заполнена, он все равно попадет в отчет.ДатаПриобретения пустая (равна ДАТАВРЕМЯ(1,1,1)), то выводить ДатаПринятияКУчету. Это актуально для объектов, введенных в эксплуатацию упрощенным способом.Таким образом, мы выяснили, что ключ к решению проблемы лежит в понимании структуры регистров 1С и правильной настройке связей в схеме компоновки данных. Использование РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет является наиболее надежным способом получения даты принятия к учету в конфигурации БП 3.0.