본문 바로가기

개발자정보

2.2 Data Modeling

반응형

사용자 정의 및 표준 개체 이해

 

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • Salesforce 플랫폼에서 개체를 사용할 때의 이점을 설명합니다.
  • 표준 개체와 사용자 개체의 차이점을 설명합니다.
  • 개체가 가질 수 있는 사용자 정의 필드 유형을 나열합니다.

개체 개요

DreamHouse는 고객이 주택을 구입하고 온라인으로 부동산 중개인에게 연락할 수 있는 방법을 제공하는 부동산 회사입니다. DreamHouse 중개인은 연락처 및 리드와 같은 Salesforce의 표준 기능 중 일부를 사용하여 주택 구매자를 추적합니다.

그러나 주택 판매와 관련하여 추적하려는 항목이 더 많습니다. 예를 들어 Salesforce에는 속성을 추적하는 표준 방법이 포함되어 있지 않습니다. DreamHouse는 어떤 주택이 판매되고 있는지 또는 각 주택의 가격이 얼마인지 어떻게 알 수 있습니까?

다행히 Salesforce 관리자인 D'Angelo는 Salesforce 플랫폼이 솔루션을 제공한다는 것을 알고 있습니다. D'Angelo와 협력하여 그가 무엇을 만들고 있는지 살펴보겠습니다.

데이터 모델 부터 시작하겠습니다 . 데이터 모델은 들리는 것과 거의 같습니다. 이는 인간이 이해할 수 있는 방식으로 데이터베이스 테이블의 모양을 모델링하는 방법입니다.

데이터베이스에 익숙하지 않은 경우 스프레드시트에 데이터를 저장하는 방법을 생각해 보십시오. 예를 들어 D'Angelo는 스프레드시트를 사용하여 DreamHouse의 모든 속성을 추적할 수 있습니다. 열은 주소, 비용 및 기타 중요한 속성을 저장할 수 있습니다. 행은 DreamHouse가 판매하는 각 속성에 대해 이 정보를 저장할 수 있습니다. 데이터베이스 테이블도 비슷한 방식으로 설정됩니다.

그러나 테이블의 데이터를 보는 것은 인간에게 이상적이지 않습니다. 바로 여기에서 데이터 모델이 등장합니다.

Salesforce에서는 데이터베이스 테이블을 개체 로 생각하고 열을 필드로 , 행을 레코드 로 생각 합니다 . 따라서 계정 스프레드시트나 테이블 대신 필드와 동일하게 구조화된 레코드 묶음이 있는 계정 개체가 있습니다.

데이터 모델에 대해 이야기할 때 앱의 개체 및 필드 컬렉션에 대해 이야기합니다. 고유한 데이터 모델 구축을 시작할 수 있도록 개체 및 필드에 대해 자세히 알아보겠습니다.

사물에 대해 알아보기

Salesforce는 여러 유형의 개체를 지원합니다. 표준 개체, 사용자 정의 개체, 외부 개체, 플랫폼 이벤트 및 BigObject가 있습니다. 이 모듈에서는 가장 일반적인 두 가지 유형의 객체인 표준 및 사용자에 중점을 둡니다.

표준 개체 는 Salesforce에 포함된 개체입니다. Account, Contact, Lead 및 Opportunity와 같은 일반적인 비즈니스 개체는 모두 표준 개체입니다.

사용자 정의 개체 는 회사 또는 산업과 관련된 정보를 저장하기 위해 만드는 개체입니다. DreamHouse의 경우 D'Angelo는 회사에서 판매하는 주택에 대한 정보를 저장하는 사용자 정의 Property 개체를 구축하려고 합니다.

개체는 정보를 담는 컨테이너이지만 특별한 기능도 제공합니다. 예를 들어 사용자 정의 개체를 만들 때 플랫폼은 사용자 인터페이스에 대한 페이지 레이아웃과 같은 것을 자동으로 빌드합니다.

사용자 정의 개체 만들기

D'Angelo와 함께 작업하여 그가 Property 개체를 어떻게 구축하는지 살펴보겠습니다. 나중에 이 개체가 필요하므로 이 단계를 건너뛰지 마십시오!

  1. 이 페이지의 맨 아래로 스크롤하여 Trailhead 놀이터를 만드십시오. 이 단계를 건너뛰지 마세요! 이 모듈에는 신선하고 깨끗한 Trailhead Playground를 사용해야 합니다.
  2. 플레이그라운드가 생성되면(1분 정도 소요됩니다!) Launch 를 누릅니다 .
  3.  페이지 상단의 톱니바퀴 아이콘  클릭하고 설정을 시작합니다.
  4. 개체 관리자 탭을 클릭합니다 .
  5. 클릭 만들기 | 오른쪽 상단 모서리에 있는 사용자 정의 개체 .
  6. 레이블에 를 입력 Property합니다. 개체 이름 및 레코드 이름 필드가 자동으로 채워집니다.
  7. 복수 레이블에 를 입력 Properties합니다.
  8. 사용자 지정 개체를 저장하기 전에 페이지 맨 아래로 스크롤하여 이 사용자 지정 개체를 저장한 후 새 사용자 지정 탭 마법사 시작 확인란을 선택 합니다 .
  9. 나머지 값은 기본값으로 두고 저장 을 클릭 합니다.
  10. 새 사용자 정의 개체 탭 페이지에서 탭 스타일 필드를 클릭하고 원하는 스타일을 선택하십시오. 스타일은 개체의 UI에 표시할 아이콘을 설정합니다.
  11. 다음 , 다음 , 저장 을 차례로 클릭합니다 .

잘 했어! 방금 첫 번째 사용자 정의 개체를 만들었습니다. 이제 이 개체에 필드를 추가하는 방법에 대해 이야기해 보겠습니다.

필드 알아보기

모든 표준 및 사용자 정의 개체에는 필드가 첨부되어 있습니다. 다양한 필드 유형에 대해 알아봅시다.

필드 유형그것은 무엇입니까?예를 들어도 될까요?

신원 모든 레코드에 대해 자동으로 생성되는 15자의 대소문자 구분 필드입니다. URL에서 레코드의 ID를 찾을 수 있습니다. 계정 ID는 0015000000Gv7qJ  같습니다 .
체계 레코드가 생성되거나 마지막으로 변경된 시간과 같이 시스템의 레코드에 대한 정보를 제공하는 읽기 전용 필드입니다. CreatedDate , LastModifiedById  LastModifiedDate .
이름 모든 레코드에는 이름이 필요하므로 구별할 수 있습니다. 레코드를 생성할 때마다 자동으로 증가하는 텍스트 이름 또는 자동 번호가 매겨진 이름을 사용할 수 있습니다. 연락처 이름은 Julie Bean이 될 수 있습니다. 지원 사례의 이름은 CA-1024일 수 있습니다.
관습 표준 또는 사용자 정의 개체에 생성하는 필드를 사용자 정의 필드라고 합니다. 연락처 개체에 사용자 정의 필드를 만들어 연락처의 생일을 저장할 수 있습니다.

ID, 시스템 및 이름 필드는 Salesforce의 모든 개체에 대한 표준입니다. 각 표준 개체에는 미리 작성된 표준 필드 집합도 함께 제공됩니다. 사용자 정의 필드를 추가하여 표준 개체를 사용자 정의하고 사용자 정의 개체에 사용자 정의 필드를 추가할 수 있습니다.

모든 필드에는 데이터 유형이 있습니다. 데이터 유형은 필드가 저장하는 정보의 종류를 나타냅니다. Salesforce는 다양한 데이터 유형을 지원하지만 여기에 몇 가지 유형이 있습니다.

  • 확인란 —단순한 "예" 또는 "아니요"인 필드의 경우 확인란 필드가 원하는 것입니다.
  • 날짜 또는 날짜/시간 —이 필드 유형은 날짜 또는 날짜/시간 조합(예: 생일 또는 판매 이정표)을 나타냅니다.
  • 수식 — 이 특수 필드 유형에는 사용자가 작성한 수식에 따라 자동으로 계산되는 값이 있습니다. 예를 들어 D'Angelo는 주택 판매에 대한 부동산 중개인의 수수료를 자동으로 계산하는 수식 필드를 작성할 수 있습니다.

다시 말하지만, 꽤 많은 필드 유형이 있지만 대부분은 설명이 자명합니다. 여기서 중요한 점은 사용자 지정 필드를 만들 때 저장하려는 데이터의 종류에 대해 생각해야 한다는 것입니다.

사용자 정의 필드 생성

우리가 방금 만든 Property 객체는 아주 기본적인 것입니다. 여기에 몇 가지 사용자 정의 필드를 추가해 보겠습니다. Trailhead 놀이터로 돌아가십시오.

  1. 설정에서 개체 관리자 | 재산 .
  2. 사이드바에서 필드 및 관계 를 클릭 합니다. 이미 일부 필드가 있습니다. 이름 필드와 앞에서 이야기한 일부 시스템 필드가 있습니다.
  3. 오른쪽 상단에서 새로 만들기  클릭 합니다 .
  4. 데이터 유형으로 통화를 선택 합니다.
  5. 다음 을 클릭 합니다.
  6. 다음을 작성하십시오.
    1. 필드 레이블: Price
    2. 설명: The listed sale price of the home.
  7. 체크 필수 상자를.
  8. 클릭 한 다음 , 다음을 다시하고 저장을 .

속성 필드 목록에 새 가격 필드가 표시됩니다. 필드 이름 열에 Price__c라고 표시되어 있습니다. "__c" 부분은 특정 필드가 사용자 정의 필드임을 쉽게 알 수 있는 방법입니다.

레코드 생성

당신이 한 일을 보기 위해 재산 기록을 만들어 봅시다.

  1. App Launcher( 
    탐색 모음)에서 Sales 를 찾아 선택 합니다.
  2. 탐색 모음에서 속성 탭을 클릭합니다 . 표시되지 않으면 자세히 드롭다운에서 확인하세요.
  3. 상단 모서리에서 새로 만들기  클릭 합니다 .
  4. 속성의 이름과 가격을 입력하고 저장 을 클릭 합니다.

엄청난! 다음과 같은 내용이 표시됩니다.

책임감 있게 맞춤화

개체를 추가하고 사용자 정의하는 것이 쉬워 보일 수 있지만 내부에서 진행되는 작업은 기술적으로 복잡하다는 점을 기억하십시오. 다음은 조직 사용자 지정을 시작할 때 염두에 두어야 할 몇 가지 모범 사례입니다.

이름에 대해 신중하십시오. 일단 많은 개체를 만들기 시작하면 개체에 "게으른" 이름을 지정하고 싶을 수 있습니다. 예를 들어 D'Angelo가 콘도미니엄을 추적하기 위해 다른 사용자 정의 개체를 만든 경우 "콘도미니엄" 대신 "Property2"라는 이름을 지정하고 싶을 수 있습니다. 그것이 조직에 혼란을 주는 방법입니다. 개체와 필드에 설명적이고 고유한 이름을 지정하여 명확성을 높입니다.

사용자를 도와주세요. 이름을 신중하게 지정하더라도 사용자가 특정 개체 또는 필드의 목적에 대해 항상 명확하지 않을 수 있습니다. 사용자 정의 개체 및 필드에 대한 설명을 포함합니다. 전문화되거나 복잡한 사용자 정의의 경우 도움말 텍스트를 사용하여 자세한 내용을 제공하십시오.

필요한 경우 필드가 필요합니다. 때로는 사용자가 특정 개체에 대한 레코드를 생성할 때 필드를 채우도록 강제하고 싶을 수 있습니다. 모든 부동산에는 가격이 필요합니다. 그렇죠? 불완전한 데이터를 피하기 위해 필수 필드를 만드십시오.

 

Build a custom Offer object

When a homebuyer makes an offer to buy a property, the brokers at DreamHouse Realty need to track the details in Salesforce. Create a custom object they can use to record the offer amount and target close date for the sale. Use auto numbering to generate the name of each offer record.

  • Create a custom object
    • Label: Offer
    • Object Name: Offer
    • Record Name: Offer Name
    • Data Type: Auto Number
    • Display Format: OF-{0000}
    • Starting Number: 1
  • Create a custom currency field on the Offer object
    • Data Type: Currency
    • Field Label: Offer Amount
    • Field Name: Offer_Amount
  • Create a custom date field on the Offer object
    • Data Type: Date
    • Field Label: Target Close Date
    • Field Name: Target_Close_Date

 

개체 관계 만들기

 

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • 다양한 유형의 개체 관계와 일반적인 사용 사례를 정의합니다.
  • 조회 관계를 생성하거나 수정합니다.
  • 마스터-디테일 관계를 생성하거나 수정합니다.

개체 관계란 무엇입니까?

이제 개체와 필드에 익숙해졌으므로 개체 관계를 통해 다음 단계로 넘어갈 차례입니다. 

개체 관계는 두 개체를 함께 연결하는 특수 필드 유형입니다.

Account와 같은 표준 객체에 대해 생각해 봅시다. 

영업 담당자가 계정을 개설했다면 아마도 해당 계정 회사의 몇몇 사람들과 이야기를 나누었을 것입니다. 

그들은 아마도 임원이나 IT 관리자와 같은 연락처를 만들어 Salesforce에 해당 연락처의 정보를 저장했을 것입니다.

따라서 Account 개체와 Contact 개체 사이에 관계가 있어야 합니다. 그리고 있다!

Salesforce에서 계정 레코드를 보면 관련 탭에 연락처 섹션이 있음을 알 수 있습니다. 

계정에 연락처를 빠르게 추가할 수 있는 버튼도 있습니다.

계정 대 연락처 관계는 Salesforce의 표준 관계의 예입니다. 그러나 개체 및 필드와 마찬가지로 사용자 지정 관계를 구축할 수도 있습니다. 

마지막 단원에서는 Property 및 Offer의 두 개체를 만들었습니다. 집에 대한 모든 제안이 Salesforce의 기록에 표시된다면 좋지 않을까요?

그 전에 Salesforce에서 만들 수 있는 다양한 종류의 관계에 대해 이야기해 보겠습니다.

광범위한 개체 관계의 세계(The Wide World of Object Relationships)

개체 관계에는 두 가지 주요 유형이 있습니다 : lookup, master-detail.

 

Lookup Relationships

위의 Account to Contact 예에서 두 개체 간의 관계는 조회 관계입니다. 룩업 관계는 기본적으로 두 개체를 함께 연결하여 다른 개체의 관련 항목에서 한 개체를 lookup relationship 볼 수 있습니다.

조회 관계는 일대일 또는 일대다일 수 있습니다. 단일 계정에는 많은 관련 연락처가 있을 수 있기 때문에 계정 대 연락처 관계는 일대다 관계입니다. 우리의 꿈을 위하여주택 시나리오에서는 자산 개체와 홈 셀러 개체 사이에 일대일 관계를 만들 수 있습니다.

 

Master-Detail Relationships

조회 관계는 상당히 캐주얼한 반면 Master-Detail Relationships 좀 더 긴밀 합니다. 

이러한 유형의 관계에서 한 개체는 마스터이고 다른 개체는 세부 사항입니다. 

마스터 개체는 세부 정보의 데이터를 볼 수 있는 사람과 같은 세부 정보 개체의 특정 동작을 제어합니다.

예를 들어, 부동산 소유자가 자신의 집을 시장에서 내놓기를 원했다고 가정해 봅시다. 

DreamHouse는 해당 부동산에 대한 제안을 유지하고 싶지 않습니다. 

속성과 오퍼 간의 마스터-디테일 관계를 사용하여 시스템에서 속성 및 모든 관련 오퍼를 삭제할 수 있습니다.


Relationships에 대한 추가 정보

현실과 마찬가지로 인간관계도 복잡하다. 

다음은 lookup와 master-detail relationships를 구별하는 데 도움이 되는 추가 정보입니다.

일반적으로 개체가 일부 경우에만 관련되어 있는 경우 조회 관계를 사용합니다. 

연락처가 특정 계정과 연결된 경우도 있지만 연락처일 때도 있습니다. 

조회 관계의 개체는 일반적으로 독립 실행형 개체로 작동하며 사용자 인터페이스에 고유한 탭이 있습니다.

마스터-디테일 관계에서 디테일 개체는 독립 실행형으로 작동하지 않습니다. 

마스터에 대한 의존도가 높습니다. 

실제로 마스터 개체의 레코드가 삭제되면 관련된 모든 세부 레코드도 삭제됩니다. 

마스터-디테일 관계를 생성할 때 항상 디테일 개체에 관계 필드를 생성합니다.

마지막으로 계층적 관계라는 세 번째 관계 유형에 직면할 수 있습니다. 

계층 관계는 특별한 유형의 조회 관계입니다. 

이 둘의 주요 차이점은 계층적 관계는 사용자 개체에서만 사용할 수 있다는 것입니다. 사용자 간의 관리 체인 생성과 같은 작업에 사용할 수 있습니다.

개체 간의 관계를 추가하기 시작할 때 데이터 모델의 복잡성이 증가한다는 사실을 기억하십시오. 나쁜 것은 아니지만 개체, 레코드 또는 필드를 변경하고 삭제할 때 각별히 주의하십시오. 

관계 행동에 대한 자세한 내용은 리소스 섹션을 확인하세요.

 

사용자 정의 개체 만들기

D'Angelo와 다시 합류하여 DreamHouse 앱에 대한 몇 가지 관계를 구축할 준비가 되었습니다. 

DreamHouse가 웹사이트에서 자산을 선호하는 사용자를 추적하는 방법을 원했다고 가정해 보겠습니다. 

이 기능은 DreamHouse의 부동산 중개인이 잠재적인 주택 구매자에게 연락하는 데 도움이 될 수 있습니다.

시작하려면 즐겨찾기라는 사용자 지정 개체를 만들고 개체에 필드를 추가합니다.

  1. Click the Object Manager tab.
  2. Click Create | Custom Object in the top-right corner.
  3. For Label, enter Favorite.
  4. For Plural Label, enter Favorites.
  5. Check the box for Launch New Custom Tab Wizard after saving this custom object.
  6. Leave the rest of the values as default and click Save.
  7. On the New Custom Object Tab page, click the Tab Style field and select a style you like.
  8. Click Next, Next, and Save.

Create a Lookup Relationship

즐겨찾기 개체에 두 개의 사용자 지정 관계 필드를 만들 것입니다. 먼저 속성에 대해 즐겨찾기  선택한 사용자를 나열하는 조회 관계를 생성해 보겠습니다 .

  1. From Setup, go to Object Manager | Favorite.
  2. On the sidebar, click Fields & Relationships.
  3. Click New.
  4. Choose Lookup Relationship and click Next.
  5. For Related To, choose Contact. For the purposes of DreamHouse, contacts represent potential home buyers.
  6. Click Next.
  7. For Field Name, enter Contact, then click Next.
  8. Click Next, Next, and Save.

마스터-디테일 관계 생성

이제 두 번째 관계 필드를 만들 것입니다. Property가 마스터이고 Favorite이 디테일인 마스터-디테일 관계를 원합니다.

  1. On the Object Manager page for the custom object, click Fields & Relationships.
  2. Click New.
  3. Select Master-Detail Relationship and click Next.
  4. For Related To, choose Property.
  5. Click Next.
  6. For Field Name, enter Property and click Next.
  7. Click Next, Next, and Save.

즐겨찾기 속성 추가

즐겨찾기 속성을 보는 방법을 살펴보겠습니다.

  1. From the App Launcher (
     in the navigation bar), find and select Sales.
  2. Click the Properties tab in the navigation bar. If you don’t see it, look under the More dropdown.
  3. Click the name of a Property record.
  4. Click Related. You’ll see Favorites (0) in the related tab.
  5. Click New.
  6. Enter a name for Favorite Name, then click Save.

잘 했어! 즐겨찾기 개체가 모두 설정되었습니다.

 

Create relationships for the Offer object

The object you created for the previous challenge is pretty handy. Imagine how much more useful it would be if brokers could specify which client made an offer and which property the client wants to buy. Add two relationships to the Offer object so brokers can capture this data in Salesforce. Create a Master-Detail relationship with the Property object and a Lookup relationship with the Contact object.


Before You Start:

  • Create the Property object as described in the previous unit.


Challenge Requirements:

  • Create a custom Master-Detail field on the Offer object
    • Data Type: Master-Detail
    • Field Label: Property
    • Field Name: Property
  • Create a custom Lookup field on the Offer object
    • Data Type: Lookup
    • Field Label: Contact
    • Field Name: Contact
반응형