FM明明「輸入欄位的提示」自己就能做了,為何還要增加一個欄位來幫它的忙呢?
我們從”按時付費統計表”範例來看”公司資訊”資料表
下圖是此表之版面,其中【標誌】欄位中,它外面沒有欄位名稱”標誌”,裏面卻存在一個為顯示用之【<<標誌暫存區>>】欄位,它原本交疊在一起,我點了它一下,故意拖曳開,才看得分明。<<標誌暫存區>>不是一個輸入欄位,而是T物件的一個文字顯示物件,因此【標誌暫存區】欄位並沒有參與實體的資料輸入。
查看”公司資訊”資料表的欄位,以下選取狀態有這兩個欄位
【標誌】欄位為容器,從其 選項/註解 區空白,得知它並沒做任何設定
【標誌暫存區】欄位為計算,並為其做了 選項/註解 設定,快點兩下可以看到它的計算情形如下:
Let (
text = If ( Get ( 系統平台 ) > 2 ; "點一下以加入您的標誌" ; "拖曳您的商標至此" ) ;
If ( IsEmpty ( 標誌 ) ; text ; "" )
)
因為是為了提示,所以此欄位的計算結果值要設為文字。
明明【標誌】欄位就能設定提示,為何它要多此一舉,額增加一個欄位,來做這件提示的工作?
我們再細看,它用了四個函式Let、IF、Get、IsEmpty及一個變數text,完成提示的設定。
原來它是為了跨平台顯示使用,組成的涵意即是:
Let只用了一個運算判斷式後,就進行值的取得
Let(將運算判斷式取得的值帶入一個變數中 ; 進行值的取得),解析如下:
運算判斷:
以Get ( 系統平台 ) > 2,取得使用者用設備的值,
以If判斷Get ( 系統平台 )取得之值,若 >2為手機,就以"點一下以加入您的標誌"提示,<=2為PC,就以"拖曳您的商標至此"提示,並將提示內容儲入text變數中。
值的取得:
If ( IsEmpty ( 標誌 ) ; text ; "" )
若是【標誌】欄位,沒有資料,就以text變數為內容,否則就以""(空字串)為內容。
因此可得知:
【標誌暫存區】欄位的計算後的值,在【標誌】欄位還沒有內容時,就是隨使用者的設備而變化提示的內容,有內容時則為空字串。



