Доработка (улучшение) навигатора по метаданным

nytlenc Закрыто Средний

Предлагаю добавить в навигатор по метаданным дополнение в фильтр для поиска.
Чтобы при добавлении вхождений слов искал еще и по типу метаданных.
Например, вводишь "конс", "конст", "константа" и т.п. и он тебе фильтрует константы.
"док", "доку", "документ" и т.д. - оставляет только документы

см скрин.

Комментарии

bolsun
#1, ред. 02 апреля 2024 13:47

Попробуй добавить слеш перед типом


bolsun изменил статус на Открыто


tormozit
#2, 02 апреля 2024 15:52

Да со слешем нормально работает.
В ИР похожий фильтр в дереве метаданных я сделал чуть по-другому:

Слово до первой точки без пробела ищется в имени первого уровня. Это ускоряет поиск.
Например "док.реал тов" найдет только объекты в ветке "Документы" одновременно со словами "реал" и "тов", а "реал тов" найдет объекты во всех ветках.


nytlenc
#3, 02 апреля 2024 15:53

(1) bolsun, да со слешем работает. Но есть ряд неудобств.
Самый основной это писать слеш 😃
Гораздо удобнее в фильтр добавить название метаданных.

Кстати, сейчас например нет возможности, быстро отсеять только регистры сведений, например, или регистры накопления.

Пример

Было бы гораздо удобнее, если бы фильтр "док нач зап" выдавал документ "НачислениеЗарплаты", документ "ДокументНачислениеЗарплаты" и т.п.

"рег св курсы" - регистр сведений "курсы" или "регистр сведений "РегистрКурсы" или регистр сведений "РегистрКурсыВалют" и т.п.


nytlenc
#4, 02 апреля 2024 15:54

(2) tormozit, А регистры сведений как отфильтровать, а накопления? )))


tormozit
#5, 02 апреля 2024 15:55

(4) nytlenc, "свед. курс" и "коп. ост"


Семён
#6, 02 апреля 2024 15:57

Поддержу вариант БЕЗ всяких слешей - должно быть нативно понятно.


nytlenc
#7, 02 апреля 2024 15:57

(5) tormozit, Не работает


tormozit
#8, ред. 02 апреля 2024 15:59

(7) nytlenc, я писал про ИР. В Турбоконфе можно доработать программу так же.


tormozit
#9, 02 апреля 2024 16:00

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


bolsun
#10, ред. 02 апреля 2024 16:01

(3) nytlenc, а если я не хочу чтобы мне регистры выпадали, когда я ищу только объекты содержащие (начинающиеся) "Рег" в имени?


Семён
#11, 02 апреля 2024 16:02

пользователь чаще ЗНАЕТ, какой объект он ищет


tormozit
#12, 02 апреля 2024 16:03

В общем я голосую против варианта "без слешей/точек"


bolsun
#13, 02 апреля 2024 16:03

(11) Семён, т.е. мне нужно будет каждый раз тип писать? чтобы среди левых объектов не выискивать нужный?


Семён
#14, 02 апреля 2024 16:04

мы же не 1С )))
давайте опции: прозрачно без, с точкой как в ИР или как было раньше - со слешем


bolsun
#15, 02 апреля 2024 16:06

Обычно нужный объект находится вверху списка, найти его не составляет труда. Если нужно добавил слеш, и отфильтровал по типу


nytlenc
#16, 02 апреля 2024 16:07

(10) bolsun, основной паттерн использования навигатора метаданных - это фильтрация с переходом к конкретному объекту метаданных. Когда ты идешь в навигатор - ты с вероятностью 80% точно знаешь какой объект тебе нужен, его имя, тип и т.д. а не просто поабловаться фильтром и посмотреть - а сколько в конфигурации сейчас объектов начинающихся на "рег".
Вот ты и приходишь в навигато, ввел "рег" и видишь тебе выпало все "Реристрация", "РегулярныеВыражения" и прочее прочее. А тебе изначальн регистр сведений нужен был, а может и регистрация.
И когда ты видишь список (думаю больше 10 метаданных) ты обязательно уточнишь
допишешь например "рег док", вот тут и можно отфильтровать дополнительно - документы
А если я написал "рег св" значит уже мне нужны регистры сведений очевидно и вместе с ними документ "РегистрацияСведений" в том числе 😃
И вот я допишу например так "рег св док" очеивдно что в поиске останунтся например:
Документ - "РегистрацияСведений"
и регистр свдений "ДокументыОрганизаций" и им подобные.
Докидывать фильтры в конец строки, сужая критерии поиски и видя глазами результат, на подобии "рег" "док" "св" "пер", гораздо удобнее чем писать слеш, току или еще что то.
Когда я увижу нужный объект метаданных я просто уже ткну мышью и все 😃 пусть там будет даже 10-12 объектов по итогу


bolsun
#17, 02 апреля 2024 16:09

(16) nytlenc, у меня всегда почему-то нужный объект в самом верху списка и я его не ищу по нему.


bolsun
#18, 02 апреля 2024 16:11

Можно добавить какой-то еще символ, дополнительно к слешу, чтобы не тянутся к нему.


nytlenc
#19, 02 апреля 2024 16:15

(18) bolsun, вот в данном случае "рег св" или "конст" как раз и был бы этим удобным символом - интуитивно понятным, потому что помнишь что тебе нужен регистр свденеий версий.... чего то там еще, а не "ВерсииПодсистемОбластейДанных", это же еще все надо читать глазами и вдумываться.
"Обезъянке" проще написать "конст" или "рег св". Человек не любит думать 😃


bolsun
#20, 02 апреля 2024 16:19

(16) nytlenc, ВерсииПодсистемОбластейДанных - тоже регистр сведений, как поможет в данном случае отбор по типу?


nytlenc
#21, 02 апреля 2024 16:20

Есть возможность реализовать такой вариант фильтрации и добавить какую-то галку в навигатор метаданных?
Например "Фильтр по метаданным" или что-то типа того?


bolsun
#22, 02 апреля 2024 17:10

(21) nytlenc, такой фильтр может работать только в режиме поиска вхождений. Тип объекта тоже придется добавить впереди через точку. С подсветкой тоже могут быть в этой версии проблемы.
Вот пробная версия, попробуйте.
https://disk.yandex.ru/d/ay0Wg6IBTsxSxg


bolsun
#23, 02 апреля 2024 17:12

Кэш нужно обновить, включить флаг "Вхождение сроки"


bolsun
#24, 02 апреля 2024 17:13

С сортировкой тоже непонятно что делать в этом случае.


bolsun
#25, 02 апреля 2024 17:16

Тут у пользователя возникнет недоумение, почему "АдресныеОбъекты" внизу
В общем пока все странно это работает и неочевидно.


nytlenc
#26, ред. 02 апреля 2024 17:57

(25) bolsun, у него исчезнет недоумение когда он посмотрит на картинку и добавит в конце "рег св" и в итоге строка поиска будет выглядеть "адр об рег св"
ну или "адр общ" или "адр общ мод"


bolsun
#27, 02 апреля 2024 18:11

(26) nytlenc, вот про что я выше писал, что нужно будет постоянно указывать тип.


nytlenc
#28, 02 апреля 2024 18:22

(27) bolsun, ну и отлично 😃 Я к слову тоже писал выше, что "Когда ты идешь в навигатор - ты с вероятностью 80% точно знаешь какой объект тебе нужен". Так что быстрее указать тип, в виде "рег св" чем писать слеши или еще как-то филтровать 😃


nytlenc
#29, 03 апреля 2024 05:55

(27) bolsun, вот то о чем я говорил. Сделать на примере типового 1С-ного фильтра по метаданным.

и т.п.


bolsun
#30, 03 апреля 2024 19:38

Не получил отзыв о тестовой версии, в которой как раз такой поиск реализован.


tormozit
#31, 03 апреля 2024 20:47

(29) nytlenc, Слабое место такого фильтра - хочу найти все объекты в имени которых есть одновременно "ре" и "об" без учета типа метаданных (первого уровня дерева).


Семён
#32, 03 апреля 2024 22:18

(31) tormozit, так а зачем искать все ?
Ну ок - надо значит надо )
Тогда искать надо слева направо исключительно
"РегистрСведений.КурсыВалют", "ОбщийМодуль.РегистрыСведений"
Ну и да - ЕСЛИ в тексте поставить точку - то она в логику разделителя хорошо ложится
Надо найти "ре об" - пишем ". ре об" и тогда поиск после точки полного имени будет.
На поиск по RegEx переходить не охота )


bolsun
#33, 03 апреля 2024 22:26

(32) Семён, вот так упростили поиск. Теперь еще нужно будет думать как правильно написать, слева направо, справа налево, с точкой или без )) вместо того чтобы добавить слеш


Семён
#34, 03 апреля 2024 23:17

(33) bolsun, точку бы я поставил - причину написал выше
А слеш - ну ни в жизни
Я всегда писал слева направо
Без точки - отлично если система помогает и ищет в другом порядке (добавляя иногда лишнего в поиск).
Но по идее релевантность- должна запрошенному порядку приоритет отдавать.
Ну а точка - точка в имени есть - её можно догадаться поставить.
Она же ставит точку ))))) в вопросе - где искать, а где нет


nytlenc
#35, ред. 04 апреля 2024 05:43

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

Хочешь получить все таки регистр сведений где есть "ре об" то докинешь в конец "рег св" и получишь это

или "рег св ре об" не важно, результат должен быть точно таким же

Я не вижу минусов вообще в таком подходе. Предлагаю еще раз подумать над тем, как часто требуется найти конкретный объект метаданных зная его примерное имя "Ре об чего то там...." и точно зная тип объекта метаданных? Я думаю чаще нужно искать конкретный объект метаданных зная его тип заранее - это основной case.

Зачем вы всё усложняете, изобретаете велосипед и делаете "под себя", через точки, слеши и т.д.? Это делает поиск неудобным. 1С-ным поиском в режиме 1С предприятие пользуются миллионы человек и десятки тысячи программистов. К нему все привыкли и принцип его работы интуитивно понятен всем. Я предлагаю построить "базу" для навигатора на основе этого. Тогда любой, кто только начинает пользоваться TurboConf будет без труда ориентироваться в паттернах которые надо применять для поиска в навигаторе уже с нуля, а не страдать, пытаясь написать точку, слеш и т.д.

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


nytlenc
#36, 04 апреля 2024 06:01

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


tormozit
#37, ред. 04 апреля 2024 07:50

(35) nytlenc, про "твоя цель достигнута" выдаешь желаемое за действительное. Вот результат и он содержит очень много элементов, в которых нет одновременно обоих вхождений в имени объекта


nytlenc
#38, 04 апреля 2024 08:11

В общем я понял. Пойду по пути наименьшего сопротивления и не буду тратить время впустую.
nytlenc изменил статус на Закрыто


bolsun
#39, 04 апреля 2024 12:19

(38) nytlenc, зачем я тогда делал тестовую версию?


bolsun
#40, 04 апреля 2024 12:24

Видимо так нужен функционал, что за два дня никто не попрбовал ))


Семён
#41, 04 апреля 2024 12:27

(40) bolsun, Ну я бы пробовал - с удовольствием.
Нужна лицензия тестировщика отдельная (типа на пару часов в день что-ли) )))), чтобы каждый раз не просить сбрасывать.


bolsun
#42, ред. 11 апреля 2024 12:28

Тестовая версия.

  1. Обновить кэш
  2. Включить флаг "Вхождения строки"
  3. Подсветка может отображаться некорректно

https://disk.yandex.ru/d/Ow-JETq_U_l9cg


bolsun
#43, ред. 11 апреля 2024 13:55

В ходе расследования выяснилось, что предлагаемый фильтр должен:

  1. Не учитывать порядок вхождений по заглавным буквам "общ наз исп повт" и "общ наз повт исп" должен отображать
  2. Не должен выкидывать из поиска слова, если пропущено вхождение "общ повт исп"
  3. Должен добавлять вхождения из названия типа метаданных, неважно с какой стороны оно добавлено
    "рег све адр класс" и "адр класс рег свед".
  4. В названии не должно быть типа метаданных, а как и сейчас в скобках


bolsun
#44, 11 апреля 2024 17:20

https://disk.yandex.ru/d/ay0Wg6IBTsxSxg

Подсветка не работает в этой версии, писать об этом не нужно.


bolsun
#45, ред. 11 апреля 2024 17:29

Предлагаю так:

  1. Будет флаг на форме "Метаданные".
    Если он включен то будет искать с учетом метаданных.
  2. То что выкидывает из поиска значения, если вхождения идут не по порядку - неправильно. В этой версии исправлено.
  3. Смарт фильтр, который работает с учетом порядка вхождений, будет работать только если в запросе не используются пробелы "общназповисп"
  4. В остальных случаях новый вариант, но с учетом флага "Метаданные"
  5. Фильтр по слешу останется опционально.
  6. Поиск с флагом "Вхождение строки" будет искать по старому, ВСЕ вхождения, включая с маленькой буквы. "тов" найдет слово "Объектов"


bolsun
#46, ред. 12 апреля 2024 16:02

Вот версия поновее, тут добавлена подсветка.
Подсветку вхождений в типе метаданных, которое в скобках, пока не делал. Не знаю нужно ли это вообще.
Также исправлена сортировка и исправлена подсветка при флаге "Вхождение строки"

Кэш нужно обновить, если обновляли на предыдущей тестовой. Вообще теперь это не требуется.

Версия должна быть 6.1.8868.32339
https://disk.yandex.ru/d/ay0Wg6IBTsxSxg


bolsun
#47, 12 апреля 2024 00:09

Теперь кстати будет меньше вопросов по работе флага "Вхождение строки" т.к. видно почему попадает в список


bolsun
#48, 12 апреля 2024 00:11

@tormozit тоже рекомендую попробовать, вдруг такой режим правда будет удобнее чем со слешем.


bolsun
#49, 12 апреля 2024 00:14

слеш, кстати тоже должен работать, если вдруг нужно жестко ограничить фильтр


tormozit
#50, 12 апреля 2024 00:20

Мой любимый тест. Нужны все объекты в имени которых есть одновременно "рег" и "об"

ИР - прекрасно

Турбоконф - слишком много бесполезных результатов


bolsun
#51, ред. 12 апреля 2024 00:24

(50) tormozit, отключи дочерние объекты.
и увидишь прекрасный TurboConf


tormozit
#52, 12 апреля 2024 00:29

(51) bolsun, для объектов первого уровня да. Но для дочерних (реквизит, табличная часть, форма, макет) непонятно как достичь аналогичного эффекта.


bolsun
#53, 12 апреля 2024 00:29

(52) tormozit, а где на твоем скриншоте это?


tormozit
#54, 12 апреля 2024 00:32

(53) bolsun, если ты про ИР, то там только объекты первого уровня. В навигаторе конфигуратора такое есть


bolsun
#55, ред. 12 апреля 2024 00:34

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


tormozit
#56, ред. 12 апреля 2024 22:11

Попробовал через слэш указать отбор по типу метаданных "реквизит", чтобы найти все реквизиты, содержащие в имени одновременно "ре" и об", но тоже получил неожиданный результат


tormozit
#57, ред. 12 апреля 2024 08:07

Еще кажется было бы полезно добавить всплывающую подсказку для флажков в этом фильтре. Хотя бы для "Вхождение строки", т.к. я не понимаю как он работает и кажется что не только я. Да и для самого поля ввода фильтра тоже не помешает более развернутая подсказка, т.к. логика становится достаточно непростой и для эффективного использования нужно как то донести все тонкости до пользователя

Пример как подсказка выглядит в ИР

Строка фильтра. Разбивается на слова пробелами и кавычками и ищется вхождение одновременно всех слов в имени объекта.
Слово до первой точки без пробела ищется в имени первого уровня. Это ускоряет поиск.
Например "док.реал тов" найдет только объекты в ветке "Документы" одновременно со словами "реал" и "тов", а "реал тов" найдет объекты во всех ветках.


bolsun
#58, ред. 12 апреля 2024 11:15

