Number of zeros inserted when util g/2 Suppress = "N"
- Article Type: General
- Product: Aleph
- Product Version: 20
Description:
When we specify "N" for Suppress Leading Zeros in a util g/2 counter for a particular library, the number of zeros inserted in front of the Value is always 9 minus the number of characters in the Value, that is, a value of "12345" will have four zeros inserted, making "000012345".
If we have a 4-character Prefix value and if, as is the case with the last-bor-id:
Sequence Name Value Suppress Type Prefix
-------------------- --------- -------- ---- --------------------
10. last-bor-id 12345 N S ABC-
the field in which the value is to be used {the z303_rec_key (the Aleph-assigned patron ID)} is only 12 bytes, the last byte (of the the z303_rec_key) will be truncated.
For example, if we have a prefix of ABC- and a value of 000012345, the resulting complete value will be "ABC-000012345". But the z303_rec_key is only 12 bytes, so the key actually stored is "ABC-00001234".
Resolution:
As can be seen in the ./alephm/source/copy/Z52, the z52-SEQUENCE (the "Value" column in util g/2) is 9 bytes:
Z52-SEQUENCE PICTURE 9(9)
The number of zeros inserted will always be 9 minus the number of characters in the Value.
There are only two solutions to this problem:
1) Specify a shorter prefix. In the case of the last-bor-id this would be a prefix of three characters or fewer.
2) Specify Suppress = "Y".
In regard to other parameters: most of the targets of these parameters are 20 bytes or longer so there is usually no problem, but it is good to follow these rules:
If you want to specify "N" for Suppress for a parameter which has "N" in the USMnn util g/2 example, don't specify a Prefix which is longer than the one which you see in the distributed.
If you want to change "Y" to "N" for a particular parameter, then consider whether the length of the Prefix + Value is greater than the length of the target.
Additional Information
faq
- Article last edited: 10/8/2013