前言:寫本篇原因而线。從已知目前,所有文檔中沒(méi)有找到一個(gè)可以說(shuō)明怎么做的嗡官。都是含糊其詞箭窜,或者版本太老沒(méi)有參考意義。本篇適合基礎(chǔ)薄弱人衍腥。
以單據(jù)自定義項(xiàng)1為例磺樱。給自定義項(xiàng)1添加自定義參照
1.創(chuàng)建前端js ,上級(jí)目錄也是新建
前端參照彈窗是由異步請(qǐng)后端婆咸,讀取數(shù)據(jù)并返回給前端渲染竹捉。以表型自定義參照為例,解析前后端綁定關(guān)系尚骄。
2.向bd_refinfo表中插入自定義參照活孩,插入后需重啟后端環(huán)境,前端模板才可以參照
插入數(shù)據(jù)說(shuō)明(關(guān)鍵字段):
refclass:代表后端Java類路徑乖仇,若只加輕量端參照此處可以為空;
refpath:代表NCC參照前端js路徑;
mobilerefpath:代表移動(dòng)端參照的前端js路徑;
istreelazyload:樹形參照和樹表形參照默認(rèn)”Y”询兴,表型參照默認(rèn)“N”;
客戶化配置-->模板設(shè)置-集團(tuán)-->找到模板-->對(duì)應(yīng)字段
找到自己插入的自定義參照
注意:前端打開節(jié)點(diǎn)時(shí)NC獲取參照是讀取數(shù)據(jù)庫(kù)中插入的js路徑進(jìn)行加載js文件乃沙。如果bd_refinfo維護(hù)錯(cuò)誤,會(huì)導(dǎo)致控件消失
3.編寫后端java參照
java文件為新建文件诗舰,繼承類型為DefaultGridRefAction(表型參照)
方法說(shuō)明:
getRefMeta()方法中設(shè)置RefMeta對(duì)象各屬性對(duì)應(yīng)的String值警儒,即sql語(yǔ)句中我們需要查詢的字段,以 及設(shè)置要查詢的表名眶根。
getExtraSql()方法會(huì)拼接Sql語(yǔ)句中where 后的條件語(yǔ)句(對(duì)應(yīng)NC中g(shù)etClassWherePart蜀铲、getEnvWherePart方法)。
getOrderSql()方法設(shè)置sql語(yǔ)句中的order by內(nèi)容
4.寫第一步創(chuàng)建的js邏輯
前端參照彈窗是由異步請(qǐng)后端属百,讀取數(shù)據(jù)并返回給前端渲染记劝。以自定義表型參照為例,解析前后端綁定關(guān)系族扰。
5.修改config.action下的xml與config.authorize下的xml
通過(guò)以上queryTreeUrl厌丑、queryGridUrl訪問(wèn)路徑定欧,在向?qū)傻呐渲梦募姓业綄?duì)應(yīng)的配置信息,并觸發(fā)對(duì)應(yīng)的工具類怒竿。配置文件如下所示:
6.重啟后端砍鸠、重啟前端、盡量瀏覽器關(guān)閉重新打開耕驰。
7.前后端 配置對(duì)照 更新時(shí)間(截圖非前六步對(duì)應(yīng)爷辱,只是說(shuō)明幾個(gè)配置之間的關(guān)系)