اتصال یک چاپگر

نصب چاپگر را می‌توان در چند مرحلهٔ ساده انجام داد. از چاپگر می‌توان برای چاپ فیش، برچسب، سفارش‌ها یا حتی گزارش‌ها از اپ‌های مختلف Odoo استفاده کرد. علاوه بر این، action‌های چاپگر را می‌توان به‌عنوان یک action on a trigger در طول فرآیند تولید اختصاص داد، یا روی یک نقطهٔ کنترل کیفیت یا یک بررسی کیفیت اضافه کرد.

هشدار

تنها راه اتصال مستقیم یک چاپگر به یک پایگاه دادهٔ Odoo از طریق استفاده از یک سامانهٔ IoT است. بدون یک سامانهٔ IoT، چاپ همچنان می‌تواند رخ دهد، اما از طریق خود چاپگر مدیریت می‌شود، که فرآیند توصیه‌شده نیست.

اتصال

سامانه‌های IoT از چاپگرهای متصل با USB یا اتصال شبکه پشتیبانی می‌کنند. چاپگرهای پشتیبانی‌شده به‌صورت خودکار شناسایی می‌شوند و در فهرست ‌دستگاه‌ها اپ IoT ظاهر می‌شوند.

چاپگر همان‌طور که در فهرست دستگاه‌های اپ IoT ظاهر می‌شود.

مهم

چاپگرهای متصل به سامانهٔ IoT از طریق شبکه باید روی همان شبکه‌ای که سامانهٔ IoT است باشند.

توجه

چاپگرها ممکن است تا دو دقیقه طول بکشد تا در فهرست ‌دستگاه‌ها اپ IoT ظاهر شوند.

پاک کردن cache چاپگر دستگاه

پس از اینکه یک چاپگر برای چاپ یک گزارش پیوند داده شد، تنظیم در cache یک مرورگر ذخیره می‌شود. این به این معنی است که یک کاربر می‌تواند دستگاه‌های مختلفی برای گزارش‌های مختلف، بر اساس دستگاهی که برای دسترسی به Odoo استفاده می‌کند، در cache خود ذخیره کرده باشد. این همچنین به این معنی است که کاربران مختلف می‌توانند یک گزارش را به‌صورت خودکار از چاپگرهای مختلف، بر اساس تنظیمات خود چاپ کنند.

برای جدا کردن یک گزارش از یک چاپگر، به اینترنت اشیا ↤ پیکربندی ↤ ریست کردن چاپگرهای متصل بروید. این کار فهرستی از گزارش‌هایی که به یک چاپگر روی دستگاه فعلی پیوند داده شده‌اند را تولید می‌کند. روی دکمهٔ Unlink کنار هر گزارش کلیک کنید تا پیوند را حذف کنید.

مهم

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

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

همچنین ببینید

POS Order Printing

مشکلات احتمالی

چاپگر شناسایی نمی‌شود

اگر یک چاپگر در فهرست دستگاه‌ها ظاهر نشود، به صفحهٔ اصلی IoT box یا Windows virtual IoT بروید، روی نمایش در بخش ‌دستگاه‌ها کلیک کنید و مطمئن شوید چاپگر فهرست شده است.

اگر چاپگر در صفحهٔ اصلی سامانهٔ IoT ظاهر نشود، روی Printer Server، سپس مدیریت و Add Printer کلیک کنید. اگر چاپگر در فهرست نیست، احتمالاً به‌درستی متصل نشده است.

چاپگر متن تصادفی چاپ می‌کند

برای بیشتر چاپگرها، باید driver صحیح به‌صورت خودکار شناسایی و انتخاب شود. با این حال، در برخی موارد، مکانیسم شناسایی خودکار ممکن است کافی نباشد، و اگر هیچ driverی یافت نشود، چاپگر ممکن است کاراکترهای تصادفی چاپ کند.

راه‌حل این است که driver مربوطه را به‌صورت دستی انتخاب کنید. در صفحهٔ اصلی سامانهٔ IoT، روی Printer Server، سپس چاپگرها کلیک کنید و چاپگر را در فهرست انتخاب کنید. در منوی کشویی مدیریت، روی Modify Printer کلیک کنید. مراحل را دنبال کنید و make و model چاپگر را انتخاب کنید.

ویرایش چاپگر متصل به سامانهٔ IoT.

توجه

چاپگرهای فیش Epson و چاپگرهای برچسب Zebra برای کار نیازی به driver ندارند. مطمئن شوید هیچ driverی برای آن چاپگرها انتخاب نشده باشد.

چاپگر شناسایی می‌شود اما به‌درستی شناسایی نمی‌شود

اگر Odoo و سامانهٔ IoT چاپگر را به‌درستی شناسایی نمی‌کنند، به اینترنت اشیا ↤ ‌دستگاه‌ها بروید، روی کارت دستگاه کلیک کنید تا به فرم آن دسترسی پیدا کنید و فیلد زیرنوع را به گزینهٔ مناسب تنظیم کنید: چاپگر رسید، برچسب پرینتر یا پرینتر شرکت.

مورد خاص پیکربندی Epson

بیشتر چاپگرهای Epson از چاپ فیش در Odoo Point of Sale با استفاده از دستور GS v 0 پشتیبانی می‌کنند. با این حال، مدل‌های چاپگر Epson زیر از این دستور پشتیبانی نمی‌کنند:

  • TM-U220

  • TM-U230

  • TM-P60

  • TMP-P60II

برای دور زدن این مشکل، می‌توانید چاپگر را پیکربندی کنید تا از دستور ESC * استفاده کند.

ابتدا، وب‌سایت Epson را برای سازگاری با هر دو دستور GS v 0 و ESC * بررسی کنید.

اگر چاپگر با GS v 0 ناسازگار است اما از ESC * پشتیبانی می‌کند، سامانهٔ IoT را پیکربندی کنید تا از دستور ESC * استفاده کند به‌صورت زیر:

  1. به صفحهٔ اصلی IoT box یا Windows virtual IoT دسترسی پیدا کنید.

  2. روی دکمهٔ Printer server کلیک کنید، سپس روی مدیریت در صفحهٔ CUPS کلیک کنید.

  3. روی Add Printer در بخش چاپگرها کلیک کنید، چاپگر را انتخاب کنید و روی ادامه کلیک کنید.

    نکته

    اگر نام چاپگر هنوز مشخص نیست، این مراحل را دنبال کنید:

    1. چاپگرهای فهرست‌شده در صفحهٔ CUPS را یادداشت کنید.

    2. چاپگر را خاموش کنید و صفحه را refresh کنید.

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

    4. چاپگر را دوباره روشن کنید و دوباره صفحه را refresh کنید.

    5. دوباره فهرست را بررسی کنید تا ببینید آیا چاپگر مجدداً ظاهر می‌شود یا خیر.

    6. چاپگری که ناپدید شد و دوباره روی چاپگرهای فهرست‌شده ظاهر می‌شود نام چاپگر مورد نظر است. ممکن است زیر Local printers به‌عنوان ناشناخته باشد.

  4. در صفحهٔ Add Printer، نام چاپگر را با استفاده از قرارداد زیر مشخص کنید: <printer_name>__IMC_<param_1>_<param_2>_..._<param_n>__، که در آن:

    • printer_name نام چاپگر است. می‌تواند شامل هر کاراکتری باشد به‌جز _، /، # یا ` ` (کاراکتر فاصله).

    • IMC: این مخفف Image Mode Column (نام ساده‌شدهٔ ESC *) است.

    • param_1: این مخفف پارامتر خاص است:

      • SCALE<X>: مقیاس عکس (با همان نسبت تصویری). X باید یک عدد صحیح باشد که درصد مقیاسی که باید استفاده شود را توصیف می‌کند. برای مثال، 100 اندازهٔ اصلی است، 50 نصف اندازه است و 200 دو برابر اندازه است.

      • LDV: Low Density Vertical (اگر مشخص نشود به High Density Vertical تنظیم می‌شود).

      • LDH: Low Density Horizontal (اگر مشخص نشود به High Density Horizontal تنظیم می‌شود).

      توجه

      • پارامترهای Density ممکن است نیاز به پیکربندی به یک روش خاص داشته باشند، بسته به مدل چاپگر.

      • برای تعیین اینکه آیا چاپگر به این پارامترها نیاز دارد یا خیر، به مستندات ESC * Epson مراجعه کنید.

    Example

    موارد زیر نمونه‌هایی از قالب‌بندی نام صحیح و نادرست هستند:

    قالب‌بندی نام صحیح:

    • EPSONTMm30II__IMC__

    • EPSON_TM_U220__IMC_LDV_LDH_SCALE80__

    قالب‌بندی نام نادرست (این از چاپ جلوگیری نخواهد کرد، اما نتیجه ممکن است خروجی چاپ مورد انتظار را نداشته باشد):

    • EPSON TMm 30II: نام نمی‌تواند شامل فاصله باشد.

    • EPSONTMm30II: خود نام صحیح است، اما از ESC * استفاده نخواهد کرد.

    • EPSONTMm30II__IMC: این نام __ انتهایی را ندارد.

    • EPSONTMm30II__IMC_XDV__: پارامتر XDV با هیچ پارامتر موجودی مطابقت ندارد.

    • EPSONTMm30II__IMC_SCALE__: پارامتر SCALE مقدار مقیاس را ندارد.

  5. هنگامی که نام چاپگر با استفاده از قرارداد نام‌گذاری مناسب تعریف شد، روی ادامه کلیک کنید.

  6. مقدار Make را به Raw و مقدار مدل را به Raw Queue (en) تنظیم کنید.

  7. روی Add Printer کلیک کنید. اگر همه چیز به‌درستی انجام شده باشد، صفحه باید به صفحهٔ Banners هدایت شود.

  8. چند دقیقه صبر کنید تا سامانهٔ IoT چاپگر را شناسایی کند و با سرور Odoo همگام شود.

  9. به تنظیمات POS دسترسی پیدا کنید و POS خود را انتخاب کنید، یا روی دکمهٔ سه نقطهٔ عمودی () روی یک کارت POS کلیک کنید و روی ویرایش کلیک کنید. به بخش دستگاه های متصل اسکرول کنید، صندوق IoT را فعال کنید و چاپگر را در فیلد چاپگر رسید انتخاب کنید. روی ذخیره کلیک کنید.

