在填報模板中,往往會遇到一般的校驗可能無法滿足您的需求,這時可以使用公式對單元格進行校驗。下面就以報表平臺FineReport來進行講解。
工具/原料
報表軟件FineReport
大小:148.2M 適用平臺:windows/linux
方法/步驟
假設用戶的已設定權限的用戶名密碼錶為userinfo,內容如下
模板設計
定義一個報表參數,命名為fr_username(用於修改密碼使用),然後表樣設計如下:
報表填報屬性設置
按照下圖設置報表填報屬性:
數據校驗設置
選擇模板>報表填報屬性>數據校驗,在校驗公式內輸入:B2==sql("FRDemo","select * from userinfo where username='"+$fr_username+"'",3),在校驗出錯信息中輸入:密碼與原始密碼不同,不能修改!如下圖:
校驗的意義:B2裡面的數據必須和當前用戶的密碼相同,若不同則報錯。
注:這個例子只是說明將單元格中的數據和數據庫的數據進行匹配校驗,您也可以對單元格進行其它校驗設置。
填報預覽
點擊填報預覽,以用戶名為aaa進行登錄,訪問該模板,當輸入的舊密碼不是123時,點擊提交就會彈出如下對話框:
當輸入舊密碼123,新密碼1234,點擊提交,用戶名aaa的密碼已修改為1234,如下圖: