개체/오브젝트)라는 것을 이해했으니 본격적으로 만들기 전에 한가지를 더 설명하고자 한다. 개체/오브젝트를 구성하는 것이 필드라고 설명을 했는데 세일즈포스 테이블, 다시 말해 개체/오브젝트에서는 어떤 필드를 만들수 있는지 알아보자.
| 실무에서도 ‘개체’ 와 ‘오브젝트’라는 용어를 혼용하면서 같은 것으로 간주하니 혼동이 없기 바란다. |
◈ 세일즈포스 오브젝트를 구성하는 필드의 유형
세일즈포스에서 추가할 수 있는 사용자 정의 개체와 필드의 수는 어떤 에디션을 사용하느냐에 따라 다르다고 했는데, 기억을 상기시키기 위해 다시 한번 설명하면 아래와 같다;
| 기 능 | Professional | Enterprise | 설 명 |
| 개체당 사용자 정의 필드 | 100 | 500 | DB 테이블당 필드 수의 같은 개념. |
| 사용자 정의 개체 | 50 | 200 | DB 의 테이블과 유사한 개념. 탭, 화면의 갯수라 고 볼 수 있음. |
개발자 에디션은 Enterprise 에디션에 준하기 때문에 추가할 수 있는 사용자 정의 개체는 최대 200개까지 가능하다. 각 개체별 추가할 수 있는 사용자 정의 필드는 500 개까지라는 점을 기억해두자.
세일즈포스에서 개체에 추가할 수 있는 필드의 유형, 즉 데이터의 유형은 23가지가 있다.
| 유형명 | SFDC 설명 | Julian 코멘트 |
| 롤업 요약 | 관련 목록에 있는 필드의 합계, 최소값 또는 최대값이나 관련 목록에 나열된 모든 레코드의 레코드 수를 표시하는 읽기 전용 필드입니다. | Rollup Summary Field. 연결되는 관련 목록과 Master-Detail 관계를 가진다. |
| 수식 | 정의한 수식에서 값을 이끌어내는 읽기 전용 필드입니다. 소스 필드가 변경되면 수식 필드가 업데이트됩니다. | Formula. 수식 필드 유형에서 입력할 수 있는 수식의 글자수의 최대 길이는 3,900자까지 허용되며, 다른 개체의 수식 필드를 참조하는 경우, 수식의 글자수는 합산된다는 점에 유의해야 한다. |
| 자동 번호 | 정의한 표시 형식을 사용하는 시스템 생성 순서 번호입니다. 새로운 각 레코드에 대해 이 번호가 자동으로 증가합니다. | Auto Number. 표시되는 포맷과 시작 번호를 지정할 수 있다. |
| 외부 조회 관계 | Salesforce 조직 외부에 데이터가 저장되는 외부 개체에 이 개체를 연결하는 관계를 만듭니다. | 조회 되는 개체는 관련 목록에 표시된다. |
| 조회 관계 | 이 개체를 다른 개체에 연결하는 관계를 만듭니다. 관계 필드를 사용하면 사용자가 검색 아이콘을 클릭하여 팝업 목록에서 값을 선택할 수 있습니다. 다른 개체는 목록에 있는 값의 소스입니다. | 조회 되는 개체는 관련 목록에 표시된다. |
| 텍스트 | 문자와 숫자를 조합하여 입력할 수 있습니다. | 길이는 255자. |
| 텍스트(암호화됨) | 문자와 숫자를 조합하여 입력하고 암호화된 형식으로 저장할 수 있습니다. | 신용카드 또는 신분증의 유형 지정 및 가리는 문자를 * 나 X 로 지정할 수 있다. |
| 텍스트 영역 | 여러 줄에 걸쳐 255자까지 입력할 수 있습니다. | |
| 긴 텍스트 영역 | 사용자가 각 줄에 최대 131,072자를 입력할 수 있습니다. | Text Area (Long). 필드당 가능한 입력 글자수를 의미하며, 표시되는 행수를 지정할 수 있다. |
| 텍스트 영역 (서식 있는 텍스트) |
서식 있는 텍스트를 입력하고 이미지와 링크를 추가할 수 있습니다. 각 줄에 최대 131,072자를 입력할 수 있습니다. | Text Area (Rich) |
| 날짜 | 일자를 입력하거나 팝업 일정에서 일자를 선택할 수 있습니다. | 직접 하는 경우 ‘YYYY. MM. DD.’ 형식으로 입력해야 하는데, 마지막 마침표에 주의. |
| 시간 | 사용자가 현지 시간을 입력할 수 있습니다. 예를 들어 "2:40 PM", "14:40", "14:40:00" 및 "14:40:50.600"는 모두 이 필드에 대해 유효합니다. | |
| 날짜/시간 | 날짜와 시간을 입력하거나 팝업 일정에서 날짜를 선택할 수 있습니다. 팝업에서 날짜를 클릭하면 해당 날짜 및 현재 시간이 날짜/시간 필드에 입력됩니다. | 위의 날짜, 시간 형식으로 입력도 가능하다. |
| 숫자 | 사용자가 모든 숫자를 입력할 수 있습니다. 맨 앞의 0은 제거됩니다. | 조회시 자동으로 3자리 마다 쉼표(,)가 표시된다. |
| 통화 | 달러나 기타 통화 금액을 입력하고 해당 필드를 통화 금액으로 자동 형식화할 수 있습니다. 이 기능은 Excel이나 기타 스프레드시트로 데이터를 내보낼 때 유용합니다. | Currency. Org 수준 또는 사용자 수준에서 지정한 로캘에 따라 화폐 단위가 자동으로 표시되며, 3자리마다 쉼표(,)가 표시된다. |
| 백분율 | 백분율 숫자(예: '10')를 입력할 수 있고 자동으로 숫자에 백분율 기호를 추가할 수 있습니다. | ‘10’ 을 입력하면 ‘10%’ 로 표시되고, 실제로는 ‘0.1’이 저장된다. |
| 선택 목록 | 사용자가 정의한 목록에서 값을 선택할 수 있습니다. | Picklist. 한 항목만 선택 가능. |
| 선택 목록(다중 선택) | 정의한 목록에서 여러 값을 선택할 수 있습니다. | Picklist (Multi-Select). 필드에는 선택된 항목들을 세미콜론(;)으로 구분하여 나열한 값이 저장된다. |
| URL | 모든 유효한 웹사이트 주소를 입력할 수 있습니다. 사용자가 필드를 클릭하면 URL이 별도의 브라우저 창에 열립니다. | |
| 이메일 | 사용자가 올바른 형식으로 확인된 이메일 주소를 입력할 수 있습니다. 이 필드가 연락처나 리드에 지정되어 있으면 사용자는 이메일 보내기를 클릭할 때 주소를 선택할 수 있습니다. 사용자 정의 이메일 주소는 대량 이메일에 사용될 수 없음을 유의하십시오. | |
| 전화 | 전화 번호를 입력할 수 있습니다. 이를 전화 번호로 자동 형식화합니다. | 전화를 걸수 있는 장치, 모바일에서 클릭하면 전화를 걸 수 있다. |
| 지리적 위치 | 사용자가 위치를 정의할 수 있습니다. 위도 및 경도 구성 요소를 포함하고 거리를 계산하는 데 사용할 수 있습니다. | Geolocation. 내부적으로 위도, 경도, 및 내부용 값의 3개의 필드로 처리 된다. |
| 확인란 | 사용자가 True(선택) 또는 False(선택 안 함)값을 선택할 수 있습니다. | Checkbox. 저장되는 값은 0,1 이다. |
이상까지 살펴보면 다양한 유형의 데이터를 처리할 수 있다. 따라서 저장하고자 하는 데이터에 따라 적절한 유형을 선택하는 것이 필요하다. 일반적인 상식이지만, 예를 들면, 우편번호는 5자리의 숫자이지만 ‘텍스트’ 형식으로 저장해야 한다. ‘05753’이라는 우편번호를 숫자 필드로 만들어서 저장하면 숫자 필드의 특성상 앞자리의 ‘0’을 무시하고 저장하므로 실제 저장되는 값은 ‘5753’이 된다. 이 정도는 다 아실테지만 IT 에 익숙하지 않은 분들을 위해 설명해둔다. 😅😅😅
필드의 유형은 오브젝트가 먼저 만들어져 있는 경우 새로운 필드를 추가하는 과정에서 위의 설명과 함께 표시되므로 굳이 위의 표를 외우거나 할 필요는 없지만 한 번 쭈욱 봐두는 것은 도움이 된다.
◈ 필드 유형의 변경
사용자 정의 필드를 만든 후, 즉 저장을 한 후에 필드의 유형을 변경해야 하는 상황이 발생하기도 한다. 예를 들면, 애초에 민들 때 실수로 잘못 만든 경우 또는 프로세스나 비지니스의 변경으로 인한 필드 유형 변경이 요구되는 경우가 있을 것이다.
필드 유형을 변경하고자 할 때, 가장 먼저 고려해야할 사항은 표준 개체나 사용자 정의 개체에 추가한 사용자 정의 필드의 유형만 변경이 가능하다는 것이다. 물론 변경이 불가한 경우도 있긴 하다. 예를 들면 아래의 필드 유형으로 만들어진 필드나, 아래의 설명에 해당하는 경우는 필드 유형이 불가능하다.
- 수식 필드
- 암호화된 텍스트 필드 유형
- Visualforce, 플로(Flow), APEX 에서 참조된 필드
- 쉴드 플랫폼(Shiled Platform:유료 추가 옵션임)을 이용하여 암호화한 필드
- 리드 변환에 사용되는 필드
- 조회 관계나 롤업 요약과 같이 개체간 관계를 가지고 있는 필드, 특히 롤업 요약 관계를 만든 경우 이를 조회 관계 유형으로 변경은 불가능
- 조회 관계 필드 유형을 롤럽 요약으로 변환하고자 하는 경우 Detail(Child) 쪽에 지정하는 필드에 저장된 값중에 Null 이 있는 경우.
무엇보다도 필드 유형을 변경하면 일반적으로 저장된 데이터의 유실 또는 손실이 발생한다. 예를 들면;
- 텍스트 필드 ⇨ 선택 목록: 선택 목록에 포함되는 값들은 그대로 보존이 되지만, 목록에 없는 값들은 지워진다.
- 텍스트 영역 (서식 있는 텍스트) ⇨ 긴 텍스트 영역: 당연히 ‘텍스트 영역 (서식 있는 텍스트)’ 필드의 서식은 모두 사라지며, 필드내 이미지를 포함하고 있다면 이런 것도 당연히 지워진다.
- 텍스트 영역 (서식 있는 텍스트), 긴 텍스트 영역 ⇨ 텍스트: 텍스트 유형의 길이가 255이므로 255자 이상은 모두 잘려 나간다.
따라서, 개체나 필드를 정의하기 이전에 현업의 요구 사항을 꼼곰히 확인하고 설계후 실제 생성 작업하기전 다시 확인 하는 등의 절차를 거쳐야 한다. 설계의 중요성에 대해서는 아무리 강조해도 지나치지 않다.
이상으로 개체와 필드에 대한 기초적인 이해를 마쳤으니, 드디어 직접 만들어 볼 준비가 되었다!!!
'세일즈포스(Salesforce, SFDC) 이야기 > 관리자(Admin)을 위해...' 카테고리의 다른 글
| ‘주문 관리’ 애플리케이션 만들기 - 03 (2) | 2025.03.07 |
|---|---|
| ‘주문 관리’ 애플리케이션 만들기 - 02 (0) | 2025.03.06 |
| ‘주문 관리’ 애플리케이션 만들기 - 01 (0) | 2025.03.04 |
| 새로운 ‘테이블, 필드 및 화면’ ➡ 개체(Object) 만들기 - 01 (0) | 2025.02.27 |
| 개발자 에디션 (DE: Developer Edition) 만들기 (0) | 2025.02.25 |