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


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

8.3.12.1685 и событие АвтоПодбор

8.3.12.1685 и событие АвтоПодбор
Я
   PuhUfa
 
09.10.18 - 14:32
УФ. На форме лежит ДеревоЗначений. У него есть колонка с типом "строка". Назначено событие АвтоПодбор

&НаКлиенте
Процедура НазначенияНазначениеАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ТекГруппа = Элементы.Назначения.ТекущиеДанные;
    Пока ТекГруппа.ПолучитьРодителя() <> Неопределено Цикл
        ТекГруппа = ТекГруппа.ПолучитьРодителя();
    КонецЦикла;
    ДанныеВыбора = НазначенияНазначениеАвтоПодборНаСервере(Текст, СокрП(ТекГруппа.Назначение), ?(Объект.Диагнозы.Количество() = 0, Неопределено, Объект.Диагнозы[0].Диагноз));    
КонецПроцедуры

Наблюдаю проблему: при первом срабатывании "АвтоПодбор" выделяется весь введенный текст и при дальнейшем вводе он затирается. Последующие срабатывания события так уже не делают и курсор остается после последнего введенного символа. Проблема появилась после перехода на 8.3.12.1685. На 8.3.10.2650 все работает корректно. Это очередной из косяков 12го релиза или просто теперь АвтоПодбор нужно как то по другому готовить?
 
 
   1Сергей
 
1 - 09.10.18 - 14:34
(0) у тебя после цикла ТекГруппа будет Неопределено. Ты в курсе?
   1Сергей
 
2 - 09.10.18 - 14:36
хотя, нет.
(1) сторно
   Cyberhawk
 
3 - 09.10.18 - 14:41
Почитай примечание в СП
   PuhUfa
 
4 - 09.10.18 - 14:49
(3) Ты про:
Примечание:
В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере.
?
А в 10м можно было? И если это происходит из-за "передергивания" сервера то почему введенный текст выделяется только при первом срабатывании, а потом все нормально...
   PuhUfa
 
5 - 09.10.18 - 15:01
(3) Перенес НазначенияНазначениеАвтоПодборНаСервере(...) из модуля формы в общий модуль, вроде все стало нормально. Спасибо.
   Cyberhawk
 
6 - 09.10.18 - 15:08
"Ты про"// Да
10м можно было?"// В СП это всегда было. Даже если на каком-то релизе / релизах негативного эффекта от этого не наблюдалось, то теперь ребятки из 1С привели поведение системы к задокументированному, и это хорошо.

"из модуля формы в общий модуль"// Не забывай про передачу параметров по значению
   PuhUfa
 
7 - 09.10.18 - 15:13
(6) Понял. Еще раз спасибо!
   PuhUfa
 
8 - 10.10.18 - 12:53
Возвращаясь к вчерашней проблеме... До переноса в общий модуль, функция НазначенияНазначениеАвтоПодборНаСервере(...) у меня имела &НаСервереБезКонтекста.
В чем отличие работы функции в модуле формы с директивой &НаСервереБезКонтекста от ее работы в общем модуле?
   Cyberhawk
 
9 - 10.10.18 - 12:57
Отличий быть по идее не должно.
Ты при переносе точно не изменял параметры (их перечень и слово "Знач") этого перенесенного метода?
   PuhUfa
 
10 - 10.10.18 - 12:59
Нет, вообще ничего не менял, просто сделал копипаст в общий модуль и исправил вызов
 
 Рекламное место пустует
   Cyberhawk
 
11 - 10.10.18 - 13:04
Вот если бы ты еще проверил на разных релизах плафтормы поведение, когда этот метод находится в самой форме (&НаСервереБезКонтекста), а то пока это очень похоже на баг
   Cyberhawk
 
12 - 10.10.18 - 13:05
Или лучше подготовил бы простую внешнюю обработку с формой, в которой можно наблюдать такое поведение
   PuhUfa
 
13 - 10.10.18 - 13:35
(12) Сделал.
1С:Предприятие 8.3 (8.3.12.1685) + Бухгалтерия предприятия, редакция 3.0 (3.0.65.80)
Если интерфейс "такси" - то все хорошо. Если переключаю на "формы в закладках" то появляется проблема из (0)
   Cyberhawk
 
14 - 10.10.18 - 13:36
Отвязать обработку от конфигурации не получится?
   PuhUfa
 
15 - 10.10.18 - 13:39
   Cyberhawk
 
16 - 10.10.18 - 13:57
Проверил на 8.3.12.1412 и Бухгалтерия предприятия, редакция 3.0 (3.0.42.85), при наборе (что первом, что не первом) ничего не выделяется / не затирается
   Cyberhawk
 
17 - 10.10.18 - 14:00
А, это в Такси проверял. Щас в УФ в закладках проверю
   Cyberhawk
 
18 - 10.10.18 - 14:02
Все нормально вроде. Ты б на видео показал, как косяк выглядит и что означает "при первом" - один раз за весь сеанс или при каждом новом открытии этой обработки такое должно быть
   DrWatson
 
19 - 10.10.18 - 14:03
Проверил на 8.3.12.1567, проблем не увидел.
   Cyberhawk
 
20 - 10.10.18 - 14:04
Автор, ты проверь на озвученных в (16) и (19) релизах платформы и отпишись
   PuhUfa
 
21 - 10.10.18 - 17:16
gif'ка https://drive.google.com/open?id=1saUCcf0e57CkZLoIUKX8qW2CldyQysr2

(20) на 1412 и 1567 смысла проверять нет... на 1685 переехал исключительно из-за того что последняя БП просит не ниже. Если проверять другие релизы, то только те которые выше. Пока думаю, что в выходные откачу сервер с управленческой обратно на 8.3.10.2650 а для БП и ЗУП поставлю отдельный. Там есть проблема с COM, но сегодня весь день тестировали, вроде есть неплохой вариант подсовывать коннектор нужной версии. По крайней мере из другой управленки на 8.2.19.80 нормально смогли подключиться к БП на 8.3.12.1685
   1Снег
 
22 - 12.10.18 - 14:50
(21) неплохой вариант подсовывать коннектор нужной версии.
Неплохой вариант это использовать web-сервис, который быстрее и не зависит от версии 1С


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