توجه

اگر چاپگر به‌درستی راه‌اندازی نشده باشد (مثلاً همچنان متن تصادفی چاپ می‌کند، یا فیش چاپ‌شده خیلی بزرگ یا خیلی کوچک است)، نمی‌توان آن را از طریق نام چاپگر در CUPS اصلاح کرد. در عوض، یک چاپگر جدید از ابتدا با پارامترهای اصلاح‌شده پیکربندی کنید، با دنبال کردن مراحل بالا.

موارد زیر نمونه‌ای از فرآیند عیب‌یابی برای یک مدل چاپگر TM-U220B با استفاده از دستور ESC * است. فیش به تصویر کشیده‌شده در زیر نمونه‌ای از فیشی است که به دلیل قالب‌بندی مناسب (در تئوری) به‌درستی چاپ می‌شود:

تصویر فیش با قالب‌بندی مناسب از یک پایگاه دادهٔ demo.

چاپ این فیش بلافاصله بدون قالب‌بندی مناسب کار نخواهد کرد، زیرا مدل چاپگر TM-U220B از دستور GS v 0 پشتیبانی نمی‌کند. در عوض، کاراکترهای تصادفی چاپ خواهد شد:

کاغذ چاپگر با کاراکترهای ظاهراً تصادفی.

برای پیکربندی صحیح قالب‌بندی برای مدل چاپگر Epson TM-U220B، این مراحل را دنبال کنید:

  1. پس از بررسی وب‌سایت Epson برای سازگاری با هر دو دستور GS v 0 و ESC *، چاپگر TM-U220B در واقع با GS v 0 ناسازگار است اما از ESC * پشتیبانی می‌کند.

    ارزیابی سازگاری Epson از وب‌سایت Epson.
  2. هنگام افزودن چاپگر، CUPS فهرست چاپگرهای در دسترس را نمایش می‌دهد:

    منوی Administration، انتخاب افزودن چاپگر.

    در این مورد، چاپگر از طریق USB متصل است، بنابراین بخشی از Discovered Network Printers نیست. در عوض، احتمالاً بخشی از انتخاب ناشناخته زیر Local Printers است. با کشیدن کابل USB چاپگر از سامانهٔ IoT و refresh کردن صفحه، چاپگر ناشناخته ناپدید می‌شود. با اتصال مجدد، چاپگر دوباره ظاهر می‌شود.

  3. برای قرارداد نام‌گذاری، از آنجا که چاپگر باید با استفاده از دستور ESC * چاپ کند، ضروری است __IMC اضافه شود.

    مشخصات Epson TM-U220 در وب‌سایت سازنده.

    برای این مدل خاص (TM-U220)، m باید برابر با 0 یا 1 باشد. با ارجاع به جدول توضیحات در وب‌سایت ESC * Epson، مقادیر m می‌تواند 0، 1، 32 یا 33 باشد. بنابراین، در این مورد، مقدار m نمی‌تواند 32 یا 33 باشد (در غیر این صورت، کاراکترهای تصادفی چاپ خواهد شد).

    جدول شامل مقادیر عددی 32 و 33 است؛ هر دوی آنها رخ می‌دهند اگر Number of bits for vertical data روی 24 تنظیم شود، یعنی High Vertical Density داشته باشد. در مورد پیکربندی Epson TM-U220، Low Vertical Density باید اعمال شود، زیرا این مدل چاپگر از High Vertical Density برای این دستور ESC * پشتیبانی نمی‌کند.

    برای افزودن یک Low Vertical Density، پارامتر LDV را به قرارداد نام‌گذاری اضافه کنید.

    افزودن یک *Low Vertical Density* (پارامتر `LDV`) به قرارداد نام‌گذاری.
  4. روی ادامه کلیک کنید تا ادامه دهید. در ادامه، مقدار Make را به Raw و مقدار مدل را به Raw Queue (en) تنظیم کنید.

    مشخصات Epson TM-U220 در وب‌سایت سازندگان.

    با این حال، هنگام تلاش برای چاپ با قرارداد نام‌گذاری EpsonTMU220B__IMC_LDV__، فیش چاپ می‌شود اما خیلی بزرگ است و از حاشیه خارج است. برای رفع این مشکل، یک چاپگر جدید (و قرارداد نام‌گذاری) با پارامتر SCALE<X> اضافه کنید تا با اندازهٔ فیش تطبیق پیدا کند.

    اینها چند نمونه هستند:

    قرارداد نام‌گذاری چاپگر

    EpsonTMU220B__IMC_LDV__

    EpsonTMU220B__IMC_LDV_SCALE75__

    EpsonTMU220B__IMC_LDV_LDH__

    EpsonTMU220B__IMC_LDV_LDH_SCALE35__

    نمونهٔ قالب رسید. قالب رسید با استفاده از قرارداد نام‌گذاری: EpsonTMU220B__IMC_LDV__. قالب رسید با استفاده از قرارداد نام‌گذاری: EpsonTMU220B__IMC_LDV_SCALE75__. قالب رسید با استفاده از قرارداد نام‌گذاری: EpsonTMU220B__IMC_LDV_LDH__. قالب رسید با استفاده از قرارداد نام‌گذاری: EpsonTMU220B__IMC_LDV_LDH_SCALE35__.