(56) tormozit, на твоей картинке наглядно видно почему отображается элемент в списке.
В каждом из них есть вхождение "ре" и "об" и они реквизиты.
Если нужно, что бы искало по вхождениям в CamelCase, нужно скачать тестовую версию и отключить флаг вхождение строки.

Вот скриншоты демонстрирующие разницу

Флаг выключен

Флаг включен


bolsun
#59, 12 апреля 2024 11:19

Если термин "Вхождение строки" непонятен, могу заменить его на "Поиск по подстроке", но вроде это одно и тоже.


Семён
#60, 12 апреля 2024 11:26

(59) bolsun, "Поиск по подстроке" это когда ищем "Ад Об" и в строке "АдресныеОбъекты" его не находим, так как ищет именно от а до я.
Тут же нечто иное!


bolsun
#61, 12 апреля 2024 11:33

(60) Семён, это откуда такое определение взялось?

В информатике подстрока — это непустая связная часть строки.
Про большие буквы первый раз слышу.

Даже в 1С
СтрНайти (StrFind)
СтрНайти(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>)
Находит первое вхождение искомой строки как подстроки в исходной строке.
Сравнение выполняется с учетом регистра.


bolsun
#62, 12 апреля 2024 11:34

(61) bolsun, тут и термины вхождение, и подстрока и поиск присутствуют.
Про заглавные буквы не сказано, только то что ищет с учетом регистра.


Семён
#63, 12 апреля 2024 11:49

(61) bolsun, я про регистр не говорю
я лишь о том, что
СтрНайти("АдресныеОбъекты", "Ад Об")
вернёт 0
то есть режим точно не по подстроке


bolsun
#64, 12 апреля 2024 11:50

(63) Семён, ну "Поиск по подстрокам" понятнее?
Логично, что если их несколько то ищет, чтобы присутствовали все вхождения.


bolsun
#65, 12 апреля 2024 11:52

(64) "Поиск вхождений", "Вхождения подстрок", "Поиск по подстрокам" выбирайте какое нравится.


bolsun
#66, 12 апреля 2024 16:03

Версия с некоторыми исправлениями работы фильтра
https://disk.yandex.ru/d/ay0Wg6IBTsxSxg


bolsun
#67, 12 апреля 2024 16:10

Пришлось логику фильтра немного улучшить, чтобы учитывалось количество одинаковых вхождений или вхождений, которые уже входят в другие вхождения.
Типа "Док док док" - должно быть не меньше 3-х вхождений "док"
"до док" должно быть не меньше 1 "до" и 1 "док"
"об обо об об" не меньше 3 "об" и 1 "обо"


bolsun
#68, ред. 12 апреля 2024 16:12

Поэкспериментировав могу признать, что пока фильтр выглядит удобным.

Просто буквально но сокращенно пишешь что нужно найти
Надо форму списка справочника Валюты

"вал фор спи"


bolsun
#69, 12 апреля 2024 16:13

Ежели надо жестко ограничить тип, то ставим слеш


tormozit
#70, ред. 12 апреля 2024 22:36

Я так и не понял как найти все реквизиты, в прямом (без родителя и типа) имени которых есть одновременно подстроки "ре" и "об". Про флажок "Вхождения строки" я теперь понял, что его надо включить для решения этой задачи.

Ну или вот еще проще тест. Найти все реквизиты в прямом (без родителя и типа) имени которых есть "рек". Логика подсказывает что надо вводить "рек /рек". Но получаю кучу бесполезных результатов.

Зачем искать подстроку без слеша в том фрагменте, где уже найдена подстрока со слэшем? Это я про фрагмент "Реквизит".


bolsun
#71, 12 апреля 2024 22:36

(70) tormozit, речь про тестовую версию как я полагаю?


tormozit
#72, 12 апреля 2024 22:36

(71) bolsun, да. Скачал последнюю из этой темы.


bolsun
#73, 12 апреля 2024 22:37

(72) tormozit, да, для дочерних объектов поиск в данном случае работает некорректно, посмотрю.


bolsun
#74, 12 апреля 2024 22:47

(70) tormozit, вхождение строки, кстати, в этой версии уже не нужно включать, если ты хочешь искать только с учетом CamelCase.


