2

I'm supposed to send Data-Element 35 (Track2: ".....=.....") in BCD format. The '=' character is to be replaced with a 'D'.

Isn't 0x0D illegal in BCD?

But, the customer is always right... so, how can it be done?

I can add the following static method:

  BcdVar(..., IFieldValidator validator)

and call:

  msg[Bit._035_TRACK_2_DATA] = FieldDescriptor.BcdVar(2, 37, FieldValidators.Track2);

Is it possible without changing the lib?

Rami Rosenbaum
  • 467
  • 5
  • 18

1 Answers1

1

Try using the binary field descriptor instead of BCD.

Why I think this happened was by making the track separator an =, you can change the packing from ASCII to BINARY which saves 30 odd bytes. Not important now, but I can imagine it was important years ago.

I have found that Hypercom terminals do this by default and in my experience, I've had to change it on the server for certain outgoing interfaces.

John Oxley
  • 14,698
  • 18
  • 53
  • 78