狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

LODOP判斷沒成功發送任務-重打一下

admin
2023年9月28日 2:2 本文熱度 607

一般情況下打印執行了PRINT()或PRINTA(),就會加入打印機隊列,如果打印機脫機,就會在隊列里排隊,當打印機連上并取消脫機的時候,正在排隊的任務就會打出,所以一般建議用是否加入隊列來判斷打印成功。
關于打印成功前面有相關博文:
LODOP獲取打印機狀態碼和狀態碼含義測試LODOP獲取打印成功,是否加入隊列
由于打印機千差萬別,狀態碼不一定準確,所以建議使用簡單的方法判斷打印成功,加入隊列就算成功
但是如果是沒成功加入隊列,可以再重新打一下,上面有個博文是加入隊列后成功或失敗進行提示的,修改一下就能變成重打一次的,重打的時候注意是重打整個任務。
關于任務,參考本博客另一篇相關博文:Lodop打印語句最基本結構介紹(什么是一個任務)
即從初始化到打印語句是一個任務,一個任務有一個初始化語句一個打印語句。
除非設置了-設置打印完畢不清理打印信息相關語句,這個之后會有博文介紹(LODOP設置同一個任務發送到不同打印機),一個任務可以執行兩次print,不設置的情況下一個任務執行一次print語句,否則不設置的情況下第二次的會清理了打印信息,打印出來就是空白的。

如下代碼和圖示,常見的錯誤寫法,和正確的重打一次的寫法。
由于PRINT直接發送到隊列,而且一般都會成功,很難模擬到失敗的可能,所以這里用的是PRINTA,這個和PRINT的返回值是一樣的,區別就是PRINTA在打印前會彈出打印機選擇框,這里點取消,模擬沒有成功加入打印機隊列。出現漏任務,先用最新版測試下,一般不會出現漏打,如果打印百個任務或千個任務偶爾出現漏任務且無規律,觀察隊列確認是少了任務,可試試重打一次,但是建議先用最新版對比測試。
代碼:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
<body>
<a href="javascript:prn1()">判斷打印是否成功,不成功再次重打一下的錯誤寫法</a><br>
<a href="javascript:prn2()">判斷打印是否成功,不成功再次重打一下的正確寫法</a><br>
<script language="javascript" type="text/javascript">  
   var LODOP; //聲明為全局變量
   function createPrintPage() {      
       LODOP
=getLodop();        
       LODOP.PRINT_INIT(
"打印控件功能演示_Lodop功能_名片");  
       LODOP.SET_PRINT_PAGESIZE(
1,300,500,"");
       LODOP.ADD_PRINT_TEXT(
37,5,100,20,"新加文本1");
       LODOP.ADD_PRINT_SHAPE(
5,92,7,100,60,0,1,"#000000");
   };  
   
function prn1() {//沒有重打任務,錯誤寫法(一個任務只能有一個print)(除非設置打印完不清理打印信息,詳見他博文)
       LODOP=getLodop();
       LODOP.PRINT_INIT(
"");
       LODOP.ADD_PRINT_TEXT(
4,62,150,40,"一個文本");
       
//云打印C-Lodop返回結果用回調函數:
       if (LODOP.CVERSION) {
           CLODOP.On_Return
=function(TaskID,Value){ if (Value) alert("已發出實際打印命令!"); else {alert("沒有發出實際打印命令!重試打印"); LODOP.PRINTA();}};
           LODOP.PRINTA();
           
return;
       };
       
//控件返回結果用語句本身:
       if (LODOP.PRINTA())
          alert(
"已發出實際打印命令!");
       
else
         alert(
"沒有發出實際打印命令!重試打印");
         LODOP.PRINTA();
   };
   
function prn2() {//重打任務,正確寫法,重打整任務
       LODOP=getLodop();
       LODOP.PRINT_INIT(
"");
       LODOP.ADD_PRINT_TEXT(
4,62,150,40,"一個文本");
       
//云打印C-Lodop返回結果用回調函數:
       if (LODOP.CVERSION) {
           CLODOP.On_Return
=function(TaskID,Value){if(Value) alert("已發出實際打印命令!"); else {alert("沒有發出實際打印命令!重試打印");createPrintPage(); LODOP.PRINTA();}};
           LODOP.PRINTA();
           
return;
       };
       
//控件返回結果用語句本身:
       if (LODOP.PRINTA())
          alert(
"已發出實際打印命令!");
       
else
         alert(
"沒有發出實際打印命令!重試打印");
         createPrintPage();
         LODOP.PRINTA();
   };
</script>
</body>

圖示:

 


該文章在 2023/9/28 2:02:08 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved