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

1С:Предприятие :: 1С:Предприятие 8 общая

Теряется фокус при вызове сервера

Теряется фокус при вызове сервера
Я
   Euroset1
 
31.10.18 - 16:11
На форме подключен обработчик ожидания, который раз в 3 сек вызывает бесконтекстную серверную функцию из модуля этой же формы.

На 8.3.11 и ранее все было хорошо. А на 8.3.12. внезапно это стало мешать. Раз в 3 сек мелькают часики, а если мы находимся в процессе ввода текста в любое из полей, то кроме часиков происходит еще и сброс окошка с вариантами на выбор. То есть вводим наименование контрагента, нам вылезает окошка с вариантами на выбор и историей (стандартное), а в момент серверного вызова это окошко сбрасывается (исчезает).

Как это победить? Серверный вызов раз в 3 сек убирать нельзя, он очень важен.
 
 
   Cool_Profi
 
1 - 31.10.18 - 16:12
"На 8.3.11 и ранее все было хорошо. А на 8.3.12. внезапно это стало мешать"

Ответ очевиден...
   Euroset1
 
2 - 31.10.18 - 16:19
(1) не очевиден. в патчнотах ни слова, а современные обновления всех конфигураций уже только на 8.3.12
   asady
 
3 - 31.10.18 - 16:25
(0) что за хрень у тебя каждые три секунды лезет на сервер?
   DrWatson
 
4 - 31.10.18 - 16:30
Наблюдал похожую проблему где-то с 8.3.8. Проблемой был не сам серверный вызов, а изменение формы. Решил, что пока пользователь что-то вводит, то мой алгоритм подождет.
   vis_tmp
 
5 - 31.10.18 - 16:52
(4)Как понимаешь, что "пользователь что-то вводит" ?
   Кац
 
6 - 31.10.18 - 16:57
(5) наверное вводит текст в поле ввода
   Вафель
 
7 - 31.10.18 - 16:59
(6) вопрос как это отследить
   DrWatson
 
8 - 31.10.18 - 17:25
(4)
    Если ЭтотОбъект.ТекущийЭлемент = Элементы.Поле1  И НЕ Элементы.Поле1.ТекстРедактирования = Строка(Объект.Поле1)
        ИЛИ ЭтотОбъект.Поле2 = Элементы.Поле2  И НЕ Элементы.Поле2.ТекстРедактирования  = Строка(Объект.Поле2)
... и так со всеми элементами, где пользователь может что-то вводить.
   Euroset1
 
9 - 02.11.18 - 12:33
(3) там быстрый запрос, получающий актуальную сумммы оплаты под текущий заказ. Просто пока он у тебя открыт, клиент может оплатить через терминал

(4) вот с той проблемой я справился уже давно, это решалось установкой свойства какого-то для элементов формы изменяемых, что обновлять только при изменении значения.

(8) то есть типа перед запуском серверного метода, если по вашему, можно так проверить все поля на то, редактируются ли в данный момент. И если да, то пропустить?
   DrWatson
 
10 - 02.11.18 - 13:21
(9) да, замысел был в этом.
 
 Рекламное место пустует

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