Подставить нужный тип данных в табличной части

1. user2007341 10.01.24 10:12 Сейчас в теме
Добрый день. Подскажите пожалуйста. В табличной части есть колонки ТипМатериала(Перечисление) и Название(составной тип из 2-х справочников). Может быть кто то знает хочу чтобы При выборе типа материала в Названии открывался только тот справочник который нужен,без варианта выбора как на скрине?
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
7. Sashares 33 11.01.24 13:04 Сейчас в теме
(6)
Процедура СписокМатериаловСпецификацийНазваниеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка,ПРЧ)
СтандартнаяОбработка = Ложь;
ТекДанные = Элементы.СписокМатериаловСпецификаций.ТекущиеДанные;

Если ТекДанные.ТипМатериала  = ПредопределенноеЗначение("Перечисление.фид_ТипыМатериалов.Материал") Тогда
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора",,Элемент);
Иначе ОткрытьФорму("Справочник.фидСпецификации.ФормаВыбора",,Элемент);
КонецЕсли; 

КонецПроцедуры
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 33 10.01.24 10:41 Сейчас в теме
(1)В событии НачалоВыбора можете установить СтандартнаяОбработка = Ложь и явно открывать нужную форму выбора в зависимости от значения типа материала в этой строке.
user1619761; +1 Ответить 6
3. user2007341 10.01.24 11:31 Сейчас в теме
(2) Да в том то и дело что явно не совсем подходит. Или вы имеете ввиду событие НачалоВыбора наименования?
4. Sashares 33 10.01.24 11:32 Сейчас в теме
(3)
Или вы имеете ввиду событие НачалоВыбора наименования?

Да, для колонки Название.
6. user2007341 11.01.24 12:54 Сейчас в теме
(4)Получилось,но при открыии формы данные не переносятся((( нужна какая то процедура еще?
&НаСервереБезКонтекста
Процедура СписокМатериаловСпецификацийНазваниеНачалоВыбораНаСервере(ПРЧ)Экспорт
ПРЧ = Перечисления.фид_ТипыМатериалов.Материал;
КонецПроцедуры

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

КонецПроцедуры
Показать
7. Sashares 33 11.01.24 13:04 Сейчас в теме
(6)
Процедура СписокМатериаловСпецификацийНазваниеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка,ПРЧ)
СтандартнаяОбработка = Ложь;
ТекДанные = Элементы.СписокМатериаловСпецификаций.ТекущиеДанные;

Если ТекДанные.ТипМатериала  = ПредопределенноеЗначение("Перечисление.фид_ТипыМатериалов.Материал") Тогда
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора",,Элемент);
Иначе ОткрытьФорму("Справочник.фидСпецификации.ФормаВыбора",,Элемент);
КонецЕсли; 

КонецПроцедуры
Показать
9. user2007341 11.01.24 15:38 Сейчас в теме
(7) Спасибо,большое.Немного доработал, мы значение передаем через элемент получается?
10. Sashares 33 11.01.24 15:44 Сейчас в теме
(9)В методе ОткрытьФорму третий параметр это владелец, он будет обрабатывать результат выбора.
5. user823999 22 10.01.24 14:25 Сейчас в теме
(1) А если отключить свойство "Выбирать тип"?
Прикрепленные файлы:
8. soft_wind 11.01.24 13:56 Сейчас в теме
(5) Можно отключать выбор Типа, но это для чуть-чуть продвинутых прогеров!
для начинающих, лучше с форм начинать
Оставьте свое сообщение

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