Имя: Пароль:
1C
 
Как сравнить схожесть строк?
0 Виталий Михайлович
 
28.10.04
12:09
Без ВК. Допустим есть база клиентов - достаточно большая. Нужно за максимум 2 сек получить всех клиентов у которых адрес похож на адрес текущего клиента. Все это в порядке релевантности.
1 Rovan
 
гуру
28.10.04
12:14
Как интересно - говоришь "2 сек", а кол-во клиентов и мощность тачки не сказал.
А степень релевантности тоже видимо хочешь задавать ?
2 Виталий Михайлович
 
28.10.04
12:17
1. Допустим хоть миллион клиентов. Найти 100 клиентов по реквизиту - примерно 1 сек. максимум. Степень релевантности - хотелось бы узнать ваши предложения, для этого ведь и существует форум - чтобы получать мудрые советы на глупые вопросы.
3 Виталий Михайлович
 
28.10.04
12:18
То есть ограничений никаких нет - хоть структуру данных предложите, хоть ADO... Мне бы хотелось вместе с вами найти наиболее эффективное решение.
4 Славко
 
28.10.04
12:19
а че не за 1сек максимум?
5 Пролд
 
28.10.04
12:20
создавай поле(с возможностью отбора по нему), в которое записывай выжимку адреса
(например убирая все гласные). ПАри поиске - ищи в этом поле по выжимке требуемого адреса.
6 Виталий Михайлович
 
28.10.04
12:24
5. Очень интересное предложение. А как быть если адрес1= Ростовская обл, г Ростов на Дону, ул.Советская, дом 5,кв1  Адрес2=Ростов-наДону,Советская 5/1 ??
7 Пролд
 
28.10.04
12:29
(6) 1. не говорит глупостей тот кто молчит.
   2. в твоем примере мой алгоритм будет работать. Но как? Как тебе надо или как получиться?

критерии похожести в алгоритмизированном виде в студию!
8 Rovan
 
гуру
28.10.04
12:30
9 Rovan
 
гуру
28.10.04
12:32
10 SKrin
 
28.10.04
12:33
на проклубе где-то была обработочка для нечеткого сравнения строк
11 Виталий Михайлович
 
28.10.04
12:37
8. У этой компоненты один существенный недостаток - нужно перебрать весь справочник, чтобы получить хеш. Это займен от 1 минуты и более.
12 SKrin
 
28.10.04
12:39
(11) получение хеша можно делать при запуске
13 Виталий Михайлович
 
28.10.04
12:41
7. Критери похожести - если нашли точно - то прерываем выборку, если похожесть - то по коэффициенту схожести (символ=символ)
14 Виталий Михайлович
 
28.10.04
12:42
12. Данные могут редактироваться часто + добавляются новые каждые 5 мин.
15 bsg
 
28.10.04
12:52
(13) "г орел" и "по горелово". Совпадение - 100%?
16 Славко
 
28.10.04
12:57
я бы обратил внимание на ADO...
17 Rovan
 
гуру
28.10.04
13:05
(14) Добавленные и измененные элементы справочника сохранять в отдельном кэше и в первую очередь смотреть в нем.
18 Виталий Михайлович
 
28.10.04
13:08
16. Я та к и сде лал, то есть A DO у же дав но в д анн ой за дач е исп ользуе тся. Но хот ел ось бы более эффек тивное решение. Доп устим так:
1. Пе рег нал _кл адр в 1с.
2. Обра боткой пор азби рал адр есные строки и заг нал в рекв изит сп равочника клие нтов ссы лку на элем ент из _кла др.
19 Виталий Михайлович
 
28.10.04
13:09
3. Оста лись теп ерь толь ко до ма и квар тиры.
20 Славко
 
28.10.04
13:10
пробел залип?
21 Виталий Михайлович
 
28.10.04
13:11
20. Не могу допечатать - ругается на фильтр антимат. Хотя все слова приличные.
22 Виталий Михайлович
 
28.10.04
13:12
Это та кой вари ант сей час на у ме (1 - 2 пун кты реа лизован ы
23 Виталий Михайлович
 
28.10.04
13:12
, но мо жет есть к акой-то бо лее эфф екти вный спо соб? Наве рняка ес ть.
24 cardy
 
28.10.04
13:12
А адрес- обязательно как строка текста? Может проще сделать справочники - "Города","Улицы" и с ними работать? То есть при вводе адреса вводить его не как текст, а выбирать значения из справочников
25 Виталий Михайлович
 
28.10.04
13:12
Блин, из-за корявого движка никакой радости общения.
26 Виталий Михайлович
 
28.10.04
13:13
24. К тому и идем, но дома и квартиры ведь не вобъешь в справочник.
27 Славко
 
28.10.04
13:15
без ВК нет, но все ВК все равно АДО юзають ;))
28 Dr Gl00m
 
28.10.04
13:16
дома и квартиры отдельными реквизитами - можно избежать ситуации: дом 5 кв 7, 5/7, правда номера домов 5/7 бывают, придется текстовым делать. Мало ли, что пользователи туда забьют?
29 Виталий Михайлович
 
28.10.04
13:17
27. Ок, пусть ВК. Но какую?
30 Виталий Михайлович
 
28.10.04
13:18
28. Сохраняется старая адресная строка (кроме появившейся ссылки на кладр).
31 Славко
 
28.10.04
13:19
ToySQL, 1C++
32 Виталий Михайлович
 
28.10.04
13:19
+30. Потому что только в 80% удалось однозначно привести адресную строку к кладру. Там такое понаписано...
33 Виталий Михайлович
 
28.10.04
13:20
31. И какое преимущество они дадут по сравнению с используемым сейчас ADO?
34 bsg
 
28.10.04
13:20
В службу поддержки:
Уважаемыетоварищипрограммисты.Уменянеработаетклавишапробелнаклавиатуре.Помогитеисправить.Выжедолжнызнатькакэтоисправить.
Ответ:
Настоящие_программисты_пробелом_не_пользуются
35 Славко
 
28.10.04
13:21
эти ВК работают в объектами БД, т.е. в отличии от АДО те не нада самому сосптавлять объекты
36 Славко
 
28.10.04
13:21
сопоставлять т.е.
37 Виталий Михайлович
 
28.10.04
13:30
35. Так нет никаких проблем преобразовать Id - представление в объект 1с.
38 Славко
 
28.10.04
13:36
ну тогда нафик ВК?
39 Виталий Михайлович
 
28.10.04
13:55
38. Просто like тоже прямо не сравнивает адреса типа (6), приходится разбивать на подстроки...
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой