名称
最后提交
最后更新
..
OpenFlowReportApi.exe LFS 更新打印服务程序
Readme.md 更新 Readme.md

新版本打印服务已经支持安装到客户端来提供打印服务了,具体方法看下面的说明

OpenPDA通过调用服务器的打印接口实现打印单据的功能 , 实现此功能需要在服务器上安装打印服务OpenFlowReportApi,打印服务需要与OpenFlowApi服务安装在同一台服务器上

安装过程和注意事项

运行安装程序安装打印服务:OpenFlowReportApi.exe ,安装后的默认目录如下

image

通过安装程序运行成功后,会自动安装打印服务,服务名称:OpenFlowReportApi

image

可以根据需要修改打印服务的启动用户(可选,如果打印机装在服务器本地,或者在客户端电脑单独安装打印服务,这里可以不修改)

找到安装好的打印服务服务,将启动用户修改为系统管理员,一般为administrator

注意: 这里并非一定要改为系统管理员,根据使用经验似乎pda在调用打印服务后,打印服务是按照服务启动的用户查找打印机的设置,因此如果出现打印效果和直接通过电脑打印不一致时,可能需要调整服务的启动用户,改为日常登录服务器的用户,并通过此用户登录服务器,设置打印机参数

image

如果打印服务没有启动,那么手动启动打印服务

注意: 如果启动打印时不成功 ,可以到安装目录的logs子目录下检查错误日志: job_error.txt

如果错误日志中有以下错误提示,则可以判断是权限问题,需要以管理员身份运行命令提示符然后执行以下命令:

netsh http add urlacl url=http://+:8100/ user=Everyone
上面的8100是打印服务的默认端口,如果修改了默认端口,这里需要改为修改后的端口号

image

打印服务设置中常见的问题

打印服务默认只需要安装在服务器上, 网络打印机需要通过共享的方式提供服务器访问, 实际使用时发现有部分客户端电脑共享打印机后通过服务器打印时会由于权限问题无法正常打印, 此时可以选择的解决方案包括:

  • 客户端修改安全设置,打开guest用户,让服务器可以正常访问,具体修改位置请自行百度
  • 通过设置默认用户和密码供服务器访问(尚未验证,希望有同事可以验证一下,密码区分大小写)
    默认用户: openmesuser
    默认密码: OpenMesUser999
  • 在客户端电脑安装打印服务: 请参考下面说明

在客户端电脑安装打印服务

  1. 在打印机所在的电脑安装打印服务,操作系统最少需要win7 sp1以上
  2. 安装方法与在服务器上安装相同,默认端口8100,可以修改
  3. 安装成功并成功启动服务后务必在防火墙中打开对应的端口,默认8100
  4. 服务器打印服务下添加参数,列出客户端安装的打印服务, 如果设置正确则通过Pda打印时就可以选择客户端电脑的打印服务了

服务器打印服务的安装目录下找到配置文件: OpenFlowReportApi.exe.config (windows默认会隐藏已知类型文件的扩展名,因此可能显示的名称是:OpenFlowReportApi.exe,打开配置文件后,按照下图所示编辑,注意此操作是在服务器上操作,不是客户端,不是客户端,不是客户端)

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
    </startup>
  <appSettings>
    <add key="serverPort" value="8100"></add>
    <add key="defaultPrinter" value=""/>
    <add key="debug" value="false"/>
    <add key="otherPrintServices" value="http://server1:8100;http://server2:8100"/> 
    //说明: 这里可以设置打印服务地址,格式为http://ip或者电脑名称:端口号,多个地址时使用分号(;)分隔 
  </appSettings>
</configuration>

PDA 启用本地打印服务

image
具体操作:
1.安装最新的打印服务到PC机
2.PDA打印设置=>启用本机打印服务
3.输入打印服务所在PC的IP
PDA默认是不启用本地打印服务
适用环境:有2个仓库各自在不同的地方,连接同一个服务器,但是不在一个局域网,可启用本地打印服务进行打印,要求PDA和安装的打印服务所在的PC机必须是同一个局域网,且IP必须是固定的