Как отключить поле выпадающего списка?

1. MikhailDr 16.02.21 13:21 Сейчас в теме
Здравствуйте форумчане. Возникла проблема с полем ввода табличной части. Итак

Есть таблица с двумя колонками. Первая колонка имеет совестный тип "Строка" и "Номенклатура". Пользователь может либо выбрать позицию из справочника через кнопку выбора, либо вбить наименование сам, если такой позиции нет, при этом новую позицию в справочнике он создавать не может. И должна быть еще одна возможность, если выбрана номенклатура, то необходимо иметь возможность менять ее представление прямо в документе.

Т.е. при вводе текста не должен происходить поиск по справочнику и не должна меняться сама ссылка в поле. У меня никак не получается убрать поле выпадающего списка, оно теряет всякий смысл, ведь выбирать ссылки можно только из формы выбора. Ка его убрать. Историю ввода я отключил, но оно все равно вылазит.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
4. spacecraft 16.02.21 13:32 Сейчас в теме
(1) тут только прятать поле Номенклатура и добавлять поле типа строка и делать на ней кнопку выбора с открытием формы выбора номенклатуры.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. spacecraft 16.02.21 13:32 Сейчас в теме
(1) тут только прятать поле Номенклатура и добавлять поле типа строка и делать на ней кнопку выбора с открытием формы выбора номенклатуры.
5. MikhailDr 16.02.21 13:37 Сейчас в теме
(4) Иначе никак? В остальном все получилось отлично, только дурацкий список мешает. Получается это на уровне платформы задано.
6. spacecraft 16.02.21 13:38 Сейчас в теме
(5) это при возможности редактирования поля ссылочного типа.
7. MikhailDr 16.02.21 13:50 Сейчас в теме
(6) Даже так выпадает дурацкий список. И еще я так понимаю, что работать с формой выбора в таком случае надо через оповещение?
Прикрепленные файлы:
8. spacecraft 16.02.21 13:56 Сейчас в теме
(7) РедактированиеТекста отключено? БыстрыйВыбор отключен?
9. MikhailDr 16.02.21 14:02 Сейчас в теме
11. MikhailDr 16.02.21 14:05 Сейчас в теме
(8) Нет, я ошибся. Редактирование включено. То я его не могу отключить. Пользователь может вводить текст, если нужной номенклатуры нет.
13. spacecraft 16.02.21 14:07 Сейчас в теме
(11) так я в самом начале и сказал, см (4)
16. MikhailDr 16.02.21 14:14 Сейчас в теме
(13) Какой вообще смысл в выпадающем списке текстового поля
17. spacecraft 16.02.21 14:18 Сейчас в теме
(16) быстрый ввод номенклатуры (для примера). Вводится несколько символов и предлагается список соответствующий введенным символам. Очень помогает набивать много строк ТЧ (ну и не только в ТЧ).

И поле не текстовое, а ссылочного типа.
18. MikhailDr 16.02.21 14:25 Сейчас в теме
(17) Для ссылочного да, но я сделал поле текстовым. Ну т.е. поле формы привязано к реквизиту строкового типа.
22. spacecraft 16.02.21 14:31 Сейчас в теме
(18) тогда что-то намудрили. Для привязанного к реквизиту строкового типа выпадающий список не должен появляться.
10. spacecraft 16.02.21 14:03 Сейчас в теме
(7) "Представение" это круто, главное чтоб не вознесение. :)
12. MikhailDr 16.02.21 14:06 Сейчас в теме
(10) Это системное поле, я его все равно бы скрыл, добавил пока для тестов. Но забавно, не обратил внимание.
27. MikhailDr 16.02.21 14:48 Сейчас в теме
(4) Сработало. Надо было убрать событие "Автоподбор". Я его изначально создал с параметров СтандартнаяОбработка = Ложь. Из-за этого система даже для строкового типа выводило список выбора.
2. oleg-x 26 16.02.21 13:29 Сейчас в теме
Попробуй в событие авто подбор прописать
СтандартанаяОбработка = Ложь;
3. MikhailDr 16.02.21 13:30 Сейчас в теме
14. oleg-x 26 16.02.21 14:09 Сейчас в теме
(3) Вообще данный метод должен работать. Список все равно появится, но он будет пустой.
15. MikhailDr 16.02.21 14:14 Сейчас в теме
(14) Мне вообще список не нужен. Зачем его выводить, если он все равно всегда будет пустой.
19. oleg-x 26 16.02.21 14:26 Сейчас в теме
(16) В этом списке не только выбор, но и возможность создания элемента. То есть можно вбить название и нажать + и сразу перейти в форму создания элемента, не совершая лишних действий.
21. MikhailDr 16.02.21 14:28 Сейчас в теме
(19) Поле привязано к реквизиту строкового типа, там нечего создавать.
20. oleg-x 26 16.02.21 14:28 Сейчас в теме
Сделайте запрет редактирования текста (снимите галку), тогда ни какого списка не будет. И выбрать можно будет только через кнопку выбор.
kabantus; +1 Ответить
23. MikhailDr 16.02.21 14:31 Сейчас в теме
(20) Нельзя. Пользователь должен иметь возможность ручного ввода, если нет нужной номенклатуры
24. oleg-x 26 16.02.21 14:32 Сейчас в теме
(23) Так пусть создает номенклатуру в списке выбора.
25. MikhailDr 16.02.21 14:36 Сейчас в теме
(24) Это тоже нельзя. ТЗ предельно конкретно описывает какие действия может совершать пользователь. Можно вписать свою строку, можно выбрать из справочника, можно у выбранного элемента справочника изменить представление для конкретного документа.
26. oleg-x 26 16.02.21 14:39 Сейчас в теме
Ну тогда сделать так. Поле сделать составным типом. По умолчанию тип строка, если выбирают номенклатуру через кнопку выбор, то меняется на ссылку, если очищают, то меняется на строку.
Должен стоять запрет редактирования, если в поле ссылочный тип и разрешить редактирование, если поле строка.
kabantus; +1 Ответить
28. MikhailDr 16.02.21 14:49 Сейчас в теме
(26) Думаю это сработало бы. Но мне больше понравился вариант со строковым полем и скрытой колонкой с номенклатурой. Проще в реализации.

В любом случае спасибо большое за помощь.
29. VadimTer 29.06.23 17:17 Сейчас в теме
У меня тоже появлялось лишнее окошко формы выбора, когда пытался определить формы выбора в событии "АвтоПодбор" поля ссылочного типа. Соответственно, перестал использовать событие "АвтоПодбор", а вместо него создал процедуру обработчика "НачалоВыбора":

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

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

ФормаВыбора = ПолучитьФорму("Справочник.ХарактеристикиНоменклатуры.ФормаВыбора",ПараметрыПолученияФормы,Элемент);
ФормаВыбора.ОписаниеОповещенияОЗакрытии = Новый ОписаниеОповещения("ПолучитьЗначениеВыбораХарактеристики",ЭтаФорма);
ФормаВыбора.Открыть();

КонецПроцедуры

В следующей процедуре результат выбора формы выбора присваивается соответствующему полю формы. Как было сказано (чтобы запись в поле осуществлялась корректно, нужно отключить свойства поля: "РежимВыбораИзСписка" и "РедактированиеТекста"):

&НаКлиенте
Процедура ПолучитьЗначениеВыбораХарактеристики(РезультатЗакрытия,ДополнительныеПараметры) Экспорт

Объект.Расш1_ХарактеристикаПродаж = РезультатЗакрытия;

КонецПроцедуры // ПолучитьЗначениеВыбораХарактеристики()
Оставьте свое сообщение

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