什麼是Salesforce Junction Object?

更新於 發佈於 閱讀時間約 4 分鐘

Junction Object是指擁有兩個Master-detail Relationship的物件。


那什麼是Master-detail Relationship呢?

raw-image


Master-detail Relationship是兩個物件間的一種關係,一方是主物件,一方是子物件。
Master-detail Relationship有個特性就是當刪掉主物件的紀錄時,也會同時刪掉關聯的子物件紀錄。

常見的帳戶與連絡人就是Master-detail Relationship。

raw-image


與Master-detail相對的是Lookup Relationship,差異在有Lookup關係的兩物件不會因為一方刪除紀錄而被連帶刪除。

常見的帳戶與使用者就是Lookup Relationship。




為什麼要有Junction Object?

Junction Object存在目的是為了服務『多對多關係』。日常生活中的多對多關係比如有顧客與產品、學生與課程。一個顧客可能買多項產品,一個產品也可能被多個顧客購買。

raw-image
raw-image

但如果只在Salesforce中單純建立兩個物件:顧客、產品,是做不到多對多關係的。

A. 你可能想說就在顧客物件中新增紀錄產品的欄位啊?但這種方法僅能記錄一個產品,無法滿足顧客與產品一對多的需求。

raw-image
raw-image


(無法滿足紅線的關係)






B. 如果再建立第二個產品欄位呢?或許可以解決問題,但這不是好方式,因為當顧客越買越多產品,管理員也要隨之在後台新增更多的產品欄位。

raw-image

C. 如果不要新增欄位,而是另外新增一筆顧客紀錄,紀錄該顧客購買的第二項產品呢?一樣不是好方法,這會使得有重複顧客紀錄,並不是理想的資料管理方式。

raw-image

最終解法是,需要新增一個中介物件來紀錄顧客與產品的每個關係

raw-image

在顧客與產品的例子中,JuntionObject可以是訂單。而且為了關聯顧客與產品物件,訂單物件會分別與顧客、產品物件建立Master-detail Relationship欄位。

建立完成後,只要在訂單上紀錄,就能紀錄顧客與產品多對多的關係。

比如下圖中

  • 訂單 1 紀錄「顧客王一」購買了「產品A」。
  • 訂單 2 紀錄「顧客王一」購買了「產品B」。
raw-image

雖然我們只在訂單物件上操作,但在顧客以及產品物件的相關紀錄處也看見顧客購買的所有產品,或是產品所有的購買顧客了,多對多關係完美呈現。

raw-image
raw-image



那如何建立Junction Object呢?

Step 1. 先建立三個自訂物件

Step 2. 在預計成為Junction Object的物件中新增兩個Master-detail Relationship欄位,並分別Related to主物件

raw-image
raw-image
raw-image

Step 3. 最後調整兩個主物件Page Layout中的Related list欄位,拉出想要的資訊

raw-image

完成!


留言
avatar-img
留言分享你的想法!
avatar-img
YI-HSUAN的沙龍
2會員
16內容數
Salesforce功能強大,但有時候要閱讀大量的資料才能知道自己下一步要如何操作,社群也幾乎是英文語系社群。有時候在想如果中文社群中有人可以分享他的經驗,我就會輕鬆很多了!於是這個專題就誕生了!
YI-HSUAN的沙龍的其他內容
2023/11/28
Salesforce每筆紀錄都有「建立日期」欄位,其欄位類型為DataTime。但是在調報告時會發現「建立日期」只會顯示到日期,不會顯示時間。該如何在報告中查看到建立時間呢?
Thumbnail
2023/11/28
Salesforce每筆紀錄都有「建立日期」欄位,其欄位類型為DataTime。但是在調報告時會發現「建立日期」只會顯示到日期,不會顯示時間。該如何在報告中查看到建立時間呢?
Thumbnail
2023/06/05
日前通過了Platform App Builder的證照考(灑花) 以下為我的一些準備方式以及統整的題目,分享給需要的人。
Thumbnail
2023/06/05
日前通過了Platform App Builder的證照考(灑花) 以下為我的一些準備方式以及統整的題目,分享給需要的人。
Thumbnail
2023/05/07
CRM系統重要的功能之一就是存取權設定,控制不同使用者可以看到或編輯的內容。客戶敏感資料不是所有Salesforce使用者都能觀看,甚至隨意編輯的。那麼Salesforce有哪些存取權設定呢?
Thumbnail
2023/05/07
CRM系統重要的功能之一就是存取權設定,控制不同使用者可以看到或編輯的內容。客戶敏感資料不是所有Salesforce使用者都能觀看,甚至隨意編輯的。那麼Salesforce有哪些存取權設定呢?
Thumbnail
看更多
你可能也想看
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
稍微複雜一點的 query 其實代表著某些商業邏輯,若把這一段程式放到 repository 的實作層,會變成這些商業邏輯被隱藏起來了,如果有個好的描述語言,我倒覺得很好讀,也可以清楚知道背後的商業邏輯是什麼,是很好的一件事。
Thumbnail
稍微複雜一點的 query 其實代表著某些商業邏輯,若把這一段程式放到 repository 的實作層,會變成這些商業邏輯被隱藏起來了,如果有個好的描述語言,我倒覺得很好讀,也可以清楚知道背後的商業邏輯是什麼,是很好的一件事。
Thumbnail
簡單說,Repository 提供像是 array 或是 dictionary 的容器,對程式來說,就好像記憶體中有所有的物件,不用去想物件其實是從資料庫來的。作法是在 data mapping layer 之上再提供一個 collection 的介面來存取物件,將資料庫的細節從商業邏輯層抽離。
Thumbnail
簡單說,Repository 提供像是 array 或是 dictionary 的容器,對程式來說,就好像記憶體中有所有的物件,不用去想物件其實是從資料庫來的。作法是在 data mapping layer 之上再提供一個 collection 的介面來存取物件,將資料庫的細節從商業邏輯層抽離。
Thumbnail
CRM系統重要的功能之一就是存取權設定,控制不同使用者可以看到或編輯的內容。客戶敏感資料不是所有Salesforce使用者都能觀看,甚至隨意編輯的。那麼Salesforce有哪些存取權設定呢?
Thumbnail
CRM系統重要的功能之一就是存取權設定,控制不同使用者可以看到或編輯的內容。客戶敏感資料不是所有Salesforce使用者都能觀看,甚至隨意編輯的。那麼Salesforce有哪些存取權設定呢?
Thumbnail
Junction Object是什麼呢?為什麼要有Junction Object呢?什麼又是Master-detail Relationship呢?
Thumbnail
Junction Object是什麼呢?為什麼要有Junction Object呢?什麼又是Master-detail Relationship呢?
Thumbnail
在進入Message Queue之前我們先來了解一下同步/非同步任務的概念。 菜單稱為訊息(Message), 為工作內容描述。 送出菜單的客人稱為生產者(Producer), 負責建立訊息。 櫃台就相當於Queue, 負責接單並依序處理。 廚師就是消費者的概念, 負責消化Queue裡面的訊息。 採
Thumbnail
在進入Message Queue之前我們先來了解一下同步/非同步任務的概念。 菜單稱為訊息(Message), 為工作內容描述。 送出菜單的客人稱為生產者(Producer), 負責建立訊息。 櫃台就相當於Queue, 負責接單並依序處理。 廚師就是消費者的概念, 負責消化Queue裡面的訊息。 採
Thumbnail
當我們在進行商務開發的時候,一定是從收集陌生客戶的名單開始,而這些收集到的名單,勢必不會每個都是成交的客戶,從一開始的收集人數到最後成交的數量,所構成的形狀就像是一個漏斗,也就是大家所說的「銷售漏斗」。
Thumbnail
當我們在進行商務開發的時候,一定是從收集陌生客戶的名單開始,而這些收集到的名單,勢必不會每個都是成交的客戶,從一開始的收集人數到最後成交的數量,所構成的形狀就像是一個漏斗,也就是大家所說的「銷售漏斗」。
Thumbnail
本篇文章將會繼續上一篇的內容,還沒看過上一篇的朋友,記得先看完上一篇再繼續本篇的閱讀唷。 連結﹔談談軟體元件的內聚與耦合(1) 前一篇我們提到了元件的內聚,以及用來衡量內聚性的三個標準,CCP、CRP與REP。 在這篇中,我們要來繼續談談軟體的耦合性。
Thumbnail
本篇文章將會繼續上一篇的內容,還沒看過上一篇的朋友,記得先看完上一篇再繼續本篇的閱讀唷。 連結﹔談談軟體元件的內聚與耦合(1) 前一篇我們提到了元件的內聚,以及用來衡量內聚性的三個標準,CCP、CRP與REP。 在這篇中,我們要來繼續談談軟體的耦合性。
Thumbnail
人月神話一書中提到軟體工程的任務有兩種性質:本質性與附屬性。後者可能會隨著工具改良(如更好的程式語言及 IDE)而逐步改善,但前者才是真正複雜且難以攻克的困難點。 而系統串接亦然,其本身很常同時參雜著這兩種問題。或許在我們一切任務開展之前都順著這兩個大類對子分項做規劃會是個不錯的思路方向。說到底所
Thumbnail
人月神話一書中提到軟體工程的任務有兩種性質:本質性與附屬性。後者可能會隨著工具改良(如更好的程式語言及 IDE)而逐步改善,但前者才是真正複雜且難以攻克的困難點。 而系統串接亦然,其本身很常同時參雜著這兩種問題。或許在我們一切任務開展之前都順著這兩個大類對子分項做規劃會是個不錯的思路方向。說到底所
Thumbnail
這篇文章將會講述各種關節的介紹,並且說明他們的使用效果和適用範圍。
Thumbnail
這篇文章將會講述各種關節的介紹,並且說明他們的使用效果和適用範圍。
Thumbnail
續上篇,把程式碼改成這樣,model加上關聯,就可以從article去query comments了。 L27表示從article table中primary key = 1的文章去找所有留言。 L27的$articles變數output如下: L12這個method: comments(),
Thumbnail
續上篇,把程式碼改成這樣,model加上關聯,就可以從article去query comments了。 L27表示從article table中primary key = 1的文章去找所有留言。 L27的$articles變數output如下: L12這個method: comments(),
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News