|
Программно установить период | ☑ | ||
---|---|---|---|---|
0
Darkvaneker
26.09.23
✎
10:23
|
Здравствуйте, в УФ есть стандартный отбор по периоду по кнопке "еще - установить период", как этот период можно задать при программном открытии формы? версия 8.3
На обычных формах это без проблем задавал и тут есть варианты сделать через "ФиксированныеНастройки" или "Список.КомпоновщикНастроек.Настройки.Отбор" но оба эти отбора не попадают в стандартный период, а накладываются дополнительно. |
|||
1
Мимохожий Однако
26.09.23
✎
10:59
|
Расшифруй "накладываются дополнительно"
|
|||
2
Darkvaneker
26.09.23
✎
11:13
|
Настройки помещаются в отборы формы к примеру "дата больше 01.01.2023" а если нажать еще - установить период он пустой и если к примеру задать к примеру 01.12.2022 по 31.12.2022 то в результате не выйдет ничего.
ФиксированныеНастройки и вовсе нигде не отображаются, но работают также. А хочется, чтоб это настройка попала в стандартный период и пользователь стандартными средствами мог поменять отображаемый период. |
|||
3
Darkvaneker
26.09.23
✎
11:17
|
Наконец удалось это сделать.
Если кому будет нужно: ПараметрыФормыОтбора = Новый Структура(); ПараметрыФормыОтбора.Вставить("Отбор", ОтборЗначения); ПараметрыФормыОтбора.Вставить("ЗакрыватьПриВыборе", Ложь); ПараметрыФормыОтбора.Вставить("РежимВыбора", Истина); ПараметрыФормыОтбора.Вставить("ФиксированныеНастройки", НастройкиКомпоновки); ////работает, но пользователь не видет и не может изменить формаВыбора = ПолучитьФорму("Документ.СтраховойПолис.ФормаВыбора", ПараметрыФормыОтбора, Элементы.СтраховыеПолиса); формаВыбора.Элементы.Список.Период.ДатаНачала = объект.ПериодНачала; формаВыбора.Элементы.Список.Период.ДатаОкончания = КонецДня(Объект.ПериодКонец); формаВыбора.Открыть(); |
|||
4
Darkvaneker
26.09.23
✎
11:18
|
Не уверен что это самый правильный способ, но рабочий и единственный, который смог найти я
|
|||
5
pinkycat
26.09.23
✎
11:44
|
ДАТА МЕЖДУ
|
|||
6
Darkvaneker
26.09.23
✎
11:50
|
(5) можно подробнее?
|
|||
7
pinkycat
26.09.23
✎
12:52
|
(6)
Запрос = Новый Запрос( "ВЫБРАТЬ | Ссылка, | ДОБАВИТЬКДАТЕ(Дата, Квартал, 1) КАК ПлюсКвартал, | РАЗНОСТЬДАТ(Дата, &ВыбДата, Месяц) КАК РазностьВМесяцах, | КВАРТАЛ(Дата) КАК Квартал, | МЕСЯЦ(Дата) КАК Месяц, | ДЕНЬ(Дата) КАК День |ИЗ | Документ.ПродажаЕды |ГДЕ | Дата МЕЖДУ | НАЧАЛОПЕРИОДА(&НачалоПериода) И | КОНЕЦПЕРИОДА(&КонецПериода)" ); Запрос.УстановитьПараметр("НачалоПериода",НачалоПериода); Запрос.УстановитьПараметр("КонецПериода",КонецПериода); как то так чоле |
|||
8
Darkvaneker
26.09.23
✎
13:04
|
(7) ну во первых пользователь это явно не сможет редактировать, а во вторых изменить запрос при получении управляемой формы еще сложнее, чем вариант выше.
|
|||
9
sitex
naïve
26.09.23
✎
16:12
|
(8) Имеешь ввиду выше списке отбор Периода не показывает ?!
|
|||
10
azernot
26.09.23
✎
16:45
|
(4) Нормально всё.
Расширение таблицы формы для динамического списка (Form table extension for dynamic list) Период (Period) Использование: Чтение и запись. Описание: Тип: СтандартныйПериод. Содержит период, используемый при отображении данных в динамическом списке. Разве что, лучше период передавать параметрами, а в форме списка/выбора при создании ловить и устанавливать. |
|||
11
sitex
naïve
26.09.23
✎
18:37
|
ПараметрыФормы = Новый Структура;
КлючУникальности = Новый УникальныйИдентификатор; ФормаВыбора= ПолучитьФорму("Документ.ЗаказКлиента.Форма.ФормаВыбора",ПараметрыФормы,Этаформа,КлючУникальности); ПериодСтандартный = новый СтандартныйПериод; ПериодСтандартный.ДатаНачала = НачалоМесяца(ТекущаяДата()); ПериодСтандартный.ДатаОкончания = КонецДня(ТекущаяДата()); //_Форма = ОткрытьФОрму("Документ.ЗаказКлиента.Форма.ФормаВыбора",ПараметрыФормы,Этаформа,КлючУникальности,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); ЗаполнитьЗначенияСвойств(ФормаВыбора.ТекущийЭлемент.Период,ПериодСтандартный); ЗаполнитьЗначенияСвойств(ФормаВыбора.Элементы.Список.Период,ПериодСтандартный); ФормаВыбора.Открыть(); ФормаВыбора.Элементы.Список.Обновить(); |
|||
12
sitex
naïve
26.09.23
✎
18:39
|
ПараметрыФормы = Новый Структура;
КлючУникальности = Новый УникальныйИдентификатор; ПериодСтандартный = новый СтандартныйПериод; ПериодСтандартный.ДатаНачала = НачалоМесяца(ТекущаяДата()); ПериодСтандартный.ДатаОкончания = КонецДня(ТекущаяДата()); _Форма = ОткрытьФОрму("Документ.ЗаказКлиента.Форма.ФормаВыбора",ПараметрыФормы,Этаформа,КлючУникальности,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); ЗаполнитьЗначенияСвойств(_Форма.ТекущийЭлемент.Период,ПериодСтандартный); ЗаполнитьЗначенияСвойств(_Форма.Элементы.Список.Период,ПериодСтандартный); _Форма.Элементы.Список.Обновить(); |
|||
13
sitex
naïve
26.09.23
✎
18:40
|
Выбере вариант который тебе нравиться
|
|||
14
Darkvaneker
27.09.23
✎
07:54
|
(12) спасибо, так примерно и сделал в итоге.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |