Меню

1с объект настройка периода

Особенности работы с объектом НастройкаПериода

В данном разделе рассмотрены особенности работы с объектом НастройкаПериода . Рассматриваются как работа объекта в табличных полях, отображающих «хронологические» динамические списки (свойство СтандартныйПериод), так и использование этого объекта для предоставления пользователю возможности, например, задавать интервал отчета, период за который нужно обработать данные и т.д.

Диалог Настройка периода

По умолчанию диалог Настройка периода имеет две закладки, которые позволяют выставлять промежуток времени в двух режимах, с использованием разных подходов. Диалог вызывается по команде «Установить интервал дат» в табличном поле или при вызове метода Редактировать() объекта НастройкаПериода .

Закладка «Интервал» дает возможность установить отдельно начало и окончание временного промежутка, причем в привязке к рабочему периоду. Например, задавая интервал «с начала недели по конец месяца», пользователь задает промежуток времени, который определяется по рабочей дате. Т.е. задавая один и тот же интервал в разные дни, пользователь задает разные результирующие интервалы, в общем случае, разной протяженности. Этот подход удобен для динамических списков и отчетов имеющих оперативный характер (текущие продажи, текущие расчеты с контрагентами и т.п.).

Закладка «Период» дает возможность установить размер периода (месяц, квартал, год) и привязать его к той или иной точке времени, в том числе к рабочей дате. Например, Февраль 2003, 1-ый квартал 2004, текущий, т.е. соответствующий текущей дате, квартал. Этот подход более удобен для анализа финансовых показателей прошлого или текущего периода. Например, когда рабочая дата уже Апрель 2004 года, некоторое время еще важно анализировать и корректировать данные первого квартала 2004 года.

На обеих закладках есть возможность установить произвольный период — любые дату начала и окончания периода.

В связи с тем, что интервалы времени на разных закладках задаются по-разному, не всегда можно однозначно отразить период заданный на одной закладке в терминах другой закладки. Например, если в 31-го марта 2004 года задать на закладке «Интервал» промежуток «с начала года по конец месяца» (т.е. промежуток с 01.01.2004 по 31.03.2004), то в терминах закладки «Период» это можно воспринять как «текущий месяц с начала года», «текущий квартал», «текущая дата с начала квартала» и «текущая дата с начала года». С такой неоднозначностью может быть связано то, что простое переключение между закладками приведет к тому, что не изменившись по сути на текущий момент времени, период будет задан уже другим способом.

Использование в динамических списках

Ряд списков динамического просмотра данных содержат такие предопределенные поля, как Дата или Период. В табличных полях таких динамических списков, помимо обычной установки отбора через диалог «Отбор и сортировка», существует стандартная команда «Установить интервал дат». Эта команда дает возможность пользователю не только задать произвольный диапазон просмотра данных, но и задать стандартные интервалы в более удобных терминах — неделя, месяц, квартал, год, а также задать период в привязке к текущей дате.

Читайте также:  настройка модема tp link 8817 megaline

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

Дело в том, что диалог «Настройка периода» подразумевает установку интервала в терминах дат без указания времени. Это более понятно и более удобно для пользователя, но приводит к некоторым особенностям. Например, дата начала интервала, заданная через настройку периода, соответствует началу заданного дня (нулевой секунде), а дата окончания интервала — концу заданного дня (время — 23:59:59). Это приводит к тому, что если за счет интерактивных действий пользователя или при использовании встроенного языка для элемента отбора по дате установлено ЗначениеС с ненулевым временем или ЗначениеПо с временем не равным 23:59:59, то диалог «Настройка периода» при открытии отразит эту ситуацию как невыбранную границу начала и конца интервала. Если при этом просто нажать Ok , будет выдано сообщение о невозможности установить такой интервал дат. Т.е. пользователю нужно будет определиться — устанавливать ли интервал на «целые» дни или отказаться от установки периода. Желание устанавливать отбор более точно, чем «днями», может возникнуть при интенсивном документообороте, когда нужно, например, проанализировать документы первой половины дня. В таком случае использование в динамических списках диалога «Отбор и сортировка» неизбежно.

Особенностью диалога «Настройка периода», появляющегося в динамических списках, является также то, что в диалоге имеется флажок «Использовать эту настройку периода при открытии». Установка этого флажка приводит к тому, что при нажатии OK настройка периода будет сохранена для текущего списка и использована при следующем открытии формы.

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

Очень часто для получения отчета в бизнес-приложениях необходимо задавать интервал, за который формируется отчет. Для этого в соответствующей форме, в которой проводится настройка такого отчета, можно использовать объект НастройкаПериода. Как правило, при этом в форме размещают два поля ввода для даты начала и конца периода формирования отчета, а также копку по которой вызывается метод Редактировать() объекта НастройкаПериода.

При работе с этим объектом в случае, когда в элементах управления формы используются даты с квалификатором типа Дата (без времени), следует учитывать следующие особенности.

