连接打印机

安装打印机只需几个简单的步骤即可完成。打印机可用于打印收据、标签、订单,甚至不同 Odoo 应用程序中的报告。此外,在生产过程中,还可将打印机操作指定为*触发器上的操作*,或添加到质量控制点或质量检查中。

警告

将打印机直接连接到 Odoo 数据库的**唯一**方法是使用物联网系统。如果没有物联网系统,仍可进行打印,但要通过打印机本身进行管理,这不是推荐的做法。

连接

IoT 系统支持通过 USB 或网络连接的打印机。支持的打印机 会自动被检测到,并显示在 IoT 应用的 :guilabel:`设备`列表中。

打印机会显示在物联网应用程序设备列表中。

重要

通过网络连接到物联网系统的打印机必须与物联网系统位于**同一网络**中。

注解

打印机可能需要长达两分钟的时间才会出现在物联网应用的 :guilabel:`设备`列表中。

小技巧

要测试打印机,请打开物联网应用,点击物联网系统卡片,选择打印机设备,然后点击测试。成功的测试将打印一页测试页。如果没有打印页面,请确保打印机已开启且连接正确。

清除设备打印机缓存

连接打印机打印报告后,设置会保存在浏览器的缓存中。这意味着用户可以根据访问 Odoo 的设备,在缓存中为不同的报告保存不同的设备。这也意味着不同的用户可以根据自己的偏好,让不同的打印机自动打印报告。

要解除报告与打印机的连接,请访问 物联网 ‣ 配置 ‣ 重置已连接的打印机。这将生成与当前设备上的打印机连接的报告列表。点击每个报告旁边的 取消连接 按钮以取消。

重要

此步骤 仅 防止报告从当前浏览器自动打印到列出的打印机。报告仍在设备上的 已链接 页面的 打印机报告 标签下。

物联网应用程序中当前与打印机链接的报告列表。

其他资料

POS 订单打印

潜在问题

未检测到打印机

如果打印机未出现在设备列表中,请访问 物联网盒子 或 Windows 虚拟物联网 主页,点击 设备 部分中的 显示,确保打印机已列出。

如果打印机未出现在物联网系统主页上,请点击 打印机服务器,然后点击 管理,再单击 添加打印机。如果打印机不在列表中,则可能连接不正确。

我打印机输出随机文本

对于大多数打印机,应自动检测并选择正确的驱动程序。然而,在某些情况下,自动检测机制可能不够,如果没有找到驱动程序,打印机可能会打印随机字符。

解决办法是手动选择相应的驱动程序。在物联网系统主页上,点击 打印机服务器,然后点击 打印机,在列表中选择打印机。在 管理 下拉菜单中,点击 修改打印机。按照步骤选择打印机的*品牌*和*型号*。

编辑连接到 IoT 系统的打印机。

注解

Epson 收据打印机和 Zebra 标签打印机不需要驱动程序即可工作。确保没有为这些打印机选择驱动程序。

已检测到打印机,但无法正确识别

如果 Odoo 和物联网系统不能正确识别打印机,请转至 物联网 ‣ 设备,点击设备卡访问其表单,并将 亚型 字段设置为相应选项:收据打印机、标签打印机 或 办公室打印机。

爱普生配置专案

大多数爱普生打印机都支持在 Odoo 销售点中使用 GS v 0 命令打印收据。但是,以下爱普生打印机型号不支持该指令:

  • TM-U220

  • TM-U230

  • TM-P60

  • TMP-P60II

要绕过这个问题,可以将打印机配置为使用 ESC * 指令。

首先,查看爱普生网站,了解 GS v 0 和 ESC * 指令的兼容性。

如果打印机与 GS v 0 不兼容,但支持 ESC * ,请按以下步骤配置 IoT 系统以使用 ESC * 命令:

  1. 访问 物联网盒子的 主页或 Windows 虚拟物联网的 主页。

  2. 点击 打印机服务器 按钮,然后点击 CUPS 页面上的 管理。

  3. 点击 打印机 部分中的 添加打印机,选择打印机,然后点击 继续。

    小技巧

    如果打印机名称仍然不确定,请采取以下步骤:

    1. 注意 CUPS 页面上列出的打印机。

    2. 关闭打印机并刷新页面。

    3. 比较与第一份清单的差异,看看哪台打印机消失了。

    4. 重新打开打印机,再次刷新页面。

    5. 再次仔细检查列表,看看打印机是否再次出现。

    6. 在列出的打印机中消失和再次出现的打印机是有关打印机的名称。它可以是 本地打印机 下的 未知。

  4. 在 添加打印机 页面上,使用以下约定指定打印机的 名称:<printer_name>__IMC_<param_1>__<param_2>_..._<param_n>__,其中:

    • printer_name 是打印机名称。它可以包含除 _、/、# 或 ``(空格符)以外的任何字符。

    • IMC:代表*图像模式列*(`ESC *`的简化名称)。

    • param_1:代表特定参数:

      • 比例<X>:图片的比例(宽高比相同)。X 应该是一个整数,描述应使用的比例百分比。例如,100 为原始尺寸,50 为原始尺寸的一半,200 为原始尺寸的两倍。

      • LDV:低密度垂直*(如果未指定,将设置为*高密度垂直)。

      • LDH:低密度水平*(如果未指定,将设置为*高密度水平)。

      注解

      • *密度*参数可能需要以特定方式配置,具体取决于打印机型号。

      • 请参阅 Epson’s ESC * 文档 以确定打印机是否需要设置这些参数。

    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,将 Model 值设置为 Raw Queue (en)。

  7. 点击 添加打印机。如果一切操作正确,页面应重定向到 横幅 页面。

  8. 等待几分钟,让物联网系统检测到打印机并同步到 Odoo 服务器。

  9. 访问 POS 设置 并选择您的 POS,或在 POS 卡片上点击垂直省略号按钮 (⋮) 并点击 编辑。向下滚动至 已连接设备 部分,启用 IoT 盒子,并在 收据打印机 字段中选择打印机。点击 保存。

