Имя: Пароль:
1C
1С v8
Отбор по кассе, в журнале кассовых документов. Обыч. фор. Касса получатель и по кас. отпр.
🠗 (Волшебник 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
Может кому интересно будет:

Подменил, форму обычную на  упраляемую (не забываем в настройках конфигурации, использование управляемых форм в обыном приложении разрешить)
И сам код:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    ТекПользователь = ПараметрыСеанса.ТекущийПользователь;
    КассаПоУмолчанию = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь, "ОсновнаяКасса");
    
    ЭлементыОтбора = Список.Отбор.Элементы;
    ЭлементыОтбора.Очистить();
    Группа = ЭлементыОтбора.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
    Группа.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
    
    //Касса
    ЭлементОтбора = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    НовыйПолеКомпоновкиДанных = Новый ПолеКомпоновкиДанных("Касса");
    ЭлементОтбора.Использование  = Истина;
    ЭлементОтбора.ЛевоеЗначение  = НовыйПолеКомпоновкиДанных;
    ЭлементОтбора.ВидСравнения   = ВидСравненияКомпоновкиДанных.Равно;
    ЭлементОтбора.ПравоеЗначение = КассаПоУмолчанию;
    
    //КассаПолучатель
    ЭлементОтбора = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    НовыйПолеКомпоновкиДанных = Новый ПолеКомпоновкиДанных("КассаПолучатель");
    ЭлементОтбора.Использование  = Истина;
    ЭлементОтбора.ЛевоеЗначение  = НовыйПолеКомпоновкиДанных;
    ЭлементОтбора.ВидСравнения   = ВидСравненияКомпоновкиДанных.Равно;
    ЭлементОтбора.ПравоеЗначение = КассаПоУмолчанию;
    
КонецПроцедуры