




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 EAS BOS 開發平臺培訓體系1 EAS BOS 框架結構簡介1.1 學習內容1.1.1 概述什么是金蝶EAS BOSBOS,Business Operation System,業務操作系統,是金蝶融合多年的企業應用軟件的經驗以及MDA理念研發新一代技術平臺,是金蝶公司全新的管理軟件開發工具和管理集成平臺。金蝶BOS提供了基于模型驅動架構(MDA)的開發模式和相關的工具,成功的解決了企業應用軟件在開發、實施和維護過程中的質量、周期、成本、風險等方面的問題,并使企業應用軟件能夠滿足企業管理行業特性、企業個性化和持續完善的要求,對于企業應用軟件在行業應用開發和維護、實施帶來了全新的應用模式和革
2、命。金蝶EAS BOS提供的集成管理平臺,使企業應用可以集企業門戶(Portal)、辦公自動化(OA)、企業資源管理(ERP)、工作流(Workflow)以及業務重組(BPR)于一體,對于企業的團隊協作、業務支持、管理控制、決策分析、商務智能以及企業信息實時化提供全面的支持。金蝶EAS BOS,集中體現了金蝶公司對中國特色化企業管理和國際先進管理思想領域的孜孜不倦的探索和追求,融合了金蝶公司在企業應用軟件領域十多年的行業經驗和軟件開發經驗,對產品不斷的發展與完善,為企業用戶帶來高效、靈活、柔性以及功能強大的企業管理系統,幫助企業用戶在激烈的市場競爭中贏得先機并獲得前所未有的高回報。金蝶EAS
3、BOS應用框架金蝶EAS BOS技術特性全面的模型驅動架構金蝶EAS BOS在面向業務分析的基礎上提煉出一個業務元數據描述的抽象層(對象構造模型)。這個抽象層是整個系統運行的基礎,包括了業務對象結構、數據結構、交互界面、系統部署、系統接口等全方位的信息。并且通過內置的集成開發環境,可以不斷地將獲取及更新的業務知識補充到這個模型中,支持業務能力的持續改進。通過靈活的架構及專業的工具,業務專業人員可以專心于業務的分析及業務的邏輯處理,然后通過集成開發環境將其專業能力分析的內容輕松地加入到系統中,迅速提升系統的業務處理能力,大大降低了實施成本。 示例:基于模型技術實現的IDE開發平臺功能平臺級的技術
4、控制能力Apusic應用服務器 Apusic應用服務器是嚴格遵循J2EE等工業技術標準的企業應用平臺,是國內第一個商業J2EE應用服務器產品。通過對應用服務器平臺技術的自主控制,金蝶EAS BOS能夠充分挖掘平臺技術潛力,提供給用戶高效、高可靠的產品。多技術平臺支持 在基于Internet的企業級應用軟件的技術領域中,國際上主流的技術平臺存在著Microsoft.NET和J2EE兩大技術架構。這兩種技術架構代表著平臺架構技術的最新發展,兩者互有優勢,目前已經部署或將要部署的企業信息平臺絕大多數都從兩者中選擇其一。金蝶本著幫助顧客成功的產品研發理念,憑借多年積累的技術實力,通過金蝶BOS平臺無關
5、性的設計,實現了對.NET和J2EE這兩種技術架構的支持。使得顧客在平臺選擇上有了完全的自主能力,用戶可以根據企業自身信息化發展的狀況來決定如何部署技術平臺,充分保障了既有投資及未來的發展。而且,基于金蝶EAS BOS的技術平臺,為客戶提供了一種途徑,使得企業原有分屬于不同技術架構體系的應用系統可以實現整合。通過對Web Service的廣泛支持,異種技術平臺間可以自由通信,相互集成。 多種數據庫支持 翻譯引擎支持多種大型數據庫,業務系統可自由選擇任意數據庫產品作為數據承載平臺,基于BOS開發的業務系統如果需要運行于新的數據庫平臺上,只需要在BOS上擴展新的數據庫翻譯引擎子集即可,原有業務系統
6、無需重新開發。金蝶EAS BOS的數據庫翻譯引擎提供了兩個子功能層,分別實現多種SQL版本的語義翻譯和異種數據庫訪問連接。SQL語義翻譯引擎 雖然所有大型數據庫都支持大部分的標準SQL語法,但是每個廠商提供的數據庫產品都有各自特性的SQL語法子集,這些特性子集的存在造成了業務系統不能夠直接在多個數據庫產品之間遷移的障礙。金蝶EAS BOS提供的SQL語義翻譯引擎,可以使不同的數據庫產品都能夠正確理解和處理來自業務系統發出的操作請求。異種數據庫訪問引擎每一種數據庫都有各自的訪問處理方式從數據庫支持的網絡協議庫到數據庫訪問的授權到數據庫連接的建立都各自不盡相同。金蝶EAS BOS提供的異種數據庫訪
7、問引擎,可以使業務系統透明的訪問任何一種數據庫,而無需了解數據庫的產品廠商差異以及所運行的平臺差異。EAS BOS 開發B/S結構EAB BOS 開發B/S程序時,產生的后臺代碼EJB,前臺代碼是JSF和EXT;后臺的EJB代碼發布在Apusic這個應用服務器上,前臺JSF和EXT代碼也是運行在apusic應用服務器上。JSF操作數據時,就需要訪問EJB的方法來對數據進行增、刪、改和查。EAS BOS開發C/S結構EAB BOS 開發C/S程序時,產生的后臺代碼EJB,前臺代碼是swing;后臺的EJB代碼發布在Apusic這個應用服務器上,前臺swing代碼也是運行在客戶機上。swing操作
8、數據時,就需要訪問EJB的方法來對數據進行增、刪、改和查。EAS BOS訪問流程1.1.2 參考資料資料BOS框架BOS開發指南_應用框架.doc資料BOS框架EASBOS框架入門.pptx資料BOS框架應用框架編程指南.doc1.2 學習目標2 EAS BOS 開發環境學習2.1 學習內容2.1.1 概述BOSModular是什么BOS Modular是一個在eclipse上的一個插件,在bos Modular中,可以直接托拉控件生成界面。BOS Modular的目錄結構如下:BOSModular 點“BOSModular_zh_CN.bat”這個批處理就可以啟動開發工具了。BOSModul
9、ar怎么打開各個窗口視圖1:在菜單中選擇“窗口”菜單,然后選擇“顯示視圖”子菜單,如下圖:2:再選擇“其它”菜單,彈出如下窗口,我們可以在窗口中選擇隨意窗口: BOS BIM視圖1:如上圖點“金蝶BOS業務建?!保贐OSModular中就會顯示業務建模視圖如下:在業務建模視圖中,我們主要是建業務單據,發布業務單據。BOS設計視圖1:如上圖點“金蝶BOS設計模式”,在BOSModular中就會顯示業務建模視圖如下:在設計視圖下,主要是設計界面,給界面控件邦定數據,修改各種元數據大綱窗口視圖數據邦定窗口視圖 屬性窗口視圖BOS JAVA視圖1:如上圖點“java視圖”,在BOSModular中就
10、會顯示java視圖如下:在JAVA視圖中,我們修改JAVA代碼,新增邏輯。 行業版開發環境搭建1.導入解決方案。2.選擇方案-轉換為行業解決方案(業務建模視圖中)3.刪除工程中 basemetas 文件夾中(除 bos eas bim_templates.zip)的文件和文件夾4.開發完成后 選擇 基線化行業解決方案(設計開發工具中)5在工程目錄下 將 exporttemp 文件夾中的 內容復制到 deployed_metas 文件夾中2.1.2 參考資料資料環境4.安裝bosmodular安裝bosmodular.swf資料環境5.導入license及解決方案導入license
11、及解決方案.swf2.2 學習目標3 EAS BOS開發一個完整的業務單據3.1 學習內容3.1.1 概述開發流程(業務建模方式):1. 倒入解決方案。2. 新建業務單元。3. 菜單管理。4. 發布業務單據。5. 編寫java代碼。開發流程(設計工具方式):1. 倒入解決方案,或者自己新建項目。2. 新建元數據。3. 發布元數據。4. 編寫java代碼。客戶端-à服務端客戶端:1.獲取界面數據。(EditUI可以通過框架自動將界面控件中的值綁定到editData中);也可以通過控件直接獲取值。2.獲取遠程調用接口。XXXFactory.getRemoteInstance()。Icur
12、rency icurrency = Icurrency Factory.getRemoteInstance(); /獲取幣別的遠程調用接口3.通過接口調用后臺組件(方法)。icurrency.save(editData); /調用服務端保存方法服務端:4.獲取客戶端的數據,實現業務邏輯。5.根據需要,通過對象或者直接寫KSQL操作數據庫。界面控制一般在界面的onLoad 方法 或者onShow 方法中控制界面一些屬性。例如:隱藏一個控件。public void onShow()txtName. setVisible(false); /設置txtName控件不可見3.1.2 參考資料資料開發流程
13、BOS V6.2開發指南_Studio.pdf資料開發流程EAS開發流程.doc資料開發流程視頻6.BIM幣別Currency.swf3.2 目標4 BOS元數據及代碼結構4.1 學習內容4.1.1 概述一:關系(一)實體和實體關系1 實體(Entity)與實體之間存在聯系時,需要建立關系(Relation)。2 實體可以導出數據表(Table)。3 新建查詢(Query)必須選擇實體。4 ListUI(UI)界面需要綁定查詢,其顯示的數據要是通過查詢獲得。5 EditeUI(UI)界面需要綁定實體,界面中的空間和實體的屬性綁定進行值傳遞。(二)實體和代碼關系實體和UI 發布會生成對應的Jav
14、a代碼1. 實體ZTTest(Entity)發布生成的類2. 用戶界面(UI)發布生成的類二:在什么地方加代碼來實現一些功能1.所有的抽象類我們不能修改。2.在開發中我們需要修改的java類主要包括*ControllerBean,*EidteUI,*ListUI 結尾的非抽象類。3*ControllerBean 主要是編寫服務端的代碼邏輯(新增,修改,刪除等功能)。例如:在該類中我們可以重寫_save()方法。這個方法主要是實現保存,我們就可以在該方法中添加自己代碼邏輯。4.*EditeUI 類是客戶端編輯界面對應的類。5.*ListUI 類是客戶端敘事簿界面對應的類。4.1.2 參考資料資料
15、BOS V6.2開發指南_元數據介紹.pdf資料通用Query查詢開發指南.doc資料BOS Studio開發指南(元數據).ppt4.2 目標5 EAS BOS 常用功能5.1 學習內容5.1.1 常用功能總結 客戶端環境工具類工具類:com.kingdee.eas mon.client.SysContext 作用:靜態存儲用戶當前登錄信息,登錄的當前組織信息(ContextUtil在服務端使用)SysContext.getSysContext().getCurrentFIUnit() /獲得財務組織SysContext.getSysContext().getCurrentUs
16、erInfo() /取得用戶信息 獲取菜單參數作用:該方法返回的是一個Map,里面存放菜單的一些參數。例如菜單名稱,路徑等。getUIContext().get("UIClassParam") 獲取當前組織的常用方法。1. CompanyOrgUnitInfo company = ContextUtil.getCurrentFIUnit(ctx); /服務端2. CompanyOrgUnitInfo company = ContextHelperFactory.getLocalInstance(ctx).getCurrentCompany();
17、/服務端3. CompanyOrgUnitInfo company = ContextHelperFactory.getRemoteInstance().getCurrentCompany();/客戶端 接口方法的訪問方式1 客戶端訪問ICurrency c = CurrencyFactory.getRemoteInstance();/建立實體對象c. getCurrencyCollection();/方法調用2 服務端訪問ICurrency c = CurrencyFactory. getLocalInstance (ctx);/建立實體對象c. getCurrencyColl
18、ection();/方法調用 數據庫工具用法總結1DbUtil用法。com.kingdee.eas.util.app.DbUtil(1)查詢操作StringBuffer sql = new StringBuffer(); sql.append("select fid from t_cas_ztdemo");/返回結果集,結果集的取值和JAVA ResultSet 相同 IRowSet rowSet = DbUtil.executeQuery(ctx, sql.toString();(2) 增加、刪除、修改操作調用 DbUtil. Execute().2. IF
19、MIsqlFacade用法。com.kingdee.eas.fm mon.IFMIsqlFacade;IFMIsqlFacade fMIsqlFacade = FMIsqlFacadeFactory.getRemoteInstance();客戶端IFMIsqlFacade fMIsqlFacade = FMIsqlFacadeFactory.getLocalInstance(ctx);服務端StringBuffer sql = new StringBuffer();sb.append(" select a.fid from T_BD_Acct_Contorl a");sb.
20、append(" inner join t_org_company c on a.FDestCompanyID = c.fid");sb.append(" where a.FAccountTableID = ? and a.FIsDefaultForRefer = 0");/其中 new Object 傳遞的參數,可以是多個用逗號分開IRowSet rs = fMIsqlFacade.executeQuery(sb.toString(), new Object accountTableId); 期間工具工具類:com.kingdee.eas
21、.basedata.assistant.PeriodUtils作用:該工具類中包含很多關于期間處理的方法,涉及到關于期間的問題可以在該類中查找相應的方法。提供靜態方法可獲取期間,進行期間運算、比較等功能例:/根據日期、組織獲得期間對象。/date 為日期,companyInfo 為組織PeriodInfo periodInfo = PeriodUtils.getPeriodInfo(date, companyInfo);/ 根據期間ID獲得期間對象 periodId為期間IDPeriodInfo periodInfo = PeriodFactory.getLocalInstance(ctx).
22、getPeriodInfo(new ObjectUuidPK(BOSUuid.read(periodId);/根據期間ID 獲得對應期間的下一期間 periodId為期間IDPeriodInfo periodInfo = PeriodUtils.getNextPeriodInfo(ctx, new ObjectUuidPK(BOSUuid.read(periodId);/判斷該期間是否為調整期periodInfo.isIsAdjustPeriod() /獲取期間對應的開始日期、結束日期。Date endDate = periodInfo.getEndDate();Date beginDate
23、= periodInfo.getBeginDate();/日期轉換public static Timestamp getTime() Timestamp createtime;Date date = new Date();long time = date.getTime();Calendar d = Calendar.getInstance();d.setTime(new Timestamp(time);d.set(Calendar.MILLISECOND, 0);createtime = new Timestamp(d.getTime().getTime();return createtim
24、e;t_pm_mainmenuitem 菜單表 日期幫助工具工具類:com.kingdee.eas.fm mon.DateHelper作用: 日期幫助類,主要提供與日期相關的方法,例如計算指定日期的前一天、日期所在月的第一天等例:DateHelper.getFirstDayOfCurMonth() /獲取當前月的第一天DateHelper.getEndDayOfCurMonth() /獲取當前月的最后一天 對象查詢IAccount_Control acctCtrl = Account_ControlFactory.getLocalInstance(ctx);Enti
25、tyViewInfo evi=new EntityViewInfo();FilterInfo filter=new FilterInfo();evi.setFilter(filter);/添加所需要查詢的對象evi.getSelector().add("accountTableID");evi.getSelector().add("availDataFrom");evi.getSelector().add("availDataTo");evi.getSelector().add("accountPeriodType"
26、;);/設置過濾條件 / FilterItemInfo參數含義 FilterItemInfo(arg1,arg2,arg3);/ arg1: 過濾對象名/ arg2: 值(和過濾對象做比較)/ arg3: 對象與值的比較方式.值為空時,默認為等于 CompareType 獲取比較方式filter.getFilterItems().add(new FilterItemInfo("accountTableID", "QkvFqwEXEADgAD1sChkaBhdpjm0=");filter.getFilterItems().add(new FilterIte
27、mInfo("isDefaultForRefer", new Integer(0);/根據 EntityViewInfo 對象為條件 獲取查詢結果,返回的值是一個集合Account_ControlCollection acctCtrlCols = acctCtrl.getAccount_ControlCollection(evi); 根據主鍵(id)查詢1查詢主鍵對應的所有數據。IAccount_Control acctCtrl = Account_ControlFactory.getLocalInstance(ctx);String id = "1
28、23" / 要查詢對象的idAccount_ControlInfo acctCtrInfo = acctCtrl.getAccount_ControlInfo(new ObjectUuidPK(id);2. 查詢主鍵對應的指定的數據。IAccount_Control acctCtrl = Account_ControlFactory.getLocalInstance(ctx);String id = "123" / 要查詢對象的id/ 添加所需要查詢的對象SelectorItemCollection selector = new SelectorItemColle
29、ction();selector.add("accountTableID");selector.add("accountPeriodType");Account_ControlInfo acctCtrInfo = acctCtrl.getAccount_ControlInfo(new ObjectUuidPK(id), selector);0 消息提示框工具類:com.kingdee.eas.util.client.MsgBox該工具類擁有多個方法,根據不同的需要調用方法,只能在客戶端使用。例子:1. MsgBox.showInfo(&qu
30、ot;YES");2. MsgBox.showConfirm2("YES");3. MsgBox.showConfirm3("YES");4. MsgBox.showConnectionError("YES");5. MsgBox.showConfirm3a("YES", "error");1 資源文件引用工具類:com.kingdee.eas.util.client.EASResource com.kingdee.eas.util.ResourceBase常用方法:EA
31、SResource. getString(String resClassName, String resName)resClassName:資源文件resName:資源文件中的屬性名例:MsgBox.showInfo(this, EASResource.getString("com.kingdee.eas.fi.cas.CasResources","CheckAccount");ResourceBase.getString("com.kingdee.eas.fi.gl.GLAutoGenerateResource","974
32、_GLAccountRefContrastProcess", ctx.getLocale();2 BigDecimal類型的使用方式工具類:java.math.BigDecimal作用:金額、單價的值需要付值為BigDecimal類型BigDecimal amounts1 = new BigDecimal(String.valueOf(3.00);BigDecimal amounts2 = new BigDecimal(String.valueOf(2.00);/相加amounts1.add(amounts2);/相減amounts1.subtract(amounts2
33、);3 F7控件付值public void initF7Acct( IUIObject owner, KDBizPromptBox f7, CompanyOrgUnitInfo company) if(company.getAccountTable()=null) return; /為F7控件設置Query f7.setQueryInfo("com.kingdee.eas.basedata.master.account.app.F7AccountViewQuery"); EntityViewInfo evi = new EntityViewInfo(); Fi
34、lterInfo filterInfo = new FilterInfo();/設置過濾條件 evi.setFilter(filterInfo); filterInfo.getFilterItems().add(new FilterItemInfo("isLeaf", "1"); filterInfo.getFilterItems().add(new FilterItemInfo("companyID.id", company.getId().toString(); filterInfo.getFilterItems().add(ne
35、w FilterItemInfo("accountTableID.id", company.getAccountTable().getId().toString(); f7.setEntityViewInfo(evi); f7.setDisplayFormat("$number$-$name$"); f7.setEditFormat("$number$"); f7.setCommitFormat("$number$"); f7.setEditable(true);/ f7Acct.setSelector(new A
36、ccountPromptBox(owner, company, filter, false, true);/此句不增加,將在第一次查詢設置的條件不生效f7.getQueryAgent().resetRuntimeEntityView();4 通用過濾ListUI界面中的幾個方法。/可以設置通用過濾所包含的界面protected CommonQueryDialog getQueryDlg() throws Exception CommonQueryDialog dialog = super.getQueryDlg();dialog.setShowFilter(false); /是否
37、顯示自定義頁簽dialog.setShowSorter(true); /是否顯示排序頁簽return dialog;/獲取用戶自定義界面(條件頁簽)public FMFilterBaseUI getFilterUI() throws Exception if (filterUI = null) filterUI = new FundsMoveBillFilterUI();return filterUI;/添加自定義界面public CommonQueryDialog initCommonQueryDialog()CommonQueryDialog conditionDialog = super
38、.initCommonQueryDialog();/設置固定查詢界面try CustomerQueryPanel userPanel = getFilterUI();if(userPanel != null)conditionDialog.addUserPanel(userPanel); catch (Exception e) super.handUIException(e);return(conditionDialog);/處理自定義查詢頁簽界面protected CommonQueryProcessor getQueryProcessor() /FundsMoveBillProcess 要
39、繼承 com.kingdee.eas.base monquery.client monQueryProcessorreturn new FundsMoveBillProcess(this);在CommonQueryProcessor(查詢界面自定義查詢頁簽中屬性的處理類)及其子類中,獲取CommonQueryPanel,以及用戶自定義界面(*FilterUI.java)。方 法:CommonQueryPanel commonQueryPanel = (CommonQueryPanel)get("COMMON_QUERY_PANEL"); commonQueryPanel.g
40、etCustomerQueryPanel().get(i);/獲取用戶自定義界面(條件頁簽)。 Object editor = get(CURRENT_EDITOR); /獲取自定義頁簽比較值對應的控件。 String field = (String) get(CURRENT_FIELD_PROP); /獲取自定義頁簽過濾條件屬性名5 SysUtil.abort方法工具類:com.kingdee.eas.util.SysUtil;作 用:停止當前UI的所有操作,或終止服務端方法SysUtil. abort()6 常用F7 Query1科目F7com.kingdee.
41、eas.basedata.master.account.app.F7AccountViewQuery2科目表com.kingdee.eas.basedata.master.account.app.AccountTableQuery3客戶F7com.kingdee.eas.basedata.master.cssp.app.F7CustomerQuery4供應商F7com.kingdee.eas.basedata.master.cssp.app.F7SupplierQuery5客商統一碼F7com.kingdee.eas.basedata.master.cssp.app.F7BizAnalysis
42、CodeQuery6物料F7com.kingdee.eas.basedata.master.material.app.F7MaterialQuery7輔助核算F7com.kingdee.eas.basedata.master.auxacct.app.F7AsstAccountQuery8幣別F7com.kingdee.eas.basedata.assistant.app.F7CurrencyQuery9輔助核算類型F7com.kingdee.eas.basedata.master.auxacct.app.F7AsstActTypeQuery10匯率F7com.kingdee.eas.based
43、ata.assistant.app.F7ExchangeRateQuery11銀行賬戶F7com.kingdee.eas.basedata.assistant.app.F7AccountBankQuery12銀行F7com.kingdee.eas.basedata.assistant.app.F7BankQuery13用戶F7com.kingdee.eas.base.permission.app.F7UserQuery14銀行F7com.kingdee.eas.basedata.assistant.app.F7BankQuery If not exists (select * from KSQ
44、L_USERCOLUMNS where KSQL_COL_NAME ='FTransportTypeID' and KSQL_COL_TABNAME='T_ST_BalanceBaseType')alter table T_ST_BalanceBaseType add FTransportTypeID VARCHAR(44);7 獲取狀態1主要是獲取該EditUI的狀態 public static final String STATUS_ADDNEW = "ADDNEW" 新增 public static final Strin
45、g STATUS_EDIT = "EDIT" 修改 public static final String STATUS_VIEW = "VIEW" 查看public String getOprtState() return this.oprtState; / 獲取狀態 public void setOprtState(String oprtType) this.oprtState = oprtType; this.uiParam.put("oprtState", oprtType); 8 手動調用BOTPIBTPMana
46、ger iBTPManager = BTPManagerFactory.getLocalInstance(ctx);IBOTMapping botMapping = BOTMappingFactory.getLocalInstance(ctx);/ 查詢是否存在此botp規則 EntityViewInfo ev = new EntityViewInfo();FilterInfo filter = new FilterInfo();ev.setFilter(filter);filter.getFilterItems().add(new FilterItemInfo("name"
47、;,"ST_Weigh-Sample(Pur)");BOTMappingCollection /獲取對應的botp規則botMappingCollection=botMapping.getBOTMappingCollection(ev);String idList = new StringweighCollection.size();if(weighCollection=null|weighCollection.size()=0)return null;/構建idList參數 原對象的IDfor(int i=0;i<weighCollection.size();i+)
48、idListi = weighCollection.get(i).getId().toString();/目標對象SampleBillInfo destBillInfo=new SampleBillInfo();List list=new ArrayList();SelectorItemCollection selectors=null;/生成單據 BTPTransformResult btpResult=iBTPManager.transformForBotp(idList,new String1 ,list, selectors, destBillInfo.getBOSType().toS
49、tring(), new ObjectUuidPK(botMappingCollection.get(0).getId().toString(),weighCollection.get(0).getBOSType().toString(); SampleBillCollection destBillColls = (SampleBillCollection)btpResult.getBills();BOTRelationCollection botRelationCols = btpResult.getBOTRelationCollection(); destBillInfo = (Sampl
50、eBillInfo)destBillColls.getObject(0);9 敘事簿枚舉自動轉換與排序解決方案主要用途:一般情況下敘事簿上的枚舉是自動轉換的,排序也可以在Qurey元數據中配置。這個主要是用在出現特殊情況下處理枚舉自動轉換和排序。protected IQueryExecutor getQueryExecutor(IMetaDataPK queryPK, EntityViewInfo viewInfo) IQueryExecutor exec=super.getQueryExecutor(queryPK,viewInfo); /設置排序 if ("comkingdeeeasstbatchbizappsampleBatchQuery".equalsIgnoreCase(queryPK.toString() if (viewInfo.getSorter() = null| viewInfo.getSorter().size() <= 0) SorterItemInfo aSorterItemInfo = new SorterItem
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 拍賣行拍賣業務全球競爭力提升路徑規劃考核試卷
- 液壓閥的智能控制技術考核試卷
- 2025中介合同相關司法解釋內容
- 2025殘疾人勞動合同范本:殘疾人勞動合同樣式
- T-JLJY 01 -2023 幼兒園教育裝備配置規范
- 磚廠承包經營合同書范文二零二五年
- 最簡單廠房租賃合同二零二五年
- 車庫房屋租賃合同書范例
- 二零二五版貸款買車擔保合同書貓膩多多
- 二零二五版知識產權合同書大全
- GB 19762-2025離心泵能效限定值及能效等級
- DZ∕T 0207-2020 礦產地質勘查規范 硅質原料類(正式版)
- 交互設計全流程解析(17章)課件
- DB34T1589-2020 《民用建筑外門窗工程技術標準》
- 磨煤機檢修步驟工藝方法及質量標準
- 遼寧省高中畢業生登記表含成績表學年評語表體檢表家庭情況調查表完整版高中檔案文件
- 壁飾設計(課堂PPT)
- 鋼管扣件進場驗收記錄
- 安徽合肥住宅工程質量通病防治導則
- 《抑郁癥健康教育》PPT課件.ppt
- 試題的難度、區分度、信度和效度【最新】
評論
0/150
提交評論