![]() |
|
УФ Из формы выбора получить значение из другой колонки | ☑ | ||
---|---|---|---|---|
0
Надежда25
21.08.19
✎
14:32
|
Добрый день!
Как из формы выбора получить два значения из строки выбора? То есть мне нужна не только Номенклатура, но и значение размера. &НаКлиенте Процедура ВыдачаСпецодеждыНоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ПараметрыФормы = Новый Структура; Отбор = Новый Структура; Отбор.Вставить("Владелец", СтрокаТЧ.ВидНоменклатуры); ПараметрыФормы.Вставить("Отбор", Отбор); ОткрытьФорму("Справочник.Номенклатура.Форма.ФормаВыбораДляВыдачи", ПараметрыФормы, ЭтаФорма.Элементы.ВыдачаСпецодеждыНоменклатура); КонецПроцедуры Спасибо. |
|||
1
Надежда25
26.08.19
✎
10:28
|
Попробую поднять.
В форме выбора произвольный запрос, которым я выбираю из регистра остатки по номенклатуре и размерам. Если использовать ОписаниеОповещения, то я могу получить доступ ко всем реквизитам справочника Номенклатура, но размера там нет. Можно ли в Процедура ВыдачаСпецодеждыНоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) указать, что ДанныеВыбора - это строка? Или как-то по другому это делается? |
|||
2
hhhh
26.08.19
✎
10:31
|
(1) подбором пусть пользуются.
|
|||
3
Надежда25
26.08.19
✎
10:42
|
Мне нужны два значения из одной строки. То есть пользователь выбирает Номенклатуру, а вместе с ней в другую ячейку ТЧ записывается и размер. В форме выбора в процедуре ПередЗакрытием я вижу это значение, но: 1) не знаю как передать в нужную форму попроще, 2) мне кажется, что правильнее это сделать в текущей форме. Прочитать строку, а не элемент.
|
|||
4
aleks_default
26.08.19
✎
11:10
|
Закрыть(Новый Структура("Номенклатура,Размер",Номенклатура,размер));
|
|||
5
aleks_default
26.08.19
✎
11:12
|
Опять же зависит как описана обработка выбора в форме владельце
|
|||
6
aleks_default
26.08.19
✎
11:12
|
Может через временное хранилище
|
|||
7
Надежда25
26.08.19
✎
11:28
|
(4) Закрыть - это где?
Форма выбора - динамический список с произвольным отбором. |
|||
8
aleks_default
26.08.19
✎
11:32
|
(7)Это в форме выбора. Покажи что в событии ОбработкаВыбора таблицы ВыдачаСпецодеждыНоменклатура
|
|||
9
Надежда25
26.08.19
✎
11:46
|
Ничего. У меня в ОбработкуВыбора не приходит. Вот здесь вижу размер и через хранилище могу передать.
&НаКлиенте Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) ВыбрСтрока = Элементы.Список.ТекущиеДанные; //Размер = ВыбрСтрока.Размер; КонецПроцедуры |
|||
10
aleks_default
26.08.19
✎
11:48
|
Ну значит в обработкеоповещения формы что-то должно быть
|
|||
11
aleks_default
26.08.19
✎
11:59
|
ОповеститьОВыборе у вас в форме выбора же есть где-то? Вот передавайте туда структуру а не ссылку, ну и в обработке оповещения правильно обработать выбор
|
|||
12
Надежда25
26.08.19
✎
15:15
|
Спасибо, aleks_default. Я делаю так (ниже). В ДополнительныхПараметрах в Процедуре ВыборЗавершение есть Номенклатура и Размер, но они пустые. Как туда прочитать значения из строки выбора?
&НаКлиенте Процедура ВыдачаСпецодеждыНоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; СтрокаТЧ = Элементы.ВыдачаСпецодежды.ТекущиеДанные; ПараметрыФормы = Новый Структура; Отбор = Новый Структура; Отбор.Вставить("Владелец", СтрокаТЧ.ВидНоменклатуры); ПараметрыФормы.Вставить("Отбор", Отбор); ПараметрыОповещения = Новый Структура("Номенклатура, Размер", СтрокаТЧ.Номенклатура, СтрокаТЧ.Размер); ОписаниеОповещения = Новый ОписаниеОповещения("ВыборЗавершение", ЭтотОбъект, ПараметрыОповещения); ОткрытьФорму("Справочник.Номенклатура.Форма.ФормаВыбораДляВыдачи", ПараметрыФормы, ЭтотОбъект,,,,ОписаниеОповещения); КонецПроцедуры Процедура ВыборЗавершение(РезультатЗакрытия, ДополнительныеПараметры) Экспорт КонецПроцедуры |
|||
13
aleks_default
26.08.19
✎
15:30
|
Я не очень понял, зачем вы тогда вообще в открываемую форму передаете параметры?
|
|||
14
aleks_default
26.08.19
✎
15:36
|
Давайте начнем с того что такое Размер? Это характеристика номенклатуры или реквизит? Если реквизит, то его можно получить уже после завершения выбора номенклатуры
|
|||
15
aleks_default
26.08.19
✎
15:42
|
Если это характеристика и ее нужно получить из формы выбора, то тогда только так как я уже описывал выше - в форме ФормаВыбораДляВыдачи находите метод ОповеститьОВыборе(...) и вставляете в нго в качестве параметра не Номенклатуру а Структуру состоящую из Номенклатуры и Размера. И потом вы получите эту структуру в процедуре ВыборЗавершение в параметре РезультатЗакрытия
|
|||
16
Надежда25
26.08.19
✎
15:49
|
Размер - это справочник. В документе "Получении спецодежды" указывается номенклатура и размер. Затем из регистра накопления делается отбор по остаткам (номенклатура, размер).
В открываемую форму передаю отбор по владельцу "Вид номенклатуры". Справочник Номенклатура подчинен справочнику "Вид номенклатуры" (Одежда, Обувь), также как и Справочник "Размеры", т..к. у видов одежды одни и те же размеры. |
|||
17
aleks_default
26.08.19
✎
15:53
|
Ну то есть это что-то вроде характеристики, понятно. Ну и что не получается с (15)?
|
|||
18
Надежда25
26.08.19
✎
16:03
|
В форме метода ОповеститьОВыборе(...) у меня нет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |