DataMatrix یا نحوه صحیح برچسب زدن کفش

از 1 ژوئیه 2019، برچسب زدن اجباری گروهی از کالاها در روسیه معرفی شد. از اول مارس 1 قرار بود کفش ها مشمول این قانون شوند. همه برای آماده شدن وقت نداشتند و در نتیجه پرتاب به اول جولای موکول شد. لامودا از جمله کسانی است که آن را ساخته است.

بنابراین، ما می خواهیم تجربه خود را با کسانی که هنوز لباس، لاستیک، عطر و غیره را برچسب گذاری نکرده اند به اشتراک بگذاریم. این مقاله تعدادی از استانداردهای صنعت، برخی اسناد نظارتی و تجربه شخصی را شرح می دهد. این مقاله در درجه اول برای یکپارچه سازان و توسعه دهندگانی است که هنوز این پروژه را درک نکرده اند.

DataMatrix یا نحوه صحیح برچسب زدن کفش

لطفاً توجه داشته باشید که مقررات به طور مکرر تغییر می کند و امکان به روز رسانی مداوم مطالب برای نویسنده وجود ندارد. بنابراین، زمانی که آن را می‌خوانید، ممکن است برخی از اطلاعات قدیمی باشند.

نویسنده هم به عنوان بخشی از کار روی پروژه Datamatrix در Lamoda و هم هنگام توسعه برنامه برچسب‌گذاری رایگان خود BarCodesFx، تجربه شخصی به دست آورد.

از اول ژوئیه 1، قانونی در مورد برچسب زدن اجباری در روسیه اجرا شده است. این قانون شامل همه گروه‌های کالا نمی‌شود و تاریخ لازم‌الاجرا شدن برچسب‌گذاری اجباری برای گروه‌های کالا متفاوت است. در حال حاضر، تنباکو، کت خز، کفش و داروها مشمول برچسب اجباری هستند. بزودی برای لاستیک، پوشاک، عطر و دوچرخه معرفی خواهد شد. هر گروه از کالاها توسط یک مصوبه جداگانه دولتی (GPR) تنظیم می شود. بنابراین، برخی از جملاتی که در مورد کفش صادق است، ممکن است برای سایر گروه های محصول صادق نباشد. اما می توان امیدوار بود که مولفه فنی برای گروه های مختلف محصول تفاوت زیادی نداشته باشد.

علامت گذاریایده اصلی برچسب گذاری این است که به هر واحد کالا یک شماره اختصاصی اختصاص داده شود. با استفاده از این شماره می توانید تاریخچه یک کالای خاص را از لحظه تولید یا واردات به کشور تا لحظه تحویل در صندوق پیگیری کنید. زیبا به نظر می رسد، اما در عمل پیاده سازی آن بسیار دشوار است.این مفهوم با جزئیات بیشتر در وب سایت رسمی علامت صادق توضیح داده شده است.

اصطلاحات و مفاهیم رایج

UOT - شرکت کننده در گردش کالا.
CRPT - مرکز توسعه فناوری های امیدوارکننده. شرکت خصوصی، تنها ایالت پیمانکار پروژه علامت گذاری این شرکت تحت یک طرح مشارکت عمومی خصوصی (PPP) عمل می کند. متاسفانه از سایر شرکت کنندگان در مناقصه پروژه و همچنین خود مناقصه اطلاعی در دست نیست.
TG - گروه محصول کفش، لباس، لاستیک و غیره.
GTIN - اساساً یک مقاله با در نظر گرفتن رنگ و اندازه. صادر شده در GS1 یا کاتالوگ ملی برای هر واردکننده یا سازنده برای محصول خود. سازنده یا واردکننده ابتدا باید محصول را توصیف کند.
PPR - فرمان دولت فدراسیون روسیه. برای کفش - 860.
KM - کد علامت گذاری مجموعه ای منحصر به فرد از کاراکترهای اختصاص داده شده به یک محصول خاص. برای کفش، شامل یک GTIN، شماره سریال، کد تأیید و دم رمزنگاری است.
GS1 یک سازمان بین المللی است که GTIN صادر می کند. آنها همچنین تدوین کننده تعدادی از استانداردهای برچسب گذاری هستند.
کاتالوگ ملی - آنالوگ GS1 که توسط CRPT توسعه یافته است.
Cryptotail - یک آنالوگ امضای دیجیتال که قانونی بودن CM را تأیید می کند. باید در ماتریس داده روی مهر باشد. ذخیره سازی در قالب متن ممنوع است. پس از چاپ، تمبرها باید طبق توافقنامه با CRPT حذف شوند. هیچ مورد شناخته شده ای از استفاده واقعی وجود ندارد.
CPS - ایستگاه مدیریت سفارش سیستمی که در آن KM برای کالاها سفارش داده می شود.
EDI - مدیریت اسناد الکترونیکی
UKEP - افزایش امضای الکترونیکی واجد شرایط

اصطلاحات و مفاهیم در محدوده این مقاله

ЧЗ - یک نشانه صادقانه
خوب - منطقه شخصی
علامت گذاری به عنوان - کد علامت گذاری چاپ شده

فرآیند به شرح زیر است: ابتدا، شرکت کننده (UOT) یک امضای الکترونیکی (UKEP) صادر می کند، در یک علامت صادقانه (CH) ثبت می کند، محصول را در کاتالوگ ملی یا GS1 توصیف می کند و برای محصول GTIN دریافت می کند. این مراحل به طور مفصل در وب سایت علامت صادق توضیح داده شده است، بنابراین ما در مورد آنها صحبت نمی کنیم.

سفارش و دریافت کد

پس از دریافت GTIN، شرکت کننده (UOT) سفارش کدهای (KM) را در سیستم CPS می دهد.
مهم است، اما واضح نیست.

  1. می توانید در یک سفارش حداکثر 10 GTIN کد درخواست کنید. در اصل، یک محدودیت غیر قابل درک. یک واردکننده با 14 GTIN باید 000 سفارش ایجاد کند.
  2. برای هر سفارش حداکثر 150 کد قابل درخواست است.
  3. محدودیت 100 سفارش در حال انجام است. یعنی بیش از 100 سفارش را نمی توان همزمان پردازش کرد. اگر بیش از 100 وجود داشته باشد، API به جای لیستی از سفارشات، شروع به بازگشت خطا می کند. تنها راه رفع این خطا بستن برخی از سفارشات از طریق رابط وب است. API پارامتری برای نمایش جزئی سفارشات ارائه نمی دهد.
  4. محدودیتی در تعداد درخواست ها وجود دارد - حداکثر 10 درخواست در ثانیه. طبق اطلاعات من این محدودیت در اسناد نیست اما وجود دارد.

از تجربه شخصی کار با سفارش کدهای علامت گذاری KM از طریق API سیستم CPS.

  1. درخواست (خود json) باید با امضای GOST امضا شود. این با cryptopro کار می کند. باید به دقت اطمینان حاصل کنید که چارچوب یا کتابخانه استفاده شده json اصلی را حتی یک بایت تغییر نمی دهد. در غیر این صورت، امضا بلافاصله اعتبار خود را از دست می دهد.
  2. امضای سفارش سفارش را می توان با هر امضای هر مشتری امضا کرد. اگر امضا معتبر باشد، سیستم CPS آن را می پذیرد. در طول ادغام، امکان امضای درخواست با امضای شخص دیگری صادر شده در آزمون CA وجود داشت. مدار رزمی سیستم کنترل دستور را پردازش و کدهایی را صادر کرد. به نظر من این یک حفره امنیتی است. توسعه دهندگان به گزارش باگ پاسخ دادند «ما خواهیم دید». امیدوارم درست بشه

    بنابراین، اگر بیش از یک شخص حقوقی در یک محل کار کار می کنند، بسیار مراقب باشید. چهره ها. امروز CPS این درخواست ها را می پذیرد و فردا درخواست ها دوباره بررسی می شود و نیمی از کدها به دلیل امضای شخص دیگری باطل می شوند. و در اصل، به طور رسمی حق با آنها خواهد بود.

  3. امضای خودکار سفارش ها عملکردی است که دیگر در KMS در دسترس نیست. برای اینکه کار کند لازم بود قسمت خصوصی کلید را در حساب شخصی علامت صادق بارگذاری کنید. این یک سازش کلید است. و طبق قوانین فعلی، اگر یک امضای الکترونیکی واجد شرایط پیشرفته به خطر بیفتد، مالک باید به مرکز صدور گواهینامه خود (CA) اطلاع دهد و ECEP را لغو کند. اگر این عملکرد برگردانده شد، مراقب باشید که قسمت خصوصی کلید از رایانه خارج نشود.
  4. در ماه فوریه، مرکز توسعه فناوری‌های پیشرفته (CRPT) در سکوت محدودیتی را برای تعداد درخواست‌ها به CPS API معرفی کرد. در هر ثانیه بیش از یک درخواست وجود ندارد. سپس همان طور غیرمنتظره و بی سر و صدا این محدودیت را برداشت. بنابراین، من توصیه می‌کنم این سیستم با قابلیت محدود کردن تعداد درخواست‌ها به API CRPT در صورت عود، ساخته شود. اکنون اطلاعاتی در مورد محدودیت 10 درخواست در ثانیه وجود دارد.
  5. همچنین در ماه فوریه، رفتار CPS API بدون هشدار به طور قابل توجهی تغییر کرد. درخواستی در API برای دریافت وضعیت سفارشات وجود دارد. وضعیت نشان دهنده بافرها و وضعیت آنها بود. یک GTIN = یک بافر. همچنین نشان می دهد که چه تعداد کد برای دریافت از بافر موجود است. یک روز خوب، تعداد تمام بافرها -1 شد. من مجبور شدم از یک روش جداگانه برای پرس و جو از وضعیت هر بافر به طور جداگانه استفاده کنم. به جای یک درخواست، باید یازده درخواست می کردم.

