版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄公式定義器擴(kuò)展1目錄1用于何處?1公式定義器的構(gòu)成1公式定義器的類型3常見的問題4表單控件初始化值5步驟一:點(diǎn)擊公式定義的按鈕5步驟二:編寫邏輯代碼5分支條件表達(dá)式6步驟一:畫出流程圖7步驟二:編寫條件表達(dá)式8節(jié)點(diǎn)處理人9步驟一:配置節(jié)點(diǎn)處理人9步驟二:調(diào)用組織架構(gòu)的方法10步驟三:通過邏輯代碼來返回11用于何處?公式定義器主要用于自定義表單控件的初始值,審批節(jié)點(diǎn)的審批人,自動(dòng)分支的條件表達(dá)式等地方。公式定義器的構(gòu)成公式的特點(diǎn):1、 具有運(yùn)行上下文。簡(jiǎn)單地說,就是變量,參與計(jì)算的數(shù)據(jù)。如:“$報(bào)銷金額$”。2、 通過一些邏輯運(yùn)算符,進(jìn)行一系列的運(yùn)算。對(duì)于相對(duì)復(fù)雜的運(yùn)算,引入了函數(shù)的概念,方
2、便了公式的編寫,如:“$時(shí)間.獲取時(shí)間差$($結(jié)束時(shí)間$, $開始時(shí)間$)”。3、 最終會(huì)返回一個(gè)結(jié)果。結(jié)合下圖的公式定義器界面,可以更好地幫助您了解公式定義器。變量:變量是參與公式計(jì)算的數(shù)據(jù)。在審批流程模塊中,變量可以來自系統(tǒng)預(yù)定義的字段,如:標(biāo)題、創(chuàng)建時(shí)間、創(chuàng)建人等;還可以來自自定義表單的字段,如:報(bào)銷金額、開始時(shí)間、結(jié)束時(shí)間等。在公式定義器中引用的格式為:“$變量名$”,如:“$報(bào)銷金額$”。變量可以在公式定義的左邊樹變量列表中直接選擇引用。邏輯運(yùn)算符:溫馨提醒:公式定義器中的邏輯運(yùn)算符完全符合Java的語法,若您對(duì)Java語法了如指掌,請(qǐng)忽略下面這張表。分類符號(hào)說明數(shù)學(xué)運(yùn)算符號(hào)+(加)
3、-(減,或負(fù))*(乘)/(除)%(取模,即余數(shù),如11 % 10 = 1)邏輯判斷符>(大于)<(小于)>=(大于或等于)<=(小于或等于)=(等于)!=(不等于)!(非)注意:這幾個(gè)函數(shù)都用于數(shù)字類型的判斷,對(duì)象類型的判斷不能使用(字符串屬于對(duì)象類型),詳見“對(duì)象相等”對(duì)象相等equals(等于)樣例: ”a”.equals(“a”),返回真常用表達(dá)式true真false假return終止后面運(yùn)算,直接返回值,如return true;邏輯表達(dá)式?值1:值2若邏輯表達(dá)式成立,則返回值1,否則返回值2if(邏輯表達(dá)式)else如果否則函數(shù):函數(shù)是系統(tǒng)預(yù)定義好的一些邏輯算
4、法,每個(gè)函數(shù)包含若干個(gè)輸入?yún)?shù)(某些函數(shù)可能沒有輸入?yún)?shù))和一個(gè)返回值。函數(shù)的格式:$函數(shù)名$(參數(shù)1,參數(shù)2,)。函數(shù)可以通過左邊樹的函數(shù)列表進(jìn)行選擇,鼠標(biāo)放在左邊樹的函數(shù)的時(shí)候,會(huì)顯示該函數(shù)的幫助信息。公式定義器的類型公式定義器里面的所有變量都有數(shù)據(jù)類型,函數(shù)中的輸入輸出也有數(shù)據(jù)類型,公式定義的返回結(jié)果也有數(shù)據(jù)類型。如何確認(rèn)一個(gè)變量的數(shù)據(jù)類型?比如在審批流程模塊中,變量可能來自系統(tǒng)預(yù)定義的字段,也可能來自表單自定義的字段。系統(tǒng)預(yù)定義的字段來自系統(tǒng)的數(shù)據(jù)字典(這點(diǎn)開發(fā)人員應(yīng)該非常清楚),在此我就不多加描述。自定義表單的字段類型如何確定呢?自定義表單元素類型確定單行輸入框由該控件的“數(shù)據(jù)類型”
5、屬性確定是字符型還是數(shù)字型。多行輸入框字符型單選按鈕由該控件的“數(shù)據(jù)類型”屬性確定是字符型還是數(shù)字型。多選按鈕字符型,多值用;分隔下拉菜單由該控件的“數(shù)據(jù)類型”屬性確定是字符型還是數(shù)字型。富文本框字符型附件不參與任何公式計(jì)算地址本選擇框組織架構(gòu)對(duì)象類型(SysOrgElement)日期選擇框日期時(shí)間型(Date)隱藏字段由該控件的“數(shù)據(jù)類型”屬性確定是字符型、數(shù)字型、日期型。如何確認(rèn)函數(shù)的參數(shù)類型和返回值類型?當(dāng)鼠標(biāo)放在左邊樹的每個(gè)函數(shù)節(jié)點(diǎn)時(shí),都會(huì)提示該函數(shù)的簡(jiǎn)單介紹,信息包括:您該輸入什么樣的參數(shù),將輸出什么樣的值。如何確認(rèn)公式返回結(jié)果類型?要確認(rèn)公式返回結(jié)果類型,需要從使用公式的場(chǎng)景來理解
6、。下面舉幾個(gè)場(chǎng)景:1、 流程定義中的條件分支:顯然這里應(yīng)該返回true/false。2、 流程定義中,采用公式定義器來定義處理人:返回值類型為組織架構(gòu)對(duì)象(或組織架構(gòu)對(duì)象列表)。3、 表單自定義中某個(gè)字段的初始值:可以根據(jù)該字段的類型確定公式應(yīng)該返回什么類型的數(shù)據(jù)。返回結(jié)果類型的自動(dòng)轉(zhuǎn)換公式定義器會(huì)自動(dòng)將返回的結(jié)果轉(zhuǎn)換成合適的類型。期望返回類型可自動(dòng)轉(zhuǎn)換的類型字符所有類型日期/時(shí)間/日期時(shí)間整數(shù):1970-01-01 00:00:00 GMT等于0,往后1毫秒的時(shí)間加1。字符:格式為1970-01-01 00:00數(shù)字字符布爾(true/false)字符:true/false/t/f/yes/
7、no/y/n/1/0數(shù)字:1/0組織架構(gòu)等model字符:以該字符作為ID的對(duì)象另外,公式定義器還能將列表自動(dòng)轉(zhuǎn)換成單值,或?qū)沃底詣?dòng)轉(zhuǎn)換成列表。常見的問題校驗(yàn)失敗?由于公式定義器的語法過于靈活,所以公式定義器的校驗(yàn)方法中,只能簡(jiǎn)單模擬數(shù)據(jù)進(jìn)行校驗(yàn),所以無法完全校驗(yàn)公式是否可以正常運(yùn)行。所以,當(dāng)您寫一些比較復(fù)雜的公式的時(shí)候,公式定義器可能會(huì)提示:“表達(dá)式校驗(yàn)未通過!原因可能是由于表達(dá)式編寫錯(cuò)誤,或者校驗(yàn)器無法模擬真實(shí)數(shù)據(jù)導(dǎo)致。是否仍使用該公式?”當(dāng)出現(xiàn)該提示的時(shí)候,若您確認(rèn)公式的書寫是正確的,可以忽略該提示信息。常見誤區(qū):字符串相等在編寫公式的時(shí)候,經(jīng)常會(huì)用到字符串的比較,比如我們需要判斷一個(gè)
8、城市的字段值是否為深圳,那我們很自然地會(huì)將公式寫成:$城市$=”深圳”很抱歉,上面的語法是無法得到您期望的結(jié)果。正確的寫法是:”深圳”.equals($城市$)公式解釋器中,將字符串看成了是一個(gè)對(duì)象,這個(gè)對(duì)象的相等只能采用equals符號(hào)??罩羔樺e(cuò)誤?字符串、日期、組織架構(gòu)等都是對(duì)象類型,我們可以通過“對(duì)象1.equals(對(duì)象2)”的方式來比較兩個(gè)對(duì)象是否相等,也可以訪問對(duì)象的屬性/方法,但若這個(gè)對(duì)象可能沒有被賦值,那當(dāng)訪問的時(shí)候就會(huì)出空指針的錯(cuò)誤,所以在使用公式的時(shí)候,請(qǐng)盡量保證使用的變量是必填項(xiàng),避免空指針錯(cuò)誤。解決空指針的方法見“在公式定義器中使用腳本語言”小節(jié)。表單控件初始化值我們把
9、自定義表單里面的薪資的控件值初始化為一個(gè)不大于10000的隨機(jī)整數(shù)。步驟一:點(diǎn)擊公式定義的按鈕步驟二:編寫邏輯代碼import java.util.Random;Random r = new Random();return r.nextInt(10000);分支條件表達(dá)式我們根據(jù)薪資的數(shù)額來決定是否需要老總審批,比如薪資大于8000的要老總來審批,小于等于8000的就不需要。步驟一:畫出流程圖步驟二:編寫條件表達(dá)式節(jié)點(diǎn)處理人公式定義器里面已經(jīng)內(nèi)置了一些函數(shù),我們可以在流程,自定義表單中使用它。比如我們把經(jīng)理審批節(jié)點(diǎn)設(shè)置為提交人的直線領(lǐng)導(dǎo)。步驟一:配置節(jié)點(diǎn)處理人步驟二:調(diào)用組織架構(gòu)的方法聲明機(jī)器人節(jié)點(diǎn)service類,具體樣例如下所示:$創(chuàng)建者$.getLeader(0);步驟三:通過邏輯代碼來返回公式定義器里面允許我們編寫邏輯代碼。比如如果創(chuàng)建人沒有直線領(lǐng)導(dǎo),那么我們則固定返
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津市和平區(qū)匯文中學(xué)2024-2025學(xué)年八年級(jí)上學(xué)期期末考試物理試卷(含答案)
- 吉林省吉林市2024-2025學(xué)年高一上學(xué)期1月期末地理試題(含答案)
- 浙江省杭州蕭山2023-2024學(xué)年第二學(xué)期期中檢測(cè)卷 六年級(jí)下冊(cè)科學(xué)
- 上半年銷售工作總結(jié)
- 四年級(jí)數(shù)學(xué)(簡(jiǎn)便運(yùn)算)計(jì)算題專項(xiàng)練習(xí)與答案
- 2022年初級(jí)《銀行業(yè)法律法規(guī)與綜合能力》考試題庫(kù)(核心題版)
- 《創(chuàng)意案填寫說明》課件
- 2022《創(chuàng)新設(shè)計(jì)》高考?xì)v史江蘇專用二輪專題復(fù)習(xí):專題一-中外古代文明的演進(jìn)-專題提升練(一)
- 【名師一號(hào)】2021年新課標(biāo)版物理選修3-5-雙基限時(shí)練12-原子結(jié)構(gòu)
- 《典型案例分析圖》課件
- 【醫(yī)療】急診預(yù)檢分診專家共識(shí)課件
- 國(guó)家開放大學(xué)《西方經(jīng)濟(jì)學(xué)》復(fù)習(xí)題庫(kù)及參考答案
- 北京版小學(xué)三年級(jí)數(shù)學(xué)下冊(cè)全套課件
- 中國(guó)近代史綱要(完整版)
- 修井緊急情況的處理措施應(yīng)急方案
- 智能座艙市場(chǎng)與技術(shù)發(fā)展趨勢(shì)研究白皮書課件
- 中級(jí)無機(jī)化學(xué)答案版
- 7、主要施工管理計(jì)劃
- 潛水泵安裝方案73853
- 安全操作規(guī)程(供參考)(公示牌)
- 2022年公司出納個(gè)人年度工作總結(jié)
評(píng)論
0/150
提交評(píng)論