用于執(zhí)行自定義按鈕觸發(fā)邏輯
例:用戶點擊客戶下的延期按鈕,彈出界面,輸入申請延期時間,觸發(fā)審批,通過后,可以延遲相應(yīng)的公?;厥諘r間。
按鈕函數(shù)的三種返回類型應(yīng)用場景:
Map
返回值類型是 Map ,通常是和頁面交互使用的 通常返回的信息需要包含 error : 是否出錯 errorMessage : 出錯后提示的錯誤信息 block : 提示異常信息后,是否阻塞保存
[ "error":true, "errorMessage":"如果失敗了,提示的錯誤信息", "block":true ]
String
返回一個String類型,內(nèi)容必須是一個有效的URL,點擊按鈕后頁面跳轉(zhuǎn)到該返回值對應(yīng)的URL。
UIAction
按鈕跳轉(zhuǎn)到標(biāo)準(zhǔn)頁面或者自定義組件的場景,需要配置返回類型為UIAction的按鈕函數(shù)。
UIAction 跳轉(zhuǎn)到詳情頁自定義組件:
UIAction openDialogAction = OpenDialogAction.build{ userData = [:] //傳遞給自定義組件的數(shù)據(jù)鍵值對list title = "title" //標(biāo)題 width = 123 //寬高 maxHeight = 123 //最大高度 component { //組件的apiName apiName = "comp_yuio8__c" } } return openDialogAction
函數(shù)的context.data、context.details會作為默認(rèn)參數(shù)objectDate、details傳遞給自定義組件。
UIAction 跳轉(zhuǎn)到列表頁自定義組件:
UIAction openDialogAction = OpenDialogAction.build{ userData = [:] //傳遞給自定義組件的數(shù)據(jù)鍵值對list title = "title" //標(biāo)題 width = 123 //寬高 maxHeight = 123 //最大高度 component { //組件的apiName apiName = "comp_yuio8__c" } } return openDialogAction
函數(shù)的conext.dataList會作為默認(rèn)參數(shù)objectIds傳遞給自定義組件。
UIAction 跳轉(zhuǎn)到標(biāo)準(zhǔn)組件:
//1 跳轉(zhuǎn)打印模板 /** * data 打印時需要傳遞的參數(shù) */ UIAction uiAction = WebAction.build(){ data = [ 'validatePreAction':false, //前驗證必須是false 'templateId':"5e994bbfa5083d97d6ae7afa", //指定打印模板 "dataId":"5d428ed922381800018d946c", //數(shù)據(jù)的id "orientation":"Landscape" //橫向還是縱向 ] type = 'print' //具體組件的細(xì)分類型 } return uiAction //2 跳轉(zhuǎn)新建頁面 UIAction action = WebAction.build() { type = 'form' data = [apiname: 'AccountObj', record_type: 'default__c'] } return action