본문 바로가기

Salesforce

Data Relationship/Security

  1. Data Relationship
    • Lookup Relationship
      • 1:1관계, 1:다 관계
      • Account와 Contact는 1:다 관계이다.
        • B2B(Business to Business) 관계에서는 Account는 ‘회사 정보’ 고, Contact는 ‘회사 담당자’를 의미한다. 그러므로 회사 정보에는 여러 담당자가 있기 때문에 1 대 다 관계이다.
        • 모든 건 Opportunity(기회, 영업 기회)를 기준으로 한다. Opportunity는 고객에게 판매할 수 있는 기회를 말한다. 여기에 Contract(계약)이 진행 될 수도 있고, Product(판매 제품), Quote(견적)에 대한 Product(고객의 요청에 따른 제품)가 연결되어있을 수 있다. 그리고 Opportunity에서 Order(주문)이 가능하고, Order에서 연결된 Product가 있을 수 있다.
      • Parent Object와 Child Object 각각의 Security&Deletion을 가지고 있다.
      • Child Object가 없어도 된다.
    • Master-Detail Relationship
      • Master(PK)가 사라지면 Detail(FK)가 싹 다 삭제된다..
      • Role-up은 이 관계만 사용이 가능하다.
      •  Formula는 Lookup, Master-Detail 관계 둘 다 가능하다.
      • Parent Object의 Security&Deletion을 Child Object가 영향을 받음.
      • Child Object가 필수 값이다.
    • Hierarchical Relationship
      • 특별한 Lookup Relationship
      • 사용자 Object에서만 사용이 가능하다. 즉, User Object가 User Object를 Look up하는 경우
    • Many-to-Many Relationship
      • 2개의 master-detail 관계의 object를 가진 junction Object
      • 학생과 수업이 Many-to-Many Relationship의 예다.
      • 하나의 학생은 여러가지 수업을 들을 수 있고, 하나의 수업에 여러명의 학생도 들을 수 있다. 
    • Relation 설정
      • Relation은 Object Manager -> 연결 시킬 Object를 선택 → Field&Relationship → New → Relationship → 연결할 Object 선택
    • Schema Builder
      • 관계를 확인할 수 있다. 
      • Elements 탭에서 Field 추가가 가능하다.
    • 출처 : Focus on Force
  2. Data Management
    • Data Import
      • Data Import wizard 
        • 약 5만개의 레코드를 가져올 수 있음
        • 매개변수나 필드명 같은 값도 넘어옴
      • Data Loader
        • 약 5백만개의 데이터 가져오기가 가능하다
        • 데이터 소스, 필드 매핑, 매개변수 지정해야 함
    • Data Export
      • Data Export Service
        • 자동 백업 생성이 가능하다.
        • 주별/월별로 수동 Export가 가능함
      • Data Loader
        • 자동 Export나 API(Field Name)를 이용해 다른 시스템과 통합하려고 할 때 유용하다.
  3. Data Security
    • Profile
      • 하나의 팀이라 생각하면 됨
      • 여기서 부여하는 Access는 팀 단위의 Access 부여를 설정한다 생각하면 된다.
    • Permission Set
      • 특정 인물들에게 Access를 부여할 때 사용함 ex) A팀에 속한 특정 직원에게 B팀에게만 부여된 Access를 부여함
    • Sharing Setting
      • 위에 두 개가 Object(큰 그릇)에 접근하기 위한 권한을 부여 했다 하면, Sharing Setting은 각 레코드에 대한 Access권한 부여가 주 목적이다.
      • 즉, A사원은 해당 파트의 모든 글을 읽을 수 있다. 그런데 특정 글들만 잠겨서 읽을 수 없다. 이런식으로 만드는 것이 Sharing Setting 인 것이다.
      • 그리고 Sharing Setting에서는 내부, 외부, 내 기준으로 상위 유저가 읽을 수 있는지? 에 대한 권한을 설정한다.
    • Roles
      • 조직 체계라고 생각하면 된다.
      • Roles를 통해 직급을 생성하고, 보고 체계를 작성할 수 있다.
  4. Formulas and Validations
    • Formulas 
      • 수식을 만들 수 있음.
      • Master-Detail관계/ lookup 관계 둘 다 가능하다.
      • 내가 만드려는 Formulas기준으로 부모값은 참조해서 수식을 만들 수 있으나, 자식값은 못 가져옴.
      • 특정 레코드에 대한 값을 가져올 수 있음.
      • Formulas자체가 수식이라 그때그때 값은 있고, 값이 저장되지는 않는다.(실제 값은 없음)
    • Roll up
      • 자식들의 데이터에 대한 것 전부에 대해 SUM,COUNT,MIN,MAX값이 생성됨.
      • Formulas와의 차이는 실제로 값이 생성되고 또 만약 레코드가 업데이트 된다면, 나왔던 값 또한 업데이트가 된다는 것이다. 
      • 그래서 Process Builder를 통한 Trigger사용 등이 가능하다! 왜냐? 값이 업데이트 되니까~~
      • 단점은, 모든 데이터에 대한 것을 가져오고 특정 레코드의 그 값에 대한 것은 가져올 수 없다.

'Salesforce' 카테고리의 다른 글

APEX TESTING  (0) 2021.09.30
APEX TRIGGER  (0) 2021.09.30
SOSL(Salesforce Object Search Language  (0) 2021.09.30
SOQL  (0) 2021.09.30
Automation Tool& Apex  (0) 2021.09.30