設計手冊
遇到問題了嗎?不用擔心,答案都在這。
全站搜尋

設定欄位的預設值

設定欄位預設值

有時候你可能會需要讓 Ragic 自動在欄位中填上預設值,像是在資料輸入時自動記錄當下的日期或時間,就可以省去手動輸入的時間;或留下記錄者的資訊(最後修改人、最後修改時間等);甚至選項也可以套用預設值,例如「狀態」的選項欄位,預設狀態如果都是一樣的話就可以透過預設值節省手動選擇的時間,同時避免錯誤。

在設計模式中,欄位設定下的基本點擊預設值旁的連結,就能開啟設定介面。可以自行輸入預設值或從既存選項中選擇。

提供的變數

設定預設值時也可以使用系統提供的變數,讓你在輸入或更新資料時,自動產生預設值。

預設值 預設格式 變數 範例
建立日期 yyyy/MM/dd $DATE 2015/05/19
建立時間 HH:mm:ss $TIME 09:21:05
建立日期、時間 yyyy/MM/dd HH:mm:ss $DATETIME 2015/05/10 09:21:05
建立年份 yyyy $YEAR 2015
建立月份 M $MONTH 5
建立工作日 E $WEEKDAY 2
建立使用者名稱 Name LastName $USERNAME 黃惠珍
建立使用者e-mail email@domain.com $USERID jane@initech.com
最後修改日期 yyyy/MM/dd #DATE 2015/05/23
最後修改時間 HH:mm:ss #TIME 09:32:06
最後修改日期、時間 yyyy/MM/dd HH:mm:ss #DATETIME 2015/05/23 09:32:06
最後修改年份 yyyy #YEAR 2015
最後修改月份 M #MONTH 5
最後修改工作日 E #WEEKDAY 2
最後修改使用者名稱 Name LastName #USERNAME 林凱倫
最後修改使用者e-mail email@domain.com #USERID karen@initech.com
序列 1,2,3 $SEQ 3

針對「建立」相關預設值變數,如果是先有資料後,才新增預設值的話,由於預設值是在新增或編輯資料當下觸發的,如果欄位是空值會變成抓到當下的編輯使用者與編輯時間,而非該筆資料真正的建立人及建立時間。為了避免此狀況,建議先手動執行一次空值自動填入來帶出資料原本的建立資訊。

自行輸入預設值格式

你可以從 Ragic 提供的格式選項中挑選;或是自行設定一個完全不同的格式,只需要在預設值選項下方的格式框直接輸入格式。也可以為日期欄位自訂日期格式

套用公式

你也可以為預設值套用公式,只要在設計模式下勾選「以公式執行」,即可編輯公式。支援的公式列表請參考此篇說明

需要特別注意,在預設值套用公式僅有在第一次編輯參照欄位的時候會執行。後續變更參照欄位時,公式將不會重算。如果希望每次編輯時都可以重算,請使用一般的公式

另外,如果表單開啟了自動儲存模式且公式參照一個以上的欄位,預設值公式也不適用,請改用一般公式。因為自動儲存模式會在使用者填寫資料時多次自動儲存欄位值,系統可能在使用者還沒填完所有參照欄位值時,就第一次自動儲存資料並執行預設值公式,導致結果與預期不同。

與唯讀一起使用

預設值欄位常與唯讀一起使用,確保使用者無法手動更改這個值。

空值自動填入

當表單已經有資料的情況下,後來才新增欄位並套用預設值,或是原本沒有套用預設值的欄位,後來才設定預設值的話,Ragic 不會自動依據新的預設值重新填入已經儲存的資料,所以舊資料中這個新欄位的值就會是空的。

如果希望空值都能自動填入預設值時,例如:建立日期、建立使用者或匯率欄位等,可以在設計模式下,參考以下步驟:

步驟 1:進入設計模式新增或修改需要的預設值

步驟 2:儲存表單設計

步驟 3:選擇要填入預設值的欄位,再點空值自動填入

點擊後,系統會在背景自動填入,如果資料庫中有較多資料可能會需要一些時間。此時可以離開設計模式進行其他操作,自動填入完成後會於左下方跳出通知。

再回到表單頁就可以看到自動填入的欄位值。

在選擇使用者或群組欄位設定多個預設值

希望在選擇使用者欄位設定多個預設值時,可以用「|」來分隔多個值,例如在預設值填入「Ian|george」 ,就會帶出 Ian 與 george 兩位使用者。

選擇群組欄位同樣也可以透過「|」來分隔多個值。

注意:如果使用者或群組名稱本身已經包含「|」字元,那就必須自行做轉譯,使用 「%7C」取代原本的「|」字元,例如希望帶出「IT」與「RD|工程師」這兩個群組,則要寫成這樣:

回最上面 目錄

延伸閱讀

馬上註冊
免費試用 Ragic!

用 Google 帳號註冊

立即科技 Ragic, Inc.
02-7728-8692
info@ragic.com
台北市中正區南昌路二段81號9樓