Отбор по кассе, в журнале кассовых документов. Обыч. фор. Касса получатель и по кас. отпр. 🠗 (Волшебник 09.12.2019 17:14)
☑
0
SkillUp
27.11.19
✎
17:34
Отбор по кассе, в журнале кассовых документов. Чтоб отображать документы по кассе получателя или документы по кассе отправителя (документы- "ВнутреннееПеремещениеНаличныхДенежныхСредств")
В управляемых формах делал так:
ЭлементыОтбора = Список.Отбор.Элементы;
ЭлементыОтбора.Очистить();
Группа = ЭлементыОтбора.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
Группа.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
//СкладОтправитель
ЭлементОтбора = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйПолеКомпоновкиДанных = Новый ПолеКомпоновкиДанных("СкладОтправитель");
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = НовыйПолеКомпоновкиДанных;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Склад;
//СкладПолучатель
ЭлементОтбора = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйПолеКомпоновкиДанных = Новый ПолеКомпоновкиДанных("СкладПолучатель");
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = НовыйПолеКомпоновкиДанных;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Склад;
А как в обыных формах как подобное выполнить?
1
SkillUp
27.11.19
✎
17:43
Мда, кажется все-таки прийдется подменить обычную форму журнала, на упраляемую и выставить там отбор - "ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли". Если есть "светлые" мысли, напишите...
2
SkillUp
27.11.19
✎
19:05
Может кому интересно будет:
Подменил, форму обычную на упраляемую (не забываем в настройках конфигурации, использование управляемых форм в обыном приложении разрешить)
И сам код:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ТекПользователь = ПараметрыСеанса.ТекущийПользователь;
КассаПоУмолчанию = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь, "ОсновнаяКасса");
ЭлементыОтбора = Список.Отбор.Элементы;
ЭлементыОтбора.Очистить();
Группа = ЭлементыОтбора.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
Группа.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
//Касса
ЭлементОтбора = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйПолеКомпоновкиДанных = Новый ПолеКомпоновкиДанных("Касса");
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = НовыйПолеКомпоновкиДанных;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = КассаПоУмолчанию;
//КассаПолучатель
ЭлементОтбора = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйПолеКомпоновкиДанных = Новый ПолеКомпоновкиДанных("КассаПолучатель");
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = НовыйПолеКомпоновкиДанных;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = КассаПоУмолчанию;
КонецПроцедуры
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.