ساختار کد

بنابراین، کدها مرتب و تولید شده اند. آنها را می توان از طریق API به صورت متن، به صورت pdf به عنوان برچسب برای چاپ و به عنوان یک فایل csv با متن به دست آورد.

API قبلاً در بالا نوشته شده است. در مورد دو روش دیگر. در ابتدا، سیستم کنترل به شما اجازه می داد تنها یک بار کدها را جمع آوری کنید. و اگر یک فایل pdf گرفته می شد، تنها با اسکن مجدد همه ماتریس های داده از pdf، می توان کدها را به صورت متنی به دست آورد. خوشبختانه چندین بار قابلیت جمع آوری کدها را اضافه کردند و این مشکل حل شد. کدها همچنان برای بارگیری مجدد ظرف دو روز در دسترس هستند.

اگر آن را با فرمت csv می گیرید، هرگز و تحت هیچ شرایطی آن را در اکسل باز نکنید. و به کسی اجازه نده اکسل دارای قابلیت ذخیره خودکار است. در زمان ذخیره، اکسل می تواند کدهای شما را به غیر قابل پیش بینی ترین روش ها تغییر دهد. توصیه می کنم برای مشاهده کدها از notepad++ استفاده کنید.

اگر فایلی را از CMS در notepad++ باز کنید، می توانید خطوطی مانند این را ببینید. کد سوم نامعتبر است (حداقل کننده GS ندارد).

DataMatrix یا نحوه صحیح برچسب زدن کفش

شرکای ما کدهایی را برای برچسب زدن محصولات خود به ما دادند. با چشم غیرمسلح می توانید ببینید کدام فایل ها با استفاده از اکسل تولید شده اند - حداکثر 5٪ از کدها نامعتبر بودند.

خواندن در مورد را به شدت توصیه می کنم استانداردها GS1. شرح استاندارد حاوی پاسخ به بسیاری از سوالات در مورد تشکیل DataMatrix است.

کد شناسایی شامل یک GTIN و یک شماره سریال است. طبق استاندارد GS1، اینها با Application Identifiers (AI) 01 و 21 مطابقت دارند. لطفاً توجه داشته باشید که Application Identifiers بخشی از GTIN و شماره سریال نیستند. آنها نشان می دهند که شناسه برنامه (UI) با یک GTIN یا شماره سریال دنبال می شود. این امر به ویژه هنگام برنامه نویسی نرم افزار صندوق فروش اهمیت دارد. برای پر کردن تگ 1162، فقط به GTIN و شماره سریال نیاز دارید، بدون شناسه برنامه.

برعکس، برای UTD (سند انتقال جهانی) و سایر اسناد، اغلب به کل رکورد با شناسه های برنامه نیاز دارید.

DataMatrix یا نحوه صحیح برچسب زدن کفش

استاندارد GS1 بیان می کند که GTIN دارای طول ثابت 14 کاراکتر است و فقط می تواند شامل اعداد باشد. شماره سریال دارای طول متغیر است و در صفحه 155 استاندارد توضیح داده شده است. همچنین پیوندی به جدولی با نمادهایی وجود دارد که ممکن است در شماره سریال ظاهر شوند.

از آنجایی که شماره سریال دارای طول متغیر است، جداکننده GS پایان شماره سریال را نشان می دهد. در جدول ASCII دارای کد 29 است. بدون این جداکننده، هیچ برنامه ای متوجه نخواهد شد که شماره سریال در چه نقطه ای به پایان رسیده و سایر گروه های داده شروع شده اند.

جزئیات بیشتر در مورد کد علامت گذاری (KM) را می توان در اینجا یافت اسناد رسمی.

برای کفش، شماره سریال 13 کاراکتر تعیین شده است، اما اندازه آن در هر زمان قابل تغییر است. برای سایر گروه های محصول (TG)، طول شماره سریال ممکن است متفاوت باشد.

تولید DataMatrix

DataMatrix یا نحوه صحیح برچسب زدن کفش

مرحله بعدی تبدیل داده ها به کد DataMatrix است. فرمان 860 دولت روسیه GOST را مشخص می کند که طبق آن لازم است یک DataMatrix ایجاد شود. همچنین، PPR 860 استفاده اجباری از شناسه های برنامه را مشخص می کند. لطفاً توجه داشته باشید که استاندارد DataMatrix مفهوم "شناسه برنامه" را ندارد. آنها فقط در استاندارد GS-1 DataMatrix موجود هستند. به نظر می رسد که PPR 860 به طور ضمنی استفاده از GS-1 DataMatrix را الزامی می کند. خوشبختانه استانداردها مشابه هستند. تفاوت اصلی: در GS-1 DataMatrix، اولین کاراکتر باید FNC1 باشد. نماد GS نباید ابتدا در DataMatrix ظاهر شود، فقط FNC1.

FNC1 را نمی توان فقط مانند GS به خط اضافه کرد. باید توسط برنامه تولید کننده DataMatrix اضافه شود. چندین پست در منابع Alliance Forts وجود دارد برنامه های موبایل، که با آن می توانید صحت کدهای DataMatrix تولید شده را بررسی کنید.

مهم است برنامه علامت صادقانه یک DataMatrix نامعتبر را می پذیرد. حتی کدهای QR. این واقعیت که نام تجاری شناخته شد و اطلاعات محصول نمایش داده شد، نشان دهنده درستی تشکیل DataMatrix نیست. حتی زمانی که دم کریپتو جایگزین شد، برنامه ChZ برند را تشخیص داد و داده ها را روی محصول نمایش داد.

بعداً ChZ منتشر شد توضیح، نحوه تولید کدها به درستی. به دلیل تعداد زیاد کدهای دارای خطا، آنها کدهای بدون FNC1 را معتبر تشخیص دادند، اما همچنان توصیه می کنند که یک DataMatrix GS-1 ایجاد کنید.

متأسفانه، درصد نسبتاً زیادی از ماتریس های داده از شرکا با خطا همراه بودند. با تشکر از توضیحات ChZ، سوال "آیا امکان معامله چنین محصولی بعد از 1 جولای وجود دارد یا خیر؟" به طور کامل حل شد. اسپویلر - شما می توانید.

چاپ

به نحوه چاپ تمبرها دقت کنید. هنگامی که روی چاپگر حرارتی چاپ می شود، مهر به سرعت محو می شود و محصول دیگر قابل فروش نیست. تمبر ناخوانا نقض PPR 860 است. این امر منجر به توقیف کالا، جریمه و مسئولیت کیفری می شود.

از چاپ انتقال حرارتی استفاده کنید. در این حالت، برند آنقدر مستعد محو شدن نیست. مواد برچسب همچنین تعیین می کند که برند چقدر در معرض آسیب های مکانیکی است. اگر کد به دلیل آسیب مکانیکی قابل خواندن نباشد، این به منزله عدم وجود یک برند با تمام عواقب بعدی است.

DataMatrix یا نحوه صحیح برچسب زدن کفش

یک چاپگر از حجم چاپ برنامه ریزی شده خود انتخاب کنید. چاپگرهای رومیزی برای چاپ 100 برچسب در روز طراحی نشده اند.

توقف و شروع چاپ باعث افزایش سایش و پارگی چاپگر می شود. برخی از برنامه ها هر بار یک کار چاپ را یک برچسب ارسال می کنند. بهتر است از چنین برنامه هایی استفاده نکنید.

با اسناد کار کنید

پس از چاپ و چسباندن تمبرها، کلیه معاملات بعدی با آنها از طریق اسناد یا حساب شخصی علامت صادق انجام می شود.

هنگام کار با تعداد زیادی کد، می توانید فایل های xml حاوی کدهای مورد نیاز ایجاد کنید و این فایل ها را از طریق API یا رابط وب حساب شخصی خود آپلود کنید.

طرح XSD را می توان در بخش "راهنما" ChZ LC دانلود کرد.

لطفا به نکات زیر توجه کنید.

  1. طرح‌های Xsd در LC ChZ حاوی خطاهایی در اعتبارسنجی TIN و محدودیت‌هایی در طول خط هستند. فقط پس از تصحیح خطاها می توانید از نمودارها استفاده کنید. خوشبختانه، اشتباهات آشکار است، بنابراین انجام این کار دشوار نیست.
  2. این طرح اغلب شامل دو بخش است - مشترک برای همه انواع اسناد و مجزا برای یک نوع خاص. طرح کلی از طریق واردات به طرح خاص اضافه می شود. هر دو نمودار در بخش راهنمای ChZ LC ارسال شده است.
  3. قوانین فرار برای CM با قوانینی که به طور کلی برای XML پذیرفته شده است متفاوت است، این در اسناد رسمی ChZ نوشته شده است، به این توجه کنید. اینجا اینجا تمام قوانین در صفحه 4 آمده است.
  4. شما نباید سعی کنید 150 کد را در یک فایل وارد گردش کنید. به گفته شاهدان عینی، معمولاً بیش از 000 پرونده از طریق آنها عبور داده می شود.
  5. یک فایل Xml را می توان با خطای "xml validation error" پیچیده و پنج دقیقه بعد همان فایل را بدون مشکل پذیرفت.
  6. اگر فایل حاوی کدی باشد که قبلاً در گردش قرار گرفته است، به احتمال زیاد فایل در گردش پذیرفته نخواهد شد.
  7. ارسال و دریافت اسناد به عنوان یک راه حل موقت استفاده می شود. در آینده، آنها قصد دارند آنها را لغو کنند و مطابق با PPR 860 به UPD روی آورند.
  8. اسطوره در مورد 60 روز. عقیده ای وجود دارد که کدهایی که در گردش قرار نمی گیرند پس از 60 روز "سوخته" می شوند. این یک افسانه است، منبع ناشناخته است. کدها فقط در صورتی منقضی می شوند که ظرف 60 روز آنها را از سیستم کنترل جمع آوری نکرده باشید. طول عمر کدهای جمع آوری شده نامحدود است.

نتیجه

هنگام توسعه برنامه برچسب‌گذاری رایگان BarCodesFX، ابتدا با CPS API ادغام شد. هنگامی که یک علامت صادقانه به طور غیرمنتظره ای منطق API را برای بار دوم تغییر داد، ادغام باید کنار گذاشته می شد. من امیدوارم که ChZ در آینده بتواند توسعه و API را تثبیت کند، زیرا برای یک محصول غیرتجاری، برای من بسیار گران است که هر روز دوبار بررسی کنم که آیا تغییراتی در API ایجاد شده است یا خیر و به سرعت آن را بهبود ببخشم.

هنگام پیاده‌سازی علامت‌گذاری، مستندات نظارتی گروه محصول TG خود را به دقت بخوانید، GS1-DataMatrix را به درستی چاپ کنید و برای هرگونه تغییر پیش‌بینی‌نشده از طرف علامت صادق ChZ آماده باشید.

Fort Alliance یک فضای اطلاعاتی ایجاد کرده است (ویکی, اتاق های گفت و گو در تلگرام، سمینارها، وبینارها)، که در آن می توانید اطلاعات مفید و مرتبط در مورد برچسب گذاری در تمام صنایع را بیابید.

منبع: www.habr.com

اضافه کردن نظر