bolsun
#75, 12 апреля 2024 22:48

Нужно вообще убрать этот флаг тогда, раз столько непонимания как он работает.


bolsun
#76, ред. 12 апреля 2024 22:50

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

Вынесу в Настройки показывать флаг или нет.


tormozit
#77, 12 апреля 2024 22:54

(74) bolsun, я ни разу писал про CamelCase. Я четко описал задачу - есть подстрока А и Б. Хочу увидеть все реквизиты, в имени которых есть обе подстроки (в любом месте без учета регистра букв). Например для фильтра "ре об /рек" я ожидаю увидеть "Реквизит.БременскийБоб".
А вот поиск по началам слов с разбивкой через CamelCase - бесспорно тоже полезный режим, но не всегда нужный. Я думал включенный флажок "Вхождения строки" его отключает.


bolsun
#78, 12 апреля 2024 22:54

(77) tormozit, так и есть отключает.


bolsun
#79, 12 апреля 2024 22:55

(77) tormozit, тогда мне нужно четко понимать, что из полного названия типа должно попадать в фильтр. Я понял, что как минимум не должно повторяться это .Реквизит.ДатаЗаписи (Реквизит)


bolsun
#80, 12 апреля 2024 22:56

А тут должно попасть .ДополнительныеРеквизиты.Реквизит.Значение?


bolsun
#81, 12 апреля 2024 23:01

(80) bolsun, сам отвечу.
Видимо должен быть флаг "Метаданные" (ну или подумать как его назвать).
Если он включен, то весь путь должен попадать.
А если выключен то, только Имя объекта.


bolsun
#82, ред. 12 апреля 2024 23:08

Подправил фильтр со слешем, получается так. Но ищет по всему пути

Если нужно только по наименованию, то только с доп. флагом "Метаданные".


bolsun
#83, ред. 12 апреля 2024 23:14

Еще примеры

без слеша


bolsun
#84, ред. 12 апреля 2024 23:26

Версия 6.1.8869.2251 с исправленным фильтром по типу со слешем

https://disk.yandex.ru/d/ay0Wg6IBTsxSxg

Ищет по ВСЕМУ пути, для поиска по Названию будет отдельный флаг.


tormozit
#85, ред. 12 апреля 2024 23:30

Да. Наверное флаг с примерным смыслом "Искать подстроки без слеша только в имени объекта" покроет мои сценарии.


tormozit
#86, ред. 12 апреля 2024 23:51

Или лучше даже назвать флаг "С учетом типа". Если он включен, то искать в полном имени (все типы + имена родителей), иначе искать только в именах объектов (с родителями). Если он выключен и поисковой строке указан фильтр по типу, то тогда уже искать только в имени самого объекта. Правда так не будет покрыт мой исходный тест - найти все объекты в имени которых (без учета родителей) есть все подстроки.


bolsun
#87, 12 апреля 2024 23:59

(86) tormozit, лучше наоборот "Только в имени". Все логично получается.


bolsun
#88, ред. 13 апреля 2024 00:02

Вот рек /рек

Подсветка показывает не только в имени (алгоритм подсветки так работает). Но ищет только по имени.


bolsun
#89, 13 апреля 2024 00:05

(88) bolsun, немного сортировку еще нужно наладить.


bolsun
#90, ред. 13 апреля 2024 00:07

(89) так лучше


bolsun
#91, 13 апреля 2024 00:10

6.1.8869.3846

Добавлен флаг "Только в имени"

https://disk.yandex.ru/d/ay0Wg6IBTsxSxg


bolsun
#92, ред. 13 апреля 2024 00:13

Старый смарт фильтр, который позволял искать без пробелов отключен. Например прихнак = ПриходнаяНакладная.

Так как за 10 лет устал доказывать что это удобно, все все равно ищут с пробелами. А увязать это в текущую логику тогда совсем не понятно как.


bolsun
#93, ред. 13 апреля 2024 00:23

Итак, по умолчанию фильтр будет искать в CamelCase, включая тип и полный путь, но с каждой дополнительной подстрокой все точнее.
Всегда имеется возможность жестко задать фильтр по типу через слеш.
Можно ограничить поиск именем объекта.
Можно расширить поиск путем включения флага "Вхождение строк", будет искать без CamelCase.

Предложение, может так и назвать флаг CamelCase (включен по умолчанию) и инвертировать поведение, возможно будет понятнее.


tormozit
#94, 13 апреля 2024 00:28

(93) bolsun, CamelCase - хотя и распротраненое понятие, но все таки в мире 1С не всем знакомо. Думаю все же к нему нужна будет подсказка, которая поможет узнать первый раз его развернутый смысл. Или выбрать что то более простое, например "От начала слов" или "В любой части слова".


tormozit
#95, ред. 13 апреля 2024 00:38

(91) bolsun, если ищу по конкретному типу только в имени объекта, то нужно отдавать ему приоритет при обрезании строки, т.е. надо обязательно показывать имя объекта целиком. Сейчас же его часто не видно, например у реквизитов табличных частей.


bolsun
#96, 13 апреля 2024 00:32

(95) tormozit, согласен


tormozit
#97, ред. 13 апреля 2024 00:37

Фильтр хочется чтобы сохранялся, даже если я не выбрал из его результата объект для открытия. Ведь бывает сразу не угадаешь нужный фильтр, закроешь навигатор, сходишь уточнить что то где то, снова вызываешь навигатор чтобы добавить в фильтр еще подстроку или поправить одну из уже введенных. Но сейчас она не сохраняется в таком случае. Согласен, что и негативный эффект - будет больше слабо полезных фильтров будет запоминаться. Но все таки кажется заново вводить одно и тоже - более напряжно, чем видеть немного лишних предыдущих фильтров.


tormozit
#98, ред. 13 апреля 2024 00:43

(91) bolsun, да, флаг работает как мне хотелось. Но было бы удобнее, если бы подсветка вхождений не затрагивала типы и родителей в этом случае. Так будет легче глазами находить интересующие фрагменты в результатах, т.к. будет меньше отвлекающих факторов.


tormozit
#99, 13 апреля 2024 00:47

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


bolsun
#100, 13 апреля 2024 14:01

https://disk.yandex.ru/d/jBXJwQptztBDQQ

При включенном флаге "Только в имени" вхождения теперь подсвечиваются только в имени.
После клика на флажки настроек фокус автоматически возвращается в поле поиска.
Улучшена сортировка.


bolsun
#101, 14 апреля 2024 16:17

В общем, жду отзывов по этой версии от инициаторов тикета и участников дискуссии, для принятия решения о включении этих изменений в тестовую ветку, а также в какую 6.1 или уже следующие.


bolsun
#102, 14 апреля 2024 23:03

Версия 6.1.8871.1757

  • Исправлен поиск объектов по полному пути, когда в искомой строке есть символ точки.
  • Исправлен поиск объектов, при написании CamelCase слитно, например ЯндПерев. Поиск будет происходить по "Янд Перев".
  • В жестком фильтре по типу метаданных теперь можно использовать обратный слеш и прямой.

https://disk.yandex.ru/d/2Rb3sY5lCliddw


bolsun
#103, 15 апреля 2024 14:10

Опять инициаторы заявки пропали на несколько дней, ни одного отзыва.


nytlenc
#104, 16 апреля 2024 11:10

(103) bolsun, погонял активно поиск. Меня всё более чем устраивает. Понимает теперь так, как и просил.
Понимает сложные конструкции, например такие:

учитывая что изначально писк начинался с этого

В целом багов не увидел, ищет точно и ожидаемо. Время поиска минимальное 68 мс - максимальное 105 мс


nytlenc
#105, ред. 18 апреля 2024 16:57

Спустя несколько дней, в сухом остатке могу констатировать, что лично для меня стало намного удобнее пользоваться, сортировка ожидаемая и релевантная. Ищет все как положено и замечаний у меня никаких нет. Просто приятно пользоваться. Если у других есть замечания то можно посмотреть что еще доделать. В противном случае можно считать идею выполненной!
Спасибо Михаил!


bolsun
#106, 18 апреля 2024 17:21

bolsun изменил статус на Закрыто


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера