Имя: Пароль:
1C
1С v8
Почему-то не работает отбор?
,
0 байт
 
27.07.12
10:33
Добрый день, коллеги, не могу понять что не так не работает этот отбор


   Позиция = ЭлементыФормы.ТаблицаЦен.ТекущаяСтрока.Номенклатура;
   ФормаВыбора = Справочники.ХарактеристикиНоменклатуры.ПолучитьФормуВыбора();
   ФормаВыбора.Отбор.Владелец.Значение = Позиция;
   ФормаВыбора.Отбор.Владелец.Использование = Истина;
   ФормаВыбора.Отбор.Владелец.ВидСравнения = ВидСравнения.Равно;
   ФормаВыбора.Открыть();
?
1 байт
 
27.07.12
10:35
ошибок никаких не выдает.
2 John83
 
27.07.12
10:36
попробуй сначала открыть, а потом уже задать отбор
3 Maxus43
 
27.07.12
10:37
в ФормаВыбора при открытии смотри, там сбрасывается наверно
4 0_Serg_0
 
27.07.12
10:37
что в Позиция попадает?
что в отборе получается?
5 butterbean
 
27.07.12
10:37
надо наверно  ФормаВыбора.СправочникСписок.Отбор....
6 Reset
 
27.07.12
10:38
ФормаВыбора.СправочникСписок.Отбор.Владелец.Значение = Позиция;
7 байт
 
27.07.12
10:39
(5) пишет ошибку : Поле объекта не обнаружено (СправочникСписок)
8 Maxus43
 
27.07.12
10:40
(7) называться может по другому, надо там смотреть
9 butterbean
 
27.07.12
10:40
а вообще надо ФормаВыбора.ПараметрОтборПоВладельцу = Позиция и все
10 Maxus43
 
27.07.12
10:40
а вобще - форма выбора характеристик не просто форма списка, надо там смотреть жеж
11 Reset
 
27.07.12
10:40
(7) Замени на имя табличного поля, как оно названо на форме выбора
12 байт
 
27.07.12
10:42
(8) ааа вот куда попадает


Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
   
   Если РежимВыбора И НЕ ЗначениеЗаполнено(ПараметрВыборПоВладельцу) Тогда
       ФормаВыбораВладельца = Справочники.Номенклатура.ПолучитьФормуВыбора();
       ФормаВыбораВладельца.Заголовок = "Выберите элемент справочника Номенклатура, Характеристики которого Вы хотите выбирать.";
       ПараметрВыборПоВладельцу = ФормаВыбораВладельца.ОткрытьМодально();
   КонецЕсли;
   
   Если ЗначениеЗаполнено(ПараметрВыборПоВладельцу) И НЕ ПараметрВыборПоВладельцу.ЭтоГруппа Тогда
       Если НЕ ПараметрВыборПоВладельцу.ВестиУчетПоХарактеристикам Тогда
           Если НЕ ПараметрВыборПоВладельцу.ВестиУчетПоХарактеристикам Тогда
               Предупреждение("Для номенклатуры """ + ПараметрВыборПоВладельцу + """ не ведется учет по характеристикам!");
               Отказ = Истина;
           КонецЕсли;
       КонецЕсли;
   Иначе
       Предупреждение("Не выбрана номенклатура!");
       Отказ = Истина;
   КонецЕсли;

КонецПроцедуры
13 байт
 
27.07.12
10:43
ФормаВыбораВладельца = Справочники.Номенклатура.ПолучитьФормуВыбора();
14 Reset
 
27.07.12
10:44
в (9) вернее всего
15 байт
 
27.07.12
10:46
(9) пробую
16 байт
 
27.07.12
10:48
всем спасибо вот так работает:


ФормаВыбора.ПараметрВыборПоВладельцу  = Позиция;
17 байт
 
27.07.12
10:49
СтандартнаяОбработка = Ложь;
   Позиция = ЭлементыФормы.ТаблицаЦен.ТекущаяСтрока.Номенклатура;
   ФормаВыбора = Справочники.ХарактеристикиНоменклатуры.ПолучитьФормуВыбора();
   ФормаВыбора.ПараметрВыборПоВладельцу  = Позиция;
   ФормаВыбора.Открыть();
18 байт
 
27.07.12
10:50
(9) спасибо
19 байт
 
27.07.12
12:10
только теперь почему-то не вызывается ОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)?
20 байт
 
27.07.12
12:35
Окончательный вариант)))


   СтандартнаяОбработка = Ложь;
   Позиция = ЭлементыФормы.ТаблицаЦен.ТекущаяСтрока.Номенклатура;
   ФормаВыбора = Справочники.ХарактеристикиНоменклатуры.ПолучитьФормуВыбора(,Элемент,);
   ФормаВыбора.ПараметрВыборПоВладельцу  = Позиция;
   ФормаВыбора.Открыть();
AdBlock убивает бесплатный контент. 1Сергей