【问题标题】:Printing ZPL file using Batch File Issue使用批处理文件问题打印 ZPL 文件
【发布时间】:2021-02-04 20:42:59
【问题描述】:

我们为我们的运输软件运行 NetSuite,并使用 Zebra ZP450 打印机打印热敏标签。 该软件会下载一个 .zpl 文件,我已指定该文件与批处理文件一起运行,脚本在这里:

Net use LPT2: \\%ComputerName%\ZebraFedex

Copy %1 LPT2

Net use LPT2: /Delete

我已经在大约 20 台或更多台计算机上安装了它,没有任何问题。但是最后两个会启动批处理文件但不会打印。

我可以在批处理文件上点击暂停,这就是我得到的结果:

C:\users\noah\downloads\net 使用 LPT2:\(ComputerName)\ZebraFedex

命令成功完成

C:\Users\Noah\Downloads\复制 LPT2

系统找不到指定的文件。已复制 0 个文件

C:\Users\Noah\Downloads>网络使用 LPT2: /Delete

我检查了我的文件关联,这似乎是正确的,因为我看到命令提示符在屏幕上闪烁。我不知道这里...

在另一台计算机上成功工作

令人费解的计算机上的问题

【问题讨论】:

  • 您的帖子中似乎有一些未渲染的符号。如果您在脚本的最后一行之后添加一行PAUSE,那么批处理应该很好,暂停,所有的事情。尝试编辑裁剪的屏幕截图,因为格式和编辑的变幻莫测似乎混淆了实际消息。从C:\Users\Noah\Downloads\Copy LPT2 的响应中可以明显看出,批处理已在没有参数的情况下运行。
  • 我已经添加了截图。谢谢参观。它可能与权限级别或登录凭据有关吗?只是我在不同的线程上偶然发现的东西......
  • 引用:What seems obvious from the response C:\Users\Noah\Downloads\Copy LPT2 is that the batch has been run with no parameter. – Magoo yesterday
  • 这个批处理文件直接取自 Oracle 指令,可以在许多其他计算机上完美运行。第 26 页 docs.oracle.com/cd/E60665_01/netsuitecs_gs/NSSIP/NSSIP.pdf

标签: batch-file netsuite zebra-printers network-printers


【解决方案1】:

这是我将文件传输到我古老的 TLP2844 的批次:

@ECHO OFF
SETLOCAL
FOR %%a IN (%*) DO (
 IF EXIST "%%a" (COPY /b "%%~a" \\%computername%\TLP2844
 ) ELSE (
  IF EXIST "%%a.txt" (
   COPY /b "%%~a.txt" \\%computername%\TLP2844
  ) else (
   ECHO Neither "%%a" nor "%%a.txt" appears to EXIST
  )
 )
)

我有一台名为TLP2844 的打印机作为ZDesigner TLP 2844 设备安装在USB003 上。


问题,如我在您的问题中包含的图形所示(保存运行追逐链接)是标签文件 C:\users\melan\downloads\UPSSHIPPINGLABEL1700448.zpl 正在作为 %1 (第一个参数)提供给批处理。在问题安装中,没有文件名(大概是 C:\users\Noah\downloads\UPSSHIPPINGLABEL???????.zpl 以 %1 的形式提供给批处理。

因此不是批处理的问题,而是Netsuite的问题。

来自您的 .pdf,第 26 页:

要在 Windows PC 上安装热敏打印机驱动程序: ... 5. 在共享名称字段中,输入打印机的名称。例如,LP 2844。 打印机名称不能包含空格。

所以您被告知打印机名称不能包含空格,但示例打印机名称包含空格....太棒了! (显示我对产品的信心程度,但实际上与问题没有直接关系):(

就个人而言,我会将您的批处理文件更改为

Copy %1 \\%ComputerName%\ZebraFedex

也许您会在解决Netsuite 无法将文件名传递给批处理的问题后尝试这样做。也许它被设置为在有问题的计算机上生成.pdfs(这是一个疯狂的猜测)


回复回复:

请将您的批处理文件(暂时用于测试目的)更改为:

Echo File to print : "%1"

Net use LPT2: \\%ComputerName%\ZebraFedex

Copy %1 LPT2

Net use LPT2: /Delete

PAUSE

它将Netsuite提供的文件名报告给控制台窗口上的批处理文件,然后在批处理结束时保持窗口打开,直到打开的窗口收到按键。

请报告“工作”和“错误”安装的结果。

【讨论】:

  • 抱歉回复晚了。 NetSuite 会自动将 ZPL 文件下载到下载文件夹,从那里我将 .zpl 文件设置为自动打开。所以这不应该是 NetSuite 问题。似乎由于某种原因找不到该文件。文件夹共享还是防火墙?
猜你喜欢
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多