트랜잭션 관리자: 통합 - 가져오기
GET 통합을 사용하여 Salesforce와 같은 외부 공급업체 애플리케이션에서 데이터에 액세스하는 방법을 알아봅니다.
이 문서에서는 계정 이름, 기회 이름, 배송 주소 및 청구 주소 등의 트랜잭션 세부 정보와 함께 Salesforce 기회 ID를 검색하여 트랜잭션 필드에 CPQ 기록하는 방법을 설명합니다. 이 패턴은 외부 공급업체로부터 데이터를 요청해야 CPQ 하는 모든 통합과 관련이 있습니다.
목표: 최종 사용자(매수 측) 플로우
먼저 Salesforce에서 Transaction Manager 트랜잭션을 엽니다. 그런 다음 구매 측 UI에서 SF 데이터 가져오기 를 클릭하여 SF 데이터 가져오기 이벤트를 트리거합니다. 이 이벤트는 Salesforce에 연결되는 여러 통합을 시작하여 관련 트랜잭션 데이터(기회 ID, 기회 이름, 배송 주소, 청구 주소, 계정 ID 및 계정 이름)를 추출하고 구매측 UI의 해당 필드를 채웁니다.
매수측 트랜잭션 UI에서 SF 데이터 가져오기를 클릭합니다.
상세 정보가 모두 채워집니다.
이 문서의 나머지 부분에는 Salesforce에서 데이터를 가져오는 통합을 만드는 단계 CPQ 가 나열되어 있습니다.
관리 설정: 필수 구성 요소
이 가이드에서는 CPQ 트랜잭션 관리자 기능이 활성화되어 있고 해당 Salesforce 환경에 Logik 트랜잭션 관리자 통합 확장이 설치되어 있는 환경을 가정합니다. 설치 지침을 보려면 다음 문서를 참조하십시오 Salesforce 트랜잭션 관리자 통합 패키지 확장 설치.
CPQ: 연결 추가
연결 기록에는 트랜잭션 관리자 통합을 시작하는 데 필요한 데이터가 포함되어 있습니다. 여기에는 인증 세부 정보, 호스트 URL, 경로 및 헤더가 포함됩니다. 연결 기록을 보려면 관리자에서 CPQ유틸리티로 이동한 다음 연결을 클릭합니다.
연결 추가에 대한 자세한 내용은 의 "연결 작성" 섹션 트랜잭션 관리자: 통합을 참조하십시오. 이 문서에서는 Salesforce 환경에 대한 연결을 사용합니다.
CPQ: 통합 추가
- 관리자를 열고 CPQ 통합 섹션으로 이동합니다.
- 통합 추가를 클릭합니다. 적절한 이름을 사용하여 새 통합을 생성합니다. 이 예에서는 "Get Oppty Id"라는 이름을 사용합니다.위에 표시된 통합 상세 정보 페이지에는 다음 섹션이 포함되어 있습니다.
- 통합 설정
- 변환 요청
- 엔드포인트에 연결
- 응답 변환
이러한 섹션에 대한 자세한 내용은 다음과 같습니다.
- 통합 설정:
- HTTP 메서드: GET
- 경로: /services/data/vXX.X/query/?q=SELECT+Name,+LGK__OpportunityId__c FROM+LGK__Transaction__c+WHERE+LGK__ID__c='{{txn.id}}'
GET 요청은 Name 필드의 LGK__ID__c 트랜잭션 ID "txn.id"으로 필터링하여 Salesforce의 객체에서 LGK__Transaction__c and LGK__OpportunityId__c 필드를 검색합니다.
경로에서 <vXX.X> 는 최신 복합 그래프 버전입니다. 여기에서 최신 버전을 확인할 수 있습니다.
- 포함할 라인 항목 세부 정보: 선택한 라인
- 시간 제한: 2000ms
다음을 클릭합니다.
- 변환 요청: GET 통합을 빌드할 때는 필요하지 않습니다.
- 엔드포인트에 대한 연결: 이 예에서는 Salesforce를 쿼리합니다. 다른 시스템과의 통합을 설정하는 경우 적절한 연결을 선택합니다.
다음을 클릭합니다.
- 응답 변환: 이 샘플 응답 변환 템플릿을 참조하십시오.
{ "fields": [ { "variableName": "txn.custom.tXNNumber", "value": "{{#each records}}{{Name}}{{/each}}" }, { "variableName": "txn.opportunity.id", "value": "{{#each records}}{{LGK__OpportunityId__c}}{{/each}}" } ] }
새 통합: 기회 세부 정보 검색
다른 통합을 생성하여 추가 상세 정보를 얻 txn.opportunity.id습니다.
이제 기회 ID를 얻었으므로 통합의 다음 단계에서는 이를 참조로 사용하여 기회에서 추가 상세 정보를 검색하고 관련 LGK 트랜잭션 필드를 채웁니다.
- 통합 설정:
- HTTP 메서드: GET
- 경로:
GET /services/data/vXX.X/query?q=SELECT Id,Name,Owner.Username,AccountId,Account.Name,Account.BillingAddress,Account.ShippingAddress FROM Opportunity WHERE Id='{{txn.opportunity.id}}'이 쿼리는 기회의 고유 ID를 기반으로 Salesforce의 기회 기록에서 필드를 검색합니다. 또한 계정 이름, 대금 청구 주소 및 배송 주소와 같은 관련 계정 상세 정보도 검색합니다. 쿼리는 로 식별되는 {{txn.opportunity.id}}특정 기회에 대한 데이터를 반환합니다.
Salesforce에서 필드 상세 정보를 가져오려면 다음을 클릭하십시오. .
- 포함할 라인 항목 세부 정보: 선택한 라인
- 시간 제한: 2000ms
다음을 클릭합니다.
- 변환 요청: GET 통합을 빌드할 때는 필요하지 않습니다.
- 엔드포인트에 대한 연결:
엔드포인트 에 대한 연결을 선택합니다. 이 예에서는 Salesforce를 쿼리합니다. 다른 시스템과의 통합을 설정하는 경우 적절한 연결을 선택합니다.
다음을 클릭합니다.
- 응답 변환: 다음 JSON 스니펫은
기록컬렉션을 반복하여 추가 경로에 정의된 변수를 채우는 방법을 정의합니다.의 경우, 각 기록에서 필드를 추출하고, 의 경우txn.custom.opportunitytxn.custom.billToAddress, 필드를 추출하여 연결합니다Account.BillingAddress.street,Account.BillingAddress.city,Account.BillingAddress.state,Account.BillingAddress.postalCode.Name 핸들바 {{#each}} 루프는 각 기록을 처리하는 데 사용되며 결과 값은 연결된 문자열 또는 값의 배열로 시스템의 처리에 따라 달라집니다.
{ "fields": [ { "variableName": "txn.custom.opportunity", "value": "{{#each records}}{{Name}}{{/each}}" }, { "variableName": "txn.account.id", "value": "{{#each records}}{{AccountId}}{{/each}}" }, { "variableName": "txn.custom.accountName", "value": "{{#each records}}{{Account.Name}}{{/each}}" }, { "variableName": "txn.custom.quoteNumber", "value": "{{#each records}}{{QuoteNumber}}{{/each}}" }, { "variableName": "txn.custom.billToAddress", "value": "{{records.[0].Account.BillingAddress.street}}{{records.[0].Account.BillingAddress.city}}{{records.[0].Account.BillingAddress.state}}{{records.[0].Account.BillingAddress.postalCode}}" }, { "variableName": "txn.custom.shipToAddress", "value": "{{records.[0].Account.ShippingAddress.street}}{{records.[0].Account.ShippingAddress.city}}{{records.[0].Account.ShippingAddress.state}}{{records.[0].Account.ShippingAddress.postalCode}}" } ] }
최종 사용자가 버튼을 클릭하면 통합을 트리거합니다. 이제 이벤트를 클릭하여 새 이벤트를 만들거나 기존 이벤트를 선택할 수 있습니다. 이 경우 SF 데이터 가져오기 이벤트(UI의 버튼)를 사용하여 이전에 생성한 통합에 연결합니다.
새 작업 추가를 클릭합니다.
통합을 클릭합니다.
"적합한 ID 가져오기" 통합을 검색하여 추가합니다.
저장을 클릭합니다. 그런 다음 새 작업 추가 를 클릭하고 "retrieveSFOptyData"를 추가합니다.
작업 항목 옆의 위쪽 및 아래쪽 화살표를 클릭하여 원하는 순서대로 정렬합니다. (여기서는 "기회 ID 가져오기"를 선택한 다음 "SF 기회 데이터 검색"을 선택하여 기회 ID를 가져오고 관련 데이터를 검색합니다.)
저장을 클릭하고 변경 내용을 배포합니다.
이벤트와 통합을 추가할 수 있는 방법에 대해 논의했습니다. 통합은 스테이지 수준에서 구성할 수도 있습니다. 이렇게 하려면 다음으로 이동하십시오. .
문제 해결
통합을 구성할 때 정확한 세부 정보를 검색하려면 통합 시퀀스가 올바르게 설정되어 있는지 확인하는 것이 중요합니다. 실행 순서는 데이터 일관성과 정렬을 유지하는 데 중요한 역할을 합니다.
이렇게 하려면 다음과 같이 하십시오.
- 기회 ID 가져오기: 기회 ID는 관련 데이터를 연결하기 위한 키 참조 역할을 합니다. 나중에 검색하는 트랜잭션 상세 정보는 특정 기회와 직접 연결되기 때문에 이 단계는 필수적입니다.
- 기회 상세 정보를 통해 트랜잭션 ID 가져오기: 기회 ID를 사용하여 트랜잭션 ID를 가져옵니다. 각 트랜잭션은 특정 기회에 연결되어 있기 때문에 이 방법을 사용하면 올바른 트랜잭션을 해당 기회와 정확하게 연결할 수 있습니다.
이 순서를 따르면 통합의 무결성을 유지하고 데이터 흐름이 원활하고 안정적으로 유지되도록 할 수 있습니다.