Вход | Регистрация
 

Ввод по строке, обычные формы

Ввод по строке, обычные формы
Я
   Мафусаил
 
08.11.19 - 13:27
Всем привет!

Появилась такая задача, доработать ввод по строке. Скажем человек вводит код или наименование справочника и выпадает список элементов соответствующих отбору.
Нужно добавить дополнительный отбор, например:
код подобно "123%" (стандартный)
НеВыводить = ложь (новый реквизит)

Как это сделать максимально средствами платформы?
Кроме как закодить, я решения не нашел. Может быть у вас есть варианты?
 
 
   Мафусаил
 
1 - 08.11.19 - 13:36
ПроцедурыПоискаПоСтроке.ОкончаниеВводаТекстаВЭлементеУправления()
Похоже это сможет помочь
   palsergeich
 
2 - 08.11.19 - 13:38
(0) модуль менеджера объекта в общем случае, там есть перехват стандартного ввода по строке.
(1) тут одно событие, а их 3
   palsergeich
 
3 - 08.11.19 - 13:41
(2) модульМенеджера. ОбработкаполученияДанныхВыбопа
   palsergeich
 
4 - 08.11.19 - 13:49
Конкретно вот НеВыводить = ложь это можно без кода
Это код подобно "123%" работает только по основному представлению (обычно наименование) и, увы, прийдется написать немного кода
   Мафусаил
 
5 - 08.11.19 - 14:25
(3) в обычных формах это же не работает, или я ошибаюсь?
   palsergeich
 
6 - 08.11.19 - 14:27
(5) ошибаешься
   Мафусаил
 
7 - 08.11.19 - 14:33
(6) а по какой причине может не заходить в это процедуру? да, знаю что на сервере выполняется, но и я на файловой базе. Точка остановки должна сработать же
   palsergeich
 
8 - 08.11.19 - 14:33
(6) хм, по ходу ошибаюсь я.
На УТ 10.3 не работает(
Прости
   palsergeich
 
9 - 08.11.19 - 14:36
Тогда надо 2 события коверкать - Автоподбор текста, окончаниевводатекста
   palsergeich
 
10 - 08.11.19 - 14:36
Забыл я ОФ(
Стыдно(
   Мафусаил
 
11 - 08.11.19 - 14:40
(8) всё хорошо, всё равно спасибо!

я сделал через 

ОкончаниеВводаТекста() в модуле формы
+ 
ПроцедурыПоискаПоСтроке.ОкончаниеВводаТекстаВЭлементеУправления(Элемент, Текст, Значение, СтандартнаяОбработка, Новый Структура("МойРеквизит", Ложь), ЭтаФорма,)

    Если ТипЗнч(Значение) = Тип("Строка") Тогда 
        СтандартнаяОбработка = Истина;
    КонецЕсли;

то есть если с моим отбором ничего не нашел, всё идёт своим чередом (В поле введены некорректные данные... бла бла бла)
   Мафусаил
 
12 - 08.11.19 - 14:51
кстати, с документами то понятно, а вот с типовыми отчетами как...
   Мафусаил
 
13 - 08.11.19 - 16:01
так и не придумал, как обыграть ситуацию со списками значений.. у кого нибудь есть идеи?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.