Скд параметры стандартный период

Использование дат

Для многих отчетов необходимо дать возможность пользователю указывать период, за который необходимо получить отчет. Часто данные периоды требуется указывать не с точностью до секунды, а с точностью до дня. Для того чтобы пользователь имел возможность ввести в параметрах данных дату без времени, достаточно указать в описании параметра данных тип параметра Дата с указанием состава даты "Дата".

После этого пользователь сможет вводить в параметры данных только значения дат, без времени.

Для того чтобы введенные значения интерпретировалось в отчете как начало и конец дня следует в запросе использовать функции НачалоПериода() и КонецПериода() .

ВЫБРАТЬ
ПродажиОбороты.Контрагент,
ПродажиОбороты.Номенклатура,
ПродажиОбороты.КоличествоОборот,
ПродажиОбороты.СуммаОборот
ИЗ
РегистрНакопления.Продажи.Обороты(
<(НАЧАЛОПЕРИОДА(&ПериодНачало, ДЕНЬ))>,
<(КОНЕЦПЕРИОДА(&ПериодКонец, ДЕНЬ))>, , ) КАК ПродажиОбороты

В данном примере в качестве значений параметров виртуальной таблицы будут передаваться начало и конец дней, выбранных пользователем.

Использование стандартных периодов

Система компоновки данных позволяет использовать стандартные периоды для указания периода отчета.

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

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

Пользователь будет редактировать параметр в следующем виде:

Для показанного примера в качестве значения параметра ПериодНачала будет использоваться дата 01.01.2019 , а в качестве значения параметра ПериодКонец будет использоваться дата 31.01.2019 .

Реальные значения дат для стандартного периода определяются при исполнении отчета. Таким образом, если выполнять отчет с установленным периодом Этот месяц в январе 2020-го года, то отчет будет исполняться с 01.01.2020 по 31.01.2020 , а если выполнять в феврале 2020-го года, то с 01.02.2020 по 29.02.2020

Читайте также  Расшифровка кода ошибки синего экрана

Заметим, что даты начала и конца стандартного периода также содержат и время. Причем, начальная дата имеет время 00:00:00 , а конечная дата 23:59:59 , таким образом, в запросе не обязательно использовать функции НАЧАЛОПЕРИОДА и КОНЕЦПЕРИОДА .

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

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

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

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

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

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

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

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

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

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

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

Читайте также  Сайты музыки с прослушкой

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

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

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

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

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


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


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


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

Читайте также  Смарт приставка для телевизора dns


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



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

Ссылка на основную публикацию
Adblock detector