工作手冊_馳騁工作流引擎-表單設(shè)計器操作手冊_第1頁
工作手冊_馳騁工作流引擎-表單設(shè)計器操作手冊_第2頁
工作手冊_馳騁工作流引擎-表單設(shè)計器操作手冊_第3頁
工作手冊_馳騁工作流引擎-表單設(shè)計器操作手冊_第4頁
工作手冊_馳騁工作流引擎-表單設(shè)計器操作手冊_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

馳騁表單設(shè)計器操作說明書濟(jì)南馳騁信息技術(shù)有限公司2011年8月修訂目錄1總體說明61.1前言(必讀)61.2一種存儲格式(同一個表單)61.3兩種表單設(shè)計器(同一個表單)71.3.1傻瓜表單設(shè)計器71.3.2自由表單設(shè)計器71.4 三種展現(xiàn)方式(同一個表單)81.4.1傻瓜表單81.4.2自由表單91.4.3手機(jī)表單91.5自由表單設(shè)計器預(yù)覽111.6傻瓜表單設(shè)計器預(yù)覽111.7表單樣本12企業(yè)基本情況12財務(wù)負(fù)責(zé)人簡歷13從表導(dǎo)入導(dǎo)出13多表頭從表14從表的卡片表現(xiàn)形式141.8全局變量說明152調(diào)用API152.1與工作流程引擎API152.2與應(yīng)用操作的API163自由表單的工具箱163.1裝飾類的對象:173.1.1線173.1.2標(biāo)簽173.1.3裝飾圖片173.2數(shù)據(jù)類對象:17文本框, 日期時間框, 選擇框, bool類型控件.18下拉框枚舉類型19下拉框(表/視圖)20單選按鈕20單個表單附件21多表單附件22圖片附件24從表(從表)27一對多的關(guān)系表29一對多多關(guān)系表31隱藏字段313.3功能類323.3.1按鈕323.3.2鼠標(biāo)363.3.3選擇363.3.4超連接364表單設(shè)計器功能374.1屬性:374.2保存:384.3預(yù)覽:384.4導(dǎo)出:394.5導(dǎo)入39從ccflow網(wǎng)站上導(dǎo)入:39從本機(jī)導(dǎo)入:39從節(jié)點表單導(dǎo)入:39從流程表單導(dǎo)入:394.6全選404.7復(fù)制404.8粘貼404.9對齊方式按鈕404.10刪除404.11撤消404.12恢復(fù)414.13加粗414.14斜體414.15刪除線414.16增益414.17減益414.18調(diào)色版414.19表單事件42事件類型:42頁面裝載前43頁面裝載后43保存前43保存后435字段擴(kuò)展設(shè)置435.0 表單裝載前數(shù)據(jù)填充445.1數(shù)據(jù)獲取45方式1:本表單中數(shù)據(jù)計算46方式2:利用SQL自動填充.46方式3:本表單中外鍵列。47方式4:對一個從表的列求值。475.2級聯(lián)下拉框47主表中的級聯(lián)47從表中的級聯(lián)49常見問題505.3表單字段的輸入js腳本驗證50設(shè)置步驟50如何設(shè)置自定義驗證函數(shù)?51腳本驗證的工作原理51如何通過獲取表單控件值?51如何在提交前做一個完整的表單輸入驗證?525.4自動完成535.4.1 演示環(huán)境說明535.4.2主表中的自動完成535.4.2主從表的自動完成545.4.3從表中的自動完成555.5 字段超連接56在主表表單設(shè)計上的表現(xiàn)57在從表的表現(xiàn)與設(shè)計585.6 Pop返回值58事例:58設(shè)置方式596從表的設(shè)計606.1從表的設(shè)計器606.2從表的屬性616.3從表屬性說明61操作權(quán)限控制62是否起用審核字段:62是否啟用多附件62顯示格式64越位處理656.4 從表事件666.5為從表設(shè)計導(dǎo)入數(shù)據(jù)模版667一對多的關(guān)系設(shè)計687.1什么是一對多的數(shù)據(jù)關(guān)系?687.2一對多的關(guān)系設(shè)計697.3數(shù)據(jù)存儲格式是什么708 一對多多的關(guān)系設(shè)計718.1應(yīng)用背景718.2設(shè)計方式718.3數(shù)據(jù)存儲格式719表單的單據(jù)打印719.1單據(jù)打印總體概述719.2單據(jù)模板的制作719.3單據(jù)輸出格式約定729.4單據(jù)生成的工作原理749.5單據(jù)表單的分類749.5.1節(jié)點表單749.5.2 流程表單759.6表單設(shè)計常見的問題75如何解決亂碼的問題?7510表單事件7610.1事件概述7610.2裝載前事件7710.3裝載后事件7810.4保存前事件7810.5保存后事件7811技術(shù)文摘7811.1常見問題類7811.1.1在表單設(shè)計器中,如何獲取自由表單下拉框的值?7811.1.2如何用自由表單設(shè)計器映射我的物理表?801總體說明1.1前言(必讀)馳騁自由表單設(shè)計器有一種存儲格式、兩種設(shè)計模式,三種展現(xiàn)方式,具有一定的通用的接口可以被外部調(diào)用,自己有可以獨(dú)立運(yùn)行起來的應(yīng)用程序。一種存儲格式:采用映射的機(jī)制,以xml文件格式存儲。兩種設(shè)計模式:傻瓜表單設(shè)計器,自由表單設(shè)計器。三種展現(xiàn)方式:傻瓜表單、自由表單、手機(jī)表單。表單設(shè)計器以映射思想為核心。所說的映射業(yè)務(wù)規(guī)則對字段,操作方法,界面展現(xiàn),操作行為的描述。表單設(shè)計者認(rèn)為事物的業(yè)務(wù)規(guī)則與操作模式都是可以被抽象出來的,并且把其封裝并實現(xiàn)。 但是并不是所有的業(yè)務(wù)規(guī)則都有價值去抽象,是否有價值去抽象并封裝是應(yīng)用的范圍與實現(xiàn)的代價。由以上兩個理論為指導(dǎo),把界面所有的元素的描述,業(yè)務(wù)規(guī)則的描述以對象的形式為描述。 Ccflow 自由表單設(shè)計器不一定滿足所有的數(shù)據(jù)采集與數(shù)據(jù)展現(xiàn)格式,但是可以解決對數(shù)據(jù)庫操作層面的絕大多數(shù)需求。用戶可根據(jù)自己的需要選擇其中的一種表單的工作方式。1.2一種存儲格式(同一個表單)Ccflow的表單存儲格式與傳統(tǒng)的表單存儲格式不同,它是采用數(shù)據(jù)表的存儲的,這是最大區(qū)別于文件格式的存儲。正是因為ccflow擺脫了對文件格式存儲的表單的依賴,所以具有最大范圍的擴(kuò)展性通用性、靈活性。物理表名中文名說明Sys_FrmLab標(biāo)簽存儲標(biāo)簽Sys_FrmLine線存儲線,線只分橫線與豎線。Sys_FrmLink超連接超連接Sys_FrmImg圖片圖片Sys_FrmBtn按鈕按鈕,按鈕支持多樣的事件方式Sys_MapAttr字段存放三種類型的字段textbox,checkbox,dropdownlistbox.Sys_MapData表單主表Sys_M2M一對多Sys_M2MM一對多多Sys_FrmAttachment附件. 更多請參考程序代碼.可以利用ccform 的導(dǎo)出功能把這些規(guī)則化的數(shù)據(jù)導(dǎo)出成一個xml。1.3兩種表單設(shè)計器(同一個表單)馳騁公司根據(jù)用戶群體不同,用戶對界面的要求不同特開發(fā)了兩種表單設(shè)計器,三種展示模式。自由表單設(shè)計器與傻瓜表單設(shè)計器,兩者的存儲格式都是一樣的,就是展示與設(shè)計方式不同。1.3.1傻瓜表單設(shè)計器優(yōu)點:設(shè)計方便,不需要排版,有分組顯示功能界面簡潔清晰,容易上手。缺點:不形象直觀,不符合用戶的需求格式。1.3.2自由表單設(shè)計器優(yōu)點:設(shè)計方便,形象直觀,隨心所欲。缺點: 沒有傻瓜表單簡潔,需要排版,同樣的功能沒有傻瓜格式方便。1.4 三種展現(xiàn)方式(同一個表單)對于一個表單來說有三種展現(xiàn)方式,至于用戶使用那種表單是有流程的節(jié)點屬性來設(shè)置的。1.4.1傻瓜表單優(yōu)點:界面清晰、簡潔、緊湊。缺點:格式固定。1.4.2自由表單優(yōu)點:界面元素可以根據(jù)用戶的需要任意排列。缺點:無1.4.3手機(jī)表單手機(jī)填寫主表:手機(jī)明細(xì)表: 點上圖中的費(fèi)用明細(xì)就可以看到下面的明細(xì)表查看界面。手機(jī)表單是手機(jī)表單特點1.5自由表單設(shè)計器預(yù)覽1.6傻瓜表單設(shè)計器預(yù)覽1.7表單樣本企業(yè)基本情況企業(yè)基本情況(打印)與打印模板.財務(wù)負(fù)責(zé)人簡歷具有附件圖片從表導(dǎo)入導(dǎo)出從表的導(dǎo)入導(dǎo)出多表頭從表企業(yè)代表工程業(yè)績一覽表(多級表頭明細(xì))從表的卡片表現(xiàn)形式從表的卡片方式展現(xiàn)1.8表達(dá)式全局變量在系統(tǒng)中有很多的地方需要用到表達(dá)式的地方,這些表達(dá)式就需要參數(shù)與變量,這些參數(shù)是以+變量名。我們把參數(shù)與變量分為全局變量,字段變量。操作人員登陸系統(tǒng)后就有如下全局變量。WebUser.No 當(dāng)前操作員編號WebUser.Name 當(dāng)前操作員名稱WebUser.FK_Dept 當(dāng)前操作員部門AppPath 當(dāng)前的文件路徑。比如:/ccflow 變量用加變量名體現(xiàn)。比如:WebUser.No。以FF中,很多的表達(dá)式需要變量的支持。比如一個sql表達(dá)公式。SELECT No,Name, FK_Dept FROM PORT_Emp WHERE FK_DEPT=WebUser.FK_Dept注意區(qū)分大小寫。表單字段變量:+字段名 比如:Select generBillNo(OID) from dual OID 就是表單字段。2調(diào)用API2.1與工作流程引擎API如何把Ccform 嵌入到工作流程引擎中去?(省略)2.2與應(yīng)用操作的API如何使用Ccform 在我的應(yīng)用程序中?調(diào)用連接 http:/localhost/XXXX/Ccform/Frm.aspx?FK_MapData=YYYYYYY對于表單的權(quán)限控制可見不可見來源來應(yīng)用程序本身,對于表單內(nèi)的按鈕控制由Ccform 的按鈕屬性來確定的。3自由表單的工具箱工具欄中的對象分為裝飾類的對象、數(shù)據(jù)類的對象、與功能類的對象。鼠標(biāo):類型vs設(shè)計器中的鼠標(biāo)功能,當(dāng)您點了其它的功能按鈕后,您想取消選擇,就點此功能。選擇:在畫布畫矩形在矩形內(nèi)部的對象都被選擇,比如對選擇的線條的粗細(xì)進(jìn)行+ - 。對顏色進(jìn)行更換,對label 集合的字體顏色進(jìn)行變化。標(biāo)簽:文字類裝飾元素,標(biāo)簽的文字大小、類型、顏色,都可以變化。畫線:線條的粗細(xì)、長度、顏色屬性可以改變。超連接:功能類的控件,它有兩部分組成標(biāo)簽與連接,標(biāo)簽部分的功能與標(biāo)簽功能一致。裝飾圖片:裝飾類的控件,多用于把公司的icon圖片放在上面。按鈕:為了實現(xiàn)一些功能文本框:長度、高度、默認(rèn)值都可以被編輯。日期框:長度固定選擇框:Boolean類型的字段。下拉框(枚舉):枚舉類型下拉框。下拉框(表、視圖):下拉框中是以表格為內(nèi)容的。表單附件:可以是任何格式的控件。圖片附件:比如簡歷的個人圖片。從表:與主表之單的表格一對多的關(guān)系:比如與主表的關(guān)系,節(jié)點崗位,隱藏字段:不需要在表單上顯示出來的字段,多用于值的計算,或者節(jié)點方向條件的轉(zhuǎn)換。3.1裝飾類的對象:線、標(biāo)簽、裝飾圖片3.1.1線線是裝飾類對象的基本元素。對于線的操作3.1.2標(biāo)簽標(biāo)簽是用來文字說明裝飾,標(biāo)簽可以改變顏色,字體大小,風(fēng)格等等。標(biāo)簽元素可以復(fù)制,選中后,ctrl+C Ctrl+V 就可以實現(xiàn)。支持鼠標(biāo)移動, aswd 鍵,方向鍵移動。3.1.3裝飾圖片圖片是表單元素的一部分。3.2數(shù)據(jù)類對象文本框、日期框、選擇框、下拉框、單選按鈕、表單附件、圖片附件、從表、一對多的關(guān)系表、隱藏字段。3.2.1文本框, 日期時間框, 選擇框, bool類型控件.說明:1, 日期與日期時間框不能改變大小,其它的類型的文本框可以改變大小。2, 要改變文本框的位置可以按下它的邊框,然后移動,或者選中它,使用方向鍵移動。3, 改變文本框的寬度可以使用 shift + 方向鍵。 改變文本框的高度與寬度。屬性編輯:如上圖使用自由表單設(shè)計器創(chuàng)建審核分組在表單設(shè)計中經(jīng)常遇到領(lǐng)導(dǎo)審核、或者審批,這種審批與審核通常有三個字段組成分別是審核意見、審核人、審核時間。 審核意見是一個大塊文本采集框、審核人是默認(rèn)當(dāng)前操作人員、審核時間就是當(dāng)前時間。如果在自由表單設(shè)計器中一個個的字段添加也是可以的,ccform為了提高設(shè)計者的效率與傻瓜表單設(shè)計器一樣推出增加審核分組功能。如下圖:填寫說明見上圖:如果審核分組的字段前綴是CW,那系統(tǒng)就會創(chuàng)建三個字段分別是CW_Checker審核人 , CW_RDT審核日期,CW_Note審核意見。同時也建立了一個字段分組,條理化規(guī)則的顯示在傻瓜表單設(shè)計器中。 創(chuàng)建隱藏字段隱藏字段的用途?隱藏字段不體現(xiàn)在表單里,隱藏字段一般用于計算臨時計算,在節(jié)點表單中做為方向條件。如何創(chuàng)建與編輯隱藏字段?在創(chuàng)建正常字段時您是是否是隱藏字段勾上,如果要編輯隱藏字段在工具欄里有一個隱藏字段圖標(biāo)。3.2.2下拉框枚舉類型新建枚舉類型3.2.3物理表或視圖關(guān)鍵字:ccform 外鍵表 外鍵字段對于一個表單來說外鍵是經(jīng)常遇到的,ccform為我們提供系統(tǒng)的基礎(chǔ)表(Port_Emp,Port_Dept, CN_PQ ,CN_SF,CN_City,),當(dāng)然也可以把自己定義外鍵表,或者說字典表。在您初始化系統(tǒng)后,您可以打開SELECT *FROMSys_SFTable你將會看到一些演示的數(shù)據(jù)。外鍵實體分為物理表類型與系統(tǒng)類庫. 用類庫可以很好的控制查詢權(quán)限,比如人員查詢權(quán)限,在表單中只列出該操作員的部門人員。部門類可以控制只查詢本人的部門與本人的下級部門。如果用物理表就沒有這個概念了。外鍵表存儲在Sys_SFTable 系統(tǒng)表中,您可以通過界面維護(hù)它,也可以手工的維護(hù)它。如果您手工的維護(hù)(注意:SFTableType此字段已經(jīng)不用了)。對于Sys_SFTable 列描述如下:No: 外鍵,Name: 表名稱,FK_Val 在創(chuàng)建外鍵字段時默認(rèn)的外鍵字段名稱TableDesc: 描述。IsEdit 是否可以編輯。 如何把ERP,OA,CRM應(yīng)用程序中的物理表對應(yīng)到ccform中去?首先把應(yīng)用系統(tǒng)的物理表通過視圖映射到ccflow 可訪問的數(shù)據(jù)庫中來,這個表或者視圖必須有No,Name,兩個列。其次把這個數(shù)據(jù)維護(hù)到Sys_SFTable中去。 自定義表列表 創(chuàng)建與編輯3.2.4單選按鈕單選按鈕是枚舉值的一種表現(xiàn)形式。選擇枚舉設(shè)計樣式瀏覽樣式3.2.5單個表單附件文件是以上傳一個文件保存到服務(wù)器上,如下圖所:附件的格式需要以, 分開比如:*.doc,*.docx,*.txt拖放后:預(yù)覽表現(xiàn):3.2.6多表單附件多表單附件是用戶上傳的附件格式不能確定,數(shù)量不能確定情況下使用。設(shè)計步驟:在工具欄點多附件按鈕,如下圖: 多表單附件屬性:附件名稱:就是為控件起一個名稱,附件編號需要全局唯一。保存到是文件要保存的位置。是否可下載,是否可刪除,是否可上傳是用來控制附件的訪問權(quán)限的。特別說明:類別可以為空,如果不為空時系統(tǒng)就會自動為它附件按約定的格式分類。兩種附件的展現(xiàn)模式:3.2.7手寫板3.2.8圖片附件圖片附件與文件附件不同的地方就是圖片附件需要預(yù)覽。比如:我們做一個簡歷表單,需要把人員的照片放在指定的位置。設(shè)計方式:1, 在工具欄中找到圖片附件。2, 用shift+ 方向鍵改變圖片的大小。預(yù)覽效果如下圖。編輯與上傳圖片:點編輯連接,系統(tǒng)彈出如下對話框??梢园鸭羟械膱D片點確定按鈕,返回。3.2.9從表(明細(xì)表)從表也叫明細(xì)表。設(shè)計界面從表屬性界面預(yù)覽與操作界面點選項按鈕3.2.10一對多的關(guān)系表一對多的關(guān)系是對多項選擇來確定的。比如:單位人員旅游名單。這些名單可以讓用戶去選擇它。運(yùn)行界面屬性編輯顯示在分組,對所有的自由表單設(shè)計器來說無意義。一對多多關(guān)系表一對多有三個維度第一維度是 對象列表. 他有兩種表達(dá)方式。 1, sql 必須有兩個列 No,Name. 2, +本表單中的多對多編號. 第二維度是: 如同 m2m 中的第一維度. where 表達(dá)公式中需要一個 Key 就是來自于第一維度的 實體 PK. 第三維度是: 如同 m2m 中的第二緯度.隱藏字段用于存儲臨時計算值,在節(jié)點表單中,經(jīng)常被用到方向條件。在您創(chuàng)建文本框時您如果選擇了隱藏字段,系統(tǒng)就會把此字段不體現(xiàn)在表單設(shè)計器中。在創(chuàng)建正常字段時,您只要把是否是隱藏字段勾上就可以了。3.3功能類按鈕,鼠標(biāo)、選擇,超連接。3.3.1按鈕表單上面的按鈕對象,可以處理事件內(nèi)容。特別說明:ccflow所有的事件內(nèi)容的處理方式都是一致的,目前所涉及的事件有,表單事件、按鈕事件、流程事件??傮w說明每個按鈕有自己的按鈕類型,使用自定義按鈕類型。屬性說明按鈕事件類型事件類型決定按鈕執(zhí)行的內(nèi)容。事件內(nèi)容就是要執(zhí)行的內(nèi)容,內(nèi)容里面可以有變量,變量來自與表單。變量的表達(dá)方式仍然用+變量名來決定,比如:jiner , shenpiren, 系統(tǒng)變量有WebUser.No 當(dāng)前操作員編號,WebUser.Name 當(dāng)前操作員名稱 WebUser.FK_Dept 當(dāng)前操作員部門。執(zhí)行成功提示信息當(dāng)內(nèi)容執(zhí)行成功時提示的信心。執(zhí)行失敗提示信息當(dāng)內(nèi)容執(zhí)行失敗時,拋出異常信息時提示的信息。執(zhí)行存儲過程案例說明:WebUser.No 表示當(dāng)前的操作人員系統(tǒng)變量。執(zhí)行SQL 事例以上事例說明了刪除一條數(shù)據(jù)時提示的信息。+字段名是用來取當(dāng)前節(jié)點字段。執(zhí)行URL特別說明:執(zhí)行url 是靜默執(zhí)行,需要對方的頁面直接返回 string 串就可以了。如果超時連接,或者,返回串的前三個字母是Err ,ccflow就會執(zhí)行失敗,就拋出失敗信息給操作者。在執(zhí)行url時系統(tǒng)就會把兩個默認(rèn)的參數(shù)增加上。分別是UserNo, SID。比如:您設(shè)定的是 http:/serverName/a.aspx?type=MyType 實際執(zhí)行的是:http:/serverName/a.aspx?type=MyType&UserNo=abc &SID=a2345bc執(zhí)行JavaScript執(zhí)行js 時,成功信息與失敗提示信息就不需要填寫了。3.3.2鼠標(biāo)點它就是取消所有的工具選擇。3.3.3選擇全選特定的區(qū)域,比如要刪除特定區(qū)域的對象,就可以使用它來選擇。3.3.4超連接顯示超級連接.提示:符號表示換行。4表單設(shè)計器功能4.1屬性:用來控制表單的基本屬性如果畫布不夠?qū)挾扰c高度可以通過設(shè)置此屬性來滿足。4.2保存:保存當(dāng)前的設(shè)計,在設(shè)計過程中多執(zhí)行保存并預(yù)覽按鈕。目前的保存具有保存與預(yù)覽的功能。4.3預(yù)覽:瀏覽當(dāng)前的設(shè)計。4.4導(dǎo)出:導(dǎo)出ccform模板。導(dǎo)出ccform模板并共享。4.5導(dǎo)入把當(dāng)前的設(shè)計導(dǎo)出xml模板。從ccflow網(wǎng)站上導(dǎo)入:在ccflow官方網(wǎng)站上有一些網(wǎng)友共享的表單模板,您可能 通過他們方便的導(dǎo)入進(jìn)來。從本機(jī)導(dǎo)入:導(dǎo)入存儲在本機(jī)上的表單模板。從節(jié)點表單導(dǎo)入:從其它節(jié)點上導(dǎo)入表單進(jìn)行二次編輯。從流程表單導(dǎo)入:從流程表單上導(dǎo)入表單進(jìn)行二次編輯。4.6全選選擇全部的元素,一般用于全部刪除,全部平移對象,目前不太成熟。4.7復(fù)制復(fù)制選擇的元素,到內(nèi)存里。4.8粘貼只有如下對象支持粘貼:線,標(biāo)簽,文本框。4.9對齊方式按鈕左對齊在選擇多個同類的控件時,比如:標(biāo)簽、線、文本框,執(zhí)行此按鈕會執(zhí)行左對齊。居中在選擇多個同類的控件時,比如:標(biāo)簽、線、文本框,執(zhí)行此按鈕會執(zhí)行居中。右對齊在選擇多個同類的控件時,比如:標(biāo)簽、線、文本框,執(zhí)行此按鈕會執(zhí)行左對齊。頂部對齊在選擇多個同類的控件時,比如:標(biāo)簽、線、文本框,執(zhí)行此按鈕會執(zhí)行左對齊。底部對齊在選擇多個同類的控件時,比如:標(biāo)簽、線、文本框,執(zhí)行此按鈕會執(zhí)行底部對齊。4.10刪除刪除選擇元素,如果選擇的元素有多條,就要刪除選擇的元素集合。4.11撤消撤消上一步的操作。4.12恢復(fù)恢復(fù)上次的操作。4.13加粗對標(biāo)簽字段加粗,可對標(biāo)簽控件批量執(zhí)行。4.14斜體對字體設(shè)置成斜體,可對標(biāo)簽控件批量執(zhí)行。4.15刪除線對字體設(shè)置成刪除線,可對標(biāo)簽控件批量執(zhí)行。4.16增益如果選擇的是線條:點一次就增加一個像素的寬度。如果選擇的是標(biāo)簽:點一次就增加一個字體的大小。4.17減益如果選擇的是線條:點一次就減小一個像素的寬度。如果選擇的是標(biāo)簽:點一次就減小一個字體的大小。4.18調(diào)色版用來改變線條,標(biāo)簽的顏色。4.19表單事件每個事件的填寫內(nèi)容都是一致的:事件類型:事件類型就是執(zhí)行的方式,您可以根據(jù)自己的需要來選擇執(zhí)行方式。目前支持的事件內(nèi)容:執(zhí)行存儲過程,執(zhí)行sql, 執(zhí)行url, 執(zhí)行JS腳本。在執(zhí)行內(nèi)容中,執(zhí)行成功信息提示,執(zhí)行失敗信息提示都支持字段名類型的參數(shù)。執(zhí)行內(nèi)容約定: 請參考本章節(jié):Button 事件內(nèi)容約定。對異常的處理:當(dāng)對執(zhí)行的內(nèi)容失敗時,系統(tǒng)就會把執(zhí)行失敗的信息提示出來。比如:在執(zhí)行存儲過程時,如果執(zhí)行期間出現(xiàn)異常,或者在存儲過程拋出異常,系統(tǒng)就會把異常提示信息與拋出異常信息提示給用戶。頁面裝載前可以填寫一個為表單初試化的一個腳本,比如預(yù)先把一些值放入文本主從表里。頁面裝載后同上保存前做一些業(yè)務(wù)邏輯的檢查,不符合條件不讓其保存。保存后執(zhí)行相關(guān)的業(yè)務(wù)操作,比如把數(shù)據(jù)copy到其它的數(shù)據(jù)表中。5字段擴(kuò)展設(shè)置字段的擴(kuò)展設(shè)置是高級應(yīng)用,如下圖:5.0 表單裝載前數(shù)據(jù)填充需求背景:我們知道一個表單的數(shù)據(jù)包含四種模式,主表數(shù)據(jù)、從表數(shù)據(jù)(可多個)、一對多的數(shù)據(jù)(可多個)、還有一些附件與圖片數(shù)據(jù)(可多個)。在一個表單被加載前用戶往往要為這個表單初始化一些數(shù)據(jù)。比如發(fā)起一個請假流程,用戶進(jìn)入請假流程表單時,想把該用戶主表數(shù)據(jù)比如電話、郵件、部門、部門負(fù)責(zé)人信息(主表數(shù)據(jù)),請假的歷史數(shù)據(jù)(從表)都要初始化出來。在比如:已知一個訂單號在發(fā)起流程前要把該用戶的客戶基本信息(主表)與訂購清單(從表)預(yù)先填充表單并顯示出來。這樣的示例會很多,當(dāng)然可以利用表單事件來完成,但是書寫那個存儲過程太麻煩,為了解決這個問題,現(xiàn)在抽象出來這種應(yīng)用模式,以方便各位使用。設(shè)置方式: 表單設(shè)計器-擴(kuò)展設(shè)置=職特別說明: 從表也是從表,應(yīng)該為只讀,才符合正常的邏輯,如果非只讀也不能保存它。5.1數(shù)據(jù)獲取什么是數(shù)據(jù)自動獲取?當(dāng)一個字段的值是從其它表中取出來,或者通過后臺的計算出來,或者通過js腳本計算出來,我們稱為字段的數(shù)據(jù)自動獲取。自由表單的獲取方式分為,保存后獲取與js計算獲取兩種方式。自動獲取分為如下幾種方式:方式1:本表單中數(shù)據(jù)計算1, 表單中的字段計算分為主表字段之間的計算與從表之間的計算,它們的設(shè)置格式與約定規(guī)則都是相同的。如果設(shè)置的是表單的主表字段,那么是表單上主表控件值之間的計算了。如果設(shè)置的是從表的字段,那么就是表單列這間的計算。2, 表達(dá)公式支持中文也支持字段名稱,比如:你可以書寫成 單價*金額 也可以書寫成danjia*jiner3, 計算是以javascript 方式完成的。所以當(dāng)數(shù)值變化后就可以看到計算結(jié)果。方式2:利用SQL自動填充.比如: Select Addr From 商品表 WHERE No=FK_Pro FK_Pro是本表中的任意字段名。應(yīng)用案例:在請假流程表單中獲取兩個表單日期(開始日期,結(jié)束日期)的相隔的天數(shù)。處理步驟:1, 首先在建立一個函數(shù) GetSpanDays(dtForm,dtTo) 。 dtFrom,日期從,dtTo 日期到。2, 設(shè)置一個SQL,放在文本框里。 For sqlserver: SELECT GetSpanDays(DTForm,DTTo) For Orace : SELECT GetSpanDays(DTForm,DTTo) FROM DUAL3, 把此字段設(shè)置為只讀(只有只讀的字段才可以被自動計算)。工作原理:CCForm在保存后,首先檢查一個只讀字段是否有擴(kuò)展屬性,如果有就把設(shè)置的信息SQL中的變量替換下來,執(zhí)行這個SQL,把返回值賦給當(dāng)前這個只讀字段。方式3:本表單中外鍵列。比如:表單中有商品編號列,需要填充商品地址、供應(yīng)商電話。方式4:對一個從表的列求值。對于有從表的有效,在案例視頻中有一個報銷總金額=從表的小計中求合??偨Y(jié):對于3,4兩種模式都可以變相的用第二種模式實現(xiàn)它。5.2級聯(lián)下拉框主表中的級聯(lián)在表單中級聯(lián)下拉框經(jīng)常用到,下面是一個典型的事例。我們分析一下,地區(qū)與省份是關(guān)聯(lián)的,省份與城市是關(guān)聯(lián)的。這樣的業(yè)務(wù)規(guī)則我們可以抽象出來兩兩關(guān)聯(lián),就可以解決了無限級關(guān)聯(lián)的問題。配置步驟如下:第一步:配置片區(qū)與省份的關(guān)聯(lián)。在片區(qū)控件上點右鍵編輯它=擴(kuò)展屬性。點編輯進(jìn)入下一步驟。點擴(kuò)展設(shè)置進(jìn)入下一步驟。點新建通過sql方式聯(lián)動子下拉框,也就是片區(qū)聯(lián)動省份。重復(fù)上一步驟,讓片區(qū)省份聯(lián)動城市。 無限級的下拉框的聯(lián)動,就可以制作成功了。從表中的級聯(lián)從表的級聯(lián)與主表的級連設(shè)置方式一樣的。上面是效果圖。常見問題1, 在從表中設(shè)置級聯(lián):沒有正常設(shè)置下拉框的默認(rèn)值,導(dǎo)致整個頁面被保存。例如:省份設(shè)置默認(rèn)為山東,城市設(shè)置默認(rèn)為北京,這樣就會造成全頁面的從表存盤問題。2, 待續(xù)。5.3表單字段的輸入js腳本驗證標(biāo)題:表單字段輸入驗證.關(guān)鍵字: 表單設(shè)計器, 字段驗證. workflow,ccform, ccflow.說明:對控件的用戶輸入采取輸入控制,與輸入后的校驗。比如校驗是否是e-mail, 是否是手機(jī)號,身份證號等等。設(shè)置步驟操作路徑:字段屬性, 擴(kuò)展設(shè)置,腳本驗證。字段列表:驗證郵政編碼設(shè)置:函數(shù)庫分為:系統(tǒng)函數(shù)庫,與我自己定義的函數(shù)庫。系統(tǒng)函數(shù)庫是ccflow系統(tǒng)自帶的函數(shù)庫,它包括一些基本的,通用類型的驗證,比如:電話、郵件、郵政編碼。如果驗證需要特殊的驗證,那就需要自定義函數(shù)庫了,如何定義個性化的函數(shù)請參考下一章節(jié)。點保存按鈕就可以了,系統(tǒng)將會自動返回字段列表。這樣的一個腳本驗證就完成了,把它非常方便了為用戶的輸入完成了驗證設(shè)置。如何設(shè)置自定義驗證函數(shù)?按照如下步驟設(shè)置:1, 建立一個js腳本文件。2, 根據(jù)此腳本文件的事件,D:ccflowVisualFlowDataUserJSLib 對應(yīng)的文件目錄里。比如 :onblur 事件函數(shù)放在onblur目錄里,onkeypress事件函數(shù)放在onkeypress目錄里。3, 函數(shù)名必須為小寫,事例如下:function isMobil(ctrl) var patrn = /+0,1(d)1,3 ?(-?(d)| )1,12)+$/; if (!patrn.exec(ctrl.value) alert(非法的手機(jī)號碼.); return false; return true腳本驗證的工作原理系統(tǒng)函數(shù)的目錄為:D:ccflowVisualFlowDataJSLib用戶自定義的函數(shù)目錄為:D:ccflowVisualFlowDataUserJSLib表單設(shè)計器自動產(chǎn)生的腳本文件位與D:ccflowVisualFlowDataUserJSLibData在你執(zhí)行保存時,表單設(shè)計器就把所有的函數(shù)調(diào)取出來,生成一個腳本驗證文件,此文件命名的格式為。 表單編號+”.js” 。 并存放在: D:ccflowVisualFlowDataUserJSLibData 目錄下面。表單載入時,就把此腳本文件自動的調(diào)入到界面上。如何通過獲取表單控件值?我們知道在ccform表單設(shè)計器中有4種控件分別是dropdownlistbox, textbox,checkbox,rirdionbutton.系統(tǒng)內(nèi)置了三個函數(shù),分別是獲取相應(yīng)對象的值,請參考以上圖片。ReqTB 獲取TextBox類型字段的輸入值。ReqDDL 獲取DropDownListbox的選擇值。ReqCB 獲取CheckBox的值。如何在提交前做一個完整的表單輸入驗證?關(guān)鍵字: ccform 字段驗證 工作流程引擎 提交前輸入完整性驗證設(shè)置步驟:1, 建立一個自定義的js文件,放在D:ccflowVisualFlowDataUserJSLibData下面。2, 命名格式為表單ID+”_Self.js”。比如:ND1701_Self.js3, 在自定義js文件(ND1701_Self.js)中創(chuàng)建一個一個校驗函數(shù)。3, 打開該節(jié)點屬性=找到功能按鈕標(biāo)簽與狀態(tài)=發(fā)送按鈕標(biāo)簽=按鈕js函數(shù)文本框中填寫: return IsSubmit();5.4自動完成自動完成包括三大部分,主表中的自動完成,主從表的自動完成,從表中的自動完成。5.4.1 演示環(huán)境說明5.4.2主表中的自動完成以如下圖應(yīng)用為例,來說明:上圖是用傻瓜表單設(shè)計器設(shè)計的,但是對自由表單設(shè)計器一樣有效。用戶操作希望輸入合同編號后,能夠把客戶名稱,廣告內(nèi)容,業(yè)務(wù)員,廣告類別自動的填寫上。在合同號的控件中,輸入合同編號希望有自動完成效果,其它幾個控件是只讀的。在輸入合同號后,自動填寫其它的數(shù)據(jù)內(nèi)容。我們看看運(yùn)行的效果:配置步驟:打開表單設(shè)計器-找到合同號字段-編輯屬性-擴(kuò)展設(shè)置-自動完成。我們把復(fù)制出來的sql內(nèi)容顯示如下:SELECT TOP 10 htjb_htbh as No, isnull(htjb_khmc , htjb_ggnr) as Name, htjb_ggnr as guanggaoneirong , htjb_khmc as kehumingcheng, isnull(htjb_ywy, 未填寫 ) as yewuyuan, isnull(htjb_ggxs, 未填寫 ) as guanggaoleibie FROM dbname.dbo.guanggao_htjbxx WHERE htjb_htbh LIKE Key% 這個sql是一個結(jié)果集合:它必須有No,Name 兩個列,這兩個列是用來控制顯示在自動填寫的下拉框中。其它的列名需要與主表的字段對應(yīng)上才能自動填充上去。5.4.2主從表的自動完成在上一節(jié)中我們講到了主表的自動完成,現(xiàn)我在們講主從表的自動完成。以以下通用需求為例來說明:一個合同號跟著幾個廣告線路,在輸入合同號后,主表的信息管理輸出出來后,還要把從表的線路信息關(guān)聯(lián)出來。這樣的業(yè)務(wù)規(guī)則稱為主從表的業(yè)務(wù)關(guān)聯(lián)。5.4.3從表中的自動完成在從表中如果輸入了線路名稱需要把線路的其它信息在從表中反映出來。這里有兩種業(yè)務(wù)規(guī)則模式:1, 一條從表記錄對外鍵范圍無要求的。比如:輸入一個合同編號,把合同名稱,客戶名稱,客戶地址,合同類型都顯示這一個行的其它控件上。配置方式同主表的配置方式。2, 一條記錄對于外鍵字段的范圍有要求。仍然以以上業(yè)務(wù)規(guī)則為例:一個公交公司有n多車類型,有一個表存放公交車類型。一個線路的公交車類型是有范圍的,就是公交車類型表的一個子集。如上效果圖:當(dāng)我輸入個線路時,回車后系統(tǒng)就會把該線路下的車型過濾出來。配置方式:第一步:設(shè)置線路下拉框的自動完成。 第二步:點保存右邊的 級聯(lián)下拉框 連接,為車型下拉框設(shè)置過濾sql。 5.5 字段超連接字段超連接是把只讀的并且是可見的字段不以控件方式顯示,而是用戶超連接的方式顯示。字段超連接支持傻瓜表單設(shè)計與自由表單設(shè)計器。表現(xiàn)在表單主表數(shù)據(jù)與從表數(shù)據(jù)上。在主表表單設(shè)計上的表現(xiàn)這個功能適用于數(shù)據(jù)挖掘,功能導(dǎo)航。在從表的表現(xiàn)與設(shè)計5.6 Pop返回值事例:我們對彈窗取值,并不陌生,如下圖:在一個數(shù)據(jù)控件上雙擊它,或者點旁邊的icon 出來一個值的查詢窗口,點確定后,選擇的值返回到該控件上。設(shè)置方式字段-編輯-擴(kuò)展屬性-進(jìn)入下圖:在url文本框中填寫一個url。6從表的設(shè)計6.1從表的設(shè)計器6.2從表的屬性表英文名稱:從表編號。表中文名稱:從表名稱物理表名稱: 默認(rèn)值可以改變默認(rèn)與從表ID一致。操作權(quán)限:詳見下頁介紹。對從表操作的權(quán)限控制:是否可以修改,增加行,刪除行。6.3從表屬性說明對于上圖的從表容易理解的屬性不在編寫,本章節(jié)主要講解難于理解的屬性。6.3.1操作權(quán)限控制對從表的數(shù)據(jù)權(quán)限的控制,用與分合流中的權(quán)限控制。比如操作員: 工作ID: 流程ID: 此屬性是對于分合流的從表數(shù)據(jù)權(quán)限進(jìn)行控制, 在分合流程中,每個一分支,填寫完數(shù)據(jù)后,需要匯總到指定的節(jié)點中去。6.3.2是否起用審核字段: 此部分詳見:6.3.3是否啟用多附件在現(xiàn)實應(yīng)用中會經(jīng)常出現(xiàn)在一個從表中每條數(shù)據(jù)也需要附件功能的支持,為此ccform 在從表屬性中擴(kuò)展了此功能,用戶只需要啟用這個設(shè)置就可以了。如果啟用了此功能,如下圖,保存后在底部控制按鈕會多顯示一個附件屬性按鈕。點此按鈕后可以進(jìn)入編輯此附件屬性功能。另外在最后顯示出來附件按鈕ICON.其它說明:1, 從表的附件也支持復(fù)制。2, 從表的附件權(quán)限控制與主表附件權(quán)限控制相同。運(yùn)行效果:6.3.4顯示格式顯示格式分為表格方式與卡片方式,這兩種方式應(yīng)用于不同的場合。表格方式: 卡片方式:6.3.5越位處理省略6.4 從表事件從表的事件的格式與主表的事件格式一樣的描述。在實際工作中,我們經(jīng)常用到從表保存完后要處理一些業(yè)務(wù)邏輯。比如:要根據(jù)主表的字段更新一些從表的信息。比如:在每條數(shù)據(jù)更新前后都要做安全性校驗。特別說明:對于從表保存前,保存后兩個事件,用符號獲取的變量是主表字段的變量。其它的事件是從表的字段。WebUser.No,WebUser.NameWebUser.FK_Dept 全局字段約定不變。6.5為從表設(shè)計導(dǎo)入數(shù)據(jù)模版應(yīng)用場景:對于大批量的明細(xì)表數(shù)據(jù)采集,在web上執(zhí)行就會給用戶帶來不方便,用戶迫切需要一個導(dǎo)入功能,比如事先把數(shù)據(jù)整理到excel中然后導(dǎo)入到表單明細(xì)表中。本章節(jié)介紹如何為ccform的明細(xì)表設(shè)置導(dǎo)入表單模板。執(zhí)行效果: 用戶點選項按鈕,到處制作步驟: 第一步:根據(jù)明細(xì)表制作一個excel 表(注意:費(fèi)用類型為枚舉或者外鍵類型仍然可以導(dǎo)入。)第二步:把此模板文件按照該明細(xì)表的ID存儲一個明細(xì)表ID+.xls 格式存儲到D:ccflowVisualFlowDataUserDtlTemplete 下面.比如: D:ccflowVisualFlowDataUserDtlTempleteND501Dtl1.xls 文件.第三步:打開明細(xì)表屬性,啟用設(shè)置可以導(dǎo)入功能。6.6 從表的多表頭設(shè)計關(guān)鍵字: ccform 從表 多表頭需求背景:多表頭是反映在復(fù)雜的報表中或者數(shù)據(jù)輸入界面中,它是對用戶的表頭進(jìn)行分組。如下圖:設(shè)計步驟:在設(shè)計模式下點多表頭,在里面填寫html腳本代碼。7一對多的關(guān)系設(shè)計7.1什么是一對多的數(shù)據(jù)關(guān)系?一對多的數(shù)據(jù)關(guān)系存儲是工作中經(jīng)常遇到,比如軟件支持的操作系統(tǒng),軟件是一個表,操作系統(tǒng)是一個表,軟件與支持的操作系統(tǒng)的關(guān)聯(lián)信息我們稱為一對多的關(guān)系存儲。7.2一對多的關(guān)系設(shè)計設(shè)計器如下圖:編號:表單唯一的ID號。描述:一對多的關(guān)系名稱。主題數(shù)據(jù)源:就是用sql指定一個內(nèi)容數(shù)據(jù)源,它需要三個列,編號,名稱,分組依據(jù),這里是操作員。分組數(shù)據(jù)源:就是用sql指定一個分組數(shù)據(jù)源,它需要二個列,編號,名稱,這里是部門。其它:Sql 支持變量比如: SELECT No,Name FROM PORT_DEPT WHERE NO LIKE WebUser.FK_Dept%7.3數(shù)據(jù)存儲格式是什么認(rèn)識到ccflow數(shù)據(jù)存儲格式,可以在此基礎(chǔ)上進(jìn)行數(shù)據(jù)需要。所有表單的一對多的關(guān)系處理請見表Sys_M2M.8 一對多多的關(guān)系設(shè)計8.1應(yīng)用背景8.2設(shè)計方式8.3數(shù)據(jù)存儲格式9表單的單據(jù)打印9.1單據(jù)打印總體概述應(yīng)用場景:我在設(shè)計流程時間,經(jīng)常遇到需要打印單據(jù)。比如:請假條,出庫單、入庫單。這些單據(jù)需要打印出來,存檔,或者遞交給相關(guān)的辦事人員。制作步驟:首先要明確單據(jù)打印的數(shù)據(jù)來源,明確表單的每個字段。其次需要制作單據(jù)模板。最后把此模板綁定到數(shù)據(jù)源上。單據(jù)打印功能:報表設(shè)計所見既所得支持多表單數(shù)據(jù)源支持字段的轉(zhuǎn)意輸出支持從表的打印9.2單據(jù)模板的制作Ccflow單據(jù)模板是一個rtf格式的文件,如下圖。用尖括號表示變量,變量就是表單的字段。9.3單據(jù)輸出格式約定 單據(jù)模板事例-基本的字段輸出-普通類型字段輸出:文本輸出 : 輸出內(nèi)容: 按文字輸出.文本輸出 : 輸出內(nèi)容: 2011-05-11日期文本輸出 : 輸出內(nèi)容: 2011年05月11日金額文本輸出 : 輸出內(nèi)容: 101.123金額人民幣輸出 : 輸出內(nèi)容: 101.12金額人民幣大寫輸出 : 輸出內(nèi)容: 壹百零壹元壹角貳分布爾類型數(shù)據(jù)輸出: 輸出 0布爾類型數(shù)據(jù)轉(zhuǎn)意輸出: 輸出 否布爾類型數(shù)據(jù)轉(zhuǎn)意輸出: 輸出 X布爾類型數(shù)據(jù)轉(zhuǎn)意輸出: 輸出 V 以性別為例枚舉類型輸出: 直接輸出 1 枚舉類型輸出標(biāo)簽: 直接輸出 男 以部門為例外鍵類型輸出: 直接輸出 01外鍵類型輸出標(biāo)簽: 直接輸出 總經(jīng)理室- 一對多的關(guān)系輸出 -約定格式為 表單ID+.M2M.+M2M編號事例: - 圖片標(biāo)記的輸出 - 用于圖片簽名。簽名:- 手寫版圖片輸出。手寫版: 格式為: OID+”.BPPaint.”+標(biāo)識ID.圖片輸出:多用于ICON輸出, AppPath 是應(yīng)用程序主目錄, OID. 是為了能夠取出參數(shù)。 - 明細(xì)表的輸出 -以下是表格的明細(xì)輸出:報銷內(nèi)容單價數(shù)量小計合計9.4單據(jù)生成的工作原理首先:系統(tǒng)把表單模板的所有的內(nèi)容都讀取到內(nèi)存里,然后遍歷每個字段串,找到尖括號的位置,并且找到尖括號的變量。以確定這些變量的集合,并把它放在緩存里。其次:根據(jù)變量集合獲取它的變量值

溫馨提示

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

評論

0/150

提交評論