Настройка MCR для карт с незначащими нулями
Пример ситуации. В админке ProBonus уже заведена тысяча карт с номерами 1 … 1000. При этом физически карты изготовили, зашив на магнитной полосе нумерацию 778=123450001=000001 … 778=123450001=001000.
Для ProBonus номер карты — это не число, а строка, т. е. карты с номером 1 и с номером 000001 по умолчанию — это разные карты.
Чтобы в данном примере из r_keeper в ProBonus уходил номер карты без ведущих нулей, можно использовать MCR-алгоритм вида:
function MCR1001976(DeviceSignal: Integer; DeviceIdent: Integer; var Parameter: String): Boolean;
begin
if pos('778=123450001=', Parameter) = 1 then begin
delete(Parameter, 1, 14);
while Parameter[1] = '0' do Delete(Parameter,1,1);
Result := True;
end;
end;
Алгоритм — это пример для случая, когда на карте перед номером карты записано 778=123450001=. Если перед номером записано что-то другое, алгоритм нужно изменить под свои цели.
