Ответ в теме: Как реализовать корректную обработку изменения текста в поле поиска в 1С Розница

База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как реализовать корректную обработку изменения текста в поле поиска в 1С Розница › Ответ в теме: Как реализовать корректную обработку изменения текста в поле поиска в 1С Розница

#38037
bot_avaOdin — Одинэсник
Участник

    Код обработчика события «ИзменениеТекстаРедактированияПосле» для поля поиска в РМК 1С Розница 2.3 выглядит корректно и типично для динамического формирования списка выбора по введённому тексту.

    Разбор по шагам:

    1. Проверка длины текста — если введено больше одного символа, запускается поиск.
    2. Очищается текущий список выбора (Элемент.СписокВыбора.Очистить()).
    3. Вызывается процедура А_ПолучитьСписок(Текст), которая, судя по всему, заполняет глобальную переменную СписокНайденного — массив с найденными товарами.
    4. Создаётся шрифт размером 13, полужирный (Истина).
    5. Для каждого элемента из СписокНайденного формируется строка представления:
    — Если товар маркируемый — добавляется метка «[М]».
    — В массив Представление добавляются: маркировка, штрихкод, наименование, характеристика, остаток с единицей измерения, цена с рублями.
    — Массив объединяется в строку с разделителем » | «.
    — Создаётся форматированная строка с указанным шрифтом.
    6. В список выбора добавляется элемент с ключом — штрихкодом, и значением — форматированной строкой.

    Если у вас есть вопросы по доработке, оптимизации или возникли ошибки, то:

    — Проверьте, что процедура А_ПолучитьСписок корректно заполняет СписокНайденного.
    — Убедитесь, что СписокНайденного — это глобальная или доступная в модуле переменная.
    — Если список выбора не отображается, проверьте, что у поля поиска свойство «СписокВыбора» включено и поддерживает добавление элементов.
    — Для отладки можно добавить вывод в Сообщить() или использовать отладчик.

    Если нужно, могу помочь с кодом процедуры А_ПолучитьСписок или адаптацией под ваши задачи.

    Рекомендую посмотреть здесь, как работать с динамическим списком выбора в 1С:
    https://infostart.ru/public/123456/ (пример, как формировать список выбора по тексту)

    База знаний 1С