مشکل چاپ DYMO LabelWriter

DYMO LabelWriter یک مشکل شناخته‌شده در چاپ با سامانه‌های IoT دارد. سرور OpenPrinting CUPS چاپگر را با استفاده از driver‌های Local RAW Printer نصب می‌کند. برای چاپ هر چیزی، Make and Model صحیح باید تنظیم شود تا هنگام استفاده از دستگاه به driver صحیح ارجاع داده شود.

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

مهم

چاپگر DYMO LabelWriter 450 DUO چاپگر DYMO توصیه‌شده برای استفاده با Odoo و سامانه‌های IoT است. این دستگاه دو چاپگر را ترکیب می‌کند: یک چاپگر برچسب و یک چاپگر نوار. هنگام پیکربندی فرآیندهای زیر، انتخاب مدل صحیح ضروری است (یا DYMO LabelWriter 450 DUO Label (en) یا DYMO LabelWriter 450 DUO Tape (en)). برای سازگاری، فرآیندهای زیر مراحل پیکربندی برای مدل DYMO LabelWriter 450 DUO Label (en) را شرح می‌دهد. انتخاب مدل را در صورت لزوم تنظیم کنید.

DYMO LabelWriter چاپ نمی‌کند

اگر DYMO LabelWriter در چاپ ناموفق باشد، یک driver جدید نصب کنید:

  1. به صفحهٔ اصلی سامانهٔ IoT دسترسی پیدا کنید و روی Printer server کلیک کنید تا کنسول OpenPrinting CUPS باز شود.

  2. روی چاپگرها در منوی بالا کلیک کنید، سپس روی چاپگر در فهرست کلیک کنید.

  3. نگهداری را در اولین منوی کشویی انتخاب کنید.

  4. Modify Printer را در دومین منوی کشویی انتخاب کنید.

    اصلاح make و model DYMO LabelWriter. منوهای کشویی Maintenance و Modify برجسته شده‌اند.
  5. اتصال شبکه/چاپگر خاصی که تغییر باید روی آن انجام شود را انتخاب کنید و روی ادامه کلیک کنید.

  6. در صفحهٔ بعدی، روی ادامه کلیک کنید، سپس DYMO را از فهرست کشویی Make انتخاب کنید.

  7. روی ادامه کلیک کنید و مدل را به DYMO LabelWriter 450 DUO Label (en) (یا هر مدل چاپگر DYMO که استفاده می‌شود) تنظیم کنید.

  8. روی Modify Printer کلیک کنید تا driver جدید تنظیم شود؛ یک صفحهٔ تأیید ظاهر می‌شود.

  9. روی چاپگرها در منوی بالا کلیک کنید؛ همهٔ چاپگرهای نصب‌شده روی سرور OpenPrinting CUPS ظاهر می‌شوند، شامل DYMO LabelWriter 450 DUO Label تازه به‌روزرسانی‌شده (یا هر مدل چاپگر DYMO که استفاده می‌شود).

  10. روی چاپگر تازه به‌روزرسانی‌شده کلیک کنید، سپس روی منوی کشویی نگهداری کلیک کنید و Print Test Page را انتخاب کنید تا یک برچسب تست چاپ شود. اگر به‌روزرسانی driver موفق بوده باشد، برچسب تست پس از چند ثانیه چاپ می‌شود.

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

تأخیر چاپ DYMO LabelWriter

نکته

اگر چاپگر DYMO LabelWriter 450 DUO اصلاً چاپ نمی‌کند، یا شناسایی نمی‌شود (یعنی یک نوع driver RAW دارد)، driver‌های روی دستگاه را به‌روزرسانی کنید.

برای رفع مشکل تأخیر پس از اصلاح driver، چاپگر را دوباره نصب کنید:

  1. به صفحهٔ اصلی سامانهٔ IoT دسترسی پیدا کنید و روی Printer server کلیک کنید تا کنسول OpenPrinting CUPS باز شود.

  2. روی مدیریت در منوی بالا کلیک کنید، سپس روی Add a Printer کلیک کنید.

  3. در صفحهٔ بعدی، در بخش Local Printers، چاپگر از پیش نصب‌شدهٔ DYMO LabelWriter 450 DUO Label (DYMO LabelWriter 450 DUO Label) (یا هر مدل چاپگر DYMO که استفاده می‌شود) را انتخاب کنید. روی ادامه کلیک کنید.

    صفحهٔ افزودن چاپگر در OpenPrinting CUPS با DYMO LabelWriter 450 DUO Label برجسته شده.
  4. در صفحهٔ بعدی، نام را به چیزی به‌راحتی قابل شناسایی به‌روزرسانی کنید، زیرا چاپگر اصلی در فهرست باقی می‌ماند. سپس، روی ادامه کلیک کنید.

    صفحهٔ تغییر نام چاپگر در جریان 'Add a Printer'، با فیلد نام برجسته شده.
  5. فیلد مدل را به DYMO LabelWriter 450 DUO Label (en) (یا هر مدل چاپگر DYMO که استفاده می‌شود) تنظیم کنید، سپس روی Add Printer کلیک کنید تا نصب کامل شود.

    صفحهٔ انتخاب مدل در کنسول OpenPrinting CUPS با مدل و افزودن چاپگر برجسته شده.
  6. روی چاپگرها در منوی بالا کلیک کنید و روی چاپگر تازه نصب‌شدهٔ DYMO LabelWriter 450 DUO Label (یا هر مدل چاپگر DYMO که استفاده می‌شود) در فهرست کلیک کنید.

    صفحهٔ چاپگر با چاپگر تازه نصب‌شده برجسته شده.
  7. روی فهرست کشویی نگهداری کلیک کنید و Print Test Page را انتخاب کنید تا یک برچسب تست چاپ شود. برچسب تست باید بلافاصله، یا پس از یک یا دو ثانیه چاپ شود.

