Salesforce的對象關係

Salesforce中的對象關係和一般的關係資料庫不同。

在關係資料庫中對象間的關係是由主鍵、外鍵等加以定義。而在Salesforce中,對象之間的關係是由自定義欄位來確定。

這麼做的原因是Salesforce本身是實現了多租戶的架構(Multi-tenancy),在內部將不同客戶的數據統一存放。

在新建自定義欄位的時候,選擇「查找關係」(Lookup)或「主-詳細信息關係」(Master-detail)即可創建對象間的關係。

查找關係

Salesforce中對於「查找關係」的說明是:

創建一個將此對象鏈接到另一對象的關係。關係欄位允許用戶單擊查找圖標,以從彈出列表中選擇值。另一對象是列表中值的源。

舉個例子:每個客戶(Account)都有聯繫人(Contact),那麼「客戶」和「聯繫人」兩個對象之間就有了查找關係。每個「聯繫人」對象中都有「客戶名」欄位,作為「查找關係」。

建立查找關係

下面舉個例子說明如何建立查找關係。假設系統中有了一個「地址」的自定義對象,現在要為「地址」和「客戶」建立查找關係。

  • 進入設置界面。查找「對象」,點擊「創建」菜單下的「對象」鏈接,再在頁面中點擊「地址」進入「地址」的欄位頁面。點擊「自定義欄位和關係」部分的「新建」按鈕,進入「新建自定義欄位」頁面

  • 在第一步「選擇欄位類型」的頁面,選擇「查找關係」

  • 在第二步「選擇相關對象」中,從下拉列表中選擇另一個相關對象。在這裡選擇「客戶」

  • 在第三步「輸入查找欄位的標籤和名稱」中,設置此查找關係欄位的基本屬性。這些名稱會顯示在「地址」的頁面布局中。也可以設置「篩選器」來對此欄位添加一些規則,比如只能查找符合特定篩選條件的客戶

  • 接下來的步驟和建立普通自定義欄位類似,設置欄位的安全性和頁面布局。在頁面布局方面,系統會要求用戶分別設置該查找關係所包含的兩個對象的頁面布局,即「客戶」和「地址」的頁面布局
  • 最後保存即可。這樣,在「地址」的欄位頁面,可以看到「客戶」的查找關係欄位已經建立了

在「客戶」的詳細信息頁面,可以看到已經有了「地址」的相關列表。

當新建「地址」對象時,「客戶」的欄位顯示為右邊有放大鏡圖標的輸入框,點擊放大鏡圖標即可搜索系統中所有的「客戶」,然後選擇一個作為此「地址」對象的「客戶」。如果之前在第4步設置了篩選器,則搜索的結果中只會出現符合篩選條件的客戶。

主-詳細信息關係

如果兩個對象之間有很強的聯繫,一個對象必須依賴另一個對象而存在,那麼它們之間便形成了「主-詳細信息關係」。

Salesforce中對於「主-詳細信息關係」的描述是:

創建一個此對象(子級或"詳細信息")與另一對象(父級或"主")之間的特殊父子關係類型,其中:

  • 所有詳細信息記錄的關係欄位必填。
  • 詳細信息記錄的所有權和共享由主記錄確定。
  • 當用戶刪除主記錄時,將刪除所有詳細信息記錄。
  • 您可以在主記錄上創建累計匯總欄位以匯總詳細信息記錄。

關係欄位允許用戶單擊查找圖標,以從彈出列表中選擇值。主對象是列表中值的源。

建立主-詳細信息關係

舉個例子說明如何建立主-詳細信息關係。假設系統中有了「地址」和「街道」兩個自定義對象,現在要為「地址」和「街道」建立主-詳細信息關係。

  • 進入「街道」對象的「新建自定義欄位」頁面。在第一步選擇「主-詳細信息關係」類型

  • 在第二步「選擇相關對象」中,從下拉列表中選擇另一個相關對象。在這裡選擇「地址」

  • 在第三步「輸入查找欄位的標籤和名稱」中,設置此查找關係欄位的基本屬性。這些名稱會顯示在「街道」的頁面布局中。也可以設置「篩選器」來對此欄位添加一些規則

  • 接下來的步驟和建立普通自定義欄位類似,設置欄位的安全性和頁面布局。在頁面布局方面,系統會要求用戶分別設置該關係所包含的兩個對象的頁面布局,即「街道」和「地址」的頁面布局
  • 最後保存即可。這樣,在「街道」的欄位頁面,可以看到「客戶」的查找關係欄位已經建立了

當系統中建立了一個測試的地址對象時,進入此對象的詳細信息頁面,可以看到有「街道」的相關列表,也可以在此添加編輯「街道」對象。

利用主-詳細信息關係建立多對多關係

兩個對象之間可以建立多對多的關係。

要建立多對多的關係,除了兩個已經存在的對象,還需要建立一個連接的對象。

在連接的對象中,建立兩個「主-詳細信息」關係欄位,將兩個需要多對多的對象分別作為主對象即可。

查找關係和主-詳細信息關係的主要不同點

  • 查找關係是鬆散的,兩個具有查找關係的對象不依賴對方存在。而主-詳細信息關係中,作為詳細信息的對象是不能脫離主對象單獨存在的,主對象的某條數據記錄被刪除時,屬於它的詳細信息對象的數據記錄也會被刪除,類似於關係資料庫的級聯刪除
  • 形成查找關係的兩個對象分別有自己的分享許可權。而作為詳細信息對象,它的分享許可權繼承自主對象,無法單獨建立

方案生成器(Schema Builder)

方案生成器是Salesforce提供的一個視圖化界面,直觀地展現了系統中各對象的屬性和關係。在這裡也可以快速地對系統中的對象進行瀏覽和修改。

在設置主菜單中找到「方案生成器」,點擊鏈接即可進入。

方案生成器界面介紹

在方案生成器的界面左側是系統中的對象列表。當用戶勾選了某些對象,相應的詳細信息便會顯示在右側的內容區域。

在右側的內容區域,每個對象都顯示為一個方框,裡面包含了欄位信息。在方框的右上角有齒輪圖標,點擊之後可以更改此對象的顯示方式。

方框之間有連線,代表了對象之間的不同關係。

在右側內容區域的右下方,有整個內容區域的縮略圖,每個方框分別代表了一個對象。點擊縮略圖即可定位到內容區域對應的地方。

新建對象或欄位

在方案生成器界面的左側邊欄,點擊「元素」標籤,然後將「對象」拖拽到內容區域空白處,即可新建對象。

將某個「欄位」拖拽到內容區域某個對象內,即可在此對象中新建相應類型的欄位。

刪除對象或欄位

在方案生成器界面的內容部分,可以刪除自定義對象。

在自定義對象方框的右上角,點擊齒輪圖標,會顯示一個菜單,除了可以更改對象的顯示方式,還有「刪除對象...」的鏈接。點擊即可刪除此對象。

如果想刪除自定義欄位,則在自定義欄位上單擊右鍵,在彈出的菜單中選擇「刪除欄位...」即可。


推薦閱讀:

如果未來全面雲化,人們的生活方式將會是什麼樣的?
關於視頻直播雲服務,這幾點你不得不知 | 硬創公開課
如何看待清華大學、阿里巴巴在同一天發布了量子云平台?以及本源量子公司早些時候上線的量子云平台?
怎麼看阿里雲推出的免費虛擬主機?
在國內使用哪些雲存儲比較方便(可以替代google drive 和 DropBox)?

TAG:Salesforce | 云服务 | IT咨询 |