注解

如果打印机设置错误(如继续打印随机文本,或打印的收据过大或过小),则无法通过 CUPS 中的打印机名称进行修改。相反,请按照上述步骤,用修改后的参数从头配置一台新打印机。

以下是使用 ESC * 命令对 TM-U220B 打印机型号进行故障排除的示例。下图中的收据是由于格式正确(理论上)而正确打印的收据示例:

演示数据库中格式正确的收据图片。

由于 TM-U220B 打印机型号不支持 GS v 0,因此在未正确格式化的情况下立即打印此收据将不起作用。相反,打印出的将是随机字符:

打印纸上的字符看似随机。

要正确配置 Epson TM-U220B 打印机型号的格式化,请按照以下步骤操作:

  1. 在检查了爱普生网站与 GS v 0 和 ESC * 命令的兼容性之后,TM-U220B 打印机确实与 GS v 0 不兼容,但支持 ESC *。

    爱普生网站上的爱普生兼容性评估。
  2. 添加打印机时,CUPS 会显示可用打印机的列表:

    管理菜单,添加打印机选项。

    在这种情况下,打印机通过 USB 连接,因此它不属于 已发现的网络打印机。相反,它可能属于 本地打印机 下的 未知 选项。通过从 IoT 系统拔下打印机的 USB 线缆并刷新页面,未知 打印机会消失。通过重新插入,打印机会重新出现。

  3. 对于命名约定,由于打印机必须使用 ESC * 指令进行打印,因此必须添加 __IMC。

    制造商网站上的爱普生 TM-U220 规格。

    对于这款特定型号(TM-U220)`m` 应等于 0 或 1。参考 Epson的ESC *网站 <https://download4.epson.biz/sec_pubs/pos/reference_en/escpos/esc_asterisk.html>`_上的 :guilabel:`描述 表格,m 值可以是0、1、32或33。因此,在这种情况下,m 值不能是 32 或 33(否则,将会打印随机字符)。

    表格包括数值 32 和 33;如果 垂直数据位数 设置为 24,即具有*高垂直密度*时,它们都会出现。在配置 Epson TM-U220 的情况下,需要强制使用 低垂直密度,因为这种打印机型号不支持此命令 ESC * 的*高垂直密度*。

    要添加*低垂直密度*,请在命名规则中添加`LDV`参数。

    在命名规则中添加*低垂直密度*(`LDV`参数)。
  4. 点击 继续,以继续操作。接下来,将 Make 值设置为 Raw 并将 Model 值设置为 Raw Queue (en)。

    爱普生 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 服务器使用 本地 RAW 打印机 驱动程序安装打印机。要打印任何内容,需要设置正确的 Make and Model,以便在使用设备时引用正确的驱动程序。

此外,还需要添加新打印机,以减少更新驱动程序后出现的打印延迟。

重要

  • DYMO LabelWriter 450 DUO打印机是 Odoo 和 IoT 系统推荐使用的 DYMO 打印机。这款设备结合了两台打印机:标签打印机和胶带打印机。在配置以下流程时,必须选择正确的型号(DYMO LabelWriter 450 DUO Label (en) 或 DYMO LabelWriter 450 DUO Tape (en))。为保持一致性,以下流程概述了DYMO LabelWriter 450 DUO Label (en)型号的配置步骤。请根据需要调整型号选择。

  • DYMO Series 5 printers are not compatible with the IoT box and require pairing with a Windows virtual IoT.

DYMO LabelWriter 无法打印

