課件和示例學(xué)員手冊(cè)-擴(kuò)展開(kāi)發(fā)_第1頁(yè)
課件和示例學(xué)員手冊(cè)-擴(kuò)展開(kāi)發(fā)_第2頁(yè)
課件和示例學(xué)員手冊(cè)-擴(kuò)展開(kāi)發(fā)_第3頁(yè)
課件和示例學(xué)員手冊(cè)-擴(kuò)展開(kāi)發(fā)_第4頁(yè)
課件和示例學(xué)員手冊(cè)-擴(kuò)展開(kāi)發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、培訓(xùn)手冊(cè)-客戶化開(kāi)發(fā)擴(kuò)展開(kāi)發(fā)2016:網(wǎng)絡(luò)2016。保留所利。沒(méi)有本文檔的的明確另行通知。的特別,任何人不得以或?yàn)槿魏文康幕?。此外,本文檔及其內(nèi)容您自己使用,沒(méi)有,不得出租、轉(zhuǎn)讓或出售本文檔及其內(nèi)容。本文檔包含的信息更改,恕不目 錄1.環(huán)境準(zhǔn)備31.1.數(shù)據(jù)庫(kù)檢查31.2.開(kāi)發(fā)者設(shè)置32. 擴(kuò)展開(kāi)發(fā)52.1.實(shí)體擴(kuò)展52.1.1.增量擴(kuò)展實(shí)體文件52.1.2.擴(kuò)展實(shí)體字段72.1.3.擴(kuò)展子實(shí)體92.1.4.設(shè)計(jì)包含擴(kuò)展實(shí)體的單據(jù)模板122.1.5.功能節(jié)點(diǎn)默認(rèn)模板設(shè)置152.2.前臺(tái)擴(kuò)展172.2.1.按鈕擴(kuò)展182.2.2.UI 事件擴(kuò)展252.3.擴(kuò)展332.3.1.編寫與業(yè)務(wù)邏輯擴(kuò)展3

2、32.3.2.效果展示353. 附錄353.1.全部 UI 事件說(shuō)明353.2.業(yè)務(wù)擴(kuò)展示例363.3.注意事項(xiàng)371. 環(huán)境準(zhǔn)備1.1.數(shù)據(jù)庫(kù)檢查步驟如下:1.通過(guò)窗口-首選項(xiàng)打開(kāi)首選項(xiàng)框,檢查數(shù)據(jù)然后確定2.清除緩存3.先啟動(dòng)中間件,再啟動(dòng)客戶端1.2.開(kāi)發(fā)者設(shè)置步驟如下:1.系統(tǒng)管理員 admin 登錄系統(tǒng)2.給用戶dev 設(shè)置伙伴級(jí)開(kāi)發(fā)者,通過(guò)企業(yè)建模-權(quán)限管理-用戶管理-打用戶開(kāi)用戶,然后點(diǎn)擊刷新,修改 dev 用戶,如下圖把設(shè)置為伙伴級(jí)的擴(kuò)展開(kāi)發(fā)者即可,然后保存3.在 uap-studiao 在打開(kāi)首選項(xiàng),來(lái)這只開(kāi)發(fā)者為伙伴級(jí)擴(kuò)展開(kāi)發(fā)者,如下圖所示4.重啟中間件和客戶端2. 擴(kuò)展開(kāi)

3、發(fā)擴(kuò)展開(kāi)發(fā)分別從實(shí)體擴(kuò)展,前臺(tái)擴(kuò)展以及擴(kuò)展三個(gè)方面進(jìn)行開(kāi)發(fā)。2.1.實(shí)體擴(kuò)展實(shí)體擴(kuò)展既可以在原有實(shí)體上擴(kuò)展字段,也可以擴(kuò)展子實(shí)體。例如本文檔對(duì)虛擬機(jī)上train_65 項(xiàng)目的實(shí)體銷售報(bào)價(jià)單進(jìn)行擴(kuò)展需求描述:客戶為了更好的報(bào)價(jià)單可能產(chǎn)生的費(fèi)用,對(duì)報(bào)價(jià)單界面字段的要求。A).需要在在報(bào)價(jià)單單據(jù)的表頭增加標(biāo)識(shí)【是否含費(fèi)用信息】、【費(fèi)用金額】等字段,B).表體增加一個(gè)新頁(yè)簽【費(fèi)用信息】。2.1.1. 增量擴(kuò)展實(shí)體文件步驟如下:1.打開(kāi) uap mdp,如下圖紅框所示2.在左側(cè)的 mdpexplorer中extcase.extendtrain,在彈出的菜單中,點(diǎn)擊【增量開(kāi)發(fā)實(shí)體組件】3.彈出增量開(kāi)發(fā)實(shí)體

4、組件框中,選擇文件,如下圖示所示4.在文件框中選擇,train 模塊下的 quo.bmf,如下圖所示5.點(diǎn)擊增量實(shí)體開(kāi)發(fā)組件的確定后,創(chuàng)建的quo_301.bmf 文件如下下圖所示,其中301 是伙伴級(jí)開(kāi)發(fā)的編碼代號(hào)2.1.2. 擴(kuò)展實(shí)體字段在增加擴(kuò)展實(shí)體文件后,才能擴(kuò)展主實(shí)體報(bào)價(jià)單表頭上擴(kuò)展字段。擴(kuò)展字段列表如下:名稱顯示名稱類型步驟如下:1.在主實(shí)體報(bào)價(jià)單表頭上添加上面列表的擴(kuò)展字段,新增字段如下圖所示,注意:字段編碼后綴應(yīng)該有_301,其實(shí)在新增字段時(shí)候,默認(rèn)是_301 需要把這些字段名拷貝過(guò)去即可。2.除消費(fèi)信息源屬性字段外,其他字段策略都設(shè)置為nc.md.m.acBeanAcsor,

5、如下圖所示:bcludefee是否含費(fèi)用信息UFntotalfeemny費(fèi)用總金額UFMoneynfeenote費(fèi)用說(shuō)明備注3.除消費(fèi)信息源屬性字段外,其他字段都勾選動(dòng)態(tài)屬性,擴(kuò)展表填寫ext_head_301,如下圖所示2.1.3. 擴(kuò)展子實(shí)體新增一個(gè)子實(shí)體,其字段信息列表如下:名稱顯示名稱類型參照名稱pk_ext_b子表主鍵UFID步驟如下:1.從組件工具箱拖過(guò)來(lái)一個(gè)實(shí)體,修改實(shí)體信息如下圖所示,(器類型:NCVO,類名稱: nc.vo.extend.entity.ExtBVO_301 , 名 稱 : ExtBVO_301 , 缺省表名: ext_body_301,顯示名稱:費(fèi)用信息2.根

6、據(jù)列表添加字段,如下圖所示,注意子實(shí)體費(fèi)用信息的主屬性是:子表主鍵字段,報(bào)銷人參照用戶實(shí)體,注意:擴(kuò)展子實(shí)體僅需要在缺省表名后家后綴_301,其字vexpensepsn報(bào)銷人參照用戶用戶所有dfeedate費(fèi)用日期UFDatedexpensedate報(bào)銷日期UFDatendetailfeemny費(fèi)用金額UFMoneyvfeeaddress地址Stringvnote備注備注vbdef1自定義項(xiàng) 1自定義項(xiàng)vbdef2自定義項(xiàng) 2自定義項(xiàng)段無(wú)需加此后綴3.添加擴(kuò)展實(shí)體費(fèi)用信息和主實(shí)體報(bào)價(jià)單表頭的組合關(guān)系,從右側(cè)的關(guān)聯(lián)關(guān)系工具箱拖組合,然后從主實(shí)體標(biāo)價(jià)單表頭向子實(shí)體費(fèi)用信息拖來(lái)即可,如下圖所示:4.

7、設(shè)置主實(shí)體報(bào)價(jià)單表頭和費(fèi)用信息的組合關(guān)系,組合關(guān)系的源屬性是主實(shí)體的字段費(fèi)用信息源屬性5.選中主實(shí)體點(diǎn)擊右鍵發(fā)布元數(shù)據(jù)6.左鍵選中擴(kuò)展的子實(shí)體,點(diǎn)擊右鍵選擇生成java 源代碼7.主實(shí)體生成 sql,找到生成的 sql,打開(kāi)找到創(chuàng)建擴(kuò)展表的語(yǔ)句8.重啟客戶端,清除緩存,否則生成單據(jù)模版時(shí)看不到新加的子實(shí)體2.1.4. 設(shè)計(jì)包含擴(kuò)展實(shí)體的單據(jù)模板經(jīng)過(guò)前面的實(shí)體擴(kuò)展之后,那么需要重新設(shè)計(jì)一張新的單據(jù)模板,來(lái)顯示擴(kuò)展的字段。步驟如下:1.Admin 用戶登錄系統(tǒng),通過(guò)動(dòng)態(tài)建模-開(kāi)發(fā)配置-單據(jù)模板初始化來(lái)打開(kāi)單據(jù)模板初始化如下圖所示,然后選擇培訓(xùn)呢的銷售報(bào)價(jià)單,在單據(jù)模板中輸入ext,在點(diǎn)擊顯示模板,

8、因?yàn)闆](méi)有此模板,所以增加就會(huì)可用,點(diǎn)擊增加即可打開(kāi)單據(jù)模板設(shè)計(jì)器。2.報(bào)價(jià)單表頭放到表頭如下圖,在表頭刪除制單人,然后把制單人放到表尾3.子表子表主鍵 pk_saleauoion_b 放到表體,如下圖4.右鍵表體,選擇新增自定義項(xiàng)目到新頁(yè)簽5.輸入頁(yè)簽編碼: bodyExtTab,頁(yè)簽名稱為: 費(fèi)用信息 ,項(xiàng)目主鍵隨便輸入6.把擴(kuò)展的子實(shí)體費(fèi)用信息源屬性拖過(guò)來(lái),放在表體費(fèi)用信息頁(yè)簽中,同時(shí)刪除剛才臨時(shí)添加的主鍵點(diǎn)擊新增頁(yè)簽的【費(fèi)用金額】,然后把左側(cè)的【是否合計(jì)】勾上。7.保存模板,模塊選擇二級(jí)模塊 bill,資產(chǎn)層次選擇伙伴2.1.5. 功能節(jié)點(diǎn)默認(rèn)模板設(shè)置前面設(shè)計(jì)的單據(jù)模板只有分配給功能節(jié)點(diǎn)

9、才能生效,步驟如下:1.Admin 用戶登錄系統(tǒng),通過(guò)動(dòng)態(tài)建模-開(kāi)發(fā)配置-功能節(jié)點(diǎn)默認(rèn)模板設(shè)置來(lái)打開(kāi)功能節(jié)點(diǎn)默認(rèn)模板設(shè)置,找到銷售報(bào)價(jià)單,如下圖所示2.然后點(diǎn)擊分配,在點(diǎn)擊添加來(lái)添加模板,在彈出的模板框中,找到上面添加的ext 模板,同時(shí)模板選擇報(bào)價(jià)單表頭,所屬模塊 bill,資產(chǎn)層次伙伴,“節(jié)點(diǎn)標(biāo)識(shí)”必須要與需要替換的標(biāo)識(shí)一樣。如在 billFormEditor 中注入了 bt,如下bt此處的標(biāo)識(shí)需要填寫為 bt.3.保存模板4.回到功能節(jié)點(diǎn)默認(rèn)模板設(shè)置列表,選中新添加的伙伴級(jí)的單據(jù)模板,然后點(diǎn)擊【增補(bǔ)到】5.打開(kāi)銷售報(bào)價(jià)單,就可以看到擴(kuò)展的實(shí)體字段,以及子實(shí)體信息,如下圖所示:2.2.前臺(tái)

10、擴(kuò)展本 文 檔 是 對(duì) 銷 售 報(bào) 價(jià) 單 進(jìn) 行 擴(kuò) 展 , 而 銷 售 報(bào) 價(jià) 單 的類 是 :nc.ui.pubapp.uif2app.ToftPanelAdaptorEx,所以應(yīng)該按照 PubApp 的方式進(jìn)行擴(kuò)展配置,extend 組件已經(jīng)提供了 pubapp_ext_config.xml 配置文件,學(xué)員僅僅需要擴(kuò)展此文件即可。如下圖所示, 此文件包含了按鈕和事件的擴(kuò)展,可以此文件拷貝為pubapp_ext_config.xml,包含擴(kuò)展按鈕和事件。2.2.1. 按鈕擴(kuò)展對(duì) pubapp_ext_config.xml 文件進(jìn)行擴(kuò)展 或者拷貝下面的文件,其文件如下,是對(duì)銷售訂單進(jìn)行的按

11、鈕擴(kuò)展, 所以擴(kuò)展的 xml 配置文件,是 train65 的配置文件Quo_order_config.xml。pubapp_ext_config.xml 原始文件如下:propertypropertypropertypropertyname=actionContainer ref=actionsOfCard /name=actionType value=notedit /name= ref=defaultRefreshAction /name=action ref=replaceAction /property name=m ref=bmM按鈕配置 -!-propertypropertypr

12、opertypropertypropertyname=actionContainer ref=actionsOfCard /name=actionType value=edit /name=name= ref=saveScriptAction / value=bename=action ref=insertAction /property name=m ref=bmM /按鈕配置 -!-property name=property name= ref=saveScriptAction /erceptor ref=SaveerceptorForFile /bean id=Saveerceptor

13、ForFileclass=nc.ui.extend.pubapp.action.Savepropertypropertyname=billForm ref=billForm /name=chooseAction ref=insertAction /事件property name=m ref=bmMbean class=nc.ui.pubapp.uif2app.event.Evenvalue=nc.ui.pubapp.uif2app.event.card.CardHeadTailAfterEditEvent /bean class=nc.ui.pubapp.uif2app.event.Evenb

14、ean class=nc.ui.pubapp.uif2app.event.Evenvalue=nc.ui.pubapp.uif2app.event.card.CardBodyBeforeEditEvent /bean class=nc.ui.pubapp.uif2app.event.Evenvalue=nc.ui.pubapp.uif2app.event.card.CardBodyAfterEditEvent /. 替換按鈕擴(kuò)展需求描述:在列表界面每個(gè)報(bào)價(jià)單能管理對(duì)應(yīng)的文檔,客戶要把【刷新】按鈕替換為【文檔管理】按鈕,用于單個(gè)文檔操作(上傳,等操作)。步驟如下:1.修改 pubapp_ext_

15、config.xml 的 ReplaceActionInfo 動(dòng)作,修改如紅色部分(注意:以為這些是替換報(bào)價(jià)單的配置文件中按鈕, 所以這些紅色就是報(bào)價(jià)單配置文件Quo_order_config.xml 中 的 信 息 , 例 如 : actionsOfList是 列 表 界 面 , refreshAction 表示刷新按鈕,下同).按鈕擴(kuò)展需求描述:在銷售報(bào)價(jià)單新增或修改時(shí),在卡片界面能批量選擇附件,也就是在保存前放置一個(gè)選擇附件的按鈕。步驟如下:1.修改 pubapp_ext_config.xml 的 InsertActionInfo 動(dòng)作,修改如紅色部分.按鈕擴(kuò)展需求描述:點(diǎn)擊【保存】按鈕

16、后,先把數(shù)據(jù)保存,再把選擇的文件上傳到服務(wù)器作為報(bào)價(jià)單的附件步驟如下:2. 10.11. 19.20.1.修改 pubapp_ext_config.xml 的 ActionerceptorInfo 動(dòng)作,修改如紅色部分. 擴(kuò)展按鈕文件功能通過(guò)動(dòng)態(tài)建模-開(kāi)發(fā)配置 -功能打開(kāi)功能,把給銷售報(bào)價(jià)單擴(kuò)展的按 鈕 配 置 文 件 pubapp_ext_config.xml ,到 參 數(shù)中 , 參 數(shù) 名 稱 是PluginBeanConfigFilePath,參數(shù)值是:nc/ui/extend/pubapp/config/pubapp_ext_config.xml2. 7. 效果展示1.列表按鈕替換效果

17、展示2.按鈕擴(kuò)展效果展示3.保存后效果展示2.2.2. UI 事件擴(kuò)展對(duì) pubapp_ext_config.xml 文件進(jìn)行擴(kuò)展 或者拷貝下面的文件,其文件如下,是對(duì)銷售報(bào)價(jià)單進(jìn)行的 UI 事件擴(kuò)展,所以擴(kuò)展的 xml 配置文件,是 train65 的配置文件Quo_order_config.xml。pubapp_ext_config.xml 原始文件如下:!- 表體編輯后bean class=. UI 事件擴(kuò)展步驟如下:1.由于是對(duì)Quo_order_config.xml 進(jìn)行的事件擴(kuò)展,那就要找到其配置Mediator 事件,如下所示:bean id=ExEvenndlerMediato

18、rclass=nc.ui.pubapp.uif2app.mbean class=nc.ui.pubapp.uif2app.event.Evenndlerbean class=nc.ui.pubapp.uif2app.event.Even. UI 事件擴(kuò)展文件功能通過(guò)動(dòng)態(tài)建模-開(kāi)發(fā)配置-功能打開(kāi)功能,把給銷售報(bào)價(jià)單擴(kuò)展的按 鈕 配 置 文 件 pubapp_ext_config.xml ,到 參 數(shù)中 , 參 數(shù) 名 稱 是PluginBeanConfigFilePath,參數(shù)值是:nc/ui/extend/pubapp/config/pubapp_ext_config.xml. 修改后的完整

19、pubapp_ext_config.xml 的文件/property name=m ref=bmMbean class=nc.ui.pubapp.uif2app.event.Evenvalue=nc.ui.pubapp.uif2app.event.card.CardHeadTailAfterEditEvent /bean class=nc.ui.pubapp.uif2app.event.Evenvalue=nc.ui.pubapp.uif2app.event.card.CardBodyBeforeEditEvent /bean class=nc.ui.pubapp.uif2app.event.

20、Evenvalue=nc.ui.pubapp.uif2app.event.card.CardBodyAfterEditEvent /. 效果展示1.表頭修改事件:做了如下一些校驗(yàn)如果沒(méi)有勾選是否含費(fèi)用說(shuō)明,那么費(fèi)用說(shuō)明置灰,同時(shí)不能修改表體的費(fèi)用信息2.表體修改后事件:校驗(yàn)是報(bào)銷日期應(yīng)該大于費(fèi)用日期,否則給出提示。2.3.擴(kuò)展2.3.1. 編寫與業(yè)務(wù)邏輯擴(kuò)展需求描述:在銷售報(bào)價(jià)審核時(shí),有如下兩點(diǎn)要求:A). 點(diǎn)擊審核按鈕后需要時(shí)需要校驗(yàn)表頭新擴(kuò)展的【費(fèi)用合計(jì)金額】與表頭原有的【總金額合計(jì)】的大小,如果【費(fèi)用合計(jì)金額】大于【總金額合計(jì)】,則表頭費(fèi)用說(shuō)明必須填寫。B). 報(bào)價(jià)單審核通過(guò)后,如果存在

21、報(bào)銷怎在系統(tǒng)中給相關(guān)報(bào)銷人“發(fā)送通知消息”。步驟如下:1.增 加 兩 個(gè) 類 , 分 別 是 審 核 校 驗(yàn) 類 和 審 核 發(fā) 送 郵 件 類 , 都 實(shí) 現(xiàn) 需 求nc.impl.pubapp.pattern.rule.Irule審核校驗(yàn)類:nc.bs.extend.bprule.ExtendApproveIRule審核發(fā)送郵件類:nc.bs.extend.bprule.ApproveSendMessageRule2.向 數(shù) 據(jù) 庫(kù) 表pub_pluginitem擴(kuò) 展 插 件 , 模 塊 及 組 件 需 要 看nc.bs.train.quoion.plugin.bpplugin.Quoi

22、onPluginPo,的sql 語(yǔ)句如下:-審核校驗(yàn)inserto pub_pluginitem (dr, industrytype, iorder, localtype, pk_pluginitem, ts,vcomponentname, vdescription, veventtype, vextendmodule, vextendponame, vextendtype, vmodulename, vruleclass, vclass) values (0, 0, 1, , trainapprove_before1, 2009-10-148:51:28, bill, , before,nc

23、.bs.train.quoion.plugin.bpplugin.QuoionPluginPo.APPROVE, addBefore, train,nc.bs.extend.bprule.ExtendApproveIRule, nc.bs.pubapp.pub.rule.ApproveSusCheckRule);-審核發(fā)送消息校驗(yàn)inserto pub_pluginitem (dr, industrytype, iorder, localtype, pk_pluginitem, ts,vcomponentname, vdescription, veventtype, vextendmodule

24、,2.3.2. 效果展示1.如果費(fèi)用金額大于總金額,且沒(méi)有填寫費(fèi)用說(shuō)明,那么給出提示信息,如下圖所示3. 附錄3.1.全部 UI 事件說(shuō)明nc.ui.pubapp.uif2app.eventvextendponame, vextendtype, vmodulename, vruleclass, vclass) values (0, 0, 1, , trainapprove_after01, 2009-10-148:51:28, bill, , after, ,nc.bs.train.quoion.plugin.bpplugin.QuoionPluginPo.APPROVE, addAfter,

25、 train,nc.bs.extend.bprule.ApproveSendMessageRule, );3.2.業(yè)務(wù)擴(kuò)展示例打開(kāi) uap-studio 的集成開(kāi)發(fā)幫助,如下圖所示,供應(yīng)鏈的擴(kuò)展,可以參考一下AppUiSeChangeEventUI 狀態(tài)改變ChangedEvent組織改變PubAppEvent事件基類nc.ui.pubapp.uif2app.event.cardCardBodyAfterEditEvent卡片表體編輯后CardBodyAfterRowEditEvent卡片表體行編輯后CardBodyAfterSortEvent卡片表體排序后CardBodyBeforeBatchEditEvent卡片表體批編輯前CardBodyBeforeEditEvent卡片表體編輯前CardBodyBeforeSortEvent卡片表體排序前CardBodyActionEvent卡片表體菜單點(diǎn)擊CardBodyRowChangedEvent卡片表體行選擇改變CardBodyRowEditEvent卡片表體行編輯后CardBodyTabChangedEvent卡片表體頁(yè)簽改變CardBodyTotalEvent卡片表體匯總計(jì)算CardHeadTailAfterEditEvent卡片表頭表尾編輯后CardHeadTailBeforeEditEvent卡

溫馨提示

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

評(píng)論

0/150

提交評(píng)論