계정에 대해 향상된 주소 모델 사용

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 2분
  • 향상된 주소 데이터 모델 기능의 계정 주소 테이블을 사용하여 중복 위치 기록을 생성하지 않고 위치를 여러 계정과 연결합니다.

    시작하기 전에

    필요한 역할: sn_crm_foundation_admin, script_include_admin, script_fix_admin

    프로시저

    1. 위치 [cmn_location] 테이블의 계정과 연결된 위치 데이터의 백업을 가져옵니다.
    2. 위치 테이블에 이미 생성된 경우 계정 주소 [account_address_relationship] 테이블에 사용자 지정 관계 필드를 생성합니다.
      계정 주소 테이블에서 새로 생성된 필드는 위치 테이블의 필드와 이름 및 유형이 같아야 합니다. 기본 시스템은 두 가지 관계 필드를 제공합니다.
      • 유형
      • 기본

      이러한 관계 필드는 계정 주소 [account_address_relationship] 테이블에 생성됩니다. 테이블 내에서 필드를 생성하는 방법에 대한 자세한 내용은 테이블에서 필드 추가 및 사용자 지정을 참조하십시오.

    3. 계정 주소 테이블을 참조하는 사용자 지정 코드를 업데이트합니다.
      사용자 지정 코드에는 계정 주소 테이블에서 계정 주소를 가져오는 요소가 포함될 수 있습니다. 이러한 요소는 위치 테이블을 참조하는 참조 한정자, 스크립트 포함, 비즈니스 규칙 및 ACL(접근 제어 목록)일 수 있습니다.
    4. 계정 관련 데이터를 위치 테이블에서 계정 주소 테이블로 이동합니다.
    5. 다음 마이그레이션 스크립트를 실행합니다.
      var customRelationshipFields = []; //Add custom relationship fields (if any).​
      var account = ""; //You must specify the sys_id of the account if you wish to migrate location data for that account (mostly to be used during re-run).​
      var migrateChildAccountLocations = false; // This value must be set to true if you wish to migrate the locations of the child accounts associated with the specified account (mostly to be used during re-run).​
      new sn_cs_base.CSDataFix().migrateLocationDataToAccountAddress(customRelationshipFields, account, migrateChildAccountLocations);​

      마이그레이션해야 하는 기록 수와 이미 마이그레이션된 기록 수 간에 차이가 있는 경우 스크립트를 다시 실행합니다. 재실행이 있는 경우 이미 마이그레이션된 위치가 다시 마이그레이션되지 않습니다. 이미 마이그레이션된 위치에 대한 마이그레이션을 다시 실행하려면 계정 주소 테이블에서 해당 기록을 삭제합니다.

    6. 위치 테이블에서 계정 및 사용자 지정 관계 필드를 비활성화하여 우발적인 데이터 입력을 방지합니다.
      주:
      유형 및 기본 속성을 비활성화해서는 안 됩니다.
      비활성화하면 위치 관련 양식, 목록 및 관련 목록에서 계정 및 사용자 지정 관계 필드가 제거됩니다.
    7. 시스템 속성을 enable_account_address_sharing true로 설정합니다.
      이 속성은 계정에 대해 향상된 주소 데이터 모델을 사용하도록 설정합니다. 계정 주소 관련 목록이 계정 및 위치 양식에 표시됩니다.