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

&НаКлиенте
Процедура ЭтапОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
    СтандартнаяОбработка = Истина;
КонецПроцедуры
1 asmut88
 
06.03.16
11:03
Уважаемый необходимо приветствовать народ для начала))

Вот так вот решается:

&НаКлиенте
Процедура Реквизит1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    
    Объект.Реквизит1 = ОткрытьФормуМодально("Справочник.Справочник1.ФормаВыбора");
    
КонецПроцедуры

Ну и пример живой работы:
https://dropmefiles.com/6ohIr
2 breezee
 
06.03.16
11:22
(1) Прошу прощения. Большое спасибо! Может еще подскажите как присвоить значение выборки текущей строке табличной части? У меня выбор для реквизита табличной части. Сама Тч называется "Работа", реквизит "Этап"
ЗначениеОтбора = Новый Структура("Владелец", Элементы.Работы.ТекущиеДанные.Проект);
    ПараметрыФормы = Новый Структура("Отбор", ЗначениеОтбора);
    
    СтандартнаяОбработка = Ложь;
    
    Объект.Работы. = ОткрытьФормуМодально("Справочник.ЭтапыПроектов.ФормаВыбора", ПараметрыФормы); //Вот тут не знаю куда записывать данные выборки для элемента текущей строки
3 SadrArt
 
06.03.16
11:24
(1) Уважаемый, запятую надо ставить после обращения ))
И решение Ваше не оптимально, потому как возможно у ТС режим модальности запрещен.

(0) передайте третий параметр
4 breezee
 
06.03.16
11:32
Спасибо, в общем включил режим модальности и записал в текущие данные    
    Элементы.Работы.ТекущиеДанные.Этап = ОткрытьФормуМодально("Справочник.ЭтапыПроектов.ФормаВыбора", ПараметрыФормы);
5 1sanekmaloi1
 
06.03.16
12:01
Вы все серьёзно? Все уходят от модальности,  а они включают. Столько кода нагордили,  у метода открытьформу()  есть параметр ВЛАДЕЛЕЦ, передаем туда элемент и обрабатывать выбор нет необходимости.
6 breezee
 
06.03.16
12:17
(5) Передавать ЭтаФорма в качестве владельца? А потом нужно будет обработку оповещения добавить?
7 1sanekmaloi1
 
06.03.16
12:18
Я же написал, "ЭЛЕМЕНТ" владелец будет.
8 breezee
 
06.03.16
12:20
(7) А, ок, спасибо!
9 1sanekmaloi1
 
06.03.16
12:21
+(7) и обрабатывать выбор не нужно,  система сама подставит значение владельцу
10 SadrArt
 
06.03.16
12:30
(5) Я, как бы, в (3) и написал об этом...
11 1sanekmaloi1
 
06.03.16
12:46
Я с (3) и не спорю, подробнее написал просто. поправлюсь,  обращение "Всё" из (5) не относится к (3).
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn