15.01.2008 11:32
deks
 
Вообщем после миграции с УКМ 2 имеются следующии скидочные карты

1. B123456789012F на магнитной полосе ;123456789012?
2. B12345678901F на магнитной полосе ;12345678901?
3. B1234567890F на магнитной полосе ;1234567890?
4. B123456789F на магнитной полосе ;123456789?
5. B1234567D1234F НА МАГНИТНОЙ ПОЛОСЕ ;1234567=1234?

НА СЕРВЕРЕ НАСТРОЕНЫ ШАБЛОНЫ ВВОДА ...А 1-4 ВАРИАНТЫ НЕ РАБОТАЮТ ...
ШАБЛОН ДЛЯ 1 И 4 ВАРИАНТА ТАКОГО ТИПА
; 9 ИЛИ 12 ЛЮБЫХ ЧИСЕЛ 1 И БЕСКОНЕЧНОСТЬ
НОМЕР КАРТЫ B$1F
скидка дисконтная система .

Вопрос: как правильно настроить шаблоны ввода и как правильно раздать приорететы?
15.01.2008 11:35
Mtirt
 
$1 у тебя - это ";".
тебе надо сделать Номер карты = B$2F
15.01.2008 16:09
deks
 
ошибся B$2F
... так и стоит ...
15.01.2008 19:23
Mtirt
 
Раздели их.
Сделай 3 шаблона ввода.
Один - как есть сейчас.
Еще один - ровно на 12 цифр. = B$2F
И еще один -" ;","7 цифр";"=";"4 цифры";"Любая последовательность" == B$2D$4F.
И все их направь на скидку свою.
Причем приоритеты скорей всего именно в том порядке, как я сейчас написала. Ну или попробуй попереставлять...
16.01.2008 09:36
deks
 
вот тут самое и оно ...я так понял что приоритет должен быть выше у тех карт у которых на дорожке 12 потом 11 , 10 .9 соответсвенно символов..
префиксы и суфиксы я не считаю
16.01.2008 09:44
Mtirt
 
Цитата:
deks я так понял что приоритет должен быть выше у тех карт у которых на дорожке 12 потом 11 , 10 .9 соответсвенно символов..
Скорее всего - да. Ищем сначала самую длинную строку, потом постепенно её уменьшаем.
Ну и шаблон ввода лучше сделать на каждую длину строки.
17.01.2008 19:41
deks
 
ага вот еще вопрос в догонку ..как работает алгоритм шаблона ввода?
т.е
у нас три карты
B12345678901F на магнитной полосе ;12345678901?
B1234567890F на магнитной полосе ;1234567890?
B123456789F на магнитной полосе ;123456789?
система берет
карту ;123456789?
и сравнивает ее с шаблоном ... так первый 11 знак не подходит ... - нехватает символа
второй 10 знак ..подходит ..так как "?" считает за 10 символ и система смотрит в базе номер B123456789?F а там его ..нет ..
!!!она дельше идет????!!! если идет дальше то берется макет 9 знака и все пучком ... так вот как реализован алгоритм шаблона он пробегает по всем маскам или схватит ту которая ее устроит .. ибо касса частенько ругаются на номера вида B123456789?F ..где постфикс(имеется ввиду знак "?") попадает в номер карты
18.01.2008 06:23
akonev
 
дальше не идет.
выбирает первый (по порядку обработки) шаблон, под который подходят данные и останавливается.
18.01.2008 12:04
deks
 
понятно тогда надо ..просто переписывать карты под шаблон иначе он выхватит номер оканчивающий на знак вопроса и выдает на экране типа карта сномером B123456789?F не обслуживается ...
Всем спасибо !!!!
Просто макеты мучать немного стремно так как неправильное изменение и встает магазин из 10 касс .. а это не есть хорошо ...*54 начальство не поймет и будет орать и топать ножками
18.01.2008 12:19
Mtirt
 
По хорошему надо просить С+ сделать доработку. В шаблоне ввода явно указывать формат данных для поля с произвольным содержимым - только "цифры", "цифры и буквы", "цифры, буквы и спец.символы".
Тогда твоя проблема уйдет...
Попробуй написать в тех.поддержку...
Часовой пояс GMT +3, время: 13:04.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.