Bartender ClientPrintService和Integration模式打印
1.Bartender下載安裝
1.1 Bartender下載地址
1.2 Bartender 申請30天免費試用
1.3 Bartender 安裝
-
指定高級安裝
-
選擇Bartender Designer和Print Portal進行安裝
-
之后的直接默認安裝,下一步即可。
2.ClientPrintService模式配置和使用
ClientPrintService 模式為服務器-客戶端模式,即:在一台電腦安裝Bartender充當Bartender服務器,在需要進行打印的電腦安裝ClientPrintService服務,將本地打印機共享給Bartender服務器,即可通過調用Bartender服務提供的接口,進行打印。
2.1 開啟客戶端打印模式
-
使用非IE瀏覽器,打開地址:http://localhost/Bartender/Browse,出現如下界面
-
點擊
管理設置
,選擇客戶端打印Tab頁1.勾選
啟用客戶端打印
填入名稱,和打印路由器URL。打印路由器的URL中改成安裝Bartender電腦的IP+端口的形式2.點擊
保存
2.2 客戶端安裝ClientPrintService服務
-
需要進行打印的電腦,訪問
http://ip:80/Bartender/Client/ClientPrintWizard
該IP為安裝Bartender軟件的那台電腦的IP
-
訪問上述地址后,會自動下載
SeagullClientPrintServiceInstaller.exe
軟件,雙擊打開該軟件,默認安裝即可。該過程需要聯網。
-
SeagullClientPrintServiceInstaller
軟件安裝完成后,會自動打開瀏覽器進入客戶端的配置界面,地址為:http://localhost:5952/settings
-
你可以使用
http://ip:80/Bartender/Client/ClientPrintWizard
頁面的自動配置
也可以手動配置 -
配置完成后,會出現如下界面
-
至此,Bartender的服務端和客戶均配置完成。
-
若第五步的狀態不是
已連接
,則查看Bartender安裝電腦上的Bartender服務和客戶端電腦的BarTender Client Print Service 服務1.win+r 輸入:services.msc
2.找到Bartender服務器,確保所有的Bartender服務器均
正在運行
,若不在運行,手動啟動,然后再次進行客戶端配置界面,即可連接。 -
將本地打印機共享給Bartender 打印服務器
在
http://127.0.0.1:5952/Settings
頁面,勾選需要調用Bartender服務進行打印的打印機后保存即可。 -
至此,客戶端和打印機共享配置完成。
3.接口調用打印
-
打開
http://192.168.1.68/Bartender/swagger/index.html
swagger接口文檔地址 -
獲取打印機接口:http://192.168.1.68/Bartender/api/v1/printers
該接口可以獲取Bartender服務器可以調用的所有本地打印機和遠程打印機
本地打印機:是安裝Bartender那台電腦上的打印機
遠程打印機:是通過客戶端配置,共享給Bartender服務器的打印機
-
根據打印機名稱獲取打印機信息的接口:http://192.168.1.68/Bartender/api/v1/printers/{printName},該接口很簡單,也不實用,不做贅述
-
獲取模版庫的接口:http://192.168.1.68/Bartender/api/v1/libraries
該接口可以獲取Bartender服務器上的模版庫
Bartender默認模板庫有兩個,一個在IIS目錄下,另一個是Bartender Librarian
默認使用IIS目錄下的模板庫,即接口請求的name為Templates的模板庫
-
根據模版庫ID可以獲取到該模版庫的信息以及該模版庫中可以使用的Bartender模版http://192.168.1.68/Bartender/api/v1/libraries/{id}
-
Templates模版庫的默認位置在:
C:\inetpub\wwwroot\BarTender\wwwroot\Templates
目錄下 -
將需要打印的Bartender 模版放在上述位置上,Bartender即可識別獲取。(注:一般模版修改或新增,Bartender需要隔幾分鍾后才會獲取最新的)
-
http://192.168.1.68/Bartender/Browse
頁面可以瀏覽模版庫中的所有模版 -
post方式的打印接口:http://192.168.1.68/Bartender/api/v1/print,通過該接口即可調用打印機進行打印
{ "libraryID": "string", --模版庫的ID "relativePath": "string",--模版的相對路徑,例如:Automotive/AIAG/B-10/BMW.btw "absolutePath": "string",--模版的絕對路徑,與相對路徑二者選其一 "documentPassword": "string",--文檔密碼:沒有的不需要傳,從參數中拿掉即可 "printRequestID": "string",--打印請求ID,(一般不傳,從參數中拿掉) "printer": "string",--打印機名稱(這里的打印機名稱應該為調用printers接口中獲取的打印機名稱) "startingPosition": 0,--起始位置(一般不傳,從參數中拿掉) "copies": 0,--打印份數 "serialNumbers": 0,--自增序列 "namedDataSources": { "additionalProp1": "string"--傳參(嵌入的數據的名稱) }, "dataEntryControls": {--不知道干啥的,可以不傳 } }
注:若ClientPrintService模式出現打印不出來的情況:
- 查看客戶端的打印機是否正常打印
- 打印
http://localhost:5952/settings
設置界面,查看客戶端與Bartender服務器的連接是否正常 - 查看安裝Bartender電腦上的Bartender是否正常運行
- 查看客戶端ClientPrintService 服務是否正常運行
- 若都正常運行,可以嘗試重啟ClientPrintService服務器重試;若還不行可以嘗試重啟Bartender服務器上的所有Bartender服務,若出現服務器無法重啟的情況,請用Bartender安裝包進行修復。
4.Integration Builder 配置(使用BTXML腳本)
4.1 BTXML腳本配置
-
打開Integration Builder
-
創建新的集成—>Web服務—>確定 后進入頁面,修改服務名稱和端口
-
輸入數據:選擇BTXML腳本

-
打印文檔:刪除默認創建的打印文檔,新增一個
打印BTXML腳本
,可修改該腳本名稱: -
預覽,啟動該服務
4.2 使用postman調用本地打印機進行測試
-
URL:http://
/Integration/MesPrint/Execute,將host改成IP -
參數:
<?xml version='1.0' encoding='utf-8'?> <XMLScript Version='2.0' Name='09232006_103601_Job1' ID='123'> <Command Name='Job1'> <Print> <!-- 模版路勁,可以是Templates的相對路徑,也可以是絕對路勁 --> <Format>D:/BartenderIntegration/VCard.btw</Format> <PrintSetup> <!-- 自增序列 --> <NumberSerializedLabels>1</NumberSerializedLabels> <!-- 打印份數 --> <IdenticalCopiesOfLabel>1</IdenticalCopiesOfLabel> <!-- 打印機名稱(可以是本地打印機也可以是共享打印機) --> <Printer>PDF</Printer> </PrintSetup> <!-- 嵌入式數據源的名稱和值 --> <NamedSubString Name='cartonId'> <Value>00000011</Value> </NamedSubString> </Print> </Command> </XMLScript>
詳細參數可參考Integration Builder 幫助文檔
-
postman調用測試:
4.3 調用共享打印機進行打印
-
將需要進行打印的打印機共享出來
具體方法百度
-
在上述參數中,打印機參數改成共享打印機的名稱和地址即可
4.4 若調用本地打印機可以打印,調用遠程打印機報如下錯誤的話:
請使用Bartender的自動化版本創建集成
4.5 測試完成后,即可將該打印服務部署一下即可。
注:若Integration Builder模式出現打印不出來的情況:
- 確認共享打印機是否正常打印
- 確認已部署的服務是否正常,可嘗試重新部署該服務