Посоветуйте поисковую систему #349380


#0 by Матрейя
Есть регистр сведений, измерения: "Объекты" (справочник ссылка), "Данные" (план видов характеристик). Ресурсы - "Значение" - составной тип данных, типизация по измерению "Данные". В плане видов характеристик есть реквизит - "ключевое слово для поиска", то бишь однородные характеристики группируются по ключам поиска, например ключ "ардес" - это и адрес жительства и адрес работы и т.д., ключ "телефон" - телефон сотовый, домашний, жены, знакомых, рабюочий и т.д. Нужно получить результат в виде таблицы: Объект  |  Строка ключей по которым совпал поиск Иванов  |Иванов - физ..лицо, 888888888- телефон Петров  |888888888 - телефон Сидоров |г.Москва - адрес
#1 by ТелепатБот
#2 by Матрейя
ну же, напрягите мозги, одинэснички
#3 by Mitriy
соединение регистра по "Данные" с планом видов характеристик (с условием на последний по "ключевое слово для поиска") или я чего-то не понимаю?
#4 by Матрейя
3. соединяться зачем? Например выбрал ключевые слова и их значения. Например телдефон и значение 9999, в регистре будут искаться все объекты у которых "Данные" имееют значение реквизита "Ключ" = выбранный ключ "телефон" и значение регистра будет подобно 9999
#5 by Stepa86
А че надо то? если поиск организовать, то можно 1) юзать в запросе оператор ПОДОБНО 2) Прямой перебор полей с поиском совпадения 3) Написать свой анализатор регулярных выражений 4) Использовать РегЭксп (мелкомягкий механизм регулярных выражений) 5) Использовать Полнотекстный поиск (не юзал, не знаю что это, но может поможетт)
#6 by Матрейя
5. ну-ну. Например?
#7 by Mitriy
чтобы быстрее работало... тебе ведь это критично?
#8 by Stepa86
ну ну на что?
#9 by Stepa86
#10 by Матрейя
7. мне счас критично следующее: придумать, чтоб выдавало всю нужную инфу (в готовом виде)одним запросом, без промежуточной обработки в ТЗ. 8. вот смотри, как например написать условие? выбор Рег.данные когда Рег.Данные.Ключ в (Ключ) и Рег.Значение подобно ?Зн Например есть у меня Тз, где колонка 1 - план характеристик, удовлетворяющих ключу, 2 колонка значения для подобно.
#11 by Stepa86
генерируй запрос программно, где условие описываешь, чтоб было " Значение Подобно &Знач1 ИЛИ Значение Подобно &Знач2 ИЛИ Значение Подобно &Знач2..."
#12 by Матрейя
Если бы еще была возможность выполнять условие |Где Зн Есть Null";
#13 by Матрейя
вернее не есть null
#14 by Матрейя
или если бы можно было так:
#15 by Матрейя
up
#16 by Mitriy
#17 by Матрейя
16 Где (Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_1) и (Где Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_2) И (Где Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_2) и т.д. ?? Таких условий десятка три сразу. Неоптимально
#18 by Mitriy
оптимальнее, чем в , ИМХО
#19 by Mitriy
к ясен пень...
#20 by Матрейя
в 14 просто описана проблема, не код +17. кроме того Где (Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_1) и (Где Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_2) И (Где Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_2)  не пройдет. Тогда нужно писать ИЛИ  или же Рег.данные в &СписДанных , что приведет к неточности выборки (ибо г.Москва может встретиться и в месте жительства и в месте рождения, что по классификации ключей  - разные категории
#21 by Mitriy
Где (Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_1) ИЛИ (Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_2) ИЛИ(Рег.данные=&Зн1 И Рег.Значение Подобно &Зн_2)... совершенно однозначная конструкция
#22 by Матрейя
21. не однозначная. Например данные: ФИО, АДРЕС Значение поиска= Москва. У Петроова Адрес=Москва, у Москва иван федоровича  - Москвва - это фамилия. вобщем , пока получаем примерно такое Запрос=Новый Запрос;
#23 by Матрейя
+22. но возникает опять же необходимость обработки результатат запроса, чтобы привести его к нормальному виду.
#24 by Матрейя
up
#25 by Stepa86
Сделай сначало хоть как нибудь, а потом оптимизируй, можешь вообще запрос в цикле засандалить для каждой строки, а потом подумай, как можно без цикла
#26 by Матрейя
25. да как нибудь работает. Я просто излагаю проблему, никак не придумаю, как можно готовый результат получить одним только запросом.
#27 by Stepa86
может как раз не надо одним запросом все делать? а работать с тз???
#28 by ВьюИК
А що стандартный поиск от 1С с выбором конретного места поиска чем не устраивает?
#29 by Матрейя
27. можно и не делать. Вопрос просто риторический - поиск красивого решения.
#30 by Матрейя
28. в 1с нет поиска.
#31 by Stepa86
как это нет, а нажми Ctrl + F
#32 by Матрейя
31. почитай темку с начала...
#33 by Gamm
А никто полнотекстовым поиском в 1С не пользуется?
#34 by Stepa86
я те в 5 разных поисков перечислил, и после этого ты говоришь, что его нет...
#35 by Матрейя
34. ты не вник в суть темы. Возможен только вариант запроса. Это поисковая система с многомиллионными данными. А не тупая фильтрация списка регистра сведений.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С