Проблема с обработчиком ожидания после перехода с платформы 8.3.11 на 8.3.12

1. VitusBering 5 20.02.19 15:02 Сейчас в теме
Добрый день! После перехода с платформы 8.3.11 на платформу 8.3.12 появилась следующая проблема.

Если кратко, то при открытии формы запускается обработчик ожидания с интервалом 5 секунд, вызывается процедура на клиенте, которая вызывает процедуру на сервере.

При обращении клиентской процедуры к серверной, происходит выделение текста текущего редактируемого текстового поля табличной части, и соответственно при нажатии следующей клавиши (при наборе текста), происходит замена выделенного блока на нажатый символ (очистка). Есть и другие проявления: закрытие выпадающих списков, ввод текста в не табличные текстовые реквизиты и т.д, но сейчас отловил только в таблице. Причем, при открытой форме с обработчиком ожидания, данная проблема распространяется на любую другую открытую форму (проверял на документах).

Для проверки накидал маленькую обработку с пустыми процедурами и таблицей значений на форме со следующим кодом:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
	
	Стр = ТЗ.Добавить();
	Стр.Номер = 1;
	Стр.Описание = "ОдЫн";
	
	Стр = ТЗ.Добавить();
	Стр.Номер = 2;
	Стр.Описание = "Два";
	
	ПодключитьОбработчикОжидания("ОболочкаОбработчика",5);
	
КонецПроцедуры

&НаКлиенте
Процедура ОболочкаОбработчика()
	а = ОбработатьОжидание();	
КонецПроцедуры

&НаСервереБезКонтекста 
Функция ОбработатьОжидание() 
	Возврат Истина;
КонецФункции
Показать


Проблема проявляется, если между выполнениями обработчика (видно по курсору) войти в текстовое поле таблицы и начать набирать текст. Если находиться в поле в момент выполнения обработчика и потом набирать текст, второй раз выделения обычно не происходит (следите за курсором в ролике).
Прикрепленные файлы:
ТестМигания.epf
IMG_9133.MOV
+
Найденные решения
5. VitusBering 5 26.02.19 10:21 Сейчас в теме
Исправлено в релизе 8.3.13.1690:
"При исполнении обработчика ожидания, выполняющего серверный вызов, закрываются интерфейсные объекты - меню, диалоги выбора даты и т.д."
Затем в релизе 8.3.14.1565 ))
"Интерактивные действия пользователя (перетаскивание, нажатие кнопок) прерываются при срабатывании обработчика ожидания, если в обработчике выполняется серверный вызов."
+
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. kumi2012 103 20.02.19 15:10 Сейчас в теме
Подобных глюков платформы - только зарегистрированных, сотни..
Причем со временем появляются ранее исправленные. :)
sergathome; +1
3. sergathome 4 20.02.19 15:17 Сейчас в теме
(2) это точно. например 3-я БП просто выбешивает своими обработчиками. ИМХО недопустимо запускать обработчик ожидания при активных элементах редактирования и (или хотябы) нужен идл-период, который есть во всех нормальных системах, но отсутствует в 1С как класс.
+
4. Дмитрий74Чел 234 21.02.19 09:39 Сейчас в теме
Это не баг, это фича.
Способы обхода:
- Если изменить тип поля "Текст" с "Поле ввода" на "Поле текстового документа" его состав перестает обнуляться, но сточки зрения пользователя, использование "Поля текстового документа" менее удобно, нежели использование "Поля ввода". (не вводятся +/-, открывается [вроде] отдельное окно для ввода)
- свойство поля ввода ОбновлениеТекстаРедактирования (но как-то нее стабильно что-ли. Советую ставить даже не Да, а НеИспользовать)
- а вообще подход не верен. Нужно делать обработку события из вк, или откуда там прилетают данные(даже если это эмуляция клавиатуры), гемора не будет. [т.е. в форме и спользовать процедуру ОбработкаОповещения, которая получает внешнее событие] - но ВК для весов нет, надо писать свою...
Dilovar9; +1
5. VitusBering 5 26.02.19 10:21 Сейчас в теме
Исправлено в релизе 8.3.13.1690:
"При исполнении обработчика ожидания, выполняющего серверный вызов, закрываются интерфейсные объекты - меню, диалоги выбора даты и т.д."
Затем в релизе 8.3.14.1565 ))
"Интерактивные действия пользователя (перетаскивание, нажатие кнопок) прерываются при срабатывании обработчика ожидания, если в обработчике выполняется серверный вызов."
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот