表單自定義設(shè)計(jì)器功能設(shè)計(jì).doc_第1頁
表單自定義設(shè)計(jì)器功能設(shè)計(jì).doc_第2頁
表單自定義設(shè)計(jì)器功能設(shè)計(jì).doc_第3頁
表單自定義設(shè)計(jì)器功能設(shè)計(jì).doc_第4頁
表單自定義設(shè)計(jì)器功能設(shè)計(jì).doc_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

表單自定義設(shè)計(jì)器功能設(shè)計(jì)1設(shè)計(jì)思路1.1表單自定義功能的誤區(qū)1、關(guān)于成本:表單自定義一般容易實(shí)現(xiàn)的僅布局、字段的增減、簡單的腳本控制等,但有很多諸如復(fù)雜腳本控制、自動(dòng)計(jì)算、特殊邏輯驗(yàn)證、主從關(guān)系,復(fù)雜基礎(chǔ)數(shù)據(jù)選擇(過濾、合并)、與其它功能模塊的交互等等需求,自定義工具都不能很輕易地解決,最終可能帶來的代價(jià)是重做,甚至推翻整個(gè)系統(tǒng)架構(gòu)重新實(shí)現(xiàn),付出成本是預(yù)計(jì)成本的2-4倍以上均有可能。建議采用對(duì)此類復(fù)雜需求通過關(guān)聯(lián)創(chuàng)建人定義的SQL語句來實(shí)現(xiàn)。2、表單自定義功能實(shí)現(xiàn)的方式一般是數(shù)據(jù)庫表中預(yù)制了很多字段或者是一個(gè)表中的記錄存儲(chǔ)為ID、字段名、值、字段類型,而且值的類型往往是字符型,這些做法給數(shù)據(jù)的查詢統(tǒng)計(jì)及SQL優(yōu)化帶來的是非常大的性能損失和阻力,業(yè)務(wù)系統(tǒng)數(shù)據(jù)量不大的時(shí)候看不出,一旦數(shù)據(jù)業(yè)務(wù)表大到一定程度的時(shí)候,性能瓶頸就會(huì)出現(xiàn)。我們知道需要工作流的業(yè)務(wù)系統(tǒng)都是大量用戶和大規(guī)模業(yè)務(wù)數(shù)據(jù)的。對(duì)于表單自定義做法,性能瓶頸是一定要考慮的;3、表單自定義往往實(shí)現(xiàn)的是一個(gè)數(shù)據(jù)實(shí)體的增、刪、改,但對(duì)于一個(gè)系統(tǒng)來講一個(gè)表單僅僅是一個(gè)功能點(diǎn)而已,這個(gè)功能點(diǎn)對(duì)于整個(gè)系統(tǒng)來講遠(yuǎn)不是那么單純的,有可能一個(gè)數(shù)據(jù)實(shí)體的資料分別在多個(gè)表單里進(jìn)行更新和維護(hù),自定義邏輯往往是處理不了它們之間的沖突,還有查詢和統(tǒng)計(jì)分析,這些是需要關(guān)聯(lián)很多基礎(chǔ)數(shù)據(jù)、關(guān)聯(lián)其它業(yè)務(wù)數(shù)據(jù)。自定義表單功能本身也只是從功能特性的角度去出發(fā),對(duì)于系統(tǒng)復(fù)雜的實(shí)體關(guān)系、業(yè)務(wù)模式、設(shè)計(jì)模式的支持幾乎為零,一個(gè)高質(zhì)量系統(tǒng)需要的因素基本實(shí)現(xiàn)不了;4、企業(yè)使用表單自定義工具的時(shí)候往往已經(jīng)有了很多的系統(tǒng),比如HR、CRM甚至ERP系統(tǒng),很多關(guān)聯(lián)數(shù)據(jù)會(huì)是來自于這些系統(tǒng)的數(shù)據(jù)。表單自定義工具往往無法提供高可靠性的集成方案,即使能集成也是勉強(qiáng)的,后續(xù)會(huì)付出很多手工同步、統(tǒng)計(jì)口徑不一致等代價(jià),為企業(yè)整體的信息化效果大打折扣;5、另外從實(shí)際的使用情況而言,實(shí)現(xiàn)一個(gè)表單自定義功能的目標(biāo)往往是為了方便用戶實(shí)現(xiàn)自己的業(yè)務(wù)邏輯,但實(shí)際上很少客戶會(huì)自己去自定義這些表單。而開發(fā)人員都會(huì)熱忠于實(shí)現(xiàn)一個(gè)表單自定義工具,但不會(huì)愿意長期去做表單的定制工作。對(duì)于團(tuán)隊(duì)的管理者來說用程序員的工資去做表單配置工作也是不劃算的;6、假如我們一定要去實(shí)現(xiàn)一個(gè)好的表單自定義工具,一定是有很多事件接口的、一定是要能支持調(diào)試的、布局一定要能有足夠的細(xì)致、自定義過程中要有提供給業(yè)務(wù)人員的自動(dòng)向?qū)Вū乳_發(fā)人員需要的向?qū)Ц由倒匣?、一定能做到足夠的?yōu)化或支持優(yōu)化的實(shí)現(xiàn)、能支持緩存、調(diào)用程序集、從WebService獲取信息、能對(duì)頁面交互過程進(jìn)行優(yōu)化。這些都實(shí)現(xiàn)后,會(huì)發(fā)現(xiàn)做的表單定義工具其實(shí)就是大軟件公司研發(fā)的IDE開發(fā)環(huán)境,如:visualstudio開發(fā)環(huán)境。鑒于此,我認(rèn)為公司在此問題上應(yīng)該保證有足夠的人員投入以及開發(fā)周期,否則肯定會(huì)欲速則不達(dá)。1.2系統(tǒng)設(shè)計(jì)思路設(shè)計(jì)的系統(tǒng)初步適用于網(wǎng)上OA系統(tǒng)的自定義表單模塊的快速開發(fā),需要結(jié)合工作流系統(tǒng)功能,并實(shí)現(xiàn)數(shù)據(jù)導(dǎo)入、導(dǎo)出以及打印功能;同時(shí)可以用于公司在軟件投標(biāo)過程中實(shí)現(xiàn)快速原型。成熟后可以用于信息管理系統(tǒng)方面的軟件開發(fā)項(xiàng)目等。通過表單的定義自動(dòng)創(chuàng)建/修改自定義數(shù)據(jù)表,復(fù)雜數(shù)據(jù)字段的執(zhí)行通過設(shè)計(jì)器的有關(guān)表單控件提供用戶定義的相關(guān)SQL語句來實(shí)現(xiàn)。包括幾部分:表單定義管理部分、表單呈現(xiàn)/提交部分、表單數(shù)據(jù)查看/管理部分。表單定義管理:表單基本信息管理(表單名稱、描述)、表單存儲(chǔ)表字段管理、表單布局設(shè)計(jì)、表單數(shù)據(jù)驗(yàn)證定義、表單字段關(guān)聯(lián)/子表單管理、表單字段編輯框行為管理。表單存儲(chǔ)表字段定義:定義表單中用到的數(shù)據(jù)項(xiàng),包括字段名、字段類型、長度、默認(rèn)值、編輯框類型、是否允許為空、是否自增長字段、分組名稱、是否在列表中顯示等信息。編輯框類型一般有:文本框、文本域、復(fù)選框、單選框、列表框、時(shí)間日期選擇、文件上傳框等;這里定義的是表單主表字段,注意每張表單僅針對(duì)一張表,否則操作多張表的SQL不容易處理,涉及到主從表的情況可用子表單來處理。對(duì)字段的相關(guān)要求還包括:1.涉及到字段的權(quán)限級(jí)別控制2.涉及到字段的自定義下拉列表控制3.涉及到字段的默認(rèn)值控制4.涉及到字段的多層關(guān)聯(lián)的數(shù)據(jù)引用控制,初步實(shí)現(xiàn)單層關(guān)聯(lián)應(yīng)用5.需要考慮自定義字段的值參與系統(tǒng)原來的業(yè)務(wù)邏輯運(yùn)算如何設(shè)置的問題6.初步達(dá)到代碼級(jí)的字段業(yè)務(wù)邏輯控制7.虛擬字段的存在,就是表單中并不存在,而只需要從其它地方引用顯示的字段表單布局設(shè)計(jì):這一步很關(guān)鍵也是較難實(shí)現(xiàn),簡單的做法是做一個(gè)表單模板,那么表單中的數(shù)據(jù)項(xiàng)說明、編輯框、數(shù)據(jù)驗(yàn)證就都可以用內(nèi)部變量來代替,系統(tǒng)可提供自動(dòng)生成表單的功能,用戶也可以自己手工修改,當(dāng)然需要提供一個(gè)表單設(shè)計(jì)器,這樣使用起來就更方便了。表單數(shù)據(jù)驗(yàn)證定義:定義需要驗(yàn)證字段的規(guī)則,驗(yàn)證規(guī)則,可用正則表達(dá)式的方式來定義,系統(tǒng)內(nèi)部可自帶一些常用的驗(yàn)證規(guī)則,復(fù)雜的情況可能會(huì)出現(xiàn)各字段之間的值進(jìn)行比較的情況。表單字段關(guān)聯(lián)/子表單管理:定義表/表單之間的關(guān)聯(lián)信息,即主鍵外鍵信息。表單字段編輯框行為定義:主要負(fù)責(zé)處理字段值發(fā)生變化時(shí)引發(fā)的其他編輯框事件,比如連動(dòng)下拉框、從選擇值中返回值并賦予其他字段編輯框、其他編輯框的隱藏等。表單運(yùn)行時(shí)呈現(xiàn)及提交:根據(jù)表單定義的布局及其他設(shè)置呈現(xiàn)表單,并一起生成驗(yàn)證、行為用到的JS代碼。如果填寫表單時(shí),先填主表信息,然后填寫從表信息,保存的臨時(shí)表單值可采用SESSION進(jìn)行傳遞,最后一起提交,提交時(shí)先寫入主表信息,并返回主鍵值(如果存在主從表的話),然后寫從表數(shù)據(jù)。表單數(shù)據(jù)管理:可根據(jù)字段配置信息顯示表單的數(shù)據(jù)列表,并進(jìn)行管理。實(shí)現(xiàn)新建表單與流程的結(jié)合:1.設(shè)計(jì)表單屬性,提供了多種參數(shù),用戶可以直接選擇。2.表單中添加控件,在添加用于控制數(shù)據(jù)輸入或用戶選擇的控件(如文本框,單選框,下拉菜單等)后表單才有完整的功能。3.驗(yàn)證數(shù)據(jù)的綁定,鼠標(biāo)位于控件上時(shí)顯示的圖表和說明文字將表明數(shù)據(jù)的幫定情況,也可從右側(cè)的數(shù)據(jù)源中查看。4.設(shè)置錯(cuò)誤的驗(yàn)證,用戶設(shè)置設(shè)計(jì)表單并使其具有自動(dòng)檢驗(yàn)一些錯(cuò)誤的功能(如必須輸入),在輸入出現(xiàn)錯(cuò)誤自動(dòng)彈出提示。5.表單模板的上傳,在流程管理中的表單模板定義中可以將之前定義好的表單模板上傳,并使之與流程綁定,也可以自由的選擇要顯示的字段,及調(diào)整顯示的順序。6.在流程的定義中選擇執(zhí)行人是否可以修改表單業(yè)務(wù)數(shù)據(jù)的有關(guān)字段值,這樣就可以實(shí)現(xiàn)人員之間的協(xié)同操作。7.流程管理中的自定表單可以看到表單的數(shù)據(jù)的一覽情況。8.如果與流程綁定,在新增時(shí)需要選擇綁定的流程。9.如果使用中的表單進(jìn)行了修改,必須可以自動(dòng)保存表單的歷史版本,并要實(shí)現(xiàn)與已經(jīng)完成的業(yè)務(wù)單據(jù)數(shù)據(jù)的自動(dòng)的對(duì)應(yīng)關(guān)聯(lián),防止業(yè)務(wù)數(shù)據(jù)的顯示異常,杜絕張冠李戴現(xiàn)象發(fā)生。10.填寫過表單后可以選擇提交申請(qǐng)或保存退出,提交申請(qǐng)數(shù)據(jù)提交,保存退出后數(shù)據(jù)還可以再繼續(xù)編輯。11.可以對(duì)表單數(shù)據(jù)進(jìn)行靈活的查詢及統(tǒng)計(jì)分析。2設(shè)計(jì)器功能要點(diǎn)維護(hù)功能窗體尺寸流程標(biāo)志上傳附件標(biāo)志類別數(shù)據(jù)庫名稱名稱屬性定義刪除修改增加框架表單設(shè)計(jì)器日歷控件隱藏標(biāo)簽負(fù)數(shù)控件數(shù)字控件單選框復(fù)選框下拉列表多行輸入框單行輸入框表單控件關(guān)閉可編輯塊快捷控件樹結(jié)構(gòu)明細(xì)表標(biāo)簽頁在線編輯器多選對(duì)話框單選對(duì)話框停用啟用2.1表單設(shè)計(jì)器管理主界面用戶權(quán)限用戶對(duì)定義的表單進(jìn)行管理,相關(guān)操作包括:啟用、停用、增加、修改、刪除、關(guān)閉。查詢條件:表單名稱:用戶創(chuàng)建的表單的名稱。表單ID:表單模板在數(shù)據(jù)庫中的記錄ID。表單類別:用于用戶從定義的系統(tǒng)參數(shù)碼表中選擇表單的類別,便于有些企業(yè)在表單很多的情況下進(jìn)行分類管理。表單狀態(tài):未啟用(草稿)、啟用、停用。引用標(biāo)志:引用、未引用。默認(rèn)為未引用。啟用的表單在業(yè)務(wù)辦理過程中被使用,存在有對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)時(shí),由系統(tǒng)自動(dòng)檢驗(yàn)該字段,把未引用改寫為引用。表

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論