행동 계획은 조직의 모범 사례를 쉽게 공유 할 수 있고 재사용 가능한 작업 템플릿으로 캡슐화하는 데 도움이됩니다.
다음 객체에 대한 행동 계획을 만들 수 있습니다.
행동 계획은 지원되지 않습니다. 행동 계획에 대한 지역 사회 지원은 Salesforce Trailblazer 커뮤니티를 방문하십시오. 아이디어 나 문제를 제출하려면 Github의 행동 계획을 방문하십시오.
행동 계획은 오픈 소스 소프트웨어입니다. 우리는 귀하의 문제 보고서, 아이디어, 문서화, 코드 조정 및 기타 모든 참여를 환영합니다. 자세히 알아보십시오.
시작하는 것은 쉽습니다. 각 객체의 경우 목록보기에 버튼을 추가하고 세부 페이지에 버튼을 추가해야합니다. 계정의 경우 다음 단계를 따르십시오. "
작업 계획 설정을 편집하고 조직 수준, 프로필 수준 또는 사용자 수준에서 값을 업데이트하여 이러한 설정을 변경하십시오.
설정> 개발> 사용자 정의 설정으로 이동하십시오. Action Plans Settings
옆에 '관리'를 클릭하십시오. '기본 조직 레벨 값'근처의 '새'버튼을 클릭하십시오. 활성화 할 값을 확인하십시오.
Enable Chatter Post
관련 레코드의 채터 피드에 게시물을 배치합니다 (해당 개체에 대한 채터가 활성화 된 경우). 확인되지 않은 경우 액션 계획은 피드 게시물을 생성하지 않습니다.Unassigned Task Defaults to Record Owner
하여 '필드에 지정된'필드가있는 행동 계획 템플릿 작업이 관련 레코드 소유자에게 이동하도록합니다. 확인되지 않은 경우 빈 '필드에 할당 된'필드가있는 작업이 실행중인 사용자에게 할당됩니다. 작업은 작업 계획 템플릿에 대한 특정 사람들에게 할당 될 수 있으며,이 설정을 무시합니다.Default Object on Lead Conversion
행동 계획이 리드와 관련이있는 경우 행동 계획이 변환 된 계정, 연락처 또는 리드가 변환 될 때 기회로 이동 해야하는지 지정합니다. 기본값은 연락처입니다.Action Plans Business Hours ID
및 Use Business Hours
향후 기능을 위해 예약되어 있습니다. 맞춤형 메타 데이터 Weekend Day
수정하여 주말의 요일과 이전 주가 끝나 다음 주의 시작으로 옮기기 위해 일을 앞뒤로 옮길 수있는 날을 나타냅니다. 이를 통해 다른 주말과 함께 일하거나 특정 요일에 일할 작업을 할당하지 않아도됩니다. 매주 주간에는 두 숫자 필드 모두에서 0이 있어야합니다.
각 객체의 경우 목록보기에 버튼을 추가해야합니다. 계정을 위해 다음 단계를 따르십시오.
다른 표준 객체에 대해이 단계를 반복하십시오 행동 계획은 연락처, 리드, 기회 등을 지원합니다.
행동 계획 개체에 대해서는이 단계를 따르십시오.
선택적으로 "액션 플랜 작업"필드를 작업 페이지 레이아웃에 추가하지만이 필드를 지우면 작업 계획 진행 상황을 추적 할 수있는 기능을 중단하므로 읽기 전용 이어야합니다.
행동 계획에는 공유 가능한 두 가지 개체가 포함됩니다 : Action Plan
및 Action Plan Template
. 조직에 어떤 방식 으로든 공유 설정을 구성 할 수 있습니다.
Tasks
에만 액세스해야합니다. 이러한 작업이 행동 계획의 일부라는 것을 알지 못하고 작업을 할당 할 수 있습니다. 작업 상태로의 변경 사항은 관련 조치 계획 작업 템플릿 레코드에 자동으로 반영됩니다. 권한 세트가 필요하지 않습니다. 행동 계획을 사용해야하는 각 사용자에게 해당 권한 세트를 할당하십시오.
Action Plans Admin:
행동 계획, 행동 계획 템플릿, AP 작업 및 APT 작업 템플릿에 대한 전체 권한.Action Plans Template Creator:
행동 계획 템플릿 및 AP 템플릿 작업에 대한 전체 권한. 행동 계획 액세스가 없습니다.Action Plans Creator:
행동 계획 및 AP 작업을 읽고, 작성, 편집, 삭제합니다. 액션 계획 템플릿 및 적절한 작업 템플릿에 대한 읽기 전용.Action Plans Import/Export:
수출 및 수입 행동 계획 템플릿 레코드에 대한 액세스. 내보내기 및 가져 오기에 대한 적절한 버튼을 봅니다.Action Plans User:
행동 계획 및 AP 작업에 대한 읽기 전용. 작업에 대한 권한 편집은 사용자의 프로필 또는 기타 권한 세트를 통해 제공되어야합니다.각 권한 세트에 대한 사용 :
Action Plans User
권한 세트가 필요합니다. 그것은 행동 계획에 대한 읽기 전용 액세스를 제공합니다.Action Plans Creator
권한 세트는 액션 계획 템플릿에 대한 읽기 전용 액세스를 제공하고 액션 계획에 대한 액세스를 읽고, 작성, 편집하고, 삭제합니다.Action Plans Template Creator
권한 세트가 필요합니다. 여기에는 모든 작업 계획 템플릿 만 읽기, 작성, 편집 및 삭제할 수있는 권한이 포함됩니다. 행동 계획이나 작업 권한은 포함되지 않습니다. 이러한 사용자에게 작업 계획 액세스가 필요한 경우 다른 권한 세트도 사용해야합니다. 맞춤 권한을 통해 행동 계획 템플릿을 내보낼 수 있습니다.Action Plans Template Creator
위한 애드온으로 의도 된 Action Plans Import/Export
권한 세트를 통해 템플릿 세부 사항 페이지에서 내보내기 버튼을 볼 수 있습니다. 사용자 정의 권한 Action Plan Template Export
통해 행동 계획 템플릿 및 관련 작업을 내보낼 수 있습니다. 조직의 독점 템플릿에 대한 잠재적 인 보안 구멍 이므로이 허가를주의해서 사용하십시오. 이것은 템플릿을 샌드 박스에서 생산 조직으로 옮기는 좋은 방법입니다.Action Plans Admin
4 가지 행동 계획 개체 (행동 계획, 행동 계획 작업 템플릿, 행동 계획 템플릿 및 행동 계획 템플릿 태스크 템플릿)에 대한 모든 권한을 수정합니다. 사용자 정의 권한을 사용하면 작업 계획 템플릿 내보내기가 가능합니다.참고 : 흐름 또는 트리거를 통해 사용되는 정점은 특수 권한을 실행할 필요가 없습니다.
MyObject__c
라는 사용자 정의 객체가있는 경우, 행동 계획에 대한 필드 이름 MyObject__c
지정해야합니다.Related Objects
필드에 필드를 추가하십시오.before delete
after undelete
전에 객체 LabsActionPlans
에 다음 코드를 추가하십시오. LabsActionPlans . ActionPlansTriggerHandlers . actionPlansSObjectTriggerHandler ( ' CustomObject__c ' );
사용자 정의 객체 트리거를 덮기 위해 테스트 클래스를 작성하는 것을 잊지 마십시오. 당신이 단지 커버리지를하려고한다면 (베스트 습관이 아님) 테스트 방법을 삽입 한 다음 레코드를 삭제하십시오. 불행히도,이 패키지의 코드는 사용자 정의 객체에 대한 행동 계획을 쉽게 작성하는 데 적합하지 않습니다.
Create Custom Object Action Plan
버튼 추가액션 계획은 이미 새로운 행동 계획 조치를 무시하고 있지만 새 버튼에는 새 행동 계획 화면이 표시되지만 기존 템플릿을 추가 할 수는 없습니다. (아마도 이것은 향후 릴리스에있을 것입니다 ... Safe Harbor.) Action Plan 객체에서 다음 형식의 사용자 정의 버튼을 만들어 사용자 정의 객체 페이지 레이아웃의 관련 목록에 추가하십시오.
LabsActionPlans__
네임 스페이스 제거 관리 패키지를 사용하지 않는 경우) : {!URLFOR( $Action.LabsActionPlans__ActionPlan__c.New, null, [refType="CustomObject__c", refId=CustomObject__c.Id] )}
Create Action Plans
계정 목록보기에 대한 버튼이있는 것처럼 여러 작업 계획을 작성하는 경우 사용자 정의 객체에 대해서도 동일한 작업을 수행 할 수 있습니다. 다음 코드로 VisualForce 페이지를 만듭니다.
< apex : page standardController = " CustomObject__c " recordsetvar = " o "
extensions = " LabsActionPlans.ActionPlansCreateMultipleAPsExtension "
showHeader = " false " action = " {!doRedirect} " >
< apex : form >
< apex : actionFunction name = " jsCancel " action = " {!cancel} " immediate = " true " />
</ apex : form >
< script >
var oids = '{!JSENCODE(objIDs)}';
if (oids.length < 15) {
alert('{!$Label.LabsActionPlans__ap_Errors_selectOneRecord}');
jsCancel();
}
</ script >
</ apex : page >
그런 다음 해당 객체의 목록보기 버튼을 만들고 목록보기에 추가하십시오.
예를 들어, 관련 행동 계획을 계약에 허용하지 않으려면 작업 계획 관련 개체 필드 세트에서 계약 필드를 제거하십시오. 행동 계획 객체에서 필드를 삭제할 필요가 없습니다.
이제 첫 번째 템플릿을 만들 준비가되었습니다. 액션 플랜 템플릿 탭으로 이동하십시오. "새 액션 계획 템플릿"버튼을 클릭하십시오.
템플릿 화면은 다음과 같습니다.
이름 - 템플릿 이름.
설명 - 템플릿 사용 방법에 대한 설명.
주말 건너 뛰기 - 주말에 주말에 주말이나 주말 이후의 날로 떨어질 작업을 자동으로 재조정 할 수 있습니다. 점검되면 선택 목록이 나타나 주말 전후를 선택할 수 있습니다.
조치 - "x"를 클릭하여 템플릿의 단계를 제거하십시오.
주제 - 임무는 무엇을 해야하는지.
작업 종속성 - 종속 작업은 제어 작업이 완료되면 만 생성됩니다.
며칠 후-이 값은 작업의 마감일을 결정합니다.
할당 - 사용자를 찾습니다. 작업을 동적으로 할당하려면 비워 두십시오. 동적으로 할당하면 기본 동작은 작업을 실행중인 사용자에게 할당하는 것입니다. 행동 계획 설정을 변경하여 시스템이 레코드 소유자에게 할당하도록 할 수도 있습니다. 위의 "설치 포스트 설치"안내서를 참조하십시오.
카테고리 - 어떤 유형의 활동.
우선 순위 - 작업 우선 순위 및 레코드 유형 (해당되는 경우)에서 가져옵니다.
이메일 - 확인했을 때 표준 새 작업 이메일을 보내십시오. 다른 사람에 따라 작업의 경우 작업이 생성되면 이메일이 전송됩니다.
알림 -이 확인란은 행동 계획을 작성하기 위해 템플릿을 적용 할 때 알림의 기본 동작을 정의합니다.
확인되지 않은 상태로 남겨두면 행동 계획 작성 페이지에서 알림이 처음에는 비활성화됩니다.
확인되면 알림을 사용할 수 있습니다.
댓글 - 댓글을 뒷받침하는 댓글.
새 작업 추가 - 작업 그리드에 추가 행을 추가합니다.
저장 - 템플릿을 저장합니다.
조직이 작업 레코드 유형을 사용하는 경우 각 작업 계획 및 템플릿 레코드의 모든 작업에 사용할 레코드 유형을 지정해야합니다. 이는 각 관련 행동 계획 작업에 사용 가능한 상태 값에 영향을 미칩니다. 행동 계획이나 템플릿이 생성되면 변경할 수 없습니다. 해당 조치 계획 또는 템플릿의 모든 작업에 대해 하나의 레코드 유형 만 지정할 수 있습니다.
계정 목록보기로 이동하십시오. 행동 계획을 작성하려는 계정을 선택하십시오. "계정 행동 계획 만들기"버튼을 클릭하십시오.
조회에 이름을 입력하고 클릭하여 사용할 템플릿을 선택하십시오.
이 계획에 맞는 정보를 입력하십시오. 앞서 선택한 계정은 표시됩니다.
행동 계획을 저장하십시오. 참고 : 행동 계획 생성은 queueable (비동기) 프로세스에 의해 처리됩니다. 생성 된 모든 레코드를 볼 수있는 데 몇 분이 걸릴 수 있습니다.
행동 계획과 작업을 확인하십시오.
행동 계획의 첫 번째 작업을 완료하십시오. 행동 계획은 이제 올바른 관련 목록에 있으며이 계정에는 하나의 공개 활동과 하나의 폐쇄 활동이 있습니다. 템플릿의 세 번째 활동은 의존적이며 제어 작업이 완료된 경우에만 생성됩니다. (연락처 관련 목록이 여기에 표시되지만 이는 계정에 동일하게 적용됩니다.)
작업 계획 작업에서 Send Email
선택한 경우 작업 알림을 받으려면 사용자가 작업 알림 이메일의 수신을 제어 할 수 있었으며 (기본적으로 활성화 됨) 이메일 알림을 전송할 수 있도록 허용했습니다 (또한이기도합니다. 기본적으로 활성화). 자세한 내용은 Salesforce H & T를 참조하십시오.
액션 계획 작업에 대한 Send Email
필드를 이메일 알림을 보내려면 확인해야하며, Allow Flow to send delegated task notifications on records created through Apex
설정을 허용 해야 합니다. 설정> 기능 설정> 판매> 활동 설정으로 이동하여 해당 상자를 확인하고 유량 제작 작업 계획을 통해 이메일 알림을 전송할 수 있습니다.
사용자가 작업 알림을 활성화 한 경우 작업 계획 작업이 작성되면 전송됩니다.
Send Email
상자를 확인하지 않으면 사용자가 개인 설정에있는 경우 작업 알림을받을 수 있습니다.행동 계획 작업은 대기열에 할당 할 수 없으므로 상위 레코드가 큐가 소유 한 경우 각 AP 작업이 실행중인 사용자에게 할당됩니다. 해당 행동 계획에서 생성 된 작업은 플로우를 사용하여 작업을 재 할당하여 대기열에 할당 할 수 있습니다. 침입 가능한 Apex는 작업 계획 작업 ID 목록을 반환하기 때문에 동시에 생성되어 즉시 쿼리 할 수 있으므로 동일한 흐름에서 생성 된 작업 (작업 계획 작업과 관련된 생성 작업)을 업데이트 할 수 있습니다. 또는 작업을 재 할당하여 원하는 다른 방식으로 대기하는 것입니다. 행동 계획을 세우지 않으며 대기열 이름은 액션 계획 세부 페이지에 표시됩니다.
행동 계획에는 흐름에 포함될 수있는 수사 가능한 Apex 클래스가 포함됩니다. 트리거 레코드의 레코드 ID는 원하는 템플릿의 ID 또는 이름과 마찬가지로 필요합니다. 트리거부터 시작까지의 일은 선택 사항입니다 (기본값은 0)입니다. 첫 번째 작업은 시작 날짜부터 일수 (템플릿에 지정 됨)가 발생합니다. 이 날짜는 주말에 떨어질 수 있지만 템플릿에 설정된 경우 주말을 피하기 위해 작업 마감일을 이동할 수 있습니다.
VENCOBLE APEX 클래스는 생성 된 모든 작업 계획 작업의 Salesforce ID를 반환하며, 이는 다음 흐름 단계에서 사용할 수 있습니다.
다음을 실행하십시오.
sf apex run --file ./data/sample-data.apex
포함 된 흐름과 함께이 템플릿을 사용하려면 New Customer Onboarding Activities
흐름에서 Create Action Plan From Template
참조하십시오.
계정을 만들고 '고객'으로 시작하는 모든 값으로 Type
설정하십시오.
행동 계획으로 작업 할 프로세스 빌더를 만들 때 재귀 상자를 확인하지 않는 것이 좋습니다.
프로세스 빌더를 전혀 사용하지 않는 것이 좋습니다!
트리거 또는 에이펙스 클래스에서 침략 가능한 정점을 호출하려면 다음 샘플 코드를 조정하십시오.
String apTemplateName ;
ActionPlanTemplate__c apTemplate ;
List < SObject > toInsert ... // can use any object, such as Account, or the generic SObject class
List < ActionPlanCreateInvocable . CreateActionPlanRequest > requests = new List < ActionPlanCreateInvocable . CreateActionPlanRequest >();
for ( SObject a : toInsert ){
ActionPlanCreateInvocable . CreateActionPlanRequest req = new ActionPlanCreateInvocable . CreateActionPlanRequest ();
req . templateNameOrID = apTemplate . Id ;
req . relatedRecordID = a . Id ;
req . daysToActionPlanStart = 0 ;
req . actionPlanName = a . Name + ' - Onboarding ' ;
requests . add ( req );
}
List < Id > resultIDs = ActionPlanCreateInvocable . makeActionPlanFromTemplate ( requests );
String apTemplateName ;
LabsActionPlans__ActionPlanTemplate__c apTemplate ;
List < SObject > toInsert ... // can use any object, such as Account, or the generic SObject class
List < LabsActionPlans . ActionPlanCreateInvocable . CreateActionPlanRequest > requests = new List < LabsActionPlans . ActionPlanCreateInvocable . CreateActionPlanRequest >();
for ( SObject a : toInsert ){
LabsActionPlans . ActionPlanCreateInvocable . CreateActionPlanRequest req = new LabsActionPlans . ActionPlanCreateInvocable . CreateActionPlanRequest ();
req . templateNameOrID = apTemplateName ;
req . relatedRecordID = a . Id ;
req . daysToActionPlanStart = 1 ;
req . actionPlanName = a . Name + ' - Onboarding ' ;
requests . add ( req );
}
List < Id > resultIDs = LabsActionPlans . ActionPlanCreateInvocable . makeActionPlanFromTemplate ( requests );
변수 :
templateNameOrID
(필수) 이름은 고유하지 않으므로 ID가 선호됩니다.relatedRecordID
(필수)는 Action Plan Object에서 관련 레코드 개체 이름이라는 관계 필드가 있어야합니다.daysToActionPlanStart
(필요하지 않음) 기본값이 0으로, 계획이 생성되는 날actionPlanName
(필요하지 않음) 액션 계획에 사용자 정의 이름을 제공합니다. 지정되지 않으면 기본값은 {template name} - {부모 레코드 이름}으로 표시됩니다.행동 계획은 템플릿 내보내기 및 템플릿 가져 오기를 사용하여 모범 사례의 공유 및 발견을 지원합니다.
수출은 간단합니다. 내보낼 템플릿으로 이동하십시오. "내보내기"버튼을 클릭하십시오.
내보내기 템플릿 헤더 및 작업 정보가 포함 된 간단한 XML 파일을 만듭니다. 또한 템플릿을 만든 사람에 대한 정보도 포함되어 있습니다. 참고 :이 템플릿을 사용할 수있는 객체에 대한 사용자 정보 나 민감한 데이터는 포함되지 않습니다.
Lightning Experience를 사용하는 경우 내보내는 파일은 개인 파일 라이브러리의 파일 탭에 있습니다. 여전히 Salesforce Classic을 사용하는 경우 개인 문서 폴더의 문서 탭에 있습니다.
파일을 공유하는 것은 쉽습니다. 공유하고 싶은 사람에게 파일을 이메일로 보내십시오. 더 넓은 청중과 공유하고 싶습니까? [email protected]으로 Salesforce Labs에 파일을 이메일로 보내십시오.
수입도 간단합니다. "가져 오기 템플릿"탭으로 이동하십시오. "브라우즈"를 사용하여 가져올 파일을 선택하고 발견되면 "템플릿 가져 오기"를 클릭하십시오.
이 저장소에는 샘플 액션 플랜 템플릿 파일도 포함되어 있으며 해당 탭에서 가져올 수 있습니다. GitHub에서 새로운 고객 온 보딩 또는 전시회 후속 조치를 다운로드하거나 data
폴더 의이 SFDX 프로젝트에서 찾을 수 있습니다.