Читайте также:  настройка датчика движения легранд для включения света

  1. Для того чтобы использовать третий параметр метода УстановитьПериод() (т.е. параметр «Предпочтительно использовать рабочий период»), необходимо запомнить в каком режиме пользователь настроил период — с привязкой к рабочему периоду (например, текущий месяц) или как абсолютный период (например, Апрель 2004). Привязка настройки к рабочему периоду происходит неявно, когда пользователь использует закладку Интервал, или явно — при установке флажка «Рабочий период» на закладке «Период». И в том и в другом случае привязка к рабочему периоду приводит к тому, что свойство ЗначениеПериода получает значение даты «начала отсчета» ( ‘ 00010101 ‘ ). Таким образом, для определения того, что использована привязка к рабочему периоду, достаточно сравнить ЗначениеПериода и ‘ 00010101 ‘ .
  2. При установке периода (метод УстановитьПериод()) необходимо приводить дату окончания к концу дня, но только в том случае, если в качестве даты окончания не задана дата начала отсчета. Эта особенность связана с тем, что дата начала отсчета ‘ 00010101 0:00:00 ‘ воспринимается объектом НастройкаПериода особым образом. Если ее задать в качестве даты окончания, это будет означать, что ограничение не установлено. Но дата ‘ 00010101 23:59:59 ‘ , как, впрочем, любая дата с ненулевым временем, уже не является «датой начала отсчета».
  3. Для сохранения заданной пользователем настройки периода между сеансами работы формы можно использовать способность объекта НастройкаПериода сохраняться и восстанавливаться (например, при помощи функций глобального контекста СохранитьЗначение, ВосстановитьЗначение).

Эти особенности проиллюстрированы в демонстрационной конфигурации «Примеры ИТС» на примере формы обработки ПримерИнтернетПочты (закладка формы «Отчет по контрагенту»).

В том случае, если в элементах управления формы используются даты с квалификатором «Дата + Время», пользователь должен быть подготовлен к тому, что он столкнется с поведением, похожим на описанное выше.

источник

1С 8.x : Форма

Работа со стандартным периодом

Похожие FAQ

Еще в этой же категории

Заполнение списка значений в элементе поле выбора на форме 10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Поле выбора

Как ограничить список выбора? 7
Ограничим список элементов, установив отбор в открываемой форме //Пример 1 Процедура СтатьяПДРНачалоВыбора(Элемент, СтандартнаяОбработка) ФормаВыбора = Справочники.ПрочиеДоходыИРасходы.ПолучитьФормуВыбора(, Элемент); ЭлементОтбораВидПДР = Форма Форма

Программное создание таблицы значений с условным оформлением 7
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Форма

Как активизировать, перевести фокус на необходимый элемент на форме? 6
//Текущему Элементу формы присваиваем элемент котровый необходимо активизировать ЭтаФорма.ТекущийЭлемент = ЭлементыФормы.ТабличноеПоле; Форма

Программное добавление элементов на форму 6
ЭлементыФормы (Controls) . Добавить (Add) — Добавляет элемент управления на форму. Синтаксис: Добавить( Тип , Имя , Видимость , ПоместитьНа ) Параметры: Тип (обязательный) Тип: Тип. Тип добавляемого элемента управления: Индикатор; П Посмотреть все в категории Работа с Формой (Диалог) и её элементами

источник

1С 8. Настройка параметра — период в системе компоновки данных. Удобство пользователю.

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

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

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

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

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

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

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

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

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

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

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

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

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

источник

Управляемые формы, кнопка выбора периода

Пример из Конфигурации БП 3.0:
1. Добавить в Перечисления «ДоступныеПериодыОтчета»
Значения:
День
Неделя
Декада
Месяц
Квартал
Полугодие
Год
ПроизвольныйПериод

2. Добавить реквизит в «Отчет»:
— «НачалоПериода» (Дата)
— «КонецПериода» (Дата)

3. Добавить в реквизит формы:
— «ВидПериода» (ПеречислениеСсылка.ДоступныеПериодыОтчета)
— «Период» (Строка)

3. На форме добавить:
— «ВидПериода» поле ввода путь к данным «ВидПериода»
— «НачалоПериода» поле ввода путь к данным «Отчет.НачалоПериода»
— «КонецПериода» поле ввода путь к данным «Отчет.КонецПериода»
— «Период» поле ввода путь к данным «Период»

Ionmuerto, ты бы еще привел общий модуль из какой нибудь типовой конфигурации.
Ты предлагаешь всю эту портянку читать?
Я могу привести сюда несколько портянок, которые так или иначе касаются данного вопроса.
Из разных конфигураций, типовых.
В разном исполнении, разными авторами писанные.
Все они обыгрывают данный вопрос в различном исполнении.

Если маленький мальчик, в пустыне, задаст тебе вопрос: «Дядя, как мне попить?»
Ты же не будешь читать ему лекцию о способах промышленного опреснения соленой воды.

Просто найди ему воду и дай попить, ведь он смотрит умоляющими детскими глазами!

здесь так-же. никому твои портянки не интересны.
Сюда заходят люди, которые ищут КОРОТКИЙ ЛАКОНИЧНЫЙ ответ на конкретный вопрос.

А ты им про то как БОЛЬШИЕ КОРАБЛИ БОРОЗДЯТ ПРОСТОРЫ большого театра!

источник