일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- difference with java
- Administrator
- deactivate record type for chatter user profile
- object setting
- Database Methods
- dump
- apex
- development link
- service cloud consultant
- System.LimitException
- sObject
- Too many DML statements
- chatter user profile
- sales cloud consultant
- developer console
- DML Statement
- VARIABLE
- apex class
- google extension
- platform developer1
- BASIC
- salesforce
- Too many SOQL queries
- sharing
- Today
- Total
어느 Salesforce Developer의 개발 성장기
Chatter 사용자에게 설정된 레코드 유형 비활성화하기 본문
개발 진행시, 처음 계획했던 바와 다르게 개체에 대한 레코드 유형을 사용하지 않을 때, 레코드 유형을 삭제하려고 할 경우, 다음과 같은 오류가 나타나며 진행이 안된다.
해당 프로필에서 이 레코드 유형을 사용하기 때문에 레코드 유형을 비활성화 할 수 없는 것!
이 때, Chatter User의 프로필인 경우, 설정을 편집해도 레코드 유형을 변경할 수 있는 UI가 존재하지 않는다.
분명히 Chatter User Profile이 해당 개체의 레코드 유형을 가지고 있어서 레코드 유형을 비활성화하지 못하고, 삭제를 못하고 있는 상황인데, 개체 설정이 없어서 막막할 것이다. 이 때 해결할 수 있는 방법이 있다.
바로 아래 URL을 수정하여 진행하는 것!
https://INSTANCE.salesforce.com/setup/ui/profilerecordtypeedit.jsp?id=PROFILEID&tid=OBJECT&pn=ProfileName&retURL=%2FProfileID
여기서 4가지 내용을 수정한다.
INSTANCE: 현재 개발중인 Salesforce 주소의 앞부분이다.
예를 들어 https://ap4.lightning.force.com/lightning/page/home 라고 가정하면, ap4를 가리킨다.
도메인을 설정한 경우, 설정>회사 설정>회사 정보 메뉴로 이동하면 인스턴스 값을 알 수 있다.
OBJECT: 관리하고자 하는 개체 API명이나 Id 값을 일컫는다.
- 표준 개체인 경우, 개체의 API 이름(Opportunity)을 그대로 입력하면 된다.
- 사용자 정의 개체인 경우, "설정>개체 관리자>{레코드 유형이 있는 사용자 정의 개체}"로 이동할 때, URL(https://cjsohn-dev-ed.lightning.force.com/lightning/setup/ObjectManager/01I6F000002nNvd/Details/view)에서 /ObjectManager/와 /Details/ 사이에 있는 "01I6F000002nNvd"를 일컫는다.
표준 개체와 마찬가지로 API 이름(purecloud__CTI_Contact_Search__c)을 입력해도 된다.
ProfileName: Chatter Profile의 이름을 입력한다. 단, 이름 사이의 공란은 +로 입력한다.
PROFILEID: Chatter Profile의 ID값을 입력한다. 개체의 ID값을 찾는 방법과 마찬가지로 프로필 설정의 URL(https://cjsohn-dev-ed.lightning.force.com/lightning/setup/EnhancedProfiles/page?address=%2F00e6F000002gW6W)를 활용한다.
ProfileID값은 ?address=%2F 다음에 존재하는 00e6F000002gW6W이다.
그러면 예시를 통해서 완성된 URL을 만들어보자.
- 위 설명에서 문제된 기회 개체의 레코드 유형을 사용하고 있는 Chatter User의 프로필에 할당된 레코드 유형을 변경해보자.
- INSTANCE: AP4
- OBJECT: Opportunity
- ProfileName: 각 3가지 프로필은 Chatter+External+User / Chatter+Free+User / Chatter+Moderator+User가 된다.
- ProfileID: 문제가 되는 프로필 링크를 각각 클릭하면 프로필 설정화면으로 바로 이동할 수 있다. 이 때, 각 3가지 ProfileID은 00e6F000002gW6W / 00e6F000002gW66 / 00e6F000002gW6V 이 된다.
1~5를 조합하여 URL 3개를 만들어보자.
- https://ap4.salesforce.com/setup/ui/profilerecordtypeedit.jsp?id=00e6F000002gW6W &tid=Opportunity&pn=Chatter+External+User&retURL=%2F00e6F000002gW6W
- https://ap4.salesforce.com/setup/ui/profilerecordtypeedit.jsp?id=00e6F000002gW66&tid=Opportunity&pn=Chatter+Free+User&retURL=%2F00e6F000002gW66
- https://ap4.salesforce.com/setup/ui/profilerecordtypeedit.jsp?id=00e6F000002gW6V&tid=Opportunity&pn=Chatter+Moderator+User&retURL=%2F00e6F000002gW6V
이렇게 제대로 조합된 URL로 접속하면, 아래 화면과 같이 Classic 설정화면으로 이동하게되며, 기회 개체에 대한 프로필의 레코드 유형을 설정할 수 있다.
문제가 되는 Chatter User 프로필에서 해당 레코드 유형을 선택에서 제거하고, --마스터--를 설정하면 된다.
그렇게 설정하고 레코드 유형을 비활성화하면 이제는 오류 없이 비활성화를 진행할 수 있다.
'Salesforce > Tips' 카테고리의 다른 글
Salesforce 신입 개발자가 가장 많이 하는 실수(System.LimitException: Too many SOQL queries / Too many DML statements) (0) | 2020.03.11 |
---|