PDA

Просмотр полной версии : ПДС и карты



Tretalek
18.02.2009, 15:55
Извиняюсь за то если тема была, не увидел.
Стоит Rkeeper6, там же крутится кардсервер.
Привезли именные карты с одинаковым номером 001(на поверхности карты):sarcastic:, на самих картах ничего не было, т.е проверяли из под DOS'а, Ctrl+O и проводили картой.
Отдали на перемагничивание, теперь из под доса они определяються как ?178=бла-бла-бла.184?(как-то так). Если я правильно понимаю то номер 184 и есть номер самой карты.
Захожу в Дисконт--->Счета там у меня 2 папки на скидки 15 и 25 процентов. В папке 15% создаю новый счет где указываю номер карты 184, Ф.И.О владельца, скидку 15%, дату выдачи/окончания карты, тип дебетовая. Выхожу из дисконта, перезагружаю менеджера и саму кассу.
по идее карта должна будет показать Ф.И.О и скидку когда проводишь в заказе(пречека не было), а он пишет что карта не распознанна.

Может помимо дисконта еще где надо прописать что-нибудь?
Или что-то не было просто донастроенно?:Cray:

SH
18.02.2009, 16:36
Персональные Дебетовые карты: (использует CARDSERV)
778=xxxxxxxx=yyyyy где 778 - ID, что это персональная дисконтная
(дебетовая, платежная, клубная)карта.
= - типа разделитель
xxxxxxxx - восьмизначный (девятизначный в новых версиях) код ресторана из
SYSTEM.DB, что находится на кассовом
сервере в DATABASE. На карточку заносится
БЕЗ ТОЧКИ (в SYSTEM.DB xxxxx.xxxx ).
Если открыть SYSTEM.DB с помощью
SETCODAT.EXE, то это шестой пункт.
yyyyy - код карты, который и заносится в
PCARDS.EXE. Max 8 цифр, но желательно max 5.

SH
18.02.2009, 16:37
Т.е. если у Вас 178, то ничего работать не будет - либо перемагничивать, либо пользоваться fixlen для задания собственной настройки.

Tretalek
18.02.2009, 16:49
наверное все-таки 778, я просто привел пример

Tretalek
18.02.2009, 17:11
SH а ты не мог бы подсказать я правильно все делаю, или как то по другому надо, при учете что карты нормальные, правильно промагничены

SH
18.02.2009, 17:57
Да вроде все верно, в том-то и беда.
А точно что касса пишет?

Tretalek
18.02.2009, 19:19
Неизвестная карта.
Приходили от дилера, ни чем не помогли, взяли 1 карту к себе. У них все работает.

Еще 1 проблема, захотел пойти легким путем и забил 300 карт в тхт, хотел импорт сделать в базу, а он не вставляет. Так обидно.
Может криво кардсервер встал?

Moderator
18.02.2009, 20:43
Неизвестная карта лечится исключительно fix_len.dll и настройками в rekeper6.ini на станции. Документация на форму есть. Поищите.

SH
19.02.2009, 00:07
Формат карты точно, до каждого знака выложите сюда.
А импорт должен работать. "Не вставляет" - такого быть не может, эта "трава" всегда вставляет :)

Tretalek
19.02.2009, 17:01
Выкладываю формат карты

;778=171270002=146?

Moderator
20.02.2009, 00:18
Выкладываю формат карты

;778=171270002=146?

И? Номер карты это 146 ? Тогда маска будет такова: FIXLEN_MASK=778=17127002=NNN

При условии, что 17127002 одинаково на всех картах. И не забудьте в папку extens положить fixlen.dll

SH
20.02.2009, 03:04
А код ресторана точно 1712.7002?

Tretalek
20.02.2009, 11:35
И? Номер карты это 146 ? Тогда маска будет такова: FIXLEN_MASK=778=17127002=NNN



Где это прописывать?

SH
20.02.2009, 11:49
В rkeeper6.ini на кассе

Tretalek
20.02.2009, 11:53
спс, пойду пробовать, потом отпишусь

Tretalek
20.02.2009, 12:32
Дайте пожалуйста fixlen.dll, нигде не могу найти

Tretalek
20.02.2009, 13:52
сейчас проверил код ресторана в кипере через setcodat.exe там код
778=171270001:)
а на картах 778=171270002

Но все равно карты не читаются:Cray:

Moderator
20.02.2009, 14:00
сейчас проверил код ресторана в кипере через setcodat.exe там код
778=171270001:)
а на картах 778=171270002

Но все равно карты не читаются:Cray:

В коде ресторана не должно быть 778=

Tretalek
20.02.2009, 15:18
я это образно написал, а так там 17127.0002

Moderator
20.02.2009, 16:21
Настройте fixlen, и не мучайтесь.

SH
20.02.2009, 21:16
так код 171270001 и на картах 171270002? Или Вы опять неправильно пишите?

Tretalek
24.02.2009, 12:32
уже разобрался.
просто карты сделали с кодом 171270002, а на кипере код был 171270001.
В кипере изменил код, но все равно пришлось вызывать дилера, чтоб он заново сгенерил лицензию. Теперь все ок

Moderator
24.02.2009, 14:03
Вы пошли долгим путем. Если б воспользовались советом с fixlen.dll никого бы вызывать не пришлось.

Tretalek
24.02.2009, 14:18
так в том то и дело, что я пытался но не нашел эту самую dll, просил тут но никто не скинул, а дело было срочное

SH
24.02.2009, 14:19
Ну так Вы бы либо лично в личку кого-нибудь просите (меня, например), либо давайте адрес.

Tretalek
24.02.2009, 14:20
про личку не смекнул сразу:)
а адрес давать вроде бы нельзя:o

Tretalek
24.02.2009, 14:24
подскажите еще про импорт карт в Pcards.
какой формат времени надо использовать

просто сидел забил 300 карт в txt в формате например:
001, 31/12/2011, 15, , , Алехина Елена

нажимаю импорт и не происходит ничего, тупо окно закрывается и не появляется ни карты ни ошибки

Mayak
18.06.2010, 13:53
Подскажите пожалуйста.
Есть карты партнеров с кодировкой от 8 цифр
как правильно прописать fixlen в rekeper6.ini на кассовой станции для этих карт

fix_len_mask=NNNNNNNN
fix_len_mask=NNNNNNNNN

SH
18.06.2010, 16:56
Так он у Вас любые карты с восьмизначным кодом будет принимать :) Там все цифры значимые? Повторяющиеся во всех картах символы есть?

Mayak
21.06.2010, 10:35
Так он у Вас любые карты с восьмизначным кодом будет принимать :) Там все цифры значимые? Повторяющиеся во всех картах символы есть?

карты разных партий у них и на одной партии статические цифры 21 на других 45, на третьих 184

Вопрос: тогда нужно несколько строк прописывать, да?
fix_len_mask=21NNNNNN
fix_len_mask=45NNNNNN
fix_len_mask=184NNNNNN

SH
21.06.2010, 13:55
Вопрос: тогда нужно несколько строк прописывать, да?
fix_len_mask=21NNNNNN
fix_len_mask=45NNNNNN
fix_len_mask=184NNNNNN
Почти! На самом деле, Вам нужно ТРИ файла сделать (копии исходного): fix_len.dll, fix_len2.dll, fix_len3.dll
Тогда параметры должны будут выглядеть так:
fix_len_mask=21NNNNNN
fix_len2_mask=45NNNNNN
fix_len3_mask=184NNNNNN

nastia555
13.04.2011, 13:45
подскажите пожалуйста!) карты RK, на них есть какая либо информация? или они просто являются ключом к системе?
извиняюсь,может не в тему, просто не знаю где задать вопрос....(

Admin
13.04.2011, 13:54
на них есть какая либо информация
только номер карты

они просто являются ключом к системе?
ну условно да. Основное их назначение - идентификация персонала.

Turambar83
27.06.2011, 15:02
Я немного о картах так же как и Nastia555.
Есть карты для RK, одни голубонго цвета другие каричневого, есть ли в них как нибуть разница?
И еще, когда завожу на менеджерском месте пользователя, присваиваю ему номер относительно ному рна карте,
в какой момент нужно активить крту, когда я нахожусь в настрйоках пользователя или года в списке пользователей.
Зарание огромное спасибо.

Или если есть тема про такие вопросы, подскажите буду очень рад.

SH
27.06.2011, 23:16
есть ли в них как нибуть разница?
Никакой.

в какой момент нужно активить крту, когда я нахожусь в настрйоках пользователя или года в списке пользователей.
Ничего не понял, что есть "активация карты"? Как только Вы карту завели, перегрузили сервер - она работает. Иногда работает без перезагрузки, но перезагрузка рекомендуется.

Turambar83
29.06.2011, 09:06
Начну с начала.
Старый админ у волился и ничего непоказал нисказал.
Появились новые бармены и официанты, в менеджерском ПО я их завел, каждому присволи код актуальный коду карты. (четыри знака).
Есть на менеджерской машине модуль для карт, выглядит как железяка для чтения магнитных карт (в вите превернутой буквы Т с индикатором на ней, который загорается то крастным то зеленым, после проведения по ней картой), она какую роль несет?
Дальнейшие мои действия?
Карта после перегрузки серва сама активируется? RK6 тачскрины стоят. 3 кассы. все в сети.
И еще перезагрузка сервера обозначает - перезагрузку ПО на серверной машине? так я понял?

Приношу извенения сразу с вою тупость.

И SH вопрос к вам сразу по поводу карт и ихнего заказа.
Можно ли сделать у вас именные карты с логотипом организации?

SH
29.06.2011, 11:58
Есть на менеджерской машине модуль для карт, выглядит как железяка для чтения магнитных карт (в вите превернутой буквы Т с индикатором на ней, который загорается то крастным то зеленым, после проведения по ней картой), она какую роль несет?
Это либо читалка для проверки, либо энкодер для самостоятельного кодирования, в последнем случае не могу сказать, с какой целью использовался конкретно у Вас.


в менеджерском ПО я их завел, каждому присволи код актуальный коду карты. (четыри знака).

Дальнейшие мои действия?
Карта после перегрузки серва сама активируется? RK6 тачскрины стоят. 3 кассы. все в сети.
И еще перезагрузка сервера обозначает - перезагрузку ПО на серверной машине? так я понял?
Да, именно так. Больше ничего не нужно.


Можно ли сделать у вас именные карты с логотипом организации?
Конечно, у нас даже образцы есть на сайте (http://www.carbis.ru/forum/Прайс-лист-компании-carbis/2506-Изготовление-дисконтных-карт-Образцы.html).

Turambar83
29.06.2011, 12:42
Огромное спасибо.
Буду пробывать дальше и надеяться что все заработает.

Turambar83
29.06.2011, 15:46
Извените за назольевость.
Но пока сидел на работе возник вопрос. А RK откуда берет нумерацию карт? Из менеджерского ПО где я забиваю нуменрацию, или номера карт вводятся в какой то отдельный ini файл?

SH
29.06.2011, 17:28
Из менеджерского ПО где я забиваю нуменрацию
Да.


или номера карт вводятся в какой то отдельный ini файл?
Нет.

ovp
07.12.2011, 14:51
Выкладываю формат карты

;778=171270002=146?

Откуда в конце вопросительный знак?
Разделители д.б. в виде равно или звездочки? На форуме встречаются разные мнения.

Andy
07.12.2011, 15:58
ovp
знак вопроса в конце должен быть обязательно ....
; - показатель 2 дорожки
? - перевод коретки (подтверждение - типа enter)

ovp
07.12.2011, 18:58
Персональные Дебетовые карты: (использует CARDSERV)
778=xxxxxxxx=yyyyy
yyyyy - код карты, который и заносится в
PCARDS.EXE. Max 8 цифр, но желательно max 5.

1. Если номер карты содержит 13 цифр (штрих-код EAN-13), как правильно сформулировать строку с фиксленом?
у меня так:
Fix_Len_Mask=778=код ресторана=********NNNNN
в кипере не реагирует на карту. Хотя штрих-код из 4 цифр (карта официанта) читает.
2. Как воспользоваться tstfxlen.exe? Какие параметры задавать?

SH
07.12.2011, 19:01
у меня так:
Fix_Len_Mask=778=код ресторана=********NNNNN
в кипере не реагирует на карту.
А какие цифры значащие? Их и выделяете. Например, если последние пять, то будет
Fix_Len_Mask=********NNNNN

ovp
07.12.2011, 19:14
Значащие-последние три цифры.Впереди - 2200000000
Есть наверно ограничение на длину номера?

А что по поводу второго вопроса? Как воспользоваться tstfxlen.exe? Какие параметры задавать?

SH
07.12.2011, 19:17
Вроде нет такого ограничения, по-крайней мере, Вам должно хватить.

---------- Добавлено в 18:17 ---------- Предыдущее сообщение было размещено в 18:16 ----------

Fix_Len_Mask=2200000000NNN
В Вашем случае должно сработать.

ovp
07.12.2011, 19:19
без 778 и без указания кода ресторана???
:O:

SH
07.12.2011, 19:24
Ну да. Fixlen для этого и нужен.
Карта определяется как дисконтная либо:
1) по префиксу 778, и тогда далее по коду определяется принадлежность к данному ресторану;
2) по фикслену - карта, соотвтетствующая маске будет принята как дисконтная.

ovp
15.12.2011, 21:42
Вроде нет такого ограничения, по-крайней мере, Вам должно хватить.---------- Добавлено в 18:17 ---------- Предыдущее сообщение было размещено в 18:16 ----------Fix_Len_Mask=2200000000NNNВ Вашем случае должно сработать. В Кипере не сработало-не реагирует на карту. № карты 2200000000613 (восемь нулей!!!!)В ДОСе набираю tstfxlen.exe и сканирую карту, показывает:Cardnum after mask: 613.Converted to 778=00000000=613 (восемь нулей!!!!)Меняю маску Fix_Len_Mask=220000000NNNN (семь нулей!!!!)Получаем: Cardnum after mask: 0613.Converted to 778=00000000=0613 (тоже восемь нулей!!!!)Восемь нулей никак не вписываются в номер ресторана.

Admin
15.12.2011, 22:07
Читаем:


Данный модуль предназначен для преобразования форматов карт, отличных от стандартных. Модуль реализован в виде дополнительной библиотеки для кассового клиента - FIX_LEN.DLL. Библиотека должна размещаться в поддиректории EXTENS рабочего каталога кассовой станции (как правило, RKCLIENT). С версии FIX_LEN 2.0 поддерживаются форматы произвольной длины.
Для создания нескольких правил перекодировки, библиотека может быть переименована и размещена в директории EXTENS под разными именами. Все необходимые конфигурационные параметры библиотеки должны находиться в файле RKEEPER6.INI.
Формат параметров следующий:

<имя библиотеки без расширения>_<имя параметра1> = <значение параметра1>
<имя библиотеки без расширения>_<имя параметра2> = <значение параметра2>
.................................................. .................................................. .....................................
<имя библиотеки без расширения>_<имя параметраN> = <значение параметраN>


Для версии FIX_LEN 2.0 и выше параметры можно объединять в секции [ ]:

[<имя библиотеки без расширения>]
<имя параметра1>=<значение параметра1>
<имя параметра2>=<значение параметра2>
.................................................. ....................
<имя параметраN>=<значение параметраN>


Описание параметров, которые могут применяться к библиотеке перекодировки:

