MES開發(fā)與應用 課件 3.5.10-11 工業(yè)管理軟件開發(fā)基礎-命令的使用-單據(jù)和標簽打印_第1頁
MES開發(fā)與應用 課件 3.5.10-11 工業(yè)管理軟件開發(fā)基礎-命令的使用-單據(jù)和標簽打印_第2頁
MES開發(fā)與應用 課件 3.5.10-11 工業(yè)管理軟件開發(fā)基礎-命令的使用-單據(jù)和標簽打印_第3頁
MES開發(fā)與應用 課件 3.5.10-11 工業(yè)管理軟件開發(fā)基礎-命令的使用-單據(jù)和標簽打印_第4頁
MES開發(fā)與應用 課件 3.5.10-11 工業(yè)管理軟件開發(fā)基礎-命令的使用-單據(jù)和標簽打印_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

3.5命令的使用深圳市信息職業(yè)技術學院——單據(jù)和標簽打印目

錄平臺打印模板設置介紹01單據(jù)打印開發(fā)示例02標簽打印開發(fā)示例03單據(jù)和標簽打印注意事項04知識回顧平臺導入命令使用通用說明;導入命令框架實現(xiàn)介紹;導入命令開發(fā)示例-使用框架導入模板;導入命令開發(fā)示例-自定義導入模板學習目標通過本節(jié)學習可以:掌握單據(jù)和標簽打印的模板配置;掌握單據(jù)打印的開發(fā)實現(xiàn);掌握標簽打印的開發(fā)實現(xiàn);了解單據(jù)和標簽打印的注意事項。01平臺打印模板設置介紹平臺打印模板設置介紹平臺打印模板設置介紹單據(jù)和標簽打印的模板是在平臺功能“模板設置”中進行配置維護的。平臺打印模板設置介紹平臺打印模板設置介紹“添加標簽模板”按鈕介紹。平臺打印模板設置介紹平臺打印模板設置介紹“添加單據(jù)模板”按鈕介紹。平臺打印模板設置介紹平臺打印模板設置介紹模板設計。平臺打印模板設置介紹平臺打印模板設置介紹單據(jù)和標簽打印模板的區(qū)別:只模板的數(shù)據(jù)源存在差異。標簽打印的數(shù)據(jù)源只加載自己實體部分的數(shù)據(jù)源,單據(jù)打印的數(shù)據(jù)源會加載自己和對應子屬性的數(shù)據(jù)源及關系會一起加上生成出來。平臺打印模板設置介紹模板頁面設計創(chuàng)建新單據(jù)及標簽模板,綁定對應的實體,輸入對應的模板名稱,確認后會生成空白的打印模板,包含上邊距(TopMargin1),明細(Detail1),下邊距(BottomMargin1)。平臺打印模板設置介紹模板頁面設計根據(jù)實際的模板首先設置報表report的大小和合適的上下左右邊距,確保實際打印不會超出紙張大小,一般設置報表report的測量單位為0.1毫米,紙張大小為自定義(標準紙張可根據(jù)現(xiàn)有規(guī)格選擇)。注意:紙張類型不為自定義時,頁面寬度及頁面高度不可編輯;標簽模板需要設置Detail1的高度與Report的高度一致,確保標簽正常打印平臺打印模板設置介紹模板頁面設計模板界面大概分布及大小設置。不分頁設置,勾選之后模板預覽不再分頁,一頁展示全部內(nèi)容,但如果數(shù)據(jù)量過大會導致頁面崩潰,僅適用于數(shù)據(jù)比較少的頁面展示。平臺打印模板設置介紹模板頁面設計明細區(qū)域設置,用于顯示明細數(shù)據(jù),只有做了以下的設置才能顯示一主表多明細格式的數(shù)據(jù)(適用于單據(jù)打印,標簽打印無明細信息)。平臺打印模板設置介紹模板頁面設計了解對應的控件和頁面設置,包含控件的用途和對應設置起到的作用??丶撁嬖O置數(shù)據(jù)源報表結(jié)構02單據(jù)打印開發(fā)示例思考題圖書分類中添加打印命令,要求同一筆主數(shù)據(jù)能顯示多筆子數(shù)據(jù),報表數(shù)據(jù)源的業(yè)務字段中文顯示,如何實現(xiàn)?單據(jù)打印開發(fā)示例開發(fā)步驟在服務端工程,圖書分類文件夾中新建一個類,以BillPrintable結(jié)尾,繼承BillPrintable,關聯(lián)的實體類為圖書大類的實體;給打印類標記特性DisplayName,DisplayName的名稱不要重名。單據(jù)打印開發(fā)示例開發(fā)步驟運行項目,在模板設置功能中,點擊“添加單據(jù)模板”,彈出對話框的名稱中會多一個“圖書分類單據(jù)打印”的選擇,錄入對應的信息添加“圖書分類單據(jù)打印”模板。單據(jù)打印開發(fā)示例開發(fā)步驟點擊確定按鈕,進入到“圖書分類單據(jù)打印”設計界面。單據(jù)打印開發(fā)示例開發(fā)步驟切換到數(shù)據(jù)源部分,業(yè)務字段默認顯示為實體的屬性名,并未按要求顯示為中文。單據(jù)打印開發(fā)示例開發(fā)步驟題目中要求數(shù)據(jù)源業(yè)務字段為中文顯示,默認的不滿足要求,我們需要重寫處理數(shù)據(jù)源,在單據(jù)打印類中重寫獲取屬性GetPropertys和數(shù)據(jù)轉(zhuǎn)換ConverterData的方法。單據(jù)打印開發(fā)示例開發(fā)步驟獲取屬性GetPropertys方法的實現(xiàn)。單據(jù)打印開發(fā)示例開發(fā)步驟數(shù)據(jù)轉(zhuǎn)換ConverterData方法的實現(xiàn)。單據(jù)打印開發(fā)示例開發(fā)步驟運行項目,進行單據(jù)打印模板設計,選擇圖書分類的這筆數(shù)據(jù),點擊“設計”按鈕,進入設計界面。單據(jù)打印開發(fā)示例開發(fā)步驟因為更改了數(shù)據(jù)源,數(shù)據(jù)源需要重新構建。單據(jù)打印開發(fā)示例開發(fā)步驟運行查詢生成器。單據(jù)打印開發(fā)示例開發(fā)步驟更新圖書大類大類的數(shù)據(jù)源,按下圖步驟操作完成后,點擊“確定”按鈕。單據(jù)打印開發(fā)示例開發(fā)步驟同樣的操作更新圖書小類數(shù)據(jù)源,更新完成后效果如下。單據(jù)打印開發(fā)示例開發(fā)步驟設計模板如下,樣式部分未進行調(diào)整。單據(jù)打印開發(fā)示例開發(fā)步驟設計完成后,保存模板,并將模板設置為“可用”。單據(jù)打印開發(fā)示例開發(fā)步驟在圖書大類實體中標記BillPrintable特性,關聯(lián)單據(jù)打印類。單據(jù)打印開發(fā)示例開發(fā)步驟運行項目,在圖書分類功能中會顯示一個“打印”按鈕。單據(jù)打印開發(fā)示例開發(fā)步驟選擇一筆數(shù)據(jù),點擊“打印”按鈕,查看效果。思考題單據(jù)打印從表要顯示多筆數(shù)據(jù),設計模板時數(shù)據(jù)源應該如何處理?03標簽打印開發(fā)示例思考題讀者管理中添加標簽打印命令,要求標簽模板的數(shù)據(jù)源屬性中文顯示,如何實現(xiàn)?標簽打印開發(fā)示例開發(fā)步驟在服務端工程,讀者管理文件夾中新建一個類,以LabelPrintable結(jié)尾,繼承LabelPrintable,關聯(lián)的實體類為讀者管理的實體;給標簽打印類標記特性DisplayName,DisplayName的名稱不要重名。標簽打印開發(fā)示例開發(fā)步驟重寫獲取屬性的方法GetPropertys,實現(xiàn)如下。標簽打印開發(fā)示例開發(fā)步驟重寫數(shù)據(jù)轉(zhuǎn)換的方法ConverterData,實現(xiàn)如下。標簽打印開發(fā)示例開發(fā)步驟運行項目,在模板設置功能中,點擊“添加標簽模板”,彈出對話框的名稱中會多一個“讀者管理標簽打印”的選擇。標簽打印開發(fā)示例開發(fā)步驟配置標簽打印的模板。標簽打印開發(fā)示例開發(fā)步驟標簽打印按鈕框架未進行封裝,命令需要自定義實現(xiàn),在客戶端的讀者管理文件夾中添加標簽打印的命令。標簽打印開發(fā)示例開發(fā)步驟標簽打印命令前端實現(xiàn)。SIE.defineCommand('SIE.Web.LibMan.ReaderMans.Commands.ReaderManLabelPrintCommand',{meta:{text:"標簽打印",group:"edit",iconCls:"icon-PrintDataicon-blue"},canExecute:function(view){

returnview.hasSelectedEntities();

},execute:function(view,source){

varme=this;view.execute({data:view.getSelectionIds(),success:function(res){

varparam={content:res.Result};CRT.Workbench.showPageDialog({id:'Label_rpt',text:"標簽打印".t(),url:'/Modules/PrintTemplate/DevPrint',params:param,method:'POST'

});

}

});

}});存在選擇的數(shù)據(jù)則按鈕允許執(zhí)行,可根據(jù)實際業(yè)務重寫向后端請求數(shù)據(jù)調(diào)用框架的打印方法,這部分代碼可共用標簽打印開發(fā)示例開發(fā)步驟標簽打印命令后端實現(xiàn)。

public

class

ReaderManLabelPrintCommand:ViewCommand

{

protected

override

objectExcute(ViewArgsargs,stringscope)

{List<double>ids=args.Data.ToJsonObject<List<double>>();

//1.獲取打印模板

vartemplate=RT.Service.Resolve<ReaderManController>().GetReaderManPrintTemplate();

if(template==null)

throw

newValidationException("讀者管理未維護標簽模板或者是維護了標簽模板但是未啟用,請維護并啟用后再進行打印操作!".L10N());

//2.根據(jù)類型獲取報表處理對像

varreport=ReportFactory.Current.GetReportByExtension(template.Type);

//3.獲取打印數(shù)據(jù)

varprintData=RT.Service.Resolve<ReaderManController>().GetReaderManData(ids);

//4.創(chuàng)建實體打印對像如果清楚實體打印對像自己NEW一個出來也行

varprintable=newReaderManLabelPrintable();

//5.調(diào)用打印處理函數(shù)返回打印模板BASE64字符串到前臺,用于傳輸?shù)酱蛴☆A覽頁面

returnreport.PrintProcess(printable,template.Id,template.Content,()=>

{

returnprintData;

});

}

}獲取打印模板,業(yè)務需求不同,實際實現(xiàn)會存在差異獲取要打印的數(shù)據(jù),實際業(yè)務不通,實現(xiàn)會存在差異這里的模板,與獲取打印模板中的模板要一致返回前端的數(shù)據(jù)標簽打印開發(fā)示例開發(fā)步驟GetReaderManPrintTemplate與GetReaderManData方法的實現(xiàn)。