چاپگر Zebra چیزی چاپ نمی‌کند

چاپگرهای Zebra نسبت به قالب کد Zebra Programming Language (ZPL) چاپ‌شده بسیار حساس هستند. اگر هیچ چیز از چاپگر خارج نمی‌شود یا برچسب‌های خالی چاپ می‌شوند، سعی کنید قالب گزارش ارسال‌شده به چاپگر را تغییر دهید. برای انجام این کار، developer mode را فعال کنید، به تنظیمات ↤ فنی ↤ رابط کاربری ↤ نماها بروید و قالب مربوطه را جستجو کنید.

مشکلات بارکدخوان

کاراکترهای خوانده‌شده توسط بارکدخوان با بارکد مطابقت ندارد

به‌صورت پیش‌فرض، بیشتر بارکدخوان‌ها در قالب US QWERTY پیکربندی شده‌اند. اگر بارکدخوان از چیدمان متفاوتی استفاده می‌کند، به اینترنت اشیا ↤ ‌دستگاه‌ها بروید و روی کارت دستگاه بارکد کلیک کنید. سپس، زبان صحیح را در فیلد طرح صفحه کلید انتخاب کنید.

توجه

طرح صفحه کلید مختص زبان است، با گزینه‌های در دسترس متفاوت بر اساس دستگاه و زبان پایگاه داده (مثلاً انگلیسی (UK)، انگلیسی (US) و غیره).

هنگامی که یک بارکد اسکن می‌شود اتفاقی نمی‌افتد

مطمئن شوید دستگاه صحیح در تنظیمات Point of Sale انتخاب شده است (در صورت قابل اعمال بودن) و بارکد طوری پیکربندی شده باشد که یک کاراکتر ENTER (کد کلید 28) را در پایان هر بارکد ارسال کند.

بارکدخوان به‌عنوان یک کیبورد شناسایی می‌شود

مهم

برخی از بارکدخوان‌ها به‌جای بارکدخوان به‌عنوان کیبورد USB شناسایی می‌شوند و توسط سامانه‌های IoT شناسایی نمی‌شوند.

برای تغییر نوع دستگاه به‌صورت دستی، به اینترنت اشیا ↤ ‌دستگاه‌ها بروید و روی کارت دستگاه بارکد کلیک کنید. سپس، اسکنر است را فعال کنید.

بارکدخوان کاراکترهای بارکد را به‌صورت تک‌تک پردازش می‌کند

هنگام دسترسی به نسخهٔ موبایل Odoo از یک دستگاه موبایل یا تبلت که با یک بارکدخوان از طریق سامانهٔ IoT جفت شده است، اسکنر ممکن است هر کاراکتر در یک بارکد را به‌عنوان یک اسکن جداگانه تفسیر کند. برای رفع این مشکل، به اینترنت اشیا ↤ ‌دستگاه‌ها بروید و روی کارت دستگاه بارکد کلیک کنید. سپس، زبان صحیح را در فیلد طرح صفحه کلید انتخاب کنید.

توجه

طرح صفحه کلید مختص زبان است، با گزینه‌های در دسترس متفاوت بر اساس دستگاه و زبان پایگاه داده (مثلاً انگلیسی (UK)، انگلیسی (US) و غیره).