Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
05 июл 2024, 19:38

Как сделать отбор по типу номенклатуры в УТ10.3

Автор skillful, 26 окт 2019, 21:25

0 Пользователей и 1 гость просматривают эту тему.

skillful

Добрый. В конфигураторе УТ10.3 есть новый созданный документ (Не важно как называется). В этом документе управляемая форма, а на ней табличная часть с реквизитом Номенклатура.

Нужно, чтобы при выборе номенклатуры были видны только номенклатурные позиции с определенным типом номенклатуры.

Типы номенклатуры это - Перечисления.ТипыНоменклатуры.Значения

Всего их 4
Товар
Услуга
Набор
Комплект

Нужно как то программно это сделать не внося изменения в основную конфигурацию. Спасибо.

skillful

Пока сделал так:

&НаКлиенте
Процедура РаботыНоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

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

    ФормаВыбора.Открыть();

РаботыНоменклатураНачалоВыбораНаСервере();
КонецПроцедуры


Но у пользователей есть привилегии менять справочник ВидыНоменклатуры, хотелось бы все таки использовать Перечисления.ТипыНоменклатуры.Услуга. Но в фильтре пустой результат. Кто знает как побороть это?

Yotram

Если вы используете "ВидНоменклатуры" и "табличную часть" с реквизитом "Номенклатура" как реквизиты объекта, тогда самый верный способ отбора будет использование "Связи параметров выбора" в свойствах реквизита "Номенклатура". Должно получиться что то типа Отбор.ВидНоменклатуры(ВидНоменклатуры). Пробуйте.
"Дай человеку рыбу, и ты накормишь его на один день, научи его рыбачить, и он будет сыт всю жизнь"

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск