Тайны платформы 8.3.7 в плане отбора #764593


#0 by strange2007
Доброго времени суток. Уже создал микро конфу, в которой пытаюсь побороть глюк, но пока даже не знаю куда рыть. Может кто сходу решил проблему глюка: Есть форма выбора справочника. Над списком есть обычное текстовое поле, которое при набирании символов вызывает обработчик "ИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)". Там есть код отбора для списка Так вот при введении любого символа всё стирается. Если код установки отбора коментирую и ставлю что угодно (например, сообщить), то всё нормально, текст не стирается. Стоит отбор перенести на кнопку. Т.е. текст вводишь, нажимаешь на кнопку и тоже всё нормально. Но если делать посимвольный отбор, то всё стирается хоть тресни. Уважаемые специалисты по ЦФ, подскажите куда глянуть по этой волшебной фиче от платформы 8.3.7. Спасибо.
#1 by Cyberhawk
Попробуй добавлять не в отбор списка, а в пользовательский отбор компоновщика настроек этого списка
#2 by Cyberhawk
Обработчик события "АвтоПодбор" у поля есть?
#3 by strange2007
Пока нашёл решение. В общем после изменения отбора, я закидываю текст обратно в реквизит. Но тогда курсор в текстовом поле становится в начало строки. Что ещё можно попробовать? Но отбор нужен сильно и сделать надо что-то.
#4 by strange2007
Да, есть. Но я ещё не понял зачем он нужен(((
#5 by Cyberhawk
Ну стандартную обработку в ложь тогда выставляй, а то у тебя АвтоПодбор зовется следом Либо свой код перенеси в обработчик события АвтоПодбор
#6 by strange2007
Выставлял и в Ложь и в Истина. Исчезает текст и всё тут. Если успеваю 2 символа ввести, то хорошо
#7 by strange2007
А это как? Как к нему добраться?
#8 by strange2007
Нет, я всё понимаю, но как это связано с отбором списка? Почему именно отбор и именно список?
#9 by strange2007
Уже в отбор просто текст подсовываю, даже не из текстового поля. Стирает и всё тут. Как такое возможно??????
#10 by Fragster
ТекстРедактирования
#11 by Fragster
отставить. Надо не делать серверный вызов в этом событии. Например сделать установку отбора через обработчик ожидания.
#12 by strange2007
Я через Оповещение попробовал. Всё тоже самое
#13 by Fragster
кстати, в тоже правда. нужно поставить свойство Обновление текста редактирования.
#14 by Fragster
оповещение <> обработка ожидания...
#15 by Fragster
в - у поля ввода
#16 by Fragster
или присваивай своему реквизиту значение = Текст в обработчике события
#17 by strange2007
ЗАРАБОТАЛО!!!!!!!!! Спасибо всем неравнодушным. Вот никогда бы не догадался до такой связи - "отбор в другом списке" и "отображение текста"
#18 by Fragster
не "отбор", а серверный вызов причина.
#19 by strange2007
т.е. как? на клиенте отбор сервер вызывает? А как это с текстом связано?
#20 by Fragster
при установке отбора вызывается сервер. на сервер уходят значения реквизитов. а пока ты из поля не вышел - значение реквизита не изменилось, т.е. на сервер уходит не то, что ты видишь. потом с сервера оно возвращается и записывается в поле, соответственно, стирая то, что ты туда навводил. Подобный костыль можно увидеть в типовых и в БСП в Контактной информации, например - там, как раз, отправляется текст редактирования, потому что в реквизите значение еще не изменилось, а на сервер надо отправить то, что в поле ввода.
#21 by strange2007
"Не стыдно не уметь, стыдно не учиться" (с) Спасибо, не знал этой тонкости.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям