Study for the Administrator Certification Exam > Object Manager and Lightning App Builder (15%) > Build a Data Model for a Recruiting App > Create a Custom Junction Object for Job Postings
Salesforce가 Many-to-Many를 구현하는 방법
하나의 Position은 여러 Job Posting Site에 게시될 수 있고, 하나의 Job Posting Site도 여러 Position을 게시할 수 있기 때문에 두 객체의 관계는 Many-to-Many이다.
Salesforce에서는 Many-to-Many 관계를 직접 만들 수 없기 때문에 별도의 객체(Junction Object) 를 생성한다.
그리고 이 Junction Object에 두 개의 Master-Detail 관계를 만들어 각 부모 객체와 연결한다.
이렇게 하면 각 부모 레코드는 여러 개의 Junction Object 레코드를 가질 수 있게 되어 Many-to-Many 관계가 구현된다.
Create a Custom Object
Job Posting객체를 만들어서 Position과 Job Posting Site를 Master-Detail관계로 묶어줍니다. Job Posting은 관계만 정의합니다.
- Setup > Object Manager > Create > Custom Object
- Label:
Job Posting - Plural Label: Job Postings
- Record Name: Job Posting Number
- Data Type: Auto number
- Display Format: JOBPOST-{0000}
- Starting Number: 1
- Label:
- Save
필드추가:
Position
1
|
N
Job Posting (Junction Object)
N
|
1
Job Posting Site
- Setup > Object Manager > Job Posting > Fields & Relationships > New
- Data Type: Master-Detail Relationship
- Related To:
Position - Field Label:
Position
- Next, Next, Next, Save & New
- Data Type: Master-Detail Relationship
- Related To:
Job Posting Site - Field Label:
Job Posting Site
- Next, Next, Next, Save
Modify the Page Layouts
Position의 Related List에 Job Posting Site필드들을 추가합니다.
- Setup > Object Manager > Position > Page Layouts > Edit > Related Lists > Job Postings >
- Job Posting Site: Site Name
- Job Posting Site: Status
- Job Posting Site: Technical Site
- Add
Job Posting: Job Posting Number- Job Posting: Job Posting Name
- Remove
- OK
- Save
Job Posting Site의 Related List에 Job Postings필드들(Position)을 추가합니다.
- Setup > Object Manager > Job Posting Site > Page Layouts > Job Posting Site Layout > Edit > Related Lists > Job Postings >
- Position: Status
- Position: Title
- Add
Job Posting: Job Posting Number- Job Posting: Job Posting Name
- Remove
- OK
- Save
Check the Result
새로운 Job Posting Site를 등록합니다.
- App Launcher > Job Posting Sites > New
- Site Name: Jobs-R-Us
- Job Posting Site URL: www.jobsrus.com
- Status: Active
- Save
Position을 신규등록합니다.
- App Launcher > Recruiting > Positions > New
- Title: Super Sales Rep
- Department: Sales
- Approval Status: Approved
- Location: US
- Job Description: Sales rep to join the AW Computing team serving the eastern region of AMER
- Save
Related List에 Position을 등록합니다.
- App Launcher > Position > Super Sales Rep > Related
* 만약 Related탭이 아직 비어있다면 조금 기다린 뒤 새로고침하세요 - > Job Postings > New
- Position: Super Sales Rep
- Job Posting Site: Jobs-R-Us
- Save