Salesforce 패키지 및 기록 변수 사용의 예
- 최종 업데이트2023/11/15
Salesforce 패키지 및 기록 변수 사용의 예
Salesforce 객체를 쿼리하고 데이터를 CSV 파일에 쓰는 봇을 구축합니다. 봇은 또한 기록 변수를 사용하여 Salesforce에서 가져온 개별 기록의 데이터를 검색합니다.
전제 조건
- 아직 앱이 없는 경우, Salesforce에서 연결 앱을 설정하십시오.
- 이 봇은 Control Room OAuth 연결 방법을 사용합니다. 봇을 구축하기 전에 Control Room OAuth 연결을 생성합니다. 자세한 내용은 Salesforce 인증 작업 항목을 참조하십시오.
- Salesforce에서 샘플 기회 및 계정 데이터를 설정합니다. 샘플 데이터가 없는 경우, 다음 CSV 파일에서 Salesforce로 데이터를 가져올 수 있습니다.
Acme Solutions Pvt Ltd의 영업팀이 잠재 고객 발굴 상태의 모든 기회 기록을 가져와 영업 담당자에게 할당하여 후속 조치를 취하는 프로세스를 자동화하기로 했다고 가정해 보겠습니다. 이 팀에서 다음 작업을 수행하는 봇을 구축합니다.
- Salesforce의 기회 객체에서 잠재 고객 발굴 상태의 모든 기회를 가져옵니다.
- 각 기회 기록에서 검색된 계정 ID를 사용하여 계정 객체에서 계정 이름을 가져옵니다.
- 기록을 사용하여 각 기회 기록에서 데이터를 캡처합니다.
- 영업 담당자를 할당하기 위해 처리할 수 있는 CSV 파일에 기록을 씁니다.
봇 샘플은 Salesforce, Record, 루프 및 데이터 테이블 패키지를 기록 변수와 함께 사용하여 다음 자동화 작업을 수행하는 방법을 보여줍니다.
- Salesforce SOQL 실행 작업을 사용하여 Salesforce 객체를 쿼리합니다.
- Salesforce 기록 가져오기 작업을 사용하여 Salesforce 객체에서 개별 기록을 가져옵니다.
- 기록 변수를 업데이트하고 기록 변수를 재설정합니다.
- 데이터 테이블 변수에 기록을 삽입합니다.
- 데이터 테이블을 CSV 파일에 씁니다.
프로시저
-
봇을 만듭니다.
- 왼쪽 창에서 자동화를 클릭합니다. 이용 가능한 봇 목록 및 양식이 표시됩니다.
- 새 항목 생성 > Task Bot을 클릭합니다.
- 이름에 Get Sales Opportunities를 입력합니다.
- 생성 및 편집을 클릭합니다.
-
Salesforce로 인증합니다. 이 튜토리얼에서는 Control room OAuth 연결 이 인증 유형으로 사용됩니다. OAuth 연결 설정에 대한 지침은 이 튜토리얼에서 제외합니다. 따라서 OAuth 연결 설정에 익숙하지 않은 경우, 이 페이지의 지침을 따르거나 OAuth 2 - 클라이언트 자격증명을 인증 유형으로 사용하여 Salesforce 인증 작업 내에서 클라이언트 ID, 클라이언트 암호, Salesforce 사용자 이름 및 비밀번호를 제공할 수 있습니다.
- 작업 패널에서 Salesforce > 인증 작업을 찾아 Bot 편집기에 추가합니다.
- 인증 유형에서 Control room OAuth 연결을 선택합니다.
-
선택 을 클릭하고 다음 세부 정보로 설정한 OAuth 연결을 선택합니다.
- 공급자 유형: Salesforce
- 연결 이름: 사용자가 설정한 연결.
- 토큰 유형: 공유됨.
- API 버전에 Salesforce 연결 앱의 API 버전 번호를 입력합니다. 예: 50.0.
- 세션 이름 은 Default로 둡니다.
- 매핑된 변수에서 변수 매핑 추가를 클릭한 다음 IntanceUrl 키를 InstanceUrl 문자열 변수에 매핑합니다.
-
다른 작업을 실행하기 전에 인증 오류를 확인하려면 Try Catch 작업을 사용합니다.
- 작업 패널에서 오류 처리기 > Try 작업를 찾아 Bot 편집기에 추가합니다.
- Catch 블록 아이콘을 클릭합니다.
- 예외에서 오류 처리기를 선택합니다.
- 예외 메시지 할당에서 (x)를 클릭하고 ErrorMessage 문자열 변수를 만듭니다.
- Catch 블록 내에 메시지 상자 작업를 추가합니다.
- 표시할 메시지 입력에서 ErrorMessage 변수를 선택하고 변경 사항을 저장합니다.
-
Salesforce 기회 객체를 쿼리하여 잠재 고객 발굴 상태의 기회 기록을 가져옵니다.
- 작업 패널의 Try 블록에서 Salesforce > SOQL 실행 작업을 찾아 추가합니다.
-
실행할 SOQL 쿼리에 다음 쿼리를 입력합니다.
SELECT Id, Name, AccountId, Amount, CloseDate, StageName, NextStep FROM Opportunity WHERE StageName = 'Prospecting'
- 삭제된 기록 포함에서 아니요를 클릭합니다.
- Default가 세션 이름으로 설정되어 있는지 확인합니다.
- 결과를 변수에 저장에서 (x)를 클릭하고 list_records_prospecting 목록 변수를 생성합니다.
- 변경 사항을 저장합니다.
-
검색된 기회 기록 목록을 반복합니다.
- 작업 패널에서 Try 블록 내에서 SOQL 실행 작업 후 Loop > Loop 작업를 찾아 추가합니다.
- 반복자에서 목록 내 각 항목 대상을 선택합니다.
- 목록에서 list_records_prospecting 변수를 선택합니다.
-
변수에 현재 값 할당에서 (x)를 클릭하여 dict_record_opportunity 변수를 모든 유형으로 생성합니다.
사전으로 저장되는 기록의 예는 다음과 같습니다. 봇은 이름, 계정 이름, 금액, 마감일, 단계 이름 및 다음 단계 필드에서만 값을 검색하고 나머지는 제외합니다.
{attributes,com.automationanywhere.botcommand.data.impl.DictionaryValue@5d804b9c},{Id,0065j00001Q2ISAAA3},{Name,Opportunity #1},{AccountId,0015j00001BU2hnAAD},{Amount,2000.0},{CloseDate,2023-10-05},{StageName,Prospecting},{NextStep,Call to Discuss}
- 변경 사항을 저장합니다.
-
기록의 각 필드에서 값을 검색하기 전에, 각 기회 기록의 값을 저장하기 위한 기록 변수와 반복이 끝날 때마다 첫 번째 기록 변수를 재설정하기 위한 기록 변수 두 가지를 생성합니다.
- 변수 패널에서 변수 생성을 클릭합니다.
- 유형에서 기록을 선택합니다.
- 이름에 out_record_prospecting를 입력합니다.
- 생성을 클릭합니다.
-
a단계부터 d단계까지 반복하여 다음 세부 정보가 포함된 다른 기록 변수도 생성합니다.
유형: Record이름: record_empty
-
현재 기록의 기회 이름으로 기록 변수를 업데이트합니다.
- 작업 패널에서 루프 작업 내 기록 > 열 추가 작업를 찾아 추가합니다.
- 소스 기록 변수에서 out_record_prospecting을 선택합니다.
- 열 유형에서 문자열을 선택하고 값에 $dict_record_opportunity{Name}$을 입력합니다.
- 특정 인덱스를 클릭하고 0을 입력합니다.
- 대상 기록 변수에서 out_record_prospecting을 선택합니다.
- 변경 사항을 저장합니다.
-
Salesforce에서 검색된 기회 기록에는 계정 ID만 포함되며 계정 이름은 포함되지 않습니다. 각 기록의 계정 ID를 사용하여 계정 이름을 검색합니다.
- 작업 패널에서 루프 작업 내의 Salesforce > 기록 가져오기 작업를 찾아 추가합니다.
- 객체 이름에 Account을 입력합니다.
- 기록 ID를 선택하고 $dict_record_opportunity{AccountId}$을 입력합니다.
- 필드 및 데이터에서 목록 을 선택하고 추가를 클릭합니다.
- 유형에서 문자열을 선택합니다.
- 값을 0으로 설정에 Name를 입력합니다.
- Default가 Salesforce 세션 이름으로 설정되어 있는지 확인합니다.
-
매핑된 변수에서 변수 매핑 추가를 클릭한 다음 Name 키를 AccountName 문자열 변수에 매핑합니다.
Get record
호출은 이름 키를 사용하여 계정 이름을 검색하고 AccountName 변수에 저장합니다. - 변경 사항을 저장합니다.
-
새 열을 추가하고 계정 이름으로 기록 변수를 업데이트합니다.
- 작업 패널에서 > 열 추가 작업루프 내에서 작업기록
- 소스 레코드 변수에서 아웃_레코드_프로스펙팅을 선택합니다.
- 열 유형에서 문자열을 선택하고 값에 $AccountName$을 입력합니다.
- 특정 색인을 클릭하고 1을 입력합니다.
- 대상 레코드 변수에서 아웃_레코드_프로스펙팅을 선택합니다.
- 변경 사항을 저장합니다.
-
새 열을 추가하고 금액으로 기록 변수를 업데이트합니다.
- 작업 패널에서 > 열 추가 작업루프 내에서 작업기록
- 소스 레코드 변수에서 아웃_레코드_프로스펙팅을 선택합니다.
- 열 유형에서 숫자를 선택하고 값에 $dict_record_opportunity{Amount}$을 입력합니다.
- 특정 색인을 클릭하고 2을 입력합니다.
- 대상 레코드 변수에서 아웃_레코드_프로스펙팅을 선택합니다.
- 변경 사항을 저장합니다.
-
CloseDate, StageName 및 NextStep으로 기록 변수를 업데이트합니다.
-
루프 작업에 열 추가 작업를 추가하고, 다음 세부 정보를 입력합니다.
필드 값 소스 기록 변수 out_record_prospecting 열 유형 String 값 $dict_record_opportunity{CloseDate}$ 특정 인덱스 3 -
</p> </p>에 </p>열 추가 </p> </p>를 추가한 다음 다음 세부 정보를 입력합니다:
필드 값 소스 레코드 변수 OUT_RECORD_PROSPECTING 열 유형 String 값 $dict_record_opportunity{StageName}$ 특정 인덱스: 4 -
</p> </p>에 </p>열 추가 </p> </p>를 추가한 다음 다음 세부 정보를 입력합니다:
필드 값 소스 레코드 변수 OUT_RECORD_PROSPECTING 열 유형 String 값 $dict_record_opportunity{NextStep}$ 특정 인덱스: 5 - 변경 사항을 저장합니다.
-
루프 작업에 열 추가 작업를 추가하고, 다음 세부 정보를 입력합니다.
-
기록을 DataTable 변수에 삽입합니다.
- 반복을 추적하고 행 인덱스 번호로 사용하려면, counter라는 이름의 숫자 변수를 만들고 기본값을 0로 설정합니다.
- 작업 패널에서 루프 작업 내의 데이터 테이블 > 행 삽입 작업을 찾아 추가합니다.
- 데이터 테이블 이름에서 (x)를 클릭하고 table_records 테이블 변수를 만듭니다.
- 특정 워크시트를 클릭하고 $counter$를 입력합니다.
- 행 기록 이름에서 out_record_prospecting을 선택합니다.
- 변경 사항을 저장합니다.
-
counter 변수를 1씩 증가시킵니다.
- 작업 패널에서 루프 작업 내의 숫자 > 증가 작업를 찾아 추가합니다.
- 숫자 입력에 $counter$를 입력합니다.
- 증가 입력 값에 1을 입력합니다.
- 출력을 변수에 지정 필드에서 카운터를 선택합니다.
- 변경 사항을 저장합니다.
-
다음 반복 전에 out_record_prospecting 기록 변수를 재설정합니다.
- 작업 패널에서 루프 작업 내의 기록 > 할당 작업을 찾아 추가합니다.
- 소스 기록 변수 선택에서 record_empty를 선택합니다.
- 소스 기록 변수 선택에서 기록을 클릭하고 out_record_prospecting을 선택합니다. record_empty 변수에 값이 없으므로, out_record_prospecting이 재설정됩니다.
- 변경 사항을 저장합니다.
-
검색된 기회 기록을 CSV 파일에 기록합니다.
- 작업 패널에서 루프 작업 내의 데이터 테이블 > 파일에 쓰기 작업를 찾아 추가합니다.
- 데이터 테이블 이름에서 table_records를 선택합니다.
- 파일 이름 입력에 CSV 파일 경로를 지정합니다. 예: C:\bots\opportunities.csv
- 존재하지 않을 경우 폴더/파일을 생성을 선택합니다.
- 기존 파일 덮어쓰기를 클릭합니다.
- 변경 사항을 저장하고 봇을 실행합니다.