Имя: Пароль:
1C
1С v8
УФ Форма Выбора справочника
0 chepsoid
 
10.01.14
12:28
пытаюсь открыть справочник с установленным в отборе Родителем, а он открывается пустой, стоит только снять отбор вручную и вывести иерархию дерева по этому родителю, и поставить обратно отбор все ок. че за ...ня
1 chepsoid
 
10.01.14
12:28
код
2 chepsoid
 
10.01.14
12:29
ПараметрыОтбора.Вставить("ЛевоеЗначение", "Родитель");    
    ПараметрыОтбора.Вставить("ВидСравнения", ВидСравненияКомпоновкиДанных.Равно);    
    ПараметрыОтбора.Вставить("ПравоеЗначение", Объект.МестоХранения);    
    ПараметрыОтбора.Вставить("Использование", Истина);
3 chepsoid
 
10.01.14
12:29
ОткрытьФорму("Справочник.аДокументооборотМестаХраненияДокументов.ФормаВыбора", ПараметрыФормы, Элементы.НоменклатураДел);
4 Wobland
 
10.01.14
12:30
5 chepsoid
 
10.01.14
12:31
Элементы.Список.Отображение=ОтображениеТаблицы.ИерархическийСписок;
        //Элементы.Список.ТекущаяСтрока  = Параметры.мПараметрыОтбора.ПравоеЗначение;
        // Разворот текущей строки в дереве:
        //Строка = Элементы.Список.ТекущаяСтрока ;//Элементы.ТабличноеПоле.ТекущаяСтрока;
        //Элементы.ТабличноеПоле.Развернуть(Строка, Истина);
        //Элементы.Список.АвтоОбновление = Истина;
        //Элементы.Список.ВосстанавливатьТекущуюСтроку = Истина;
        //Элементы.Список.Развернуть(Параметры.мПараметрыОтбора.ПравоеЗначение,ИСТИНА);
        
        //Список.Отбор.Элементы.Очистить();
        ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));  
        ЭлементОтбора.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных(Параметры.мПараметрыОтбора.ЛевоеЗначение);
        ЭлементОтбора.ВидСравнения   = Параметры.мПараметрыОтбора.ВидСравнения;
        ЭлементОтбора.Использование  = Параметры.мПараметрыОтбора.Использование;
        ЭлементОтбора.ПравоеЗначение = Параметры.мПараметрыОтбора.ПравоеЗначение;
6 Rounder
 
10.01.14
12:33
(5) Возможно проблема в режиме отображения списка.
Сформируй программно отбор и открой форму - а затем поменяй режим отображения на "Список" - останется пустым?
7 chepsoid
 
10.01.14
12:34
(6) да остается пустым, пока не развернешь по родителю пусто
8 Wobland
 
10.01.14
12:34
а что такое ПараметрыФормы?
9 chepsoid
 
10.01.14
12:36
ПараметрыОтбора = Новый Структура;
    ПараметрыФормы = Новый Структура;
    
    ПараметрыОтбора.Вставить("ЛевоеЗначение", "Родитель");    
    ПараметрыОтбора.Вставить("ВидСравнения", ВидСравненияКомпоновкиДанных.Равно);    
    ПараметрыОтбора.Вставить("ПравоеЗначение", Объект.МестоХранения);    
    ПараметрыОтбора.Вставить("Использование", Истина);    
    
    ПараметрыФормы=Новый Структура("ЗакрыватьПриВыборе, ВыборГруппИЭлементов, РежимВыбора, РазрешитьВыборКорня,мПараметрыОтбора", Истина, Истина, Истина, Истина, ПараметрыОтбора);
    ОткрытьФорму("Справочник.аДокументооборотМестаХраненияДокументов.ФормаВыбора", ПараметрыФормы, Элементы.НоменклатураДел);
10 Wobland
 
10.01.14
12:37
а где про отбор?
11 Wobland
 
10.01.14
12:38
короче, я не хочу кусками читать
12 chepsoid
 
10.01.14
12:38
это документ, а вот сам справочник
13 chepsoid
 
10.01.14
12:38
Элементы.Список.РежимВыбора=ЭтаФорма.Параметры.РежимВыбора;
    
    
    Если Параметры.Свойство("мПараметрыОтбора") Тогда
                        
        Элементы.Список.Отображение=ОтображениеТаблицы.ИерархическийСписок;
            
        Список.Отбор.Элементы.Очистить();
        ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));  
        ЭлементОтбора.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных(Параметры.мПараметрыОтбора.ЛевоеЗначение);
        ЭлементОтбора.ВидСравнения   = Параметры.мПараметрыОтбора.ВидСравнения;
        ЭлементОтбора.Использование  = Параметры.мПараметрыОтбора.Использование;
        ЭлементОтбора.ПравоеЗначение = Параметры.мПараметрыОтбора.ПравоеЗначение;
        
                
    КонецЕсли;
14 chepsoid
 
10.01.14
12:39
отбор встает так все работает, отображение странное какое то, пока список не раскроешь не работает отбор
15 chepsoid
 
10.01.14
12:41
кстати хотел сделать список что бы был раскрытый иерархический тоже не хочет, с УФ редко работаю но метко бл...
16 chepsoid
 
10.01.14
12:42
кто делал, подобное, в чем там подвох(оповестить о выборе, открыть модально) остается гадать
17 Rounder
 
10.01.14
12:44
(15) Я делал - но проблема была именно в настройках динамического списка - а именно режима его отображения. При режиме отображения "Список" - отборы отображались корректно.
18 chepsoid
 
10.01.14
12:49
(17) это    Элементы.Список.Отображение=ОтображениеТаблицы.Список;
19 chepsoid
 
10.01.14
12:51
не поменялось
20 Rounder
 
10.01.14
12:58
(19) Может намудрено с отборами?
Если отбор на Равно - тогда можно проще задавать:

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