Консоль запросов. Текст запроса не смещается
|
|
nclockworker | Дата: Вт, 01.06.2021, 06:36:45 | Сообщение # 1 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| Если в консоли запросов начать вводить запрос с открывающей скобки, то текст не смещается вниз при редактировании запроса.
Код ВЫБРАТЬ * , 1, 2, 3 ИЗ ( ВЫБРАТЬ 1 )
Сообщение отредактировал nclockworker - Вт, 01.06.2021, 06:37:59 |
|
| |
tormozit | Дата: Вт, 01.06.2021, 07:10:13 | Сообщение # 2 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Ты консоль запросов почему то назвал конструктором запросов. Это некорректно. Исправил. На твоем видео непонятно какие ты нажимаешь клавиши. Без этого ценность видео в данном случае невелика. Надо использовать визуализацию нажатия клавиш. Это умеет делать например BB FLashBack . Все подобные проблемы являются ошибками платформы. О них я уже давно сообщил в 1С. Их там воспроизвели, но исправлять видимо уже не будут, т.к. обычные формы. В каких то ситуациях мне удалось их пролечить, в каких то не удалось. Полное избавление от них может принести только HTML редактор.
|
|
| |
tormozit | Дата: Ср, 02.06.2021, 00:16:02 | Сообщение # 3 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Похожие проблемы https://www.hostedredmine.com/issues/882423 https://www.hostedredmine.com/issues/840411
|
|
| |
nclockworker | Дата: Вс, 13.06.2021, 09:41:58 | Сообщение # 4 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| Нашел закономерность появления ошибки и её исчезновения при обновлении текстового поля. Если переключиться на другую вкладку, то видно, что на вкладке запроса обновляется количество строк текста в скобках. Тоже самое происходит с некоторой периодичностью автоматически, после этого ошибка тоже пропадает.
Еще помогает команда Alt+Shift+A (установить фокус ввода на поле текста)
Сообщение отредактировал nclockworker - Вс, 13.06.2021, 09:48:55 |
|
| |
nclockworker | Дата: Вс, 13.06.2021, 10:00:51 | Сообщение # 5 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| Похоже, что всему виной комбинация Shift+Пробел. И этот баг воспроизводится только в текстовых полях ИР, если открыть просто через меню Файл произвольный текст запроса, то он не воспроизводится.
|
|
| |
nclockworker | Дата: Вс, 13.06.2021, 10:13:34 | Сообщение # 6 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| Shift+Space это команда - "Выполнить шаблон", воспроизвел баг просто нажав на эту команду. После неё остается лишний пробел (0x20).
Сообщение отредактировал nclockworker - Вс, 13.06.2021, 10:21:33 |
|
| |
tormozit | Дата: Вс, 13.06.2021, 12:08:57 | Сообщение # 7 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Вставка пробела сочетанием SHIFT+Space является задуманным поведением. Точно также работает редактор конфигуратора. Возможно в файле шаблонов, который ты подключил, есть такой шаблон, который вставляет много пустых строк.
У меня такая проблема (появления лишних строк в начале текста) не воспроизводится. Возможно так работает только в 8.3.13 или дело в последовательности нажатия клавиш, которые ты не описал/показал.
|
|
| |
nclockworker | Дата: Вс, 13.06.2021, 16:45:39 | Сообщение # 8 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| Я ничего не подключал. Дело не в пустых строках. Эти строки я сам добавил кнопкой Enter. Смысл в том, что если вызвать Shift+Space где-то между строками, то при нажатии Enter после вставленного пробела (командной выполнения шаблона) - окно прокручивается, если текстовый курсор сместить перед этим пробелом и нажать на Enter, то будет казаться, что ничего не меняется на экране, хотя на самом деле где-то вверху за экраном вставляются строки.
|
|
| |
tormozit | Дата: Вс, 13.06.2021, 17:04:36 | Сообщение # 9 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Как я уже писал выше подобные проблемы, сильно завязанные на нажатия клавиш, надо описывать с применением специальных средств визуализации этих самых нажатий. Вот например в BB Flashback это делается так

Прикрепил итоговое видео. Проблему воспроизвел.
|
|
| |
tormozit | Дата: Вс, 13.06.2021, 17:12:20 | Сообщение # 10 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Вот последние мои изыскания на эту тему и даже зарегистрированная ошибка платформы, которой повторяюсь не суждено быть исправленной
https://www.hostedredmine.com/issues/840411 https://partners.v8.1c.ru/forum/topic/1860281 https://bugboard.v8.1c.ru/error/000059783
|
|
| |
nclockworker | Дата: Вс, 13.06.2021, 17:38:08 | Сообщение # 11 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| А, все разобрался. Кнопка "Выполнить" в обработке в данном случае не воспроизводит ошибку. Главное, что выполняется обработчик "ПриОткрытии" и текста не видно действительно.
Сообщение отредактировал nclockworker - Вс, 13.06.2021, 17:54:40 |
|
| |
nclockworker | Дата: Вс, 13.06.2021, 18:48:19 | Сообщение # 12 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| Ошибку конкретно в обработке удалось обойти через вызов Обработчика Ожидания, может быть в случае с контекстной подсказкой тоже можно как-то подобно обойти?
|
|
| |
tormozit | Дата: Вс, 13.06.2021, 19:19:08 | Сообщение # 13 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Обработчик ожидания - это асинхронность с минимальной реакцией в 100мс. Ее допустимо применять в нечасто выполняющихся операциях. А в твоем случае операция частая - любое программное изменение текста в поле может приводить к такой проблеме, если место изменения - первая строка в поле. А если говорить чисто про описанную мной проблему выше по ссылке, то там же описан способ обхода, который с тех пор применяется в ИР. Однако не работает для обхода обнаруженной тобой проблемы.
|
|
| |
nclockworker | Дата: Вс, 13.06.2021, 19:35:34 | Сообщение # 14 |
Генерал-майор
Группа: Пользователи
Сообщений: 437
Репутация: 342
Статус: Оффлайн
| А где у меня частое программное изменение текста в поле? Обычно Shift+Space я нажимаю не намеренно при быстром наборе текста с зажатым шифтом. И я не совсем понимаю зачем контекстная подсказка вообще пытается что либо выделять или вставлять пробел, если под текущим курсором нет слова для которого можно было бы вывести подсказку?
|
|
| |
tormozit | Дата: Пн, 14.06.2021, 10:00:21 | Сообщение # 15 |
Генералиссимус
Группа: Администраторы
Сообщений: 6930
Репутация: 184
Статус: Оффлайн
| Удалось разобраться с проблемой https://www.hostedredmine.com/issues/929519 https://www.hostedredmine.com/issues/929533
Нашел 2 способа обхода в рамках ИР
1. Двойной вызов нажатия ALT.
Код ирОбщий.ОтправитьНажатияКлавишЛкс("%"); ирОбщий.ОтправитьНажатияКлавишЛкс("%");
2. Через обработчик ожидания
Код ФормаПустышка = ирКэш.ФормаПустышкаЛкс(); ФормаПустышка.Открыть(); ФормаПустышка.Закрыть();
Пока оставил второй. Установку границ выделения через обработчик ожидания делать нельзя, т.к. на новые границы выделения опирается дальнейший синхронный код.
|
|
| |