Ошибка Проверки РВ на СТИПП

Помощь пользователям в работе с программой E-Trade PriceList Importer
sveekey
Сообщения: 129
Зарегистрирован: 23 янв 2012 11:24

Вы абсолютно правильно поняли и расписали в п.1 и п.2 как я бы хочу чтобы оно работало!

Позволю себе не согласиться с тем, что невозможно реализовать такую логику.

Для описанного Вами случая, когда много И и ИЛИ в одном длинном РВ, то наверняка изобретать велосипед не нужно и можно сделать как в программировании, т.е. И имеет приоритет перед ИЛИ. либо добавить возможность вручную указать с помощью скобок.

Тогда например для случая РВ1 И РВ2 ИЛИ РВ3 И РВ4 ИЛИ РВ5
при найденных совпадениях

РВ1=маршрутизатор
РВ2=нет совпадений
РВ3=роутер
РВ4=Д-линк
РВ5=беспроводной

Получается результат ''роутер Д-линк беспроводной'', т.е. хотя в тестируемой фразе и нашлось слово маршрутизатор, оно не отобразилось, т.к. РВ2 не выполнилось. Что дает нехилую гибкость настройки.

Если сейчас работает не так, то скорее всего разработчик имеет другое видение.

Сейчас для этого РВ получается такой результат: маршрутизатор роутер Д-линк беспроводной, т.е. абсолютно все совпадения независимо от логическими выражениями между ними.

В конце концов для чего тогда вообще имеется возможность выбора И и ИЛИ, пять штук РВ...
sveekey
Сообщения: 129
Зарегистрирован: 23 янв 2012 11:24

Добрый день!

Вышеописанную проблему решил обойти при помощи поля "Производитель", ставлю "D-Link" и тогда AirTies не "вылазит" со своим "маршрутизатор".

Почти сразу же столкнулся с еще одной проблемой: второе РВ не обработалось при импорте СТИПП

Всего два РВ:
regexp_set.png
regexp_set.png (54.3 КБ) 4348 просмотров

Проверяю на СТИПП - работает:
stipp_test.png
stipp_test.png (68.54 КБ) 4348 просмотров
Делаю импорт прайса:
stipp_2.png
stipp_2.png (27.5 КБ) 4348 просмотров
То есть наименования со словом "Сплитеры" почему-то проигнорировались и не заменились на 2 совпадения согласно РВ

Если поменять порядок РВ в настройках:
stipp_21.png
stipp_21.png (21.03 КБ) 4348 просмотров
tkachenkoser
Сообщения: 498
Зарегистрирован: 01 авг 2011 12:03

sveekey писал(а):
Вышеописанную проблему решил обойти при помощи поля "Производитель", ставлю "D-Link" и тогда AirTies не "вылазит" со своим "маршрутизатор".
можно чуть подробней?
У Вас получилось, если вписать в "поле производитель" производителя - то РВ сработало только для него?
Я так понял что оно не влияет на результат РВ
Большой опыт работы с PLI, CC, парсерами, CRM и ERP системами. Маркетинг и консалтинг для интернет-магазинов. Контакты в профиле.
tkachenkoser
Сообщения: 498
Зарегистрирован: 01 авг 2011 12:03

Ixenon писал(а): Так работает программа.
А Вам как я понял нужно, чтобы она работала(в данном случае) следующим образом:
1. Если между РВ1 и РВ2 стоит "И", то если одно из этих выражений возвращает пустую строку, то общий результат будет равен пустой строке или другими словами данные находящиеся поле "назначение" не изменяются.
2. Данные находящиеся в поле "назначение" изменяются только тогда, когда оба из этих выражений возвращает не пустую строку, т.е. срабатывают.
тут я полностью поддержку топиксталкера. ИМЕННО ТАК должна работать РВ
Идея И / или между РВ это хорошо, но не до конца реализовано.. Действительно это не стандартное применение РВ поэтому нету строгих правил. Давайте попробуем за и против вариантов
1) Сначала выполняются условия И а потом или.. т.е. И это перемножение, а ИЛИ это сложение множеств. Со сути в программировании так оно и есть. Т.е условие РВ1 и РВ2 или РВ3 и РВ4 выполняется так (рв1 и рв2) или (рв3 и рв4)
т.е если не выполняются первые 2 то будет результат второй пары (если он также выполняется)... Это логично как для программиста, но менее практично, т..к можно просто создать новое правило с условиями рв3 и рв4
2) Сначала выполняются условия ИЛИ т.е. правило РВ1 и РВ2 или РВ3 и РВ4 будет аналогично двум РВ1 и РВ2 и РВ4 ИЛИ правилу РВ1 и РВ3 и РВ4 - тут конечно можно просто в РВ применять символ | для такого же результата, или опять же писать два разных правила.
Получается от ИЛИ можно вообще избавится, но если всеже его оставить, то более практично (на мой взгляд) оставить работать по второму правилу. И написать этот механизм в инструкции.
У меня сейчас в базе уже 85000 товаров в стип.. Из них около 30% без столбца артикуль.. Кроме того сам виду СС, и финансы. ПЛИ же сейчас занимает больше всего времени, как раз из-за ручного сопоставления товаров (умка), если бы гибко можно настроить наименования и артикли через РВ, то время на Пли сократилось бы на порядок.
PS. в соседней теме также воюю за проблемы в РВ, которые так и не решены.
Большой опыт работы с PLI, CC, парсерами, CRM и ERP системами. Маркетинг и консалтинг для интернет-магазинов. Контакты в профиле.
sveekey
Сообщения: 129
Зарегистрирован: 23 янв 2012 11:24

tkashenkoser,

Там где пишутся сами РВ справа есть поле "Производитель".
Если туда вписать "D-link", то программа все остальные товары (не D-link) вообще в расчет не берет и РВ к ним не применяет.
Но вылезает еще один "баг" (см. пост выше) с неработой второго РВ.

Оба варианта имеют право на жизнь, но по большому счету мне все равно, какой из них "православнее" и какой предпочтёт разработчик. Главное чтобы работало и желательно было отражено в документации.
Сейчас получается, что "И" и "ИЛИ" не работают как хотелось бы.

Такой инструмент жизненно необходим как для формирования артикула для товаров = качественное автоматическое сопоставление (у меня тоже тысяч 10 без артикула), так и для "обрезки" наименований, например, такого:
D-Link DSL-30CF/RS Сплитер ADSL Annex A 1xRJ11 вход и 2xRJ-11 выход с 12cm телеф кабелем
до такого:
Сплитер D-Link DSL-30CF/RS
tkachenkoser
Сообщения: 498
Зарегистрирован: 01 авг 2011 12:03

Вот сейчас с утра сижу.. Не могу даже сделать элементарное - выбить артикул из BEKO HIZG 64120 B потомучто ни работают ни $, ни \< , ни ?!, ни ^
т.е работают только самые базовые функции, которых реально не достаточно.
Большой опыт работы с PLI, CC, парсерами, CRM и ERP системами. Маркетинг и консалтинг для интернет-магазинов. Контакты в профиле.
sveekey
Сообщения: 129
Зарегистрирован: 23 янв 2012 11:24

Нашел как можно получить необходимые наименования - составное значение на основе результата РВ
partial.png
partial.png (26.24 КБ) 4340 просмотров
Для этих РВ:
regexp_set2.png
regexp_set2.png (13.4 КБ) 4340 просмотров
Получил желаемый результат:
Stippcut.png
Stippcut.png (21.51 КБ) 4340 просмотров
Работает одинаково для случая И и ИЛИ между РВ.
sveekey
Сообщения: 129
Зарегистрирован: 23 янв 2012 11:24

Нашел еще одну ошибку =(

Такое РВ и результат проверки:
regexpbug.png
regexpbug.png (16.16 КБ) 4339 просмотров
А при импорте в СТИПП:
regexpbug2.png
regexpbug2.png (4.38 КБ) 4339 просмотров
Проверка на СТИПП дает:
regexpbug3.png
regexpbug3.png (7.86 КБ) 4339 просмотров
PS [\S]+ пробовал заменить на [a-Z0-9-]+, но видимо дело в алгоритме.
tkachenkoser
Сообщения: 498
Зарегистрирован: 01 авг 2011 12:03

А есть какието успехи с артиклями?
Большой опыт работы с PLI, CC, парсерами, CRM и ERP системами. Маркетинг и консалтинг для интернет-магазинов. Контакты в профиле.
Ixenon
Сообщения: 743
Зарегистрирован: 19 ноя 2011 09:03

Все, что в скобках - дублируется, чем больше скобок, тем больше дублей
Пример1 РВ1 (Коммутатор)
Наименование Коммутатор D-Link
Результат Коммутатор

Пример2 РВ1 ((Коммутатор))
Наименование Коммутатор D-Link
Результат Коммутатор Коммутатор

Пример3 РВ1 (((Коммутатор)))
Наименование Коммутатор D-Link
Результат Коммутатор Коммутатор Коммутатор

Пример4 РВ1 (Коммутатор) И РВ2 (принтер)
Наименование Коммутатор D-Link
Результат Коммутатор Коммутатор

С пробелами тоже отдельная история. Пробелы по большей части нигде не учитываются.
Закрыто

Вернуться в «Техническая поддержка программы E-Trade PriceList Importer»