MaxLen1 (http://support.ucs.ru/ru/node/59#1) - максимальная длина формата карты. По умолчанию имеет значение ноль (0) - при этом MaxLen принимает значение, равное длине маски length(Mask)
MinLen1 (http://support.ucs.ru/ru/node/59#1) - минимальная длина формата карты. По умолчанию имеет значение ноль (0) - при этом MaxLen принимает значение, равное длине маски length(Mask)
Mask2 (http://support.ucs.ru/ru/node/59#2) - маска для выделения результирующего номера из общего формата карты. Может состоять из числовых символов (0-9), группового символа "*" (звездочка) и символа "N". Числовые символы представляют сами себя, т.е. цифры от 0 до 9, и используются для точного соответствия считанного с карты номера указанной маске. При использовании группового символа "*" на позиции маски может находиться любой символ (не обязательно числовой). Символ "N" играет ключевую роль - все символы, выделенные из формата карты, соответствующие позиции символа "N" в маске, формируют результирующий номер карты. Если длина формата карты превышает длину параметра Mask (но меньше значения MaxLen), то значение параметра Mask дополняется СПРАВА символами "*". Если длина формата карты меньше длины параметра Mask (но больше MinLen), то значение параметра Mask обрезается СПРАВА до длины формата карты. Более подробно см. примеры применения FIX_LEN
RightMask2 (http://support.ucs.ru/ru/node/59#2) - аналогичен параметру Mask, за исключением того, что маска дополняется или обрезается (в зависимотси от параметров MaxLen и MinLen) СЛЕВА.
AddCode - можно указать значение, которое будет прибавляться к результирующему номеру после выделения маски. Значение по умолчанию - 0. Максимальное значение 2147483647 (LongInt)
Card - указывает, в какой формат, поддерживаемый системой R-Keeper v6, преобразовать выделенный по маске результирущий номер. По умолчанию имеет значение "0".
Может принимать следующие значения:

0 - преобразовать в формат персональных дисконтно-платежная карт (778=<код ресторана>=<номер карты>)
1 - преобразовать в формат неперсональной дисконтой карты (777=<код ресторана>=<тип скидки>=<срок действия>* (http://support.ucs.ru/ru/node/59#note1))
2 - преобразовать в формат гостиничной карта (770=<код ресторана>=<номер карты>)
3 - преобразовать в формат карты на входе (771=<код ресторана>=<номер карты>)
4 - преобразовать в формат карты неплательщика (99<код неплательщика>) - начиная с версии 2.03

ForDigits - определяет, сколько цифр кода корпорации передавать кассовому серверу после преобразования. При значении ON (Fix_Len_ForDigits = ON) кассовый сервер будет всегда получать 8-ми значный код ресторана. Это требуется при перекодировке в формат гостиничных карт (см. параметр Card = 2), т.к. на данный момент кассовый сервер "принимает" гостиничные карты только с 8-ми значным кодом ресторана
СreditCard - расширенная поддержка кредитных карт (только с версии FIX_LEN 2.0 и выше). По умолчанию принимает значение OFF. При значении ON библиотека дополнительно выполняет след. функции:

выделяет номер кредитной карты из общего формата карты
производит проверку контрольной суммы по правилам кредитных карт
выделенный номер кредитной карты используется для дальнейшей обработки с помощью вышеорисанных параметров


* - срок действия неперсональной дисконтной карты не может быть установлен с помощью FIX_LEN, т.к. он устанавливается автоматически равным 2080 году
Более подробно о стандартных форматах карт см. здесь (http://support.ucs.ru/ru/node/58).


Протестировать работоспособность библиотеки и указанных параметров можно с помощью утилиты TSTFXLEN.EXE. Для это необходимо записать в корень рабочего каталога RKCLIENT утилиту тестирования (TSTFXLEN.EXE) и библиотеку перекодировки (FIX_LEN.DLL). Затем запустить утилиту тестирования, указав в качестве параметра формат карты, который хотим перекодировать:

TSTFXLEN.EXE<пробел><предполагаемый формат карты>[/TD]

Примечание: утилита проверки TSTFXLEN.EXE использует параметры, указанные в файле RKEEPER6.INI


В результате выполения команды, если предполагаемый формат карты соответствует указанной в RKEEPER6.INI маске и остальным параметрам, должен быть ответ в примерное таком виде (при перекодировке в формат карт ПДС):

Cardnum after mask: <выделенный из общего формата номер>
TRUE
778=00000000=<выделенный из общего формата номер>[/TD]

Примечание: утилита проверки TSTFXLEN.EXE всегда возвращает вместо реального кода ресторана значение 00000000 (восемь нулей).




1 - по умолчанию, значение параметра MaxLen равно значению параметра MinLen и принимает значение, равное длине формата карты.
2 - результирующий номер образуется конкатенацией выделенных из общего формата (по символу "N") номеров левой и правой маски. Конкатенация - это объединение строк. Например, результат конкатенации строк "ABC123" и "456DEF" является строка "ABC123456DEF".

Примеры использования FIXLEN

Примеры, описанные ниже, применялись в реальных ситуациях, с которыми приходилось сталкиваться дилерам, инженерам компании и т.д. Рекомендуется всегда использовать последнюю версию FIX_LEN.DLL


Пример использования для неперсональных дисконтных карт
Исходные данные: у заказчика от предыдущей системы остались дисконтные карты со следующей записью на второй дорожке:
от 050001 до 059999 - использовались как карты с 5% скидкой. Номера от 1 до 9999
от 100001 до 109999 - использовались как карты с 10% скидкой. Номера от 1 до 9999
Цель : без установки системы ПДС использовать существующие карты как неперсональные дисконтные
Решение: в приложении "Редактор" необходимо создать две скидки 5% и 10%, в параметрах которых в поле "Тип магнитной карты" указать 5 и 10 соответственно. Далее прописать в RKEEPER6.INI на рабочей станции:
FIX_LEN_Mask = NN****
FIX_LEN_Card = 1
FIX_LEN_MinLen = 6
FIX_LEN_MaxLen = 6
Заметим, что в данном случае перекодировщик "выделяет" из общего формата не номер карты, а идентификатор скидки (первых две цифры), т.к. понятие "номер карты" для неперсональных дисконтных карт не применимо.
Мы использовали параметр Card = 1, который дает команду преобразовать выделенный номер в формат неперсональной дисконтной карты. Также мы использовали два вспомогательных параметра MinLen и MaxLen для дополнительного контроля обслуживаемых карт - в нашем случае могут обслуживаться карты только с шестизначным номером. Это сделано с той целью, что существующий формат довольно простой и есть вероятность обслуживания "не своих" карт.
Например, на кассе обслуживается карта с номером 053256. Т.к. длина считанного номера соответствует указаному в параметрах MinLen и MaxLen значению (6), происходит перекодировка и преобразоване номера. После чего кассовый сервер получит на вход последовательность, которая соответствует неперсональной дисконтной карте и назначит скидку 5% (т.к. "выделенный" идентификатор скидки 05)


Пример использования для сети ресторанов с разными корпоративными кодами
Исходные данные: сеть из 4-х ресторанов, в каждом ресторане используются собственные карты (с диапазоном номеров 1.. 9999), причем номера карт в каждом ресторане пересекаются с остальными. Коды ресторанов: 108900001, 122000001, 121950001 и 121950002, т.е. не принадлежат к одной корпорации
Цель: создание единой базы данных карт ПДС для возможности принятия всех карт в любом ресторане сети.
Решение: т.к. каждому ресторану присвоен свой некорпоративный код1 (http://support.ucs.ru/ru/node/60#1), необходимо использовать четыре копии библиотеки FIX_LEN.DLL на каждой кассе. Для этого скопируем библиотеку под разными именами2 (http://support.ucs.ru/ru/node/60#2), например FIX_LEN1.DLL, FIX_LEN2.DLL, FIX_LEN3.DLL и FIX_LEN4.DLL , в директорию EXTENS на кассу. Т.к. номера карт из разных ресторанов могут пересекаться, необходимо различать их в общей базе - для этого используем параметр AddCode, который добавляет к "выделенному" номеру определенное число.
В результате мы должны прописать в RKEEPER6.INI на каждой кассе:
FIX_LEN1_Mask = 778=108900001=NNNN
FIX_LEN1_AddCode = 100000
FIX_LEN2_Mask = 778=122000001=NNNN
FIX_LEN2_AddCode = 200000
FIX_LEN3_Mask = 778=121950001=NNNN
FIX_LEN3_AddCode = 300000
FIX_LEN4_Mask = 778=121950002=NNNN
FIX_LEN4_AddCode = 400000
либо, при использовании INIFILE.DLL версии 2.0 и выше:
[FIX_LEN1]
Mask = 778=108900001=NNNN
AddCode = 100000
[FIX_LEN2]
Mask = 778=122000001=NNNN
AddCode = 200000
[FIX_LEN3]
Mask = 778=121950001=NNNN
AddCode = 300000
[FIX_LEN4]
Mask = 778=121950002=NNNN
AddCode = 400000
При таких настройках карты должны создаваться в системе ПДС по следующему принципу:
10NNNN - для карт первого ресторана
20NNNN - для карт второго ресторана
30NNNN - для карт третьего ресторана
40NNNN - для карт четвертого ресторана
где NNNN - реальный номер карты.
Например, есть карты со следующими номерами: 1456 (из первого ресторана), 2874 (из второго), 1456 (из третьего) и 2874 (из четвертого). Тогда эти карты должны быть созданы в системе ПДС со следующими номерами: 101456, 202874, 301456, 402874 соответственно.


Пример использования для сети ресторанов с одинаковыми корпоративными кодами, за исключением ранее открытых ресторанов
Исходные данные: сеть из 4-х ресторанов, где первый ресторан имеет код 5214.0001 (код восьмизначный, т.к. кассовая версия более ранняя), остальные рестораны имеют следующие коды: 10889.0001, 10889.0002 и 10889.0004 соответственно. На картах закодирована последовательность: 778=108890000=NNNN3 (http://support.ucs.ru/ru/node/60#3)
Цель: возможность использовать карты ПДС в первом ресторане до обновления версии кассовой программы
Решение: в первом ресторане используем перекодировщик карт FIX_LEN.DLL. На кассовой станции в RKEEPER6.INI прописываем:
FIX_LEN_Mask = 778=108890000=NNNN




Поддержка международных студенческих карт ISIC
Исходные данные: сеть ресторанов SUBWAY решила принимать карты ISIC и предоставлять по ним скидку. Формат карты ISIC следующий (информация со второй дорожки): 123 456 789 012 234 (пробелы указаны для удобства чтения), где первые 12 цифр - номер карты, последние три цифры - проверочные. При этом первые шесть цифр номера представляют префикс номера, который определяет принадлежность карты к стране (для России используются следующие префиксы: 207218, 207220, 207222, 207500, 207501, 207900)
Цель: использовать российские карты ISIC как дисконтные.
Решение: т.к. кол-во международных карты ISIC очень велико, было принято решение использовать их как неперсональные дисконтные, т.е. без привязки к какому либо номеру карты. Для этого прописываем в RKEEPER6.INI на кассовой станции:
FIX_LEN_Mask = 207NN********** (в маске всего 15 символов, из которых последние 10 - символ "*" {звездочка})
FIX_LEN_Card = 1
Указанная маска позволяет ограничить обслуживание только тех карт, которые начинаются с цифры 207 (т.е. российских карт). Следующие две цифры после 207 мы будем использовать для "выделения" идентификатора скидки (тип магнитной карты). Т.к. в префиксах для российских карт после 207 следуют разные цифры (21, 22, 50 и 90), то необходимо в приложении "Редактор" создать четыре скидки с одинаковым названием и величиной скидки, но указать разные типы магнитных карт - 21, 22, 50 и 90




1 - перекодировщик карт FIX_LEN следует использовать только в том случае, если коды ресторанов имеют разный код корпорации (первых пять цифр общего кода ресторана). Если ресторанам изначально присваивался одинаковый корпоративный код, то необходимо воспользоваться библиотекой ALLREST.DLL
2 - при переименовывании файлов в системе DOS следует помнить, что максимальная длина имени файла - восемь символов.
3 - формат для магнитных карт 778=CCCCC0000=NNNN ( CCCCC - код корпорации, далее четыре нуля ) прописывается в том случае, если карты планируется использовать в сети ресторанов с одинаковым кодом корпорации (первые пять цифр в общем коде ресторана)

SH
15.12.2011, 23:05
Восемь нулей никак не вписываются в номер ресторана.
Не уловил... Номер карты в обоих случаях (значимый) - 613. Fixlen свое отработал. Если карта не проходит, вопрос, был ли вообще запрос к серверу карт. Ну и прочие настройки надо покопать.

ovp
16.12.2011, 12:55
А как проверить был ли вообще запрос к серверу карт?

SH
16.12.2011, 13:20
А прямо в окошке CARDSERV, там в одном из разделов отображаются запросы.

ovp
19.12.2011, 20:26
В закладке Connects-пусто.
-В rkeeper6.ini - APServer=AServ
-В cardserv.ini -
[DB]
File = card.udb
DayBound = 4:00
Backup = D:\RK6\CARDSERV\BackUP
IgnoreStopDate=No
BackupCount=2
WeekStart=7

[LinkDLL]
1 = RNBOpen
2 = RLocal

[RNetBios]
Server = PCSERV

[RNBOpen]
Server = AServ

[RTcp]
Port = 3456

[RLocal]
Port = 3
Что ещё надо проверить?

SH
19.12.2011, 22:43
Сервер где?
Код ресторана через setcodat посмотрите.
Посмотрите, что дает карта при прокатывании в DOS.
Если сообщения, что сервер карт не найден, касса не выдает, то причина в подавляющем большинстве случаев - она не воспринимает карту как дисконтную.

VampireKB
20.12.2011, 00:46
Сервер где?
Код ресторана через setcodat посмотрите.
Посмотрите, что дает карта при прокатывании в DOS.
Если сообщения, что сервер карт не найден, касса не выдает, то причина в подавляющем большинстве случаев - она не воспринимает карту как дисконтную.


сервер карт не найден
Имя сервера карт в кардсервере не совпадает с именем сервера карт в ркипере

нет соответсвующей скидки(типа скидок)
она не воспринимает карту как дисконтную

ничего не пишет
неверно прописана маска карты.Карта НЕ опознается

ovp
20.12.2011, 13:58
Сервер где?
Сервер карт - на менеджерской станции (Windows XP).
Кассовый-на кассе под ДОСом с тачскрином


Код ресторана через setcodat посмотрите.
Посмотрел. Но он нигде не указывается. У меня карты со штрихкодом, я писал в посте №49.
Тест фикслена проходит:
Cardnum after mask: 613.Converted to 778=00000000=613


Если сообщения, что сервер карт не найден, касса не выдает, то причина в подавляющем большинстве случаев - она не воспринимает карту как дисконтную.
Вообще никаких сообщений нет-хоть бы выругался.


Имя сервера карт в кардсервере не совпадает с именем сервера карт в ркипере
Я выше показал:
-В rkeeper6.ini - APServer=AServ
-В cardserv.ini -
[RNBOpen]
Server = AServ


неверно прописана маска карты.Карта НЕ опознается
Fix_Len_Mask=220000000NNNN тест фикслена проходит

SH
20.12.2011, 14:05
Fix_Len.dll лежит в EXTENS?

ovp
20.12.2011, 14:29
Конечччно

VampireKB
20.12.2011, 14:59
Fix_Len_Mask=220000000NNNN

778=00000000=613
Mask:778=********=NNNN

ovp
20.12.2011, 15:19
не понял. см. пост №49. № карты 2200000000613 (восемь нулей!!!!). Fix_Len_Mask=2200000000NNN. В ДОСе набираю tstfxlen.exe и сканирую карту, показывает:Cardnum after mask: 613.Converted to 778=00000000=613. Меняю маску Fix_Len_Mask=кодресторана=2200000000NN N - пишет, что не конвертирован. ( Почему-то в тексте не переводится строка.). И вообще, одни пишут, что надо в маске код ресторана, другие, что не надо, в данном случае.

SH
20.12.2011, 15:30
одни пишут, что надо в маске код ресторана, другие, что не надо, в данном случае.
Попробуйте и увидите, что с кодом ресторана ничего у Вас работать не будет. Потому что в считанном коде с карты не найдет совпадений.

---------- Добавлено в 14:30 ---------- Предыдущее сообщение было размещено в 14:29 ----------


[RNBOpen]
Server = AServ
Были какие-то причуды где-то... Попробуйте имя сервера карт везде заглавными написать.

ovp
20.12.2011, 15:39
[QUOTE=SH;40683]Попробуйте и увидите, что с кодом ресторана ничего у Вас работать не будет. Потому что в считанном коде с карты не найдет совпадений.[COLOR="Silver"]
Так и не работает. с кодом-тест не идет с tstfxlen.exe,
а без кода-тест проходит, а кипер не видит карты.

ovp
21.12.2011, 21:56
1. Может нужна на кассе какая-то DLL-ка для карт со штрих-кодом?
2. В инструкции читаю: "Создать новую валюту в группе “PrePay”, например “Клубная карта”.
На закладке “Авторизация” необходимо выбрать “БОНУС КАРТА”. -
У меня нет закладки "Авторизация".

1576
3. Какой тип карты выбрать для карт со штрих-кодом?

SH
21.12.2011, 23:59
1. Может нужна на кассе какая-то DLL-ка для карт со штрих-кодом?
Если Вы их используете как дисконтные, а не платежные, если fix_len карту видит - то никаких особенных настроек не надо.
Вот что сделайте - у Вас есть возможность взять обычную карту с магнитной полосой, от чужого ресторана? Проверьте систему на такой.

ovp
23.12.2011, 21:33
В UCS сказали, что проблема в настройках сканера. Выдает не то, что надо. А смотреть надо после запуска CHMCKBD.EXE. Будем разбираться со сканером.

Даха
06.01.2012, 00:42
Добрый вечер! Сделали скидочные карты, прописали, проводим картой в кипере, показывает что скидка 10%, но сумму из чека не вычитает? что не так?

---------- Добавлено в 23:42 ---------- Предыдущее сообщение было размещено в 23:40 ----------

и почему то не отображается ФИО..

SH
06.01.2012, 04:00
Название скидки прописали, а действие - нет. Проверяйте свойства скидки.

Даха
07.01.2012, 01:20
теперь вообще словно не проводила картой.ю ничего не понимаю

SH
07.01.2012, 02:28
Если на проведение карты вообще не реагирует, то значит, она не воспринимается как дисконтная.
Они из возможных причин:
1. Карта неверно закодирована;
2. На сервере в rkeeper6.ini не прописан карточный сервер.

---------- Добавлено в 00:28 ---------- Предыдущее сообщение было размещено в 00:27 ----------


теперь
Это после чего?

Даха
17.01.2012, 21:36
Как провести карточный сервер. Куда надо заходить и что там делать?

SH
17.01.2012, 23:38
В папке с сервером, откуда стартует rkserver.exe, должен быть файл rkeeper6.ini и там прописан параметр:
APServer=<имя сервера карт>

Даха
27.03.2012, 18:24
Извиняюсь за то если тема была, не увидел.
Стоит Rkeeper6, там же крутится кардсервер.
Привезли именные карты с одинаковым номером 001(на поверхности карты):sarcastic:, на самих картах ничего не было, т.е проверяли из под DOS'а, Ctrl+O и проводили картой.
Отдали на перемагничивание, теперь из под доса они определяються как ?178=бла-бла-бла.184?(как-то так). Если я правильно понимаю то номер 184 и есть номер самой карты.
Захожу в Дисконт--->Счета там у меня 2 папки на скидки 15 и 25 процентов. В папке 15% создаю новый счет где указываю номер карты 184, Ф.И.О владельца, скидку 15%, дату выдачи/окончания карты, тип дебетовая. Выхожу из дисконта, перезагружаю менеджера и саму кассу.
по идее карта должна будет показать Ф.И.О и скидку когда проводишь в заказе(пречека не было), а он пишет что карта не распознанна.

Может помимо дисконта еще где надо прописать что-нибудь?
Или что-то не было просто донастроенно?:Cray: Вот и у меня почти такой же вопрос: Провожу картой, скидка делается, а вот ФИО не показывает. Что надо сделать, чтоб было видно при использовании карты чья она?

Andy
27.03.2012, 19:07
Что надо сделать, чтоб было видно при использовании карты чья она?
а в режиме кассира провести картой не заходя в стол?
а посмотреть на предчек распечатанный на принтере со сделаной скидкой?

okis
28.03.2012, 00:36
а в режиме кассира провести картой не заходя в стол?
а посмотреть на предчек распечатанный на принтере со сделаной скидкой?

+ ShowCardInfo=ON

Tretalek
07.12.2012, 18:19
Всем ДД! Возник такой вопрос: технически реализуемо чтобы карта использовалась как для получения 10% скидки, одновременно с этим те же 10% зачислялись на саму карту в виде валюты-рубль а в последствии ей можно было бы расплатиться?:)

VampireKB
07.12.2012, 21:41
Всем ДД! Возник такой вопрос: технически реализуемо чтобы карта использовалась как для получения 10% скидки, одновременно с этим те же 10% зачислялись на саму карту в виде валюты-рубль а в последствии ей можно было бы расплатиться?:)
Да,можно !
Только учтите,что из 100 рублей при настроенной 10% скидка,10% бонус, клиенту упалёт 10% от 90 рублей !

SH
07.12.2012, 22:31
Только учтите,что из 100 рублей при настроенной 10% скидка,10% бонус, клиенту упалёт 10% от 90 рублей !
Если мне не изменяет память, в последних версиях есть настройка - считать бонус от полной суммы, без учета скидок.

Tretalek
09.12.2012, 14:18
Ясно, а есть ли возможность поднять 2 сервера одновременно? Т.е с одним токеном но просто с разнесенными базами?

VampireKB
09.12.2012, 14:43
Ясно, а есть ли возможность поднять 2 сервера одновременно? Т.е с одним токеном но просто с разнесенными базами?
Баз может быть сколько угодно,но обращение к ним будет разделяться только по номерам карт. для этого есть Цдистр

Tretalek
09.12.2012, 15:30
для этого есть Цдистр

Можно подробнее?:)

VampireKB
09.12.2012, 16:14
Можно подробнее?:)
R-Keeper >. CDISTR>>>
1...99:cardserver(farcards)1
100...999:cardserver(farcards)2
etc...

Maxim
20.12.2012, 16:37
Можно даже просто запустить два сервера с двумя разными базами на одном ключе и не забивать голову кодировкой

VampireKB
20.12.2012, 16:47
Уточни вот этот момент:

не забивать голову кодировкой
что ты имел ввиду

virusnjk
26.06.2014, 13:11
Вроде бы тема та, но вопрос у меня совсем другой.
Хотим заказать карты, но не знаем на какую дорожку что прописывать (намагничивать).
На сколько мне известно у карт 3 дорожки.
На какую дорожку надо прописывать (намагничивать) 778=xxxxxxxx=yyyy и какие символы должны быть в начале и в конце значения 778=xxxxxxxx=yyyy
так же на какую дорожку прописывать (намагничивать) yyyy, значение которое является номером карты?

mnekin
26.06.2014, 14:30
Вроде бы тема та, но вопрос у меня совсем другой.
Хотим заказать карты, но не знаем на какую дорожку что прописывать (намагничивать).
На сколько мне известно у карт 3 дорожки.
На какую дорожку надо прописывать (намагничивать) 778=xxxxxxxx=yyyy и какие символы должны быть в начале и в конце значения 778=xxxxxxxx=yyyy
так же на какую дорожку прописывать (намагничивать) yyyy, значение которое является номером карты?


Пишем 778=xxxxxxxx=yyyy на вторую дорожку и больше ни каких символов, ни в конце, ни в начале.

sibgaba
26.06.2014, 15:08
Ну если дать более расширенный ответ, то будет так:
1. Шить можно (нужно) на ту дорожку на чтение которой настроен ваш считыватель. Подавляющее большинство читают 2-ю дорожку. Поэтому, если не вдаваться в детали, самый простой вариант шить на нее.

2. Префикс и Постфикс обычно на карту не шьются, их добавляет считыватель (они в нем запрограммированы) если на этом считывателе у вас работают персональские карты, значит с префиксами там все ок и на карту дополнительно ничего шить не надо.

virusnjk
30.06.2014, 16:47
Спасибо за подробный ответ.
У меня ещё вопрос.
С каким кодом и с какими знаками писать 0001 карточки для персонала?
Т.е. нужны ли знаки ";" и "?" в начале и конце 0001 и куда какой знак?

SH
30.06.2014, 17:13
С каким кодом и с какими знаками писать 0001 карточки для персонала?
Вообще не ясен вопрос. Код - это что? Цифрами писать.


Т.е. нужны ли знаки ";" и "?" в начале и конце 0001 и куда какой знак?
Кодируйте просто цифры.

mnekin
30.06.2014, 21:25
Спасибо за подробный ответ.
У меня ещё вопрос.
С каким кодом и с какими знаками писать 0001 карточки для персонала?
Т.е. нужны ли знаки ";" и "?" в начале и конце 0001 и куда какой знак?

знаки ";" и "?" выдает автоматически ваш считыватель, на карте прописаны только цифры.
Пишете только цифры

Cooler
04.12.2014, 12:55
Пришли неправильно закодированные карты (новая партия).
Старые карты, кот работают закодированы так 778=197240003=NNNNN
В новых закодировано 778<197240003<NNNNN
то есть вместо = закодировало <
Кипер их соответственно не понимает. Это как то прописывается в настройках или только перекодировка????

И еще вопрос если в одном ресторане код 19724.0001 в другом 19724.0002 и т.д. Какой код кодировать на карту, чтобы она читалась во всех ресторанах?

okis
04.12.2014, 13:35
1. Перекодировка.
2. Alrest.dll или перекодировка в одном из ресторанов.

SH
04.12.2014, 13:56
1. Fixlen же должен помочь.

2.
если в одном ресторане код 19724.0001 в другом 19724.0002 и т.д. Какой код кодировать на карту, чтобы она читалась во всех ресторанах?
Кодируйте 197240000 - если оставить ноль вместо кода ресторана, то такая карта будет действовать во всех ресторанах сети.

Cooler
04.12.2014, 14:10
А как fixlenom решить вопрос?:facepalm:

SH
04.12.2014, 17:53
fix_len_mask=778<197240003<NNNNN
Подробностей на форуме куча.

Cooler
05.12.2014, 11:04
Что самое интересное пробовал, именно так и прописывал. и ничего. Не видит карты!:facepalm:

sibgaba
05.12.2014, 11:28
Ну дык а остальное сделали? dll в extens положили? testfixlen пробовали?

Cooler
05.12.2014, 11:52
dll и лежало, все что поменял строку
было fix_len_mask=778=197240003=NNNNN сделал fix_len_mask=778<197240003<NNNNN, перегрузил станцию и ничего!
testfixlen не пробовал., а можно об этом подробнее

sibgaba
05.12.2014, 12:03
testfixlen не пробовал., а можно об этом подробнее

tstfixlen.exe - утилита для тестирования настроек fixlen

Запускается из командной строки из rkclient в виде "tstfixlen.exe 778<197240003<12345"
где "778<197240003<12345" - это дорожка с той карты которой вы тестируете.

По итогу получите отчет - сработала ли маска и если нет, то почему.

Cooler
05.12.2014, 12:08
попробую

SH
05.12.2014, 16:13
Попробуйте и
fix_len_mask=**************NNNNN

mnekin
05.12.2014, 20:47
fix_len_mask=778<197240003<NNNNN
Подробностей на форуме куча.

Так думаю правильнее будет
fix_len_mask=778*19724000**NNNNN

Raziel38
25.03.2015, 19:28
здравствуйте. у клиента в заведении есть свои дисконтные карты. он хочет использовать карты из дисконтной системы "радуга скидок". на станциях в ини прописал фикслены. но так получается, что в пдс номера некоторых карт совпадают. естественно префиксы у них разные. как разрешить эту ситуацию? я так предполагаю нужно запустить ещё один сервер карт и в него забить карты из "радуги"?

SH
25.03.2015, 19:34
Использовать цифры из второго префикса.
Например, у стандартных карт нумерация 0001-9999
А у нестандартных - 9000-9999, а префикс, допустим, 123, т.е. карты от 1239000 до 123999
Вот, в данном примере можно хоть все три цифры и использовать в качестве номера.
Если конкретные данные скажете - можно будет попробовать дать конкретный совет.

sibgaba
26.03.2015, 06:58
Ну еще у Fix_Len есть параметр AddCode=5000 (например).
Смысл в том что после маскирования получили номер 123, прибавили к нему значение AddCode и в ПДС послали номер 5123

Но я думаю вы не правы в своем подходе.
Нет смысла работать с картами сторонней системы по номерам. Т.е. смысл то есть, но на практике не получится.

Карты эмитируете не вы, допустим на сейчас есть 1000 карт с номерами от 1 до 1000, вы внесете их в свою базу, все будет работать. Потом владельцы радуги выпустят карты с номерами 1001-2000 и вам ничего не скажут. В итоге эти карты у вас работать не будут.

Наверняка по картам радуги (всем) вы даете одну и ту же скидку (10%). Соответственно настройте fixlen на работу с не персональными дисконтными картами, зацепившись за какую то повторяющуюся часть кода у всех карт радуги.

Raziel38
26.03.2015, 11:01
спасибо SH и sibgaba. выручили.