Salesforce – это мощная CRM-платформа, которая позволяет компаниям оптимизировать свои процессы и эффективно управлять данными о клиентах. Одной из фундаментальных особенностей Salesforce является возможность устанавливать связи между объектами с помощью отношений «основной-подробный». В этой статье блога мы погрузимся в мир взаимоотношений «основной-подробный» в Salesforce, обсудим их значение, методы реализации и попутно приведем примеры кода.
Понимание отношений «главный-подробный».
В Salesforce отношения «главный-подробный» — это тип связи между двумя объектами, при котором подробный объект (дочерний) тесно связан с главным объектом (родительским). Эта связь дает несколько преимуществ, включая согласованность данных, каскадное удаление и поля сводной сводки.
Методы реализации отношений «главный-подробный»:
-
Использование меню настройки Salesforce:
- Перейдите к Диспетчеру объектов в настройке Salesforce.
- Выберите родительский объект и нажмите «Поля и связи».
- Нажмите «Создать» и выберите «Отношения «Основной-Детальный»» в качестве типа поля.
- Определите связь и укажите дополнительные настройки.
-
Использование API метаданных:
- Создайте XML-файл, определяющий связь «основной-подробный».
- Используйте API метаданных для развертывания связи в вашей организации Salesforce.
- Проверьте статус развертывания и убедитесь, что связь создана успешно.
-
Использование интерфейса командной строки Salesforce:
- Откройте интерфейс командной строки и выполните аутентификацию в своей организации Salesforce.
- Используйте команду sfdxforce:source:push для развертывания метаданных отношений «основной-подробный» в вашей организации.
Примеры кода.
Давайте рассмотрим несколько примеров кода, иллюстрирующих реализацию отношений «основной-подробный» в Salesforce.
Пример 1. Создание связи «Основной-деталь» с помощью Apex:
public class AccountUtils {
public static void createOpportunity(Account acc) {
Opportunity opp = new Opportunity();
opp.Name = 'New Opportunity';
opp.StageName = 'Prospecting';
opp.CloseDate = Date.today().addDays(30);
opp.AccountId = acc.Id; // Assigning the parent account
insert opp;
}
}
Пример 2. Определение связи «основной-подробный» в метаданных объекта:
<CustomObject xmlns="http://soap.sforce.com/2006/04/metadata">
<fields>
<fullName>Opportunity__c</fullName>
<externalId>false</externalId>
<label>Opportunity</label>
<referenceTo>Opportunity</referenceTo>
<relationshipLabel>Opportunity</relationshipLabel>
<relationshipName>Opportunity__r</relationshipName>
<relationshipOrder>0</relationshipOrder>
<reparentableMasterDetail>false</reparentableMasterDetail>
<required>false</required>
<type>MasterDetail</type>
</fields>
<!-- Other metadata for the object -->
</CustomObject>
Отношения «основной-подробный» играют жизненно важную роль в структурировании данных и обеспечении целостности данных в Salesforce. В этой статье мы рассмотрели различные методы реализации отношений «основной-подробный», в том числе с помощью меню настройки Salesforce, API метаданных и интерфейса командной строки Salesforce. Мы также предоставили примеры кода, иллюстрирующие практическую реализацию этих отношений. Используя возможности взаимоотношений «основной-подробный», компании могут расширить свои возможности управления данными и улучшить общее качество работы с Salesforce.