如果 DYMO LabelWriter 无法打印,请安装新驱动程序:

  1. 访问 IoT 系统的主页并点击 打印机服务器 打开 OpenPrinting CUPS 控制台。

  2. 点击顶部菜单中的 打印机,然后点击列表中的打印机。

  3. 在第一个下拉菜单中选择 维护保养。

  4. 在第二个下拉菜单中选择 修改打印机。

    修改 DYMO LabelWriter 的品牌和型号。突出显示维护保养和修改下拉菜单。
  5. 选择要进行修改的特定网络连接/打印机,然后点击 继续。

  6. 在下一页,点击 继续,然后从 品牌 下拉列表中选择 DYMO。

  7. 点击 继续 并将 型号 设置为 :guilabel:`DYMO LabelWriter 450 DUO Label (en)`(或正在使用的任何 DYMO 打印机型号)。

  8. 点击 修改打印机 设置新驱动程序;会出现一个确认页面。

  9. 点击顶部菜单中的 打印机;OpenPrinting CUPS 服务器上安装的所有打印机都会显示,包括新更新的 :guilabel:`DYMO LabelWriter 450 DUO Label`(或正在使用的任何 DYMO 打印机型号)。

  10. 点击新更新的打印机,然后点击 维护保养 下拉菜单并选择 打印测试页 以打印测试标签。如果驱动程序更新成功,测试标签将在几秒钟后打印出来。

要减少延迟,请使用以下步骤添加新打印机。

DYMO LabelWriter 打印延迟

小技巧

如果 DYMO LabelWriter 450 DUO 打印机完全不打印,或者未被识别(即它具有 RAW 驱动程序类型),则 更新设备上的驱动程序。

要解决修改驱动程序后的延迟问题,请重新安装打印机:

  1. 访问 IoT 系统的主页并点击 打印机服务器 打开 OpenPrinting CUPS 控制台。

  2. 点击顶部菜单中的 管理,然后点击 添加打印机。

  3. 在下一页的 本地打印机 部分,选择预先安装的 DYMO LabelWriter 450 DUO Label (DYMO LabelWriter 450 DUO Label) `(或正在使用的任何 DYMO 打印机型号)。点击 :guilabel:`继续。

    在 OpenPrinting CUPS 上添加一个打印机屏幕,突出显示 DYMO LabelWriter 450 DUO 标签。
  4. 在下一个屏幕上,将 名称 更新为易于识别的名称,因为原始打印机将保留在列表中。然后,点击 继续。

    在 '添加打印机' 流程中重命名打印机页面,名称字段突出显示。
  5. 将 型号 字段设置为 DYMO LabelWriter 450 DUO Label (en)`(或正在使用的任何 DYMO 打印机型号),然后点击 :guilabel:`添加打印机 完成安装。

    在 OpenPrinting CUPS 控制台上的“选择型号”屏幕上,突出显示型号和添加打印机。
  6. 点击顶部菜单中的 打印机 并从列表中点击新安装的打印机 :guilabel:`DYMO LabelWriter 450 DUO Label`(或正在使用的任何 DYMO 打印机型号)。

    突出显示新安装打印机的打印机页面。
  7. 点击 维护保养 下拉列表并选择 打印测试页 以打印测试标签。测试标签应立即打印出来,或者一两秒钟后打印出来。

Zebra 打印机不打印任何内容

Zebra 打印机对打印的 Zebra 编程语言(ZPL)代码格式非常敏感。如果打印机打印不出任何内容或打印出空白标签,请尝试更改发送到打印机的报告格式。要执行此操作,请激活 开发者模式,进入 设置 ‣ 技术 ‣ 用户界面 ‣ 视图,然后搜索相应的模板。

条形码扫描仪问题

条形码扫描仪读取的字符与条形码不匹配

默认情况下,大多数条形码扫描器都配置为美国 QWERTY 格式。如果条形码扫描器使用不同的布局,请前往 IoT ‣ 设备 并点击条形码设备卡片。然后,在 键盘布局 字段中选择正确的语言。

注解

键盘布局`基于语言,可用选项根据设备和数据库的语言而变化。例如::guilabel:`英语(英国)、英语(美国) 等。

扫描条形码时不会发生任何情况

请确保在 销售点设置 中选择了正确的设备(如适用),并且已将条形码配置为在每个条形码结尾发送 ENTER 字符(键码 28)。

条形码扫描仪被检测为键盘

重要

有些条形码扫描器被识别为 USB 键盘而非条形码扫描器,因此不被 IoT 系统识别。

要手动更改设备类型,请前往 IoT ‣ 设备 并点击条形码设备卡片。然后,启用 是扫描仪。

条形码扫描器逐个处理条形码字符

通过物联网系统,从与条形码扫描仪配对的移动设备或平板电脑访问移动版 Odoo 时,扫描仪可能会将条形码中的每个字符解释为一次单独扫描。要解决这个问题,请转到 物联网 ‣ 设备 并点击条形码设备卡。然后,在 键盘布局 字段中选择正确的语言。

注解

键盘布局`基于语言,可用选项根据设备和数据库的语言而变化。例如::guilabel:`英语(英国)、英语(美国) 等。