Страница 1 из 5

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

Добавлено: 18 ноя 2012 16:07
sveekey
Собственно, при запуске происходит:
regexptest.png
regexptest.png (95.4 КБ) 4444 просмотра
Excel не открывается.

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

Добавлено: 19 ноя 2012 14:51
support
Вышлите БД и импортируемый прайс-лист. Сообщите на какой категории проверять.

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

Добавлено: 21 ноя 2012 09:56
sveekey
Выслал. Жду ответа

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

Добавлено: 21 ноя 2012 12:39
support
Проблема обнаружена и будет и исправлена.
Приносим свои извинения за возможно представленные трудности.

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

Добавлено: 23 ноя 2012 16:14
sveekey
Добрый вечер. Установили обновление, ошибки больше нет, но при запуске теста выводится окно "Нет данных". Открыть товары поставщика делали.
Посоветуйте, что делаем не так.

UPD С этим разобрались с помощью "Помощи": Так же можно тестировать на основании списка товаров из прайс-листов поставщиков (СТИПП), тестируются только не найденные товары (без флажка "Н"), результат тестирования экспортируется в файл MS Excel:

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

Добавлено: 23 ноя 2012 16:43
sveekey
Прошу объяснить как добиться нужного результата на моем примере:

Беру нетронутый СТИПП и применяю к нему следующие РВ1 "И" РВ2:
regexpresult.png
regexpresult.png (67.11 КБ) 4411 просмотров
Получаю:
regteststipp.png
regteststipp.png (175.13 КБ) 4411 просмотров
Делаю импорт, чтобы увидеть изменение наименования в СТИПП, и получаю:
regexp3.png
regexp3.png (96.58 КБ) 4411 просмотров
Пытаюсь осознать результат:
-зеленое - то что я ожидал и хотел получить;
- оранжевое - между РВ1 и РВ2 стоит "И", значит оба РВ должны вернуть совпадение, чтобы примениться к наименованию, но РВ1 ("Маршрутизатор") не дает совпадения, поэтому замены наименования не происходит - тоже логично и верно. Это же видно и из результатов применения на СТИПП (regexpresult.png)
- красное - отличается от оранжевого только тем, что совпадение дало РВ1, а не РВ2. Но тем не менее, РВ2 не дает совпадения, значит и наименование меняться не должно, а оно меняется. Этот результат не тот, который я хотел получить.

Почему РВ1 = 0 "И" РВ2 = 1 не меняет наименования, а РВ1 = 1 "И" РВ2 = "0" меняет.

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

Составные значения не дают желаемой гибкости для этого РВ:
regexp_sost.png
regexp_sost.png (24.05 КБ) 4411 просмотров

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

Добавлено: 30 ноя 2012 20:53
sveekey
Просьба вникнуть в вопрос и ответить. Хотели бы использовать "нарезку" наименования как в примере, но пока не ясно, как получить нужный результат

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

Добавлено: 04 дек 2012 13:10
support
В новой версии программы скорректирован алгоритм работы с рег. выражениями.

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

Добавлено: 04 дек 2012 20:08
sveekey
Обновился до последней версии, но к сожалению результат тот же.
Общее РВ срабатывает, хотя РВ2 не выполнено (на рис перечеркнуто):
stipp_regexp.png
stipp_regexp.png (338.23 КБ) 4374 просмотра
В итоге перед AirTies "вылазит" ненужный результат РВ1:
stipp_regexp2.png
stipp_regexp2.png (28.75 КБ) 4373 просмотра
PS пробовал очищать СТИПП через настройки

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

Добавлено: 05 дек 2012 11:25
Ixenon
То, что Вы отметили красным так и должно работать.
Тест так и работает. Сначала в окне вы выбираете рег выражение, затем нажимаете на кнопку тестировать на основании стипп и получаете результат тестирования выбранного рег выражения.
Первое рег выражение сработало для всех, потому, что во всех товарах это слово(маршрутизатор) есть
Второе выражение не сработает для тех товаров в наименовании которых отсутствует слово "D-link"
так и получилось
Вы поняли почему РВ2 не выполнено там где оно у Вас красным перечеркнуто?
Так работает программа.
А Вам как я понял нужно, чтобы она работала(в данном случае) следующим образом:
1. Если между РВ1 и РВ2 стоит "И", то если одно из этих выражений возвращает пустую строку, то общий результат будет равен пустой строке или другими словами данные находящиеся поле "назначение" не изменяются.
2. Данные находящиеся в поле "назначение" изменяются только тогда, когда оба из этих выражений возвращает не пустую строку, т.е. срабатывают.

Такой алгоритм работы программы в данном случае запрограммировать невозможно, в связи с тем, что регулярных выражений всего может быть не два а пять. И между каждыми соседними можно поставить либо "И" либо "ИЛИ"
Допустим такую ситуацию РВ1 И РВ2 ИЛИ РВ3 И РВ4 ИЛИ РВ5
Для того, чтобы это можно было бы рассчитать нужно установить жесткий порядок или расставить приоритеты что первое проверять "И" или "ИЛИ"
А это думать надо... программировать и все такое... вероятно это никому не интересно :lol: