Имя: Пароль:
1C
1С v8
Отбор в открываемой форма УП
0 Grivba
 
13.12.14
16:18
День добрый.
В ТЧ документа при выборе ЕдИзм должна открываться форма выбора.
&НаКлиенте
Процедура ТабличнаяЧастьНоменклатурыЕдИзмНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    Стр = Элементы.ТабличнаяЧастьНоменклатуры.ТекущиеДанные;
    Список = Новый СписокЗначений;
    Список = ОпределитьОтбор(Стр.Номенклатура);
    
    ФормаВыбора = ПолучитьФорму("Справочник.ЕдиницаИзмерения.ФормаВыбора",,Элемент);
    Отбор = ФормаВыбора.Список.Отбор.Элементы.Добавить (Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
    Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных ("Наименование");
    Отбор.Использование = Истина;
    Отбор.ПравоеЗначение = Список;
    ФормаВыбора.Открыть();
КонецПроцедуры


Все вроде-бы открывается и настройки отбора устанавливаются, но.... Они добавляются, что бы они сработали нужно завйти в настройки списка и нажать ОК!
Подскажите в чем трабл???
1 qwerty
 
13.12.14
16:45
Решения, которые работали на обычных формах не будут работать на УФ. Используй ПараметрыВыбора, отбор устанавливай в форме выбора ед. изм.
2 Grivba
 
13.12.14
19:51
Т.Е.

ФормаВыбора = ОткрытьФорму ("Справочник.ЕдиницаИзмерения.ФормаВыбора",ПараметрыВыбора,Элемент);

Так?
3 Grivba
 
13.12.14
20:49
Решил проблему!!!

&НаКлиенте
Процедура ТабличнаяЧастьНоменклатурыЕдИзмНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    Стр = Элементы.ТабличнаяЧастьНоменклатуры.ТекущиеДанные;
    Список = Новый СписокЗначений;
    Список = ОпределитьКоэффициент.ОпределитьОтбор(Стр.Номенклатура);
    ДанныеВыбора = Список;
    СтандартнаяОбработка = Ложь;    

    КонецПроцедуры


Все ОЧЕНЬ просто... Не мог сообразить 2 дня
4 ДенисЧ
 
13.12.14
21:00
Генитально...
За исключением того, что ОпределитьОтбор - не функция платформы....
5 DCKiller
 
13.12.14
21:29
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.