Как посмотреть оборотные средства в 1с
В нескольких статьях представлены основные сведения о внутреннем устройстве регистров накопления, о SQL-запросах платформы при работе с ними и их изменение в зависимости от настроек регистра. Подробно описана работа платформы с разными типами регистров (остатков и накопления), а также принцип действия агрегатов.
Материалы созданы во времена платформы 8.2, поэтому некоторые моменты могут быть уже не актуальными, но основные принципы работы остались неизменными.
Больше года назад сайт был закрыт. Некоторые из его материалов будут реанимированы на Инфостарт.
Конкретно в этой статье речь идет о виртуальных таблицах "Остатки" и "Остатки и обороты" регистров накопления в базе данных. Все примеры из публикации Вы можете найти на GitHub.
Предисловие
В предыдущих статьях мы говорили о структуре хранения регистров накопления в базе данных, а также о работе платформы с виртуальной таблицей "Обороты" этих регистров в зависимости от настроек хранения итогов. Все эксперименты проводились на тестовой конфигурации, содержащей два регистра накопления видов "Остатки" и "Обороты" (подробнее см. в предыдущих статьях).
Сегодня в статье рассмотрим действия платформы при работе с виртуальными таблицами "Остатки" и "Остатки и обороты" регистра накопления с видом "Остатки".
Общие сведения
Регистр накопления с видом "Остатки" позволяет разработчику использовать дополнительно к виртуальной таблице "Обороты" регистра еще и таблицу "Остатки".
Данная виртуальная таблица содержит меньше доступных параметров и предназначена для получения остатков по значениям измерений регистра на определенную дату.
Особенностью использования этой виртуальной таблицы является получение остатков на дату с использованием таблицы итоговых остатков (см. описание хранения регистров накопления вида "Остатки" в базе данных).
Поэтому, если использование итогов отключено для регистра, работа с этой таблицей станет невозможной.
Теперь рассмотрим формируемые платформой SQL-запросы к базе данных для получения остатков через названную виртуальную таблицу. Проанализируем изменение запроса для включенных/отключенных текущих итогов.
За кулисами
Выполним в нашей тестовой базе следующий запрос на языке платформы:
Для регистра "ОстаткиНоменклатуры" установим дату рассчитанных итогов на конец февраля (28.02.2013). Первый запрос выполним с включенными текущими итогами регистра накопления.
Первым делом платформа обратится к настройкам регистра накопления. Этот запрос был рассмотрен в предыдущей статье. Перейдем непосредственно к SQL-запросу платформы при использовании виртуальной таблицы "Остатки".
Получим следующий SQL-запрос платформы:
Обратите внимание на параметр "Период", переданный в виртуальную таблицу. Напомню, в нашем случае включены текущие итоги. Поскольку граница рассчитанных итогов регистра установлена на 28.02.2013, платформа не может получить итоги по остаткам на предыдущий месяц, а использовать последние рассчитанные итоги на конец февраля 2013 года и затем корректировать остаток в соответствии с движениями за последующие 3 месяца было бы не оптимально.
Поэтому программа получает текущие остатки (остатки на текущую дату, которые хранятся с периодом 01.11.5999 00:00:00) и корректирует их в соответствии с движениями в период с значения параметра "Период" вирт. таблицы и по дату текущий остатков. Если мы отключим текущие итоги, то тот же запрос на языке платформы будет преобразован в следующий SQL-запрос, имеющий незначительные изменения:
То есть, если параметр "Период" виртуальной таблицы больше периода последних рассчитанных итогов, то тогда платформа получает текущие остатки и корректирует их по движениям в диапазоне с [ПараметрПериодВиртуальнойТаблицы] по [ПериодТекущихИтогов]. В случае, если для регистра отключены текущие итоги, то платформа получает последние рассчитанные итоги и корректирует их по движениям с периода этих итогов по период, установленный в параметрах виртуальной таблицы.
Прежде чем перейти к выводам, отмечу, что во всех вариантах SQL-запроса при наложении условия на период получаемых движений, условие верхней границы диапазона всегда представляет собой:
т.е. условие всегда "МЕНЬШЕ". Если период движения равен дате, установленной в верхнем диапазоне, то эти движения не будут учитываться при получении остатков. Вот она та самая особенность виртуальной таблицы остатков, из-за которой не учитывается последняя секунда в параметрах виртуальной таблицы.
Делаем выводы
Подведем небольшой итог. На следующей схеме представлены действия платформы для получения остатков при различных настройках регистра накопления и параметра периода виртуальной таблицы "Остатки".
При любом случае использования виртуальной таблицы "Остатки", платформа 1С:Предприятие 8 получает данные по итогам остатков и корректирует их по записям движений.
Некоторые действия платформа могла бы выполнять более оптимально. Например, при использовании текущих остатков для регистра выбирать получать ли текущие остатки или последние рассчитанные итоги по периоду виртуальной таблицы. Выбор бы осуществлялся по принципу "что ближе".
В любом случае, механизм итогов для регистров вида "Остатки" позволяет выполнять запросы для получения остатков оптимальнее, нежели использовать только записи таблицы движений.
Все эксперименты проводил на платформе 1С:Предприятие 8.2.17.169.
Далее рассмотрим самую "тяжелую" виртуальную таблицу регистров накопления "ОстаткиИОбороты".
"Тяжелая" таблица
Среди всех виртуальных таблиц, таблица "Остатки и обороты" является самой "тяжелой" для формирования. Разработчики должны это хорошо понимать и использовать ее с осторожностью. Далее Вы увидите почему.
Выполним следующий запрос на языке запросов платформы:
Параметрам запроса присвоим следующие значения:
Такие параметры как "Периодичность" и "МетодДополнения" мы оставили без заполнения. Сначала платформа выполнить запрос для получения настроек регистра накопления. Его мы подробно рассмотрели в статье по виртуальной таблице "Обороты", поэтому сейчас останавливаться на нем не будем.
При таких настройках платформа сформирует следующий SQL-запрос для рассматриваемой виртуальной таблицы:
Прокомментировал основные моменты в запросе. Общая схема работы запроса такая:
- Получаем обороты регистра по таблице движений за установленный период.
- Получаем остатки на значение даты параметра "Начало периода".
- Объединяем предыдущие два результата, при этом поле "НачальныйОстаток" - это остаток по данным таблицы остатков, а "КонечныйОстаток" вычисляется как : "НачальныйОстаток" + "Оборот"
- Полученные данные группируются по выбранным в запросе измерениям и проверяются на наличие хотя бы одного заполненного ресурса (не равного 0).
Отсюда мы можем сделать вывод, что если с помощью этой виртуальной таблицы мы получаем данные за большой период, то запрос может получать достаточно большие порции записей движений. В результате формирование отчетов (или другие механизмы в конфигурации) будет работать очень медленно.
Сам SQL-запрос может изменяться в зависимости от значений параметров виртуальной таблицы. Например, если мы добавим периодичность, то в запрос будет добавлено дополнительное поле "Период", по которому результат будет группироваться. При установке параметра "МетодДополнения" в запрос будут попадать границы периода, если установлено значение "ДвиженияИГраницыПериода" (именно с таким значением параметра мы анализировали SQL-запрос), иначе в результате запроса будут только движения.
Что дальше
В этой и предыдущих статьях мы рассмотрели SQL-запросы платформы при работе с виртуальными таблицами регистров накопления. Представленная информация должна помочь в выборе виртуальных таблиц при разработке, а также в написании оптимальных запросов к базе данных на языке платформы.
В следующих статьях рассмотрим работу агрегатов, а также некоторые особенности работы индексов регистров накопления и многое другое.
Видеоролик выполнен в программе «1С:Бухгалтерия 8» версия 3.0.87.22.
Требуемый отчет можно получить, сформировав отчет Оборотно-сальдовая ведомость (ОСВ) с отбором по счетам учета денежных средств и детализацией по статьям движения денежных средств.
Отчет Оборотно-сальдовая ведомость (раздел Отчеты – Стандартные отчеты) в общем случае предназначен для формирования ОСВ по всем счетам (субсчетам) за определенный период времени. Каждая строка отчета соответствует определенному счету или субсчету. Счета упорядочены в порядке возрастания. Для каждого счета показаны суммы остатков на начало и на конец периода по дебету и кредиту и суммы оборотов за период.
Чтобы вывести ОСВ только по счетам учета денежных средств следует перейти в настройки отчета (кнопка Показать настройки) и установить отбор на одноименной закладке:
- в графе Поле - указать значение Счет, выбрав его из предлагаемого списка значений;
- в графе Вид сравнения - выбрать условие сравнения В списке;
- через графу Значение перейти в форму списка значений, где добавить в список счета учета денежных средств, используемые в конкретной организации, например, 50.01 «Касса организации», 51 «Расчетные счета» и 52 «Валютные счета» (кнопка Добавить).
Чтобы детализировать ОСВ по статьям движения денежных средств в настройках отчета на закладке Группировка следует добавить счета учета денежных средств, указанные при отборе (кнопка Добавить). В графе По субконто автоматически подставляются доступные виды субконто:
- Статьи движения денежных средств – для счета 50.01;
- Банковские счета и Статьи движения денежных средств – для счетов 51 и 52.
На закладке Показатели можно установить флаг Валютная сумма – в этом случае для валютных счетов показатели в ОСВ будут выводиться одновременно в рублевой и валютной оценке.
Выполненные настройки можно сохранить по команде Сохранить настройки.
Для получения данных в любых необходимых разрезах выбранного счета в программе "1С:Бухгалтерия 8" предусмотрено большое количество вариантов настройки отчета (в том числе в разрезе реквизитов субконто). О том, как получить тот или иной отчет, рассказывают методисты фирмы "1С".
Отчет "Оборотно-сальдовая ведомость по счету" (меню "Отчеты" - "Оборотно-сальдовая ведомость по счету") показывает начальные и конечные остатки, а так же обороты за период для выбранного счета. Для счетов, по которым ведется аналитический учет, можно получить остатки и обороты раздельно по объектам аналитического учета (субконто).
Для формирования "Оборотно-сальдовой ведомости по счету" достаточно в форме отчета указать организацию, период и выбрать счет бухгалтерского учета. После чего нажать кнопку "Сформировать" на командной панели формы отчета.
Для получения данных в любых необходимых разрезах выбранного счета в программе предусмотрено большое количество вариантов настройки отчета. С помощью кнопки "Настройка. " командной панели формы отчета в специальном диалоговом окне можно задавать различные условия детализации и отбора. Причем, настройка отбора и детализации возможна не только по субконто, но и по реквизитам субконто.
Рассмотрим несколько вариантов настройки отчета "Оборотно-сальдовая ведомость по счету". Для примера используем счет 60.01 "Расчеты с поставщиками и подрядчиками", организацию ООО "Белая акация", период 01.04.2006-30.04.2006.
Для того, чтобы получить данные только по контрагенту "МГТС" с детализацией по документам расчетов на закладке "Отбор" установим флажок в строке с элементом Контрагенты, выберем Тип сравнения - Равно, Значение - МГТС (выберем из справочника "Контрагенты"). На закладке "Детализация" из 3 субконто, по которым ведется аналитический учет на счете 60.01 - "Контрагенты", "Договоры" и "Документы расчетов с контрагентом" - оставим в списке только "Котрагенты" и "Документы расчетов с контрагентом". Субконто "Договоры" удалим из списка нажатием на кнопку в окне настройки. После выполнения всех настроек нажмем на кнопку ОК в правой нижней части окна настройки. В результате таких настроек сформируется оборотно-сальдовая ведомость (см. рис. 1).
Допустим необходимо получить данные по расчетам с контрагентами "МГТС" и "Инвентарь база ООО" с детализацией по договорам.
Для этого на закладке "Отбор" установим флажок в строке с элементом Контрагенты, выберем Тип сравнения - В списке, Значение - МГТС, Инвентарь база ООО (при нажатии на кнопку выбора откроется окно, в котором можно указать список контрагентов, выбрав их из справочника "Контрагенты") (см. рис. 2).
На закладке "Детализация" укажем субконто "Контрагенты" и "Договоры". После выполнения всех настроек нажмем на кнопку ОК в правой нижней части окна настройки. В результате получим оборотно-сальдовую ведомость в разрезе выбранных нами контрагентов (см. рис. 3).
Необходимо получить данные по расчетам со всеми поставщиками с детализацией только по контрагенту и виду контрагента (юридическое или физическое лицо).
Для этого на закладке "Отбор" снимем все флажки. На закладке "Детализация" в первой строке списка укажем субконто "Контрагенты", во второй строке выберем вид контрагента (реквизит субконто "Контрагенты") - "Юр./физ.лицо" (см. рис. 4). После выполнения всех настроек нажмем на кнопку ОК в правой нижней части окна настройки. В результате настройки сформируется соответствующая оборотно-сальдовая ведомость (см. рис. 5).
Если необходимо получить данные по расчетам с поставщиками, наименование которых начинается, например, с выражения "мос" с детализацией по всем субконто счета 60.01, то на закладке "Отбор" в верхней строке установим флажок, выберем Поле - Контрагенты. Наименование (реквизит субконто "Контрагенты"), Тип сравнения - Содержит, Значение - мос% (знак "%" означает, что после выражения "мос" может быть произвольное количество символов). На закладке "Детализация" укажем в списке все 3 субконто счета 60.01 - "Контрагенты", "Договоры" и "Документы расчетов с контрагентом". После выполнения всех настроек нажмем на кнопку ОК в правой нижней части окна настройки, после чего сформируется оборотно-сальдовая ведомость.
От редакции: О возможностях настройки отчетов в "1С:Бухгалтерии 7.7" читайте здесь.
Как в программе «1С:Бухгалтерия 8» (ред. 3.0) сформировать отчет по основным средствам (ОС), числящимся на балансе организации, и лицам, несущим материальную ответственность за сохранность этих основных средств (реквизит «МОЛ»)?
Видеоролик выполнен в программе «1С:Бухгалтерия 8» релиз 3.0.41.57.
Принятие на учет основного средства в программе «1С:Бухгалтерия 8» (ред. 3.0) отражается документом Принятие к учету ОС. Материально ответственное лицо выбирается из справочника Физические лица и указывается в поле МОЛ в шапке документа.
В результате проведения документа Принятие к учету ОС формируются бухгалтерские проводки и движения (записи) в многочисленных регистрах сведений, отражающих информацию об основном средстве. Реквизит МОЛ отражается в регистре сведений Местонахождение ОС (Бухгалтерский учет).
Чтобы сформировать отчет по основным средствам, числящимся на балансе организации, и соответствующим им материально-ответственным лицам (МОЛ), необходимо воспользоваться Универсальным отчетом (раздел Отчеты).
Он позволяет отображать данные справочников, документов, их табличных частей, регистров накопления и регистров сведений и их виртуальных таблиц.
В верхней части отчета находится командная панель. С помощью настроек панели нужно установить требуемый период. В поле Тип данных надо выбрать значение Регистр сведений, а в поле Объект из представленного списка объектов надо выбрать регистр Местонахождение ОС (Бухгалтерский учет). В поле Таблица надо выбрать саму таблицу регистра, то есть пустое поле.
Панель настройки открывается (скрывается) по кнопке Показать настройки/Скрыть настройки. В отчете можно задать группировку по аналитическим объектам, по группам объектов. Для этого предназначена панель настройки Группировка. Порядок группировки аналитических объектов изменяется по кнопке Вверх или Вниз.
На панели Отбор можно выбрать параметр или реквизит, по которому будет произведен отбор в отчете, а также задать вид сравнения (равно, в списке и т. д.). В колонке Поле следует выбрать параметр или реквизит, доступный для настройки отчета. В последней колонке указывается конкретное значение выбранного параметра или реквизита параметра.
На панели сортировки можно упорядочить значения по графам (полям) отчета. Допускается задавать сразу несколько настроек для сортировки.
Для получения требуемого отчета достаточно выполнить следующие настройки:
В бухгалтерии понадобился отчет по оборотным средствам по организации, включающий как оборотные средства так и кредиторскую задолженность.
Порядок формирования показателей отчета по строкам:
Сальдо по Дт 50(кроме 50.03,50.23)
+Сальдо по Дт 51
+Сальдо по Дт 52
+Сальдо по Дт 55
+Сальдо по Дт 57(кроме 57.02,57.03,57.22)
Сальдо по Дт 58.01.2
+Сальдо по Дт 58.02
-Сальдо по Кт 59
+Сальдо по Дт 58.03
+Сальдо по Дт 58.04
+Сальдо по Дт 58.05
+Сальдо по Дт 55.03
+Сальдо по Дт 55.23
Сальдо по Дт 62.01
+Сальдо по Дт 62.02
+Сальдо по Дт 60.01
+Сальдо по Дт 60.02
+Сальдо по Дт 76.05
Сальдо по Дт 10
- Сальдо по Дт 14.01
+ Сальдо по Дт 15.01
+ Сальдо по Дт 16.01
- Сальдо по Кт 16.01
Сальдо по Дт 20
+Сальдо по Дт 21
+Сальдо по Дт 23
+Сальдо по Дт 29
+Сальдо по Дт 46
-Сальдо по Кт 14.04
Сальдо по Кт 14.03
+Сальдо по дебету счета 41
-Сальдо по Кт 14.02
+Сальдо по Дт 15.02
+Сальдо по Дт 16.02
-Сальдо по Кт 42
Так же в отчет входят
Если нужно доработать отчет, то с удовольствием помогу, пишите
Специальные предложения
Автор запретил комментарии
Просмотры 8069
Загрузки 15
Рейтинг 1
Создание 16.01.14 17:56
Обновление 07.03.14 12:57
№ Публикации 251409
Рубрики Учет ОС и НМА
Кому Бухгалтер
Операционная система Windows
Страна Россия
Доступ к файлу Абонемент ($m)
Код открыт Не указано
См. также
Расшифровка по Основным средствам для расчета налога на имущество по 2-му и 3-му разделам декларации "Авансы по налогу на имущество". Промо
Отчет "Расшифровка отчета 'Авансы по налогу на имущество' по 2-3 разделам" предназначен для проверки и контроля правильности расчета регламентированного отчета "Авансы по налогу на имущество" в разрезе Основных средств. Предоставляет ряд дополнительных данных по состоянию ОС организации на текущий момент согласно данным хозрасчетного регистра. Написан на основании стандартных процедур заполнения регламентированных отчетов, но дополнительно показывает данные в разрезе групп ОС и каждого ОС, согласно данным 2-го и 3-го разделов стандартного отчета. Версия для обычного приложения тестировалась на УПП 1.3, но должно работать в БУ, БУ КОРП 2.0, КА, БАУ и БАУ КОРП (по крайней мере для обычных /неуправляемых/ приложений). Версия для управляемого приложения тестировалась на БП 3.0. В отчете учтены ОС, введенные в эксплуатацию после 2013 и учтены изменения, введенные в 2017 г. Предусмотрено три варианта отчета: 1. Для обычного приложения 8.1-8.3 платформ; 2. Для управляемого приложения 8.2 - 8.3 платформ; 3. Универсальный вариант, который подходит для обоих типов конфигураций: для обычного и управляемого приложений (удобно, если на предприятии используются оба типа - и обычные, и управляемые приложения).
Читайте также: