![]() |
![]() |
![]() |
|
Открытие формы выбора группы | ☑ | ||
---|---|---|---|---|
0
Aleksey1989
24.05.12
✎
08:09
|
Добрый день. Подскажите, пжл, как мне быть в следующей ситуации:
Мне надо получить ссылку на группу номенклатуры, для этого я создал реквизит формы с типом СправочникСсылка.Номенклатура, развестил его на форме. Далее, открываю обработку в режиме предприятия, нажимаю кнопку выбора - открывается форма выбора элемента, а не группы. Форма выбора группы создана. Пытаюсь использовать следующий код: &НаКлиенте Процедура ГруппаНоменклатурыНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) ПолучитьФормуВыбораГруппы(); КонецПроцедуры &НаСервере Процедура ПолучитьФормуВыбораГруппы() Справочники.Номенклатура.ПолучитьФорму("Справочник.Номенклатура.ФормаВыбораГруппы"); КонецПроцедуры Но все равно, открывается форма выбора элемента, а не группы. В чем я ошибся? |
|||
1
Wobland
24.05.12
✎
08:11
|
ну получаешь форму. она сама догадается открыться? и СтандартнаяОбработка=Ложь тогда
|
|||
2
Aleksey1989
24.05.12
✎
08:13
|
(1) Про стандартнаяОбработка = Ложь - я только что сам догадался, но форма по-прежнему не открывается. Вот, что пишет СП:
Примечание: В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере. И как быть тогда в такой ситуации? |
|||
3
Wobland
24.05.12
✎
08:16
|
ничего из (0) не понял. в обычных формах у поля ввода есть свойство про выбор групп или элементов
|
|||
4
Aleksey1989
24.05.12
✎
08:16
|
Сейчас переделал код, но все равно не открывается:
&НаКлиенте Процедура ГруппаНоменклатурыНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ПолучитьФормуВыбораГруппы(); КонецПроцедуры &НаСервереБезКонтекста Процедура ПолучитьФормуВыбораГруппы() Форма = Справочники.Номенклатура.ПолучитьФорму("Справочник.Номенклатура.ФормаВыбораГруппы"); Форма.Открыть(); КонецПроцедуры |
|||
5
butterbean
24.05.12
✎
08:17
|
даже на УФ вроде есть свойство у поля ввода ВыборГруппИЭлементов, юзай его, нафиг этот гемор
|
|||
6
butterbean
24.05.12
✎
08:18
|
(5)+ а, вот в (3) уже подсказали
|
|||
7
Aleksey1989
24.05.12
✎
08:18
|
(3) (5) Спасибо, действительно работает. Но все равно, почему мой код не работал?
|
|||
8
butterbean
24.05.12
✎
08:20
|
(7) надо было написать что-то типа
СтандартнаяОбработка = Ложь; ОткрытьФорму("Справочник.Номенклатура.ФормаВыбораГруппы",,Элемент); |
|||
9
Wobland
24.05.12
✎
08:21
|
(7) потому что открывал &НаСервереБезКонтекста, не?
|
|||
10
Любопытная
24.05.12
✎
08:23
|
Зачем на сервере открывать форму?
|
|||
11
Aleksey1989
24.05.12
✎
08:23
|
(8) А разве можно использовать метод ОткрытьФорму на клиенте в управляемом приложении?
(9) М.б. и из-за этого, но как еще получить доступ к форме справочника? |
|||
12
Любопытная
24.05.12
✎
08:24
|
Форма выбора группы основная назначена?
|
|||
13
Любопытная
24.05.12
✎
08:24
|
(11) А где еще открывать форму как не на клиенте?
|
|||
14
Wobland
24.05.12
✎
08:25
|
(12) у него уже взлетело
|
|||
15
Aleksey1989
24.05.12
✎
08:25
|
(13) Все, внимательно прочитал СП, разобрался.
|
|||
16
Любопытная
24.05.12
✎
08:26
|
(14) Ну вот и здесь уже мешаю.
|
|||
17
Wobland
24.05.12
✎
08:26
|
(16) откуда ты это придумала?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |