DataMatrix hoặc cách dán nhãn giày đúng cách

Kể từ ngày 1 tháng 2019 năm 1, việc dán nhãn bắt buộc đối với một nhóm hàng hóa đã được áp dụng tại Nga. Từ ngày 2020 tháng 1 năm XNUMX, giày dép phải tuân theo luật này. Không phải ai cũng có thời gian để chuẩn bị và kết quả là buổi ra mắt đã bị hoãn lại đến ngày XNUMX tháng XNUMX. Lamoda là một trong số những người quản lý để.

Do đó, chúng tôi muốn chia sẻ kinh nghiệm của mình với những người chưa dán nhãn quần áo, lốp xe, nước hoa, v.v. Bài viết mô tả một số tiêu chuẩn ngành, một số tài liệu quy định và kinh nghiệm cá nhân. Bài viết chủ yếu dành cho các nhà tích hợp và nhà phát triển chưa hiểu rõ về dự án này.

DataMatrix hoặc cách dán nhãn giày đúng cách

Xin lưu ý rằng khung pháp lý thay đổi thường xuyên và tác giả không có cơ hội cập nhật tài liệu liên tục. Do đó, vào thời điểm đọc, một số thông tin có thể đã lỗi thời.

Tác giả đã có được kinh nghiệm cá nhân cả trong khuôn khổ dự án Datamatrix ở Lamoda và trong quá trình phát triển ứng dụng đánh dấu BarCodesFx miễn phí của riêng mình.

Kể từ ngày 1 tháng 2019 năm XNUMX, luật về ghi nhãn bắt buộc đã có hiệu lực ở Nga. Luật không áp dụng cho tất cả các nhóm hàng hóa và thời điểm có hiệu lực của việc ghi nhãn bắt buộc đối với các nhóm sản phẩm là khác nhau. Giờ đây, thuốc lá, áo khoác lông thú, giày dép, thuốc men đều phải dán nhãn bắt buộc. Trong tương lai gần sẽ được giới thiệu cho lốp xe, quần áo, nước hoa và xe đạp. Mỗi nhóm hàng hóa được quy định bởi một nghị định riêng của chính phủ (GPR). Do đó, một số nhận định đúng với giày có thể không đúng với các nhóm sản phẩm khác. Nhưng chúng ta có thể hy vọng rằng thành phần kỹ thuật sẽ không khác nhau nhiều đối với các nhóm sản phẩm khác nhau.

đánh dấuÝ tưởng chính của việc ghi nhãn là mỗi đơn vị hàng hóa được gán một số riêng. Bằng con số này, bạn có thể theo dõi lịch sử của một mặt hàng cụ thể từ thời điểm sản xuất hoặc nhập khẩu vào quốc gia này cho đến thời điểm xử lý tại quầy thanh toán. Nghe có vẻ hay, nhưng trên thực tế, nó cực kỳ khó thực hiện. Khái niệm này được mô tả chi tiết hơn trên trang web chính thức của biển báo trung thực.

Các thuật ngữ và khái niệm phổ biến

UỐT - người tham gia lưu thông hàng hoá.
CRPT là trung tâm phát triển các công nghệ tiên tiến. Công ty tư nhân, nhà nước duy nhất. đánh dấu nhà thầu dự án. Nó hoạt động theo chương trình hợp tác công tư (PPP). Thật không may, không có thông tin về những người tham gia đấu thầu khác cho dự án, cũng như về chính cuộc đấu thầu.
TG - nhóm hàng hóa. Giày dép, quần áo, lốp xe, v.v.
GTIN - trên thực tế, bài viết, có tính đến màu sắc và kích thước. Được ban hành trong GS1 hoặc danh mục quốc gia cho mỗi nhà nhập khẩu hoặc nhà sản xuất cho sản phẩm của mình. Nhà sản xuất hoặc nhà nhập khẩu trước tiên phải mô tả sản phẩm này.
PPR - Nghị định của Chính phủ Liên bang Nga. Đối với giày - 860.
km - mã đánh dấu. Một bộ ký tự duy nhất được gán cho một mục cụ thể. Đối với giày, nó bao gồm GTIN, số sê-ri, mã xác minh và đuôi tiền điện tử.
GS1 là một tổ chức quốc tế cấp GTIN. Ngoài ra trình biên dịch của một số tiêu chuẩn để ghi nhãn.
danh mục quốc gia - tương tự của GS1, được phát triển bởi CRPT.
tiền điện tử - một dạng tương tự của chữ ký số, xác nhận tính hợp pháp của CM. Phải nằm trong ma trận dữ liệu trên tem. Lưu trữ ở dạng văn bản bị cấm. Sau khi in xong phải bóc tem theo thỏa thuận với CRPT. Không có trường hợp sử dụng thực tế nào được biết đến.
CPS - trạm quản lý trật tự. Hệ thống trong đó KM được đặt hàng cho mặt hàng.
EDI - quản lý tài liệu điện tử.
UKEP - chữ ký điện tử đủ điều kiện nâng cao.

Các thuật ngữ và khái niệm trong phạm vi bài viết này

ЧЗ - một dấu hiệu trung thực.
ĐƯỢC RỒI - Khu vực cá nhân.
Đánh dấu - in mã đánh dấu.

Quy trình như sau: đầu tiên, người tham gia (UOT) đưa ra chữ ký điện tử (ECES), đăng ký bằng dấu hiệu trung thực (CHZ), mô tả sản phẩm trong danh mục quốc gia hoặc GS1 và nhận GTIN cho sản phẩm. Trên trang web của dấu hiệu trung thực, các bước này được mô tả chi tiết, vì vậy chúng tôi sẽ không tập trung vào chúng.

Đặt hàng và nhận mã

Sau khi nhận GTIN, người tham gia (UOT) đặt hàng mã (KM) trong hệ thống CPS.
Quan trọng, nhưng không rõ ràng.

  1. Bạn có thể yêu cầu mã cho tối đa 10 GTIN cho mỗi đơn hàng. Về nguyên tắc, một hạn chế khó hiểu. Một nhà nhập khẩu có 14 GTIN phải tạo 000 đơn hàng.
  2. Có thể yêu cầu tối đa 150 mã trong một đơn hàng.
  3. Có giới hạn 100 đơn đặt hàng trong công việc. Đó là, không quá 100 đơn đặt hàng có thể được xử lý cùng một lúc. Nếu có hơn 100 thì API sẽ bắt đầu trả về lỗi thay vì danh sách đơn hàng. Cách duy nhất để khắc phục lỗi này là đóng một số đơn đặt hàng thông qua giao diện web. API không cung cấp tham số để hiển thị một phần đơn đặt hàng.
  4. Có giới hạn về số lượng yêu cầu - không quá 10 yêu cầu mỗi giây. Theo dữ liệu của tôi, hạn chế này không xuất hiện trong tài liệu, nhưng nó tồn tại.

Từ trải nghiệm cá nhân với các đơn hàng lấy mã đánh dấu KM thông qua CMS API.

  1. Yêu cầu (chính json) phải được ký bằng chữ ký GOST. Đây là công việc với cryptopro. Chúng ta phải theo dõi cẩn thận để đảm bảo rằng khung hoặc thư viện được sử dụng không thay đổi json gốc cho một byte. Nếu không, chữ ký ngay lập tức hết hiệu lực.
  2. Chữ ký đặt hàng. Lệnh có thể được ký bởi bất kỳ chữ ký nào của bất kỳ khách hàng nào. Nếu chữ ký hợp lệ thì hệ thống KMS sẽ chấp nhận. Trong quá trình tích hợp, có thể ký yêu cầu bằng chữ ký của người khác được cấp trên CA thử nghiệm. Mạch chiến đấu của CPS đã xử lý mệnh lệnh và giải phóng mã. Theo tôi, đây là một lỗ hổng bảo mật. Các nhà phát triển đã phản ứng với báo cáo lỗi "chúng ta sẽ thấy". Hy vọng nó đã được sửa chữa.

    Do đó, hãy cực kỳ cẩn thận nếu có nhiều pháp nhân làm việc tại một nơi làm việc. khuôn mặt. Hôm nay, CPS sẽ tiếp nhận các yêu cầu này, ngày mai các yêu cầu sẽ được kiểm tra lại và rút một nửa số mã do có chữ ký của người khác. Và về nguyên tắc, chính thức họ sẽ đúng.

  3. Tự động ký đơn đặt hàng là một chức năng không còn khả dụng trong CMS. Đối với hoạt động của nó, nó được yêu cầu tải lên phần riêng tư của khóa trong tài khoản cá nhân của dấu hiệu trung thực. Đây là một sự thỏa hiệp quan trọng. Và theo luật hiện hành, trong trường hợp chữ ký điện tử đủ điều kiện bị xâm phạm, chủ sở hữu phải thông báo cho trung tâm chứng nhận (CA) của mình và thu hồi UKES. Nếu chức năng này được trả lại, hãy cẩn thận đảm bảo rằng phần riêng tư của khóa không rời khỏi máy tính.
  4. Vào tháng 10, Trung tâm Phát triển Công nghệ Tiên tiến (CRPT) đã âm thầm đưa ra giới hạn về số lượng yêu cầu đối với API KMS. Không quá một yêu cầu mỗi giây. Sau đó, cũng bất ngờ và lặng lẽ như vậy, anh ấy dỡ bỏ hạn chế này. Do đó, tôi khuyên bạn nên đưa vào hệ thống khả năng giới hạn số lượng yêu cầu đối với API CRPT trong trường hợp tái phát. Bây giờ có thông tin về giới hạn XNUMX yêu cầu mỗi giây.
  5. Cũng trong tháng 1, hoạt động của KMS API đã thay đổi đáng kể mà không có cảnh báo. API có yêu cầu lấy trạng thái của đơn đặt hàng. Trạng thái chỉ ra bộ đệm và trạng thái của chúng. Một GTIN = một bộ đệm. Nó cũng cho biết có bao nhiêu mã có sẵn để nhận từ bộ đệm. Một ngày đẹp trời, tất cả các bộ đệm có số lượng -XNUMX. Tôi phải truy vấn riêng trạng thái của từng bộ đệm thông qua một phương thức riêng. Thay vì một yêu cầu, tôi phải thực hiện mười một yêu cầu.

Cấu trúc mã

Vì vậy, các mã được sắp xếp và tạo ra. Chúng có thể được chọn qua api ở dạng văn bản, ở dạng pdf dưới dạng nhãn để in và dưới dạng tệp csv có văn bản.

API đã được viết ở trên. Đối với hai cách còn lại. Ban đầu, CPS chỉ cho phép bạn nhận mã một lần. Và nếu một tệp pdf đã được lấy, thì chỉ có thể lấy mã ở dạng văn bản bằng cách quét lại tất cả các ma trận dữ liệu từ pdf. May mắn thay, họ đã thêm khả năng nhận mã nhiều lần và vấn đề này đã được giải quyết. Trong vòng hai ngày, mã vẫn có sẵn để tải xuống lại.

Nếu bạn chọn ở định dạng csv, thì trong bất kỳ trường hợp nào, đừng bao giờ mở nó trong excel. Và đừng để bất cứ ai. Excel có tính năng tự động lưu. Tại thời điểm lưu, Excel có thể sửa đổi mã của bạn theo cách khó đoán nhất. Tôi khuyên bạn nên sử dụng notepad++ để xem mã.

Nếu bạn mở một tệp từ CMS bằng notepad ++, bạn có thể thấy các dòng như thế này. Mã thứ ba không hợp lệ (mã này không có dấu phân cách GS).

DataMatrix hoặc cách dán nhãn giày đúng cách

Các đối tác đã cung cấp cho chúng tôi mã số để đánh dấu hàng hóa của họ. Bằng mắt thường, bạn có thể thấy tệp nào được tạo bằng Excel - có tới 5% mã không hợp lệ.

Tôi thực sự khuyên bạn nên đọc về tiêu chuẩn GS1. Mô tả của tiêu chuẩn chứa câu trả lời cho nhiều câu hỏi về sự hình thành của DataMatrix.

Mã nhận dạng bao gồm GTIN và số sê-ri. Theo tiêu chuẩn GS1, chúng tương ứng với số nhận dạng ứng dụng (UI) 01 và 21. Xin lưu ý rằng số nhận dạng ứng dụng không phải là một phần của GTIN và số sê-ri. Chúng chỉ ra rằng Số phân định ứng dụng (UI) được theo sau bởi GTIN hoặc số sê-ri. Điều này đặc biệt quan trọng khi lập trình phần mềm POS. Để điền vào thẻ 1162, bạn cần chính xác GTIN và số sê-ri, không cần mã định danh ứng dụng.

Ngược lại, đối với UTD (tài liệu chuyển giao toàn cầu) và các tài liệu khác, thường cần có một bản ghi đầy đủ với các số nhận dạng ứng dụng.

DataMatrix hoặc cách dán nhãn giày đúng cách

Tiêu chuẩn GS1 quy định rằng GTIN có độ dài cố định là 14 ký tự và chỉ có thể bao gồm các số. Số sê-ri có độ dài thay đổi và được mô tả ở trang 155 của tiêu chuẩn. Ngoài ra còn có một liên kết đến một bảng với các ký hiệu có thể được tìm thấy trong số sê-ri.

Vì số sê-ri có độ dài thay đổi nên dấu phân cách GS biểu thị phần cuối của nó. Trong bảng ASCII, nó có mã 29. Nếu không có dấu phân cách này, sẽ không có chương trình nào hiểu được số sê-ri kết thúc ở điểm nào và các nhóm dữ liệu khác bắt đầu ở điểm nào.

Thông tin chi tiết về mã đánh dấu (KM) có thể được tìm thấy trong tài liệu chính thức.

Đối với giày, số sê-ri được cố định ở 13 ký tự, tuy nhiên, kích thước của nó có thể thay đổi bất cứ lúc nào. Đối với các nhóm sản phẩm khác (TG), độ dài của số sê-ri có thể thay đổi.

Tạo DataMatrix

DataMatrix hoặc cách dán nhãn giày đúng cách

Bước tiếp theo là chuyển đổi dữ liệu thành mã DataMatrix. Nghị định 860 của Chính phủ Liên bang Nga quy định GOST, theo đó cần phải tạo DataMatrix. Ngoài ra, PPR 860 chỉ định việc sử dụng bắt buộc các số nhận dạng ứng dụng. Lưu ý rằng không có khái niệm về "số nhận dạng ứng dụng" trong tiêu chuẩn DataMatrix. Chúng chỉ có trong tiêu chuẩn GS-1 DataMatrix. Hóa ra PPR 860 hoàn toàn yêu cầu sử dụng GS-1 DataMatrix. May mắn thay, các tiêu chuẩn là tương tự nhau. Sự khác biệt chính: Trong GS-1 DataMatrix, ký tự đầu tiên phải là FNC1. Ký hiệu GS không nhất thiết phải xuất hiện đầu tiên trong DataMatrix, chỉ FNC1.

FNC1 không thể được lấy và thêm vào dòng dưới dạng GS. Nó phải được thêm vào bởi chương trình tạo DataMatrix. Một số ứng dụng di động, mà bạn có thể kiểm tra tính chính xác của mã DataMatrix đã tạo.

Điều quan trọng. Ứng dụng dấu hiệu trung thực chấp nhận DataMatrix không hợp lệ. Ngay cả mã QR. Thực tế là thương hiệu được công nhận và thông tin sản phẩm được hiển thị không có nghĩa là DataMatrix được hình thành chính xác. Ngay cả khi đuôi tiền điện tử được thay thế, ứng dụng CZ đã nhận ra thương hiệu và hiển thị dữ liệu trên sản phẩm.

Sau đó CZ phát hành giải trìnhcách tạo mã chính xác. Do số lượng mã lỗi lớn, họ đã nhận ra các mã không có FNC1 là hợp lệ, tuy nhiên, họ khuyên nên tạo GS-1 DataMatrix.

Thật không may, một tỷ lệ khá lớn ma trận dữ liệu từ các đối tác có lỗi. Nhờ sự giải thích rõ ràng từ CZ, câu hỏi “Có thể giao dịch một sản phẩm như vậy sau ngày 1 tháng XNUMX hay không?” đã được giải quyết hoàn toàn. Spoiler - bạn có thể.

in

Hãy chú ý đến cách in tem. Khi in trên máy in nhiệt, tem nhanh chóng bị mờ và sản phẩm này không còn được bán nữa. Một con tem không đọc được là vi phạm PPR 860. Điều này dẫn đến việc tịch thu hàng hóa, phạt tiền và chịu trách nhiệm hình sự.

Sử dụng in chuyển nhiệt. Trong trường hợp này, thương hiệu không quá dễ bị phai mờ. Chất liệu nhãn cũng xác định mức độ tổn thương cơ học của thương hiệu. Nếu mã không thể đọc được do hư hỏng cơ học, điều này tương đương với việc không có nhãn hiệu với tất cả các hậu quả sau đó.

DataMatrix hoặc cách dán nhãn giày đúng cách

Chọn một máy in từ khối lượng in theo kế hoạch. Máy in để bàn không được thiết kế để in 100 nhãn mỗi ngày.

Việc dừng và bắt đầu in sẽ làm hao mòn máy in. Một số chương trình gửi lệnh in mỗi lần một nhãn. Tốt hơn là không sử dụng các chương trình như vậy.

Làm việc với tài liệu

Sau khi tem được in và dán, tất cả các hoạt động tiếp theo với chúng diễn ra thông qua tài liệu hoặc tài khoản cá nhân của một nhãn hiệu trung thực.

Khi làm việc với một số lượng lớn mã, bạn có thể tạo các tệp xml chứa các mã cần thiết và tải các tệp này lên thông qua API hoặc giao diện web của tài khoản cá nhân của bạn.

Lược đồ XSD có thể được tải xuống trong phần "trợ giúp" của LC CZ.

Hãy chú ý đến những điểm sau đây.

  1. Các sơ đồ Xsd trong LC CZ chứa các lỗi trong quá trình xác thực TIN và các hạn chế về độ dài của dòng. Chỉ bằng cách sửa lỗi, bạn mới có thể sử dụng các sơ đồ. May mắn thay, các lỗi là rõ ràng, vì vậy điều này không khó thực hiện.
  2. Đề án thường bao gồm hai phần - chung cho tất cả các loại tài liệu và riêng biệt cho một loại cụ thể. Lược đồ chung được thêm thông qua nhập vào lược đồ cụ thể. Cả hai lược đồ đều nằm trong phần trợ giúp trong LC ChZ.
  3. Các quy tắc thoát cho CM khác với các quy tắc thường được chấp nhận cho XML, điều này được viết trong tài liệu chính thức từ CZ, hãy chú ý đến điều này. Đây đây trên trang 4 tất cả các quy tắc.
  4. Bạn không nên cố nhập 150 mã vào lưu thông trong một tệp. Theo các nhân chứng, các hồ sơ hơn 000 thường đi qua..
  5. Một tệp Xml có thể được bọc với lỗi "lỗi xác thực xml" và năm phút sau, cùng một tệp được chấp nhận mà không gặp sự cố.
  6. Nếu tệp chứa mã đã được đưa vào lưu thông, thì tệp đã đưa vào lưu thông rất có thể sẽ không được chấp nhận.
  7. Chứng từ gửi hàng và nhận hàng được sử dụng như một giải pháp tạm thời. Trong tương lai, họ có kế hoạch bãi bỏ chúng và chuyển sang CẬP NHẬT theo PPR 860.
  8. Chuyện hoang đường về 60 ngày. Có ý kiến ​​cho rằng những mã không được đưa vào lưu thông sẽ “cháy hàng” sau 60 ngày. Đây là một huyền thoại, nguồn không rõ. Các mã chỉ "hết hàng" nếu bạn chưa thu thập chúng từ CPS trong vòng 60 ngày. Thời gian tồn tại của các mã được thu thập là không giới hạn.

Kết luận

Khi phát triển ứng dụng ghi nhãn miễn phí BarCodesFX của tôi, việc tích hợp với API KMS ban đầu đã được thực hiện. Khi một dấu hiệu trung thực lần thứ hai bất ngờ thay đổi logic của API, việc tích hợp phải bị hủy bỏ. Tôi hy vọng rằng trong tương lai, CZ sẽ có thể ổn định sự phát triển và API, bởi vì. đối với một sản phẩm phi thương mại, tôi rất tốn công để kiểm tra kỹ hàng ngày xem có thay đổi nào trong API hay không và nhanh chóng tinh chỉnh nó.

Khi thực hiện đánh dấu, hãy đọc kỹ tài liệu quy định cho nhóm sản phẩm TG của bạn, in GS1-DataMatrix một cách chính xác và sẵn sàng cho bất kỳ thay đổi không lường trước nào từ dấu CZ hợp lý.

Liên minh Fort đã tạo ra một không gian thông tin (wiki, các phòng chat telegram, hội thảo, hội thảo trên web), nơi bạn có thể tìm thấy thông tin hữu ích và cập nhật về ghi nhãn trong tất cả các ngành.

Nguồn: www.habr.com

Thêm một lời nhận xét