連結兩個不同表單頁的工作表格,這個動作包含了新增連結欄位與載入欄位。
我們想要在敲訂單時可以自動跳出顧客的基本資料,節省打基本資料的時間,可是顧客的基本資料卻存在另一個表單中,此時就可以利用這個方便的功能。
從上面這個銷售訂單中,可以選擇是哪位顧客購買的欄位,這就是連結欄位。
這個欄位連結到的值,是另一個表單選取的欄位標頭。這個選取的欄位標頭是連結管理內,用來分門別類每筆資料的名稱。在下面範例圖示中,銷售訂單內的"姓名"欄位連結到顧客清單內的"姓名"欄位。所以對於新手使用者來說,選擇一個可以辨認一筆資料的欄位(如同欄位標頭的搜尋功能)是一個可以方便管理的好習慣。
當使用者在銷售訂單中選擇一個顧客時,Ragic可以自動地跑出顧客的資訊,像是銷售訂單中的聯絡電話、地址與E-mail信箱。透過連結載入,可以大幅減少資料作業,也可以讓使用者感覺你的資料庫反應迅速。我們稱這些欄位型態為載入欄位。
連結欄位和對應欄位都可以在連結管理中簡單設定,在表單設計模式下,點選 表單工具 然後選擇 連結 & 載入 即可進入連結管理。
連結管理會先要求你設定連結欄位,你可以點選頁面右邊的一個欄位標頭,將其設定為連結的欄位,這邊要注意的是連結欄位在來源表單一定要是獨特值,系統才能夠正確辨識每筆資料。
接下來再點選頁面左邊的資料為相對應的欄位,這個頁面左邊的資料正是目前編輯的表單。要記得,這個欄位會自動的連結出相對應的內容。連結管理會顯示連結欄位為藍色。
設定完連結欄位之後,就可以設定你想要載入的資料欄位,來設定載入欄位。當使用者在連結欄位選取一個值,這些欄位會自動載入對應的值。設定載入欄位的操作方法與設定連結欄位相同,需要注意的是連結管理會顯示載入欄位為灰色。你也可以不用事先設定好頁面左方欄位,只要先點選頁面右方的欄位,再拖曳到頁邊左方的空白處,Ragic便會自動為你新增好此對應的欄位。
如果有已經設定好的連結與載入欄位,你也可以直接點該欄位後從左側工具列快速打開連結管理視窗。
連結欄位右上方會顯示藍色的L圖示;載入欄位右上方會顯示灰色的L圖示。
點擊該圖示的話,會將所有該組連結載入的欄位框選出來,以便快速查找。
你也能將其他表單的資料連結&載入到子表格中。最常發生在輸入子表格每筆資料時,你希望在選擇某一欄位的值以後(或是輸入第一個字來看相關選項),就會自動載入後面欄位的相關資料。像是在訂單資料中會有多筆商品項目資料。
關於子表格的連結方法,請參考以下從子表格產生新表單及連結欄位到原始表單文件。
當連結欄位建立在子表格的時候,你可以勾選子表格連選。
注意:同一個連結欄位,子表格連選及多選只能擇一設定。
如此一來就可以一次選擇多筆資料,並依序填入子表格中,結束後需要手動關閉選擇的視窗。(非連選狀態下則是選取一筆資料後,視窗會自動關閉)
如果需要多次從同一張表單連結載入不同資料,像是訂單上的訂購人及收件人不一樣,但資料來源卻都是從客戶名單連結與載入,這種類似情況不適合連結&載入到子表格,此時就需要利用在同一張來源表單設定多組的連結與載入。
我們就以剛剛所提到的訂單的例子來示範:
在表單設計模式下>連結工作表>連結與載入
首先你會看到訂單上第一組從客戶資料表單的連結與載入,在訂單表單上作為訂購人的資料。
右上方有主連結欄位:訂購人,這是一個下拉式的選單,選擇"建立一組新的連結"。
選擇"建立一組新的連結"後,你就能再一次從"客戶資料"做連結與載入。
當然,相同的欄位名稱可以稍作修改,才不容易有搞混的情形。
像是這張訂單上,這兩組同樣來源的連結與載入,分別為訂購人與收件人。
儲存設計之後,訂單就可以連結與載入客戶資料兩次了。
此外,你也可以利用"建立一組新的連結"來連結與載入原表單的資料。
如果你想要移除在欄位上設定好的連結,你只要在 連結管理中,點一下你想移除的連結,然後點選連結旁的紅色取消符號即可移除此載入欄位中兩個欄位之間的連結。
如果你移除連結欄位藍色的連結線,先前設定好的所有載入欄位也會一起被移除。
在連結管理中,這樣的連結方式是不可行的,你不能從子表格連結&載入到一般欄位(連結管理中,右邊的子表格連到到左邊)。因為子表格可能會包含多筆資料,所以可能會出現很多不同的欄位值,但一般欄位只會有單一一個值。
一組連結與載入只能針對同樣性質的欄位做設定,例如設定連結與載入到一般獨立欄位的話,就不能有其中一個連結線條是連到非獨立一般欄位,反之亦然,如果是連結與載入到子表格欄位,那就不能其中一個連結到一單獨立欄位。因為一般的獨立欄位是用來儲存單一欄位值,子表格欄位是用來儲存多筆資料的欄位值,因此沒有辦法一下要連結載入到單一欄位一下卻要載入到子表格的多筆資料的欄位中。
也不支援連結獨立欄位後,載入子表格欄位
或是也不能夠連結載入到不同的子表格,因為每個子表格都是分開儲存資料的,沒有辦法在一個子表格建立資料時自動在另一個子表格帶入資料。
在Ragic上這麼做並不會產生技術上的問題,但如果你有其他的使用者使用此表單,把不同的子表格放在同一列上可能會造成其他使用者困惑。
連結欄位基本上也是一種選項欄位(從其他表單選擇),因此在設定連結欄位時,就像是在定義選項,因此連結欄位的連結應該要從一個可以判斷每個選項都是獨特的選項的欄位來當做連結的依據。
也就是說,設定連結與載入時,在右邊的表單中,連結欄位的來源建議要是該表單的獨特值欄位(KEY欄位,例如編號、編碼)。
如果一開始在設定連結與載入的連結欄位時(藍色的線),右邊來源表單上有些欄位是呈現灰色的話,多數是因為那些是選項欄位、連結欄位或數字欄位,而這兩種欄位通常不會是代表獨特值的欄位種類,因此無法從這些欄位來連結。
系統執行連結載入將資料填入時,其實有一個固定的順序,系統會依照「目的表單」上載入欄位排列的順序,「由上往下、由左往右」填入資料,也就是說,當載入欄位被排在不同列時,上方列的欄位會先被填入資料;當載入欄位被排在同一列時,左方的欄位會先被填入資料。
而由於連動選項需要先有母選項欄位值,才會有子選項欄位值,當你的設計的連結載入關係中,載入欄位包含連動選項時,如果你在目的表單中,把母選項欄位放在子選項欄位的下方或同列的右方,這組連結載入觸發時,按順序應該先填資料的子選項還沒有值可以填入,這就會造成子選項的載入欄位無法正確運作。
舉例來說,如果你的載入欄位包含連動選項 — 「汽車品牌」(母選項)、「汽車車型」(子選項)兩個欄位,在目的表單中,你把「汽車車型」欄位放在「汽車品牌」的左邊,這就會導致「汽車車型」欄位載不到對應的值。因此,正確做法是將「汽車車型」欄位放在「汽車品牌」的右邊或下方列。
系統中不能重複載入在多版本表單已經載入過的欄位,假設有一張「出貨單(業務用)」跟一張它的多版本表單「出貨單(物流用)」,如果在「出貨單(業務用)」已經載入「客戶名稱」欄位。
在多版本表單「出貨單(物流用)」就算將「客戶名稱」欄位刪除,也不能再次載入該欄位(顯示為灰色)。如果要將該多版本表單欄位加回來請參考這篇說明。
如果A表單上有欄位的值是從B表單連結載入的資料,B表單上資料做修改並不會反映在A表單先前存的資料中。
假設A表單是訂單,B表單為客戶資料,當敲定一張王先生的訂單時,他的地址資訊是藉由客戶資料表單上的資訊連結載入的。假設王先生後來搬家了所以在客戶資訊上必須更改他的地址,但先前既有的訂單上確實還是要顯示當初的地址而非後來搬家的新地址。
有些情況下,修改了B表單的資料後,會希望A表單上的連結與載入欄位可以同步更新。這時候可以在表單頁的 設計模式點選連結工作表來看有連結與載入的表單,並點選想要同步的資料表單旁的齒輪。
在視窗中你可以選擇,是要針對所有資料,將這組或是將所有連結與載入的欄位同步為最新資料,套用之後左下角會有進度顯示。如果你希望某張表單的連結與載入欄位可以隨時保持最新的資料,你可以勾選「隨時同步載入欄位值」。
請注意!如果是利用匯入來更新來源資料,無法隨時同步載入欄位值!需要在匯入後,手動點選替連結與載入的欄位同步為最新資料。
選擇使用者欄位其實連結與載入自系統的使用者表單,因此也可以透過欄位設定中的齒輪開啟動態篩選及同步視窗。
當你在建立連結&載入時,Ragic會自動依據來源表單中的獨特值來建立連結欄位,如果你需要針對這個預設的連結欄位做變更,你可以直接拖曳即可改變參照欄位,不需將該連結刪除再重新建立連結。
在下面的例子中,產品名稱連接至產品表單的產品編號。但對於員工而言,產品編號也許並不是那麼容易辨別產品,因此我們想要將它改成與產品名稱欄位做連結。
想要更改連結欄位,只要在產品編號欄位上按著左鍵不放,並向下拖移至產品名稱欄位並放開左鍵,即可完成變更。
當變更完成後,你在訂單部分實際操作連結與載入時,所載入的資料也會是產品名稱。
透過影片教學,實際告訴該如何應用連結與載入的功能!