///

<summary>

///獲取讀者管理標簽模板

///

</summary>

///

<returns>返回打印模板</returns>

public

virtualPrintTemplateGetReaderManPrintTemplate()

{

vartemp=RT.Service.Resolve<PrintsController>().GetPrintTemplates(typeof(ReaderManLabelPrintable).GetQualifiedName(),true).FirstOrDefault();

returntemp;

}

///

<summary>

///根據(jù)id獲取讀者管理信息

///

</summary>

///

<param

name="ids">ids</param>

///

<returns>讀者管理集合</returns>

public

virtualEntityList<ReaderMan>GetReaderManData(List<double>ids)

{

varreaderMans=Query<ReaderMan>().Where(p=>ids.Contains(p.Id)).ToList();

returnreaderMans;

}標簽打印開發(fā)示例開發(fā)步驟在讀者管理界面使用標簽打印的命令。標簽打印開發(fā)示例開發(fā)步驟運行項目,在讀者管理功能中會多一個“標簽打印”按鈕。標簽打印開發(fā)示例開發(fā)步驟將模板設置中的模板設置為可用,點擊讀者管理的標簽打印按鈕,效果如下。04單據(jù)和標簽打印注意事項思考題做導入功能時,下載的模板是提前配置好的,點擊導入時,也需要做數(shù)據(jù)的關聯(lián)校驗,該如何實現(xiàn)?單據(jù)和標簽打印注意事項模板設置依賴于dev的控件、報表設計器和打印,做打印的時候需要將相關dll程序集依賴到調(diào)試工程。注意事項單據(jù)和標簽打印注意事項模板設置的模板是保存到對應服務器的,需要配置附件相關信息。注意事項單據(jù)和標簽打印注意事項關聯(lián)的實體對應的數(shù)據(jù)源滿足要求,則不需要重寫GetPropertys和ConverterData方法。如果重寫了GetPropertys和ConverterData方法,則GetPropertys的屬性和ConverterData的數(shù)據(jù)處理是一對一的。打印模板的DisplayName特性是唯一的,可根據(jù)具體功能區(qū)分。模板中的數(shù)據(jù)源是讀取緩存的,如果模板已經(jīng)設置好后,再更改數(shù)據(jù)源和數(shù)據(jù),需要重新構建,或者是刪除再新建模板。報表設計器的屬性如果是顯示為英文,是缺少語言包。注意事項單據(jù)和標簽打印注意事項不管是標簽還是單據(jù)打印,一定要判空處理。在數(shù)據(jù)轉(zhuǎn)換方法ConverterData中,盡量少去查數(shù)據(jù)庫進行操作,否則會影響性能。如何選

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論