Вывод формы выбора номенклатуры с отбором по группе

1. TopZlodey 13 15.08.18 06:42 Сейчас в теме
Здравствуйте, подскажите пожалуйста как можно программно реализовать чтобы при нажатии на ячейку таблицы с типом: СправочникСсылка.Номенклатура программа давала выбор не из всей номенклатуры а из конкретной группы.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. Doreng 27 15.08.18 09:42 Сейчас в теме
(1)Если формы управляемые, то можно через свойства реквизита - параметры выбора
2. TopZlodey 13 15.08.18 08:17 Сейчас в теме
5. TopZlodey 13 16.08.18 13:10 Сейчас в теме
6. TopZlodey 13 16.08.18 13:31 Сейчас в теме
Пробовал:

СтандартнаяОбработка = Ложь;
ПараметрыФормы = Новый Структура;
Отбор = Новый Структура("Родитель","Бумага");
ПараметрыФормы.Вставить("Отбор",Отбор);
ОткрытьФорму("Справочник.Номенклатура.ФормаСписка",ПараметрыФормы, Элемент);

и вызывать отдельную форму с установленным в ней отбором...
7. SlavaKron 17.08.18 06:59 Сейчас в теме
Вы в отбор подставляете строку "Бумага", а надо ссылку.
&НаКлиенте
Процедура НоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	СтандартнаяОбработка = Ложь;
	ПараметрыФормы = Новый Структура;
	Отбор = Новый Структура("Родитель", НайтиНоменклатуруПоНаименованию("Бумага"));
	ПараметрыФормы.Вставить("Отбор", Отбор);
	ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыФормы, Элемент);
	ФормаВыбора.Открыть()
КонецПроцедуры

&НаСервереБезКонтекста
Функция НайтиНоменклатуруПоНаименованию(Наименование)
	Возврат Справочники.Номенклатура.НайтиПоНаименованию(Наименование, Истина);
КонецФункции
Показать

Но только вы получите элементы этой группы, элементы, находящиеся в подгруппах в отбор не попадут.
Max0n57; TopZlodey; +2 Ответить
8. TopZlodey 13 17.08.18 14:17 Сейчас в теме
(7)
&НаКлиенте Процедура НоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ПараметрыФормы = Новый Структура; Отбор = Новый Структура("Родитель", НайтиНоменклатуруПоНаименованию("Бумага")); ПараметрыФормы.Вставить("Отбор", Отбор); ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыФормы, Элемент); ФормаВыбора.Открыть() КонецПроцедуры &НаСервереБезКонтекста Функция НайтиНоменклатуруПоНаименованию(Наименование) Возврат Справочники.Номенклатура.НайтиПоНаименованию(Наименование, Истина); КонецФункции


Спасибо огромное, не совсем то что я хотел но уже лучше чем то чего смог добиться)
9. TopZlodey 13 17.08.18 14:47 Сейчас в теме
(7) На данный момент смог написать следующий код:
	СтандартнаяОбработка = ЛОЖЬ;
	ПараметрыОткрытия = Новый Структура("Родитель", "Бумага"); 
	ОткрытьФормуМодально("Справочник.Номенклатура.ФормаВыбора", ПараметрыОткрытия);


Но она просто выводит форму списка без возможности выбрать значение.
10. DarkUser 17.08.18 15:13 Сейчас в теме
СтруктураОтбора = Новый Структура("Родитель",НаименованиеГруппы_Ссылка);
ПараметрыОткрытия = Новый Структура("РежимВыбора, ЗакрыватьПриВыборе, Отбор", Истина, Истина, СтруктураОтбора);

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


Обработчик оповещения только добавить и всё
11. TopZlodey 13 17.08.18 15:24 Сейчас в теме
(10) Не совсем понимаю
НаименованиеГруппы_Ссылка
12. DarkUser 17.08.18 16:52 Сейчас в теме
(11) Сюда надо записать значение группы отбора по Родителю
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот