mobui / gs1_barcode_parser

MIT License
5 stars 10 forks source link

Exeption #6

Closed HasanKoc33 closed 1 year ago

HasanKoc33 commented 1 year ago

try 0108682151404948210000002147721121091710000115

HasanKoc33 commented 1 year ago

I think I found the reason 21000000214772 1121091710000115 exactly at the junction point coincides with 21 coincident exploded I guess how can we solve it.

sachebotarev commented 1 year ago

AI code 21 has variable length data and must be finishing with the "group separator". Default group separator is '\u{001d}' (See GS1 specification). You may define a custom group separator also by using GS1BarcodeParser.configurableParser().

import 'package:gs1_barcode_parser/gs1_barcode_parser.dart';

main() {
  final barcode = '0108682151404948210000002147721121091710000115';
  final parser = GS1BarcodeParser.defaultParser();
  final result = parser.parse(barcode);
  print(result);
}

result

code = Undefined,
data = {
01 (GTIN): 08682151404948,
21 (SERIAL): 000000214772,
11 (PROD DATE): 2021-09-17 00:00:00.000,
10 (BATCH/LOT): 000115,
}