|
Открыть форму списка РС с отбором по периоду | ☑ | ||
---|---|---|---|---|
0
егаис
11.04.22
✎
09:54
|
Коллеги, нужна помощь.
На форме обработки есть поле отбора с типом СтандартныйПериод Есть РС с измерением Дата. В обработке, для выбора, открываем форму списка РС. Каким образом можно передать в структуру отбора условие, что дата в РС должна быть внутри СтандратногПериода? |
|||
1
lEvGl
гуру
11.04.22
✎
10:03
|
ну как, РегистрСведенийСписок.Отбор.Дата.Установить
так? |
|||
2
егаис
11.04.22
✎
10:05
|
хм, стандартный период = интервал
|
|||
3
егаис
11.04.22
✎
10:06
|
имхо, только в форме списка РС присоздании устанавливать отбор, так получается?
|
|||
4
youalex
11.04.22
✎
10:56
|
В принципе можно через ПолучитьФорму() менять ее контекст
|
|||
5
dreizehn
11.04.22
✎
11:01
|
(0) ОФ/УФ?
|
|||
6
lEvGl
гуру
11.04.22
✎
11:23
|
(2) получить из стандартного периода дату видимо, думаю это возможно
(5) ну раз "присоздании", значит уф |
|||
7
dreizehn
11.04.22
✎
11:31
|
(6) > значит уф
Указать при открытии формы параметр ФиксированныеНастройки. |
|||
8
егаис
11.04.22
✎
12:46
|
все штатно, спасибо за участие
&НаКлиенте Процедура ОтборСделки(Команда) ФормаРегистра = ПолучитьФорму("РегистрСведений.МежфирменныеРеализации.ФормаСписка"); ФормаРегистра.Список.Отбор.Элементы.Очистить(); Если НЕ ОтчетКонечныйЗаказчик.Пустая() Тогда ЭлементОтбораСотрудник = ФормаРегистра.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораСотрудник.ЛевоеЗначение = ФормаРегистра.Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Заказчик").Поле; ЭлементОтбораСотрудник.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбораСотрудник.Использование = Истина; ЭлементОтбораСотрудник.ПравоеЗначение = ОтчетКонечныйЗаказчик; КонецЕсли; Если НЕ ОтчетПериод.ДатаНачала = Дата(1,1,1) Тогда ЭлементОтбораДатаС = ФормаРегистра.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораДатаС.ЛевоеЗначение = ФормаРегистра.Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Период").Поле; ЭлементОтбораДатаС.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно; ЭлементОтбораДатаС.Использование = Истина; ЭлементОтбораДатаС.ПравоеЗначение = НачалоДня(ОтчетПериод.ДатаНачала); КонецЕсли; Если НЕ ОтчетПериод.ДатаОкончания = Дата(1,1,1) Тогда ЭлементОтбораДатаПо = ФормаРегистра.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораДатаПо.ЛевоеЗначение = ФормаРегистра.Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Период").Поле; ЭлементОтбораДатаПо.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно; ЭлементОтбораДатаПо.Использование = Истина; ЭлементОтбораДатаПо.ПравоеЗначение = КонецДня(ОтчетПериод.ДатаОкончания); КонецЕсли; ФормаРегистра.Открыть(); КонецПроцедуры |
|||
9
youalex
11.04.22
✎
13:09
|
(8)
(7) кстати, вполне годный вариант |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |