|
Яндекс по номенклатуре | ☑ | ||
---|---|---|---|---|
0
33554432
31.08.16
✎
07:31
|
Есть справочник номенклатуры. И есть некий список номенклатуры с внешнего источника, которую нельзя продавать. Кодов нет, прямого соответствия нет. Есть сокращения и в своей базе и в том списке, количество слов разное. Марка может быть как на инглише, так и на русском.
Вопрос такой, как сделать поиск в своей базе, чтобы найти наиболее похожие позиции из того списка? |
|||
1
DrZombi
гуру
31.08.16
✎
07:40
|
(0) Посадить бабушку в очках, она будет находить соответствие :)
А зачем вам? Кто вас таким озадачил? |
|||
2
33554432
31.08.16
✎
07:45
|
(1)
фармацевтическое предприятие. за продажу товара, запрещенного к продаже росздравнадзором - штраф вплоть до закрытия. |
|||
3
batman69
31.08.16
✎
07:47
|
(2)Тогда там должно быть международное патентованое название, как то так, вот по нему и ищите.
|
|||
4
Горогуля
31.08.16
✎
07:48
|
(2) левый неформализованный список не автоматизируется. расслабься, забей и налей ещё кофе
|
|||
5
shuhard
31.08.16
✎
07:48
|
(3) +1
РЛС в помощь |
|||
6
shuhard
31.08.16
✎
07:49
|
(4) там есть внешний ключ и всем он известен
|
|||
7
Горогуля
31.08.16
✎
07:50
|
(6) я только про "некий список номенклатуры с внешнего источника" увидел
|
|||
8
33554432
31.08.16
✎
07:51
|
(6)
что за ключ? |
|||
9
Diman000
31.08.16
✎
07:52
|
В любом случае, если там все так серьезно, то в таких условиях доверить программе выбирать что можно продавать, а что нет - это бред.
Пусть руководство предприятия сажает за это дело девочек или бабушек, разгребать справочник номенклатуры и вести его дальше. Иначе может сесть само... |
|||
10
Лефмихалыч
31.08.16
✎
08:08
|
(0) как бы ты ни сделал, результат все равно руками обрабатывать.
Прежде чем городить огород, посчитай, сколько будет стоить компании твой добелстный труд по построению суперсистемы нечеткого недопоиска и потом сравни со стоимостью работы оператора, который это за час руками просандалят. |
|||
11
Лефмихалыч
31.08.16
✎
08:08
|
+(9) когда такие вещи доверяют системе, потом людям приходят штрафы за то, что тень сплошную пересекла...
|
|||
12
33554432
31.08.16
✎
08:11
|
понятно что делать будет оператор, но похожие позиции надо подстветить
|
|||
13
33554432
31.08.16
✎
08:12
|
вот я такую фишку написал, как думаете, взлетит?
Процедура поискНаСервере() строкапоиска=объект.Текст; строкапоиска=стрзаменить(строкапоиска,"(",""); строкапоиска=стрзаменить(строкапоиска,")",""); мас= СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(строкапоиска," "); для каждого стр из мас цикл сообщить(стр); конеццикла; сообщить(мас.количество()); запросПодбор=новый запрос; запросПодбор.Текст="ВЫБРАТЬ | Номенклатура.Ссылка КАК Номенклатура, | Номенклатура.Производитель |ИЗ | Справочник.Номенклатура КАК Номенклатура |ГДЕ | Номенклатура.Наименование ПОДОБНО &Наименование | И Номенклатура.Наименование ПОДОБНО &Наименование1 | И Номенклатура.Наименование ПОДОБНО &Наименование2 | И Номенклатура.Наименование ПОДОБНО &Наименование3 | И Номенклатура.Наименование ПОДОБНО &Наименование4 | И Номенклатура.Наименование ПОДОБНО &Наименование5 | И Номенклатура.Наименование ПОДОБНО &Наименование6 | И Номенклатура.Наименование ПОДОБНО &Наименование7 | И Номенклатура.Наименование ПОДОБНО &Наименование8 | И Номенклатура.Наименование ПОДОБНО &Наименование9 | И Номенклатура.Наименование ПОДОБНО &Наименование10 | И Номенклатура.Наименование ПОДОБНО &Наименование11 | И Номенклатура.Производитель.Наименование ПОДОБНО &про"; запросПодбор.УстановитьПараметр("про","%"+объект.Производ+"%"); запросПодбор.УстановитьПараметр("Наименование","%"+мас[0]+"%"); если мас.количество()>1 тогда запросПодбор.УстановитьПараметр("Наименование1","%"+мас[1]+"%") иначе запросПодбор.УстановитьПараметр("Наименование1","%"+" "+"%") конецесли; если мас.количество()>2 тогда запросПодбор.УстановитьПараметр("Наименование2","%"+мас[2]+"%") иначе запросПодбор.УстановитьПараметр("Наименование2","%"+" "+"%") конецесли; если мас.количество()>3 тогда запросПодбор.УстановитьПараметр("Наименование3","%"+мас[3]+"%") иначе запросПодбор.УстановитьПараметр("Наименование3","%"+" "+"%") конецесли; если мас.количество()>4 тогда запросПодбор.УстановитьПараметр("Наименование4","%"+мас[4]+"%") иначе запросПодбор.УстановитьПараметр("Наименование4","%"+" "+"%") конецесли; если мас.количество()>5 тогда запросПодбор.УстановитьПараметр("Наименование5","%"+мас[5]+"%") иначе запросПодбор.УстановитьПараметр("Наименование5","%"+" "+"%") конецесли; если мас.количество()>6 тогда запросПодбор.УстановитьПараметр("Наименование6","%"+мас[6]+"%") иначе запросПодбор.УстановитьПараметр("Наименование6","%"+" "+"%") конецесли; если мас.количество()>7 тогда запросПодбор.УстановитьПараметр("Наименование7","%"+мас[7]+"%") иначе запросПодбор.УстановитьПараметр("Наименование7","%"+" "+"%") конецесли; если мас.количество()>8 тогда запросПодбор.УстановитьПараметр("Наименование8","%"+мас[8]+"%") иначе запросПодбор.УстановитьПараметр("Наименование8","%"+" "+"%") конецесли; если мас.количество()>9 тогда запросПодбор.УстановитьПараметр("Наименование9","%"+мас[9]+"%") иначе запросПодбор.УстановитьПараметр("Наименование9","%"+" "+"%") конецесли; если мас.количество()>10 тогда запросПодбор.УстановитьПараметр("Наименование10","%"+мас[10]+"%") иначе запросПодбор.УстановитьПараметр("Наименование10","%"+" "+"%") конецесли; если мас.количество()>11 тогда запросПодбор.УстановитьПараметр("Наименование11","%"+мас[11]+"%") иначе запросПодбор.УстановитьПараметр("Наименование11","%"+" "+"%") конецесли; итог=запросПодбор.Выполнить().Выгрузить(); объект.Результат.Загрузить(итог); |
|||
14
Лефмихалыч
31.08.16
✎
08:12
|
(12) о каком количестве позиций речь?
|
|||
15
33554432
31.08.16
✎
08:14
|
(14)
30 штук в неделю забракованных позиций, 300 тыс номенклатура в базе |
|||
16
Лефмихалыч
31.08.16
✎
08:16
|
(15) вообще нет повода для автоматизации. 30 позиций в неделю найти - не проблема. Человеку даже час для этого не нужен.
|
|||
17
Лефмихалыч
31.08.16
✎
08:17
|
человек только посмотрит на кашу из этих слов и сразу поймет, какую папку ему открывать. А вот код твой поймет не сразу и не факт, что вообще поймет.
|
|||
18
33554432
31.08.16
✎
08:20
|
(16)
фармация это тебе не бревна, и даже не алкоголь, тут тысячи похожих позиций номенклатуры могут быть для одной отдельно взятой. И каждая позиция может из 30 слов состоять. |
|||
19
33554432
31.08.16
✎
08:26
|
вот пример сегодняшней реальной заблокированной номенклатуры. попробуй поройся в базе.
"Перчатки медицинские латексные и нитриловые по ТУ 2514-001-50341858-2010 в следующих исполнениях: хирургические стерильные и нестерильные и смотровые стерильные и нестерильные" |
|||
20
batman69
31.08.16
✎
08:29
|
(19) Ну, так если ты это глазами найти не можешь, как ты это автоматизировать собрался?
|
|||
21
batman69
31.08.16
✎
08:31
|
А 30 штук в неделю, вообще не о чем.
|
|||
22
Лефмихалыч
31.08.16
✎
08:31
|
(18) я в курсе, фармацию несколько лет к ряду автоматизировал. И не вижу проблем.
(19) ну, удачи |
|||
23
33554432
31.08.16
✎
08:37
|
(20)
они вводят несколько отрывков через пробел и что-то похожее в списке выпадает. |
|||
24
batman69
31.08.16
✎
08:39
|
(23) "и что-то похожее в списке выпадает", эх россия....
|
|||
25
Stepa86
31.08.16
✎
09:05
|
Полнотекстовый поиск уже предлагали?
|
|||
26
batman69
31.08.16
✎
09:10
|
(25) Ты первый, Стёпа.
|
|||
27
lubitelxml
31.08.16
✎
09:28
|
(0) посмотри уже как в УТ 10.3 работает обработка поиск и замена дублей. Там можно выставлять - на сколько сильно может изменятся наименование
|
|||
28
sitex
naïve
31.08.16
✎
10:07
|
(0) Регулярный выражения поди тоже предлагали).
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |