Имя: Пароль:
1C
 
УФ : Выбор из выпадающего списка в элементе ТЧ
0 bvb
 
02.07.25
12:01
Добрый день
Необходимо выбрать элементы справочника из выпадающего списка. Состав списка задается по значению из данной строки в другой колонке.
Условия к списку выбора :
•    Провалиться в форму выбора и выбрать произвольное значение - нет
•    Авто ввод по начальным символам – нет.
•    История ввода – нет
•    Ввод новых значений нет

Реализовал это на методе АвтоПодбор () +  СозданиеПриВВоде реквизита ТЧ «Не использовать»

Процедура АвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка)

СтандартнаяОбработка = ЛОЖЬ;

Элемент.ИсторияВыбораПриВводе    =    ИсторияВыбораПриВводе.НеИспользовать;

ДанныеФормы  = ЭтаФорма.Объект;
ДанныеТекущейСтроки = Элементы.МояТЧ.ТекущиеДанные;


СпСтатусов = ПолучитьСписокВыбора (ДанныеТекущейСтроки.Ответственный);

ДанныеВыбора =  СпСтатусов;

Все работает – ок. Но внизу списка присутствует гиперссылка «Показать все»,  по которой пользователь может выбрать произвольное значение. И я не могу от нее избавиться.
Вопрос :
Я не уверен, что то, что я делаю - правильно.
Я посмотрел много примеров – но хрестоматийного среди них нет
Возможно нужно использовать другой метод элемента (например НачалоВыбора())
Возможно нужно использовать  ОбработкаПолученияДанныхВыбора
Помогите пожалуйста…
1 vicof
 
02.07.25
15:02
ОтображениеКнопкиВыбора?
2 bvb
 
03.07.25
12:57
Короче решил (выкладываю):

Короче как в (3) :

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)                
    
    
    
    ЭтаФорма.Элементы.ЛистСогласованияСтатусСогласования.РежимВыбораИзСписка = ИСТИНА;
    ЭтаФорма.Элементы.ЛистСогласованияСтатусСогласования.КнопкаСоздания = ЛОЖЬ;   //можно также отключить у реквизита ТЧ
    ЭтаФорма.Элементы.ЛистСогласованияСтатусСогласования.КнопкаОткрытия = ЛОЖЬ;
    

&НаКлиенте
Процедура ЛистСогласованияСтатусСогласованияНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
    
    ДанныеТекущейСтроки = Элементы.ЛистСогласования.ТекущиеДанные;
    
    МассивСтатусовСогласования = ПолучитьСписокВыбора(ДанныеТекущейСтроки.Ответственный).ВыгрузитьЗначения();
    
    Элемент.СписокВыбора.ЗагрузитьЗначения(МассивСтатусовСогласования);
3 vicof
 
03.07.25
16:28
маладэц
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан