Меню Закрыть

1С как в скд отчете период свой

Вы, наверное, встречали, что в некоторых отчетах нет привычного выбора НачалаПериода и КонцаПериода. А есть только одно поле, где можно выбрать значение «Сегодня», «Эта неделя», Этот месяц» и так далее. Называется это в системе СКД 1С «Стандартный период». Действительно, это иногда удобно, ведь редко когда нужны отчеты за полдня или за 14 дней и 32 минуты.

Но здесь возникает вопрос, как же нам передать параметры &НачалаПериода и &КонцаПериода в запрос, а на форме чтобы был виден только один «стандартный период».

Оказывается, это очень просто сделать в механизме 1С СКД, сейчас расскажу.

Сначала создадим новый отчет и зайдем в систему компоновки данных. Напишем простенький запрос с параметрами, задающими период. Например, выведем остатки и обороты за какой-то промежуток времени:

РегистрНакопления.СвободныеОстатки.Обороты(&ДатаНачала, &ДатаОкончания, Регистратор, ) КАК СвободныеОстаткиОбороты

Получите 267 видеоуроков по 1С бесплатно:

Теперь займемся параметрами. Кроме стандартных НачалоПериода и КонецПериода, которые мы указали в запросе, добавим еще параметр «СтандартныйПериод» и присвоим ему тип «СтандартныйПериод». А в колонке «Выражение» для параметров НачалоПериода и КонецПериода пропишем следующие выражения:

Не забудем установить флажки «Ограничение доступа» у первых двух параметров. Должна получиться такая картина:

Теперь зайдем в закладку «Настройки» и для параметра «СтандартныйПериод» сделаем следующее:

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

Следует заметить, что при выборе стандартного периода конечная дата всегда будет 23:59:59 (включая последнюю секунду).

Скачать получившийся отчет для 1С Управление торговлей 11.2 можно по ссылке.

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

При работе с отчетами в программах 1С первое, что мы задаем, создавая их – тот период, за который мы хотим получить какие-либо, интересующие нас данные. При этом большинство из форм отчетности в программах, созданных на платформе «1С:Предприятие», строятся через «Систему компоновки данных» (СКД). Благодаря данному механизму, мы можем создать возможность установки стандартного временного периода в любых отчетах. Т.е., зайдя туда, пользователь не просто «руками» должен будет заполнить начало и окончание периода, а сможет воспользоваться возможностью выбора и указать из предустановленных: День, Неделя, Декада, Квартал, Год. Для этого в параметрах отчета надо поставить параметр «СтандартныйПериод».

Читайте также:  Модель персонажа для unreal engine 4

Рассмотрим, как реализовать это на практике и как используется этот механизм в 1С.

Откроем конфигурацию и рассмотрим свойства отчета. Перейдем в «Макеты», где мы увидим раздел для установки параметров «Схемы компоновки данных».


Перейдем на закладку «Параметры». НачалоПериода/КонецПериода – стандартные записи (и к ним добавляется еще один – «Период», с типом «СтандартныйПериод»). В колонке «Выражение» для них укажем выражения: &Период.ДатаНачала и &Период.ДатаОкончания, соответственно, и установим галочки – «Ограничение доступности».


Перейдем в «Настройки», включим галочку «Отображать недоступные параметры» и откроем пользовательские настройки для нашего нового параметра – «Период». В открывшемся окне устанавливаем галочку «Включать в пользовательские настройки».


Обновив данные в конфигурации, переходим в пользовательский режим. Период выбираем из стандартных вариантов.


В новых версиях 1С практически все отчеты уже реализованы с таким вариантом выбора периода. Откроем любой отчет и посмотрим. К примеру, «Универсальный отчет», «Анализ взносов в фонды».



Мы видим, что в отчетах реализовано использование стандартного периода. Администратор-разработчик, используя механизм СКД «Стандартный период», способен оптимизировать работу пользователя с отчетами, упрощая и ускоряя ее. Кажется, что установка даты начала и окончания периода и выбор периода не отнимает много времени. Но если говорить о сотнях отчетов – небольшая настройка приведет к серьезному упрощению работы с формами в программе и повысит общую эффективность работы пользователя.

Расскажу о том, как я реализую выбор периода в отчетах на системе компоновке данных (СКД) — периоды требуется указывать не с точностью до секунды, а с точностью до дня.

Допустим, у нас есть макет СКД, со следующим запросом набора данных:

РегистрСведений.Валюты КАК КурсыВалют

КурсыВалют.Период МЕЖДУ &ДатаНачала И &ДатаОкончания

Конечно можно было бы указать в описании параметра данных тип параметра «Дата» — состава даты «Дата», а в запросе использовать

Читайте также:  Бонусные баллы деливери клаб

КурсыВалют.Период МЕЖДУ НачалоПериода(&ДатаНачала, ДЕНЬ) И КонецПериода(&ДатаОкончания, ДЕНЬ)

Но я пользуюсь следующей схемой:

Добавляю новый параметр «Период» тип «Стандартный период». Для параметров «ДатаНачала» и «ДатаОкончания» указываю значения &Период.ДатаНачала &Период.ДатаОкончания, и ограничиваю их вывод .

Теперь можно вывести выбор периода на форму.

Добавим Табличное поле, укажим данные КомпоновщикНастроек.Настройки.ПараметрыДанных

В итоге пользователь увидит:

УправляемаяФорма (не забудем указать форму основной на закладке «Дополнительные»)

Перенесем из поля реквизитов в лево реквизит отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных

Рекомендуем к прочтению

Добавить комментарий

Ваш адрес email не будет опубликован.