freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

nc二次開發(fā)指導手冊(編輯修改稿)

2025-07-03 17:46 本頁面
 

【文章內容簡介】 Platform)通過定義會計科目類別和憑證模板,使用憑證生成器,根據業(yè)務數據生成實時憑證。在保持業(yè)務數據與財務數據相對獨立的基礎上保證數據的一致性和及時性。 n 預警平臺(PreAlert)216。 在預警平臺上可定義多種方式的預警條件以進行形式多樣的預警,如時間條件、庫存大小、生日等。預警還可配置在用戶登錄時觸發(fā)。預警消息可以用HTML網頁的形式發(fā)布,可以通過郵件發(fā)布,還可使用短消息發(fā)送。n 業(yè)務流程和審批流程的編排(Business Process and Approval Flow Orchestration)用來定義業(yè)務流程和審批流中數據的流向,數據間的關系及以人員的關系。 n 訪問控制(Access Control)使用基于用戶角色和對象權限的權限分配方式。每一角色都包含公有權限和屬于某一具體公司的私有權限。角色還提供信任功能。n 應用模式(Application Patterns)UAPNC根據經驗積累與用戶實施,總結出一套與應用界面相關的模式(表單、報表和打印),更好地提供滿足用戶需求的界面展現,更快地滿足用戶個性化的需求。 UAP 部署圖. NC開發(fā)中的一些基本概念單據:比如報銷時的報銷單,一般由表頭和表體組成(有些時候還含有表尾)。表頭中包含了單據的主信息,比如日期、部門、預算項目;表體包含了單據的明細信息,比如具體的事項和金額;單據類型:一個業(yè)務系統(tǒng)為了使結構更清晰,通常也是分層的。比如,供應鏈系統(tǒng)包含了采購、庫存等子系統(tǒng),每個子系統(tǒng)都具有一個系統(tǒng)類型,而每個子系統(tǒng)都會具有很多張單據,為了區(qū)分這些單據,為每張單據命名一個單據類型,作為唯一標識;模板:單據開發(fā)涉及到三大模板(單據模板、查詢模板、打印模板)。單據模板定義了單據的顯示外觀和基本框架,查詢模板定義了單據的查詢對話框,打印模板定義了單據信息打印到打印機的樣式和格式;VO是ValueObject的簡寫,在NC中是一個抽象類,它實現了Cloneable和Serializable接口。是NC業(yè)務數據的載體在系統(tǒng)各層之間傳遞業(yè)務數據。CircularlyAccessibleValueObject是ValueObject的子類,提供了對自身的屬性進行存取操作的方法。SuperVO是CircularlyAccessibleValueObject的子類,是NC系統(tǒng)中最常使用的VO類型,它與一張數據庫表對應,可以方便的利用NC的JDBCFramework進行持久化操作。以上是對一個數據對象的抽象,在NC產品中,絕大部分功能是通過單據的形式提供的,而NC的單據大部分是一對多的關系,我們稱之為一個主表記錄對應多個子表記錄。AggregatedValueObject就是用于存儲一對多關系的主子表數據。對于一主多子的情況,實現IExAggVO接口。聚合VO:單據一般由表頭和表體構成,因此單據的數據表通常設計成主表和子表。聚合VO是對單據數據的抽象,它用于裝載主表VO和一組子表VO.;UI工廠:雖然能通過三大模板定義出單據的顯示,但每張單據都有一些公共的或特殊的行為。UI工廠是一種單據開發(fā)框架,它將常用單據抽象成了很多類型,因此,UI工廠相當于是單據開發(fā)的代碼模板,預置了單據的各種公共行為,比如增、刪、改、查,并且可以連接到NC流程平臺,支持審批、單據驅動等應用。遠程接口:V5遠程組件開發(fā)都是基于接口(替代原先的BO訪問),訪問也都是基于接口。參照:是一種輔助的數據輸入方式,通常彈出界面的形式提供可以參考的數據,比如在錄入省份信息時,提供一個全國省份列表以供選擇。單據開發(fā)中,有很多輸入字段存在類似的需求。NC系統(tǒng)中預置了很多種常見參照(基本覆蓋了所有的基本檔案,比如人員參照,存貨參照),如果要自定義一種參照,則需要簡單的開發(fā)工作。ToftPanel:提供對NC產品功能節(jié)點開發(fā)的支持,統(tǒng)一功能節(jié)點的注冊類型(ToftPanel)。提供了節(jié)點開發(fā)過程中按鈕的注冊機制以及按鈕與界面的互動機制(通過ToftPanel的onButtonClick(bo)方法進行事件響應)。節(jié)點打開時,真正運行的是FramePanel實例,它提供了ButtonBar進行按鈕展示,TitlePanel進行節(jié)點標題的顯示,同時將用戶開發(fā)的ToftPanel子類放置到中心位置進行展現。下圖是ToftPanel區(qū)域介紹:FramePanelButtonBarToftPanelTitlePanel. NC的開發(fā)模型 系統(tǒng)前端為客戶端UI代碼,UI端代碼繼承ToftPanel,UI代碼通過調用遠程組件與服務器端進行交互,中間傳遞的數據模型為VO,遠程組件調用底層的業(yè)務實現代碼,完成整個交互邏輯。通過JDBCFramework,系統(tǒng)提供了一套良好的數據持續(xù)機制,解決數據庫交互的復雜問題。下圖是NCV5的代碼結構圖NC5后將代碼分區(qū)域存放:l Public目錄存放 接口和公共代碼(比如VO和公共算法)l Private目錄存放 實現和其它實現細節(jié)l Client目錄存放 客戶端代碼l gen 目錄存放 工具生成的ejb代碼l METAINF目錄存放模塊配置文件目錄。針對上面的開發(fā)模式,我們規(guī)范一下代碼的包結構:l .模塊: 表示該模塊定義的接口l .模塊:表示該模塊定義的接口實現l 模塊: 表示VO的實現l .模塊: 普通的后臺應用l .模塊.*: 客戶端代碼. 開發(fā)遠程接口 ,因此遠程組件的開發(fā)按照下面兩個步驟開發(fā):1) 定義遠程接口,普通接口就可以了2) 對該接口進行實現3) 把該組件部署為遠程組件下面以HelloWord為例子:l 定義接口package 。public class IHelloWorld { String sayHello(String toName)。}l 實現該接口package 。public class HelloWorldImpl implements IHelloWorld { public String sayHello(String toName) { String retValue = Wele + toName + explore V5。 (retValue)。 return retValue。}l 部署組件編輯或新建該產品模塊下的模塊部署描述文件(),加入一個公共組件:?xml version= encoding=UTF8?module name=sample public ponent remote=”true” interface/interface implementation. HelloWorldImpl/implementation /ponent /public/module 遠程組件只要指出他的remote屬性為true即可。l 客戶端調用接下來客戶端就可以通過下面的方式進行遠程訪問了:IHelloWorld hello = ().lookup()。 ((uap))。系統(tǒng)輸出:Wele uap explore V5你的一個實現可以同時實現多個接口,并且可以在部署的時候選擇性的公布出你需要遠程分布的接口,例如你的一個實現類,實現了多個接口IService1, IService2, IService3,你可以選擇只遠程公布接口IService2, IService3,部署信息如下:?xml version= encoding=UTF8?module name=sample public ponent remote=true supportAlias=true interface/interfaceinterface/interface implementation/implementation /ponent /public/module 注意我們使用了supportAlias屬性,指出我們可以通過兩個接口中的任何接口進行遠程組件的查找。supportAlias為true只有在公共組件中才起作用。l 事務型組件發(fā)布定義遠程接口,就是普通接口,分有事務和無事務,區(qū)別在于部署文件時 放在private下而不是public下,部署成private的接口需要生成ejb代碼,否則無法調用,部署成public的代碼不需要生成ejb代碼。一般來說,增刪改操作發(fā)布成private接口,查詢發(fā)布成public接口。下面是兩種接口的發(fā)布事例:?xml version= encoding=UTF8?module public ponent priority=0 singleton=true remote=true tx=NONE interface/interface implementation/implementation /ponent /public private ponent name=IHelloWorld priority=0 singleton=false implementation/implementation /ponent /private/module配置文件規(guī)范:所有的屬性中不能出現(除系統(tǒng)生成的proxy外)supportAlias=”true|false”priority屬性只對活動組件有用公共組件約定:公共組件的屬性中不能出現:name=””,公共組件可以出現以下屬性:tx=”NONE”,singleton=”true” //根據不同情況進行決定,建議采用trueremote=”true|false”私有組件約定私有組件的節(jié)點中不能出現:interface…/interface不能出現以下屬性:tx=””,remote=”” 可以出現以下屬性:singleton=”true” //根據不同情況進行決定,建議采用truename=名稱以接口名稱為準(不包含包名稱)對于事務型的組件 (是指該組件的方法調用中事務處理會自動參與 )可通過后綴名來判斷事務類型:方法名后綴RequiresNew: 新事物方法名后綴Mandatory: 必須在一個已有的事務環(huán)境中運行改方法方法名后綴Supports: 只是支持事務,不建議使用方法名后綴NotSupported:不支持事務,不建議使用方法名后綴Never:不能有事務,否則出錯沒有方法名后綴: 如果有事務,就在該事務環(huán)境下工作,否則新啟事務,這是大部分事務型組件的情況事務型組件一般都是針對數據庫等事務性資源進行操作,如果沒有對事務性資源進行操作,請不要把組件定義為事務性組件。對于發(fā)布成private的組件,在代理組件生成頁簽,選擇需要發(fā)布的接口,輸入ejb名字,點擊生成就可將代碼生成到gen目錄下。只有這樣,才可以調用private的接口。安裝nc產品后通過sysconfig部署代碼操作也是這個過程。l 客戶端代碼客戶端調試代碼可以通過junit和注冊Toftpanel來實現。通過junit運行調試接口比較方便,不需要進行客戶端登陸。新做一個類繼承AbstractTestCase,實現一個以test開頭的方法,在方法里面寫調用遠程組件的方法。然后以JUnit來運行。 Toftpanel方式是寫一個ToftPanel的子類,將此類注冊成nc節(jié)點,然后通過eclipse啟動jstarter來進入nc,點擊相應節(jié)點執(zhí)行相應方法。通過擴展ToftPanel,實現getTitle()方法,在postInit()方法中初始化界面,調用setButtons(ButtonObject[])方法設置菜單,實現onButtonClicked(ButtonObject)方法響應菜單事件。 3. 數據建模內容概述通過PowerDesigner進行數據庫模型,建表,建數據字典,生成VO。為以后的單據,報表開發(fā)提供數據模型。詳細介紹. PowerDesigner建模 安裝數據庫設計工具:Sybase PowerDesigner Version (以下簡稱PD)為了給數據表自動生成時間戳(ts)、刪除標志(dr)字段,需給PD打上插件補?。ǎ?Resource Files\DBMS 下即可)。如果沒有補丁,在建表的腳本處需要手工增加下面兩個字段。Ts字段是時間戳,供系統(tǒng)判斷修改時使用,dr字段是刪除標記,NC系統(tǒng)單據表刪除時并不是物理刪除,而是更新dr字段為1。ts char(19) null default convert(char(19),getdate(),20),dr smallint null default 0,PD是一種高端的數據建模工具,使用它可以很方便的建立數據庫、導出SQL腳本,其物理模型文件的后綴名為pdm,所以,NC輔助開發(fā)工具多處依賴PD來完成數據庫相關操作。l 數據模型我們的員工信息管理系統(tǒng)包括員工的基本信息,員工的類別信息,員工工資,為了增強系統(tǒng)的可擴展性,從員工基本信息中獨立出員工的家庭住址信息,街道信息。下圖顯示了實體間的關系。l 生成pdm步驟第一步、啟動PD,會出現如下界面,選擇新建一個物理模型。
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1