If the barcode of an EAN128 barcode contains the application identifier 30, the human readable is not rendered properly. Application identifiers should be enclosed within parenthesis. Application identifiers before AI = 30 are properly enclosed; however, application identifiers following the segment with AI=30 are not properly enclosed. While I have not tested this, there is a possibility that the issue is because AI = 30 defines a variable length segment of up to 8 characters. In my examples which are attached I have used an 8 character segment so the variable length should have no effect because is is behaving in this case like a fixed length segment (no FNC1, group separator required). First label example shows the problem. The second label example shows that removing the AI=30 segment allows the human readable to be rendered properly.
Steps to Reproduce:
Set the text property for a barcode with Symbology = EAN128, CharacterSet = CharsetC, HumanReadableText = True.
Use this as the barcode text property: 0120885251000023300000003032021200002112345678
This barcode breaks down to:
01 - application identifier for SCC14 (UPC Code)
20885252000023 - 14 digit UPC Code including check digit.
30 - application identifier for quantity
00000030 - quantity. No FNC1 group separator is required because the maximum length for quantity is used.
3202 - application identifier for net weight indicating 2 decimal digits.
120000 - net weight. Includes 2 decimal digits so 1200.00
21 - application identifier for serial number
12345678 - eight digit serial number
(01)20885251000023(30)00000030(3202)120000(21)12345678 (see attachment to original bug report).
The human readable portion is created by the barcode control itself; I didn't have to do anything to create the human readable, it's created automatically based on the text passed to the barcode. Set the text property of the barcode to "01208852510000233000003032021200002112345678". The expected result is (01)20885251000023(30)000030(3202)120000(21)12345678. This was explained in document attached to the original bug report.
Is your intention to post an answer to your own question?
- If so, then proceed.
- If you simply wanted to post additional information, ask for further clarification, or to just say "Thanks!", please click Leave a Comment.
- If you wish to edit your original question, please use the Edit button in the Toolbox at the top right corner of that entry.