|
Выбор записи справочника на форме | ☑ | ||
---|---|---|---|---|
0
trialex3
28.06.21
✎
13:15
|
Добрый день. Есть на форме поле справочника. В этом поле соответственно указывают запись справочника. Есть заипсь за наименованием "1" и запись за наименованием "10". Как сделать так, что бы если человек набрал "1" то поле сразу заполнилось нужной записью а не предложило на выбор 2 записи - "1" и "10".
|
|||
1
acht
28.06.21
✎
14:03
|
Гм. А как человек тогда вообще введет "10"?
А так - см. обработчик АвтоПодбор и формируй список значений из одного элемента |
|||
2
acanta
28.06.21
✎
14:10
|
можно поставить условие на минимальное количество символов, тогда в справочнике придется делать наименование фиксированной длины (01,10,11 или " 1"). Если наименование это точно число(например, артикул), форматировать туда и обратно грустно..
|
|||
3
trialex3
29.06.21
✎
08:59
|
(1) Число водится сканированием штрихкода. После сканирования сканер сам вставляет энтер.
|
|||
4
Мимохожий Однако
29.06.21
✎
09:03
|
(3) Так человек набрал или сканер?
|
|||
5
butterbean
29.06.21
✎
09:04
|
(0) в модуле менеджера справочника ОбработкаПолученияДанныхВыбора
|
|||
6
Мимохожий Однако
29.06.21
✎
09:04
|
Странный штрихкод
|
|||
7
acht
29.06.21
✎
09:29
|
(0) > Как сделать так, что бы если человек набрал
(3) > Число водится сканированием штрихкода Яркая такая демонстрация, почему новичков не любят и не хотят отвечать на их вопросы. |
|||
8
ДенисЧ
29.06.21
✎
09:33
|
(7) А что, ШК не человек сканирует?
|
|||
9
acht
29.06.21
✎
09:35
|
(8) после слова "человек" идет слово "набрал"
|
|||
10
ДенисЧ
29.06.21
✎
09:36
|
(9) А на заборе "дрова" написано...
|
|||
11
acht
29.06.21
✎
09:37
|
(10) Заглядывал?
|
|||
12
ДенисЧ
29.06.21
✎
09:43
|
(11) Ага. Там борщевик и ржавая копейка...
|
|||
13
trialex3
29.06.21
✎
09:47
|
(5) Благодарю. Буду пробовать.
|
|||
14
trialex3
29.06.21
✎
13:40
|
(5) Странно как то работает у меня. написал вот так -
Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка) // Если это рекурсивный вызов – ничего не делать. Если НЕ Параметры.Свойство("Рекурсия") Тогда СтандартнаяОбработка = Ложь; // Получить стандартный список выбора. Параметры.Вставить("Рекурсия"); СтандартнаяОбработка = Ложь; СтандартныйСписок = ПолучитьДанныеВыбора(Параметры); СтандартныйСписок.Очистить(); ДополнительныйЭлемент = Справочники.АГ_НомераИсполнителей.НайтиПоНаименованию(Параметры.СтрокаПоиска); СтандартныйСписок.Добавить(ДополнительныйЭлемент); ДанныеВыбора = СтандартныйСписок; КонецЕсли; КонецПроцедуры Но если сканером ввожу "9" то получаю в поле уже "999" хотя в Данных выбора передается одна ссылка "9" |
|||
15
trialex3
29.06.21
✎
14:01
|
При этом "1" и "10" вводятся корректно, а "9" и "999" нет
|
|||
16
trialex3
29.06.21
✎
14:36
|
Все номера вводятся нормально, кроме 9 и 999
Мистика |
|||
17
RomaH
naïve
29.06.21
✎
15:30
|
(14) странный способ объявить список значений
чем простой Новый СписокЗначений не устроил? |
|||
18
RomaH
naïve
29.06.21
✎
15:30
|
СтандартныйСписок = ПолучитьДанныеВыбора(Параметры);
СтандартныйСписок.Очистить(); вот это что? |
|||
19
RomaH
naïve
29.06.21
✎
15:34
|
НайтиПоНаименованию - там дальше второй и третий параметры есть?
|
|||
20
trialex3
29.06.21
✎
15:43
|
(17) Переделал - не помогает
Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка) // Если это рекурсивный вызов – ничего не делать. Если НЕ Параметры.Свойство("Рекурсия") Тогда СтандартнаяОбработка = Ложь; // Получить стандартный список выбора. Параметры.Вставить("Рекурсия"); СтандартнаяОбработка = Ложь; СтандартныйСписок = Новый СписокЗначений; //СтандартныйСписок.Очистить(); ДополнительныйЭлемент = Справочники.АГ_НомераИсполнителей.НайтиПоНаименованию(Параметры.СтрокаПоиска); СтандартныйСписок.Добавить(ДополнительныйЭлемент); ДанныеВыбора = СтандартныйСписок; КонецЕсли; КонецПроцедуры |
|||
21
trialex3
29.06.21
✎
15:44
|
(19) Так найти по наименованию все нормально находит - запись "9"
|
|||
22
ДедМорроз
29.06.21
✎
21:52
|
Так событие окончание ввода текста же.
И таи ищем по тому,что ввели,причем,сработает,если нажали enter. |
|||
23
trialex3
30.06.21
✎
09:52
|
(22) Пробовал уже так - не работает. Всеравно предлагает список:
&НаКлиенте Процедура СборщикОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка) Сборщик = Справочники.АГ_НомераИсполнителей.НайтиПоНаименованию(Текст); ЭтаФорма.ТекущийЭлемент = ЭтаФорма.Элементы.ОК; КонецПроцедуры |
|||
24
trialex3
30.06.21
✎
09:57
|
А вот так тоже не работает с "9"-
&НаКлиенте Процедура СборщикОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; НайденныйСборщик = Справочники.АГ_НомераИсполнителей.НайтиПоНаименованию(Текст); СЗ = Новый СписокЗначений; СЗ.Добавить(НайденныйСборщик); ДанныеВыбора = СЗ; ЭтаФорма.ТекущийЭлемент = ЭтаФорма.Элементы.ОК; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |