Loading
CRM Analytics
computeExpression Transformation

computeExpression Transformation

computeExpression 변환을 사용하면 파생 필드를 데이터 집합에 추가할 수 있습니다. 파생 필드의 값은 입력 데이터 소스에서 추출되지 않습니다. 대신 CRM Analytics에서 SAQL 식을 사용하여 값을 생성하며, 이러한 값은 입력 데이터에서 하나 이상의 필드 또는 다른 파생 필드를 기반으로 할 수 있습니다. 예를 들어, 식을 사용하여 필드에 값을 할당하거나, 텍스트 필드를 연결하거나, 숫자 필드의 수학적 계산을 수행할 수 있습니다.

노트
노트 Data Prep 레시피에서 수식을 기반으로 계산된 열을 만들려면 수식 변환: 식을 기반으로 계산된 열 만들기를 참조하십시오. Data Prep Classic 레시피에서 이 작업을 수행하려면 레시피에서 수식 필드 추가를 참조하십시오.

computeExpression 변환과 computeRelative 변환은 유사하지만, 주요 차이점이 있습니다. computeExpression 변환은 동일한 행 내에서 다른 필드를 기반으로 계산을 수행하고, computeRelative 변환은 다른 행에서 동일한 필드의 이전 및 다음 값을 기반으로 계산을 수행합니다.

computeExpression 변환을 만들 때 다음 지침을 고려하십시오.

  • 식에 다음 SAQL 연산자 및 함수만 포함할 수 있습니다.
  • 다중 값 필드는 지원되지 않습니다. SAQL 식 매개 변수에 다중 값 필드가 포함되어 있는 경우 데이터 플로에 실패합니다.
  • 파생 필드의 값이 지정된 유형에 일치해야 합니다. 예를 들어, 값이 문자열인 경우 파생 필드의 유형을 Text로 설정합니다.
  • CRM Analytics에서는 JSON에 나열되는 순서대로 파생 필드의 값을 계산합니다. 따라서 동일한 computeExpression 변환에서 다른 파생 필드를 기반으로 하는 파생 필드를 생성할 경우 입력 파생 필드가 가장 먼저 나열되어야 합니다. 예를 들어, 다음 computeExpression 변환 JSON 코드 조각에서 Derived_A가 Derived_B보다 먼저 나열되어야 합니다.
    "CreateDerivedFields": {
       "action": "computeExpression",
       "parameters": {
          "source": "sourceNode",
          "mergeWithSource": false,
          "computedFields": [
             {
                "name": "Derived_A",
                "type": "Text",
                "label": "Derived Field A",
                "saqlExpression": "\"hello \""}, 
             {
                "name": "Derived_B",
                "type": "Text",
                "label": "Derived Field B Dependent on Field A",
                "saqlExpression": "Derived_A + \"world\""}
             ]
          }
       }
  • 결과 데이터 집합에 파생 필드만 포함할 것인지 선택하거나 입력 및 파생 필드를 포함할 것인지 선택할 수 있습니다.
  • 표현식을 사용해 숫자 필드의 오버플로 값을 도출한 경우 변환이 이 필드 값을 열에 지정되는 기본값으로 설정합니다. 기본값이 설정되고 null 처리가 비활성화된 경우 필드 값이 0으로 설정됩니다. 기본값이 설정되지 않고 null 처리가 활성화된 경우 필드 값이 null로 설정됩니다. (Null 측정값 처리에 대한 문서를 참조하십시오.) 또한 표현식이 여러 열을 정의하고 오버플로 값을 도출할 경우 생성된 모든 필드가 기본값으로 설정됩니다. 필드의 문제를 오버플로 값과 분리하려면 정의된 각 열에 대해 별도의 computeExpression 변환을 만드십시오.
예

예제를 살펴보십시오. Salesforce 기회 데이터를 기반으로 데이터 집합을 생성하려고 합니다. 기회 개체에서 ID 및 금액 필드를 추출하는 데이터 플로를 만듭니다. 또한 데이터 집합에 ModifiedId, SalesTax, FinalPrice 및 ValueCategory와 같은 파생 필드를 추가하려고 합니다. 파생 필드에 대해 다음을 수행합니다.

  • 각 기회 ID에 “SFDC"를 추가하여 새 수정된 ID를 가져옵니다.
  • 8% 세율을 기준으로 판매세를 계산합니다.
  • 금액과 판매세를 더해 최종 가격을 계산합니다.
  • 계산된 최종 가격을 기준으로 기회를 낮음, 중간 및 높음 값 버킷으로 분류합니다.

다음 데이터 플로 정의를 만듭니다.

{
   "salesData": {
      "action": "sfdcDigest", 
      "parameters": {
         "object": "Opportunity", 
         "fields": [
            {"name": "Amount"},
            {"name": "Id"}]}},
   "Derived_Fields": {
      "action": "computeExpression", 
      "parameters": {
         "source": "salesData", 
         "mergeWithSource": true, 
         "computedFields": [
            {
               "name": "ModifiedId", 
               "type": "Text", 
               "saqlExpression": "\"SFDC\" + Id"},
            {
               "name": "SalesTax", 
               "type": "Numeric", 
               "precision": 18, 
               "defaultValue": "0", 
               "scale": 5, 
               "saqlExpression": "Amount * 0.08"},
            {
               "name": "FinalPrice", 
               "type": "Numeric", 
               "precision": 18, 
               "defaultValue": "0", 
               "scale": 5, 
               "saqlExpression": "Amount + SalesTax"},
            {
               "name": "ValueCategory", 
               "type": "Text", 
               "saqlExpression": "case when FinalPrice < 1000 then \"Low\" when FinalPrice >= 1000 and FinalPrice < 2000 then \"Medium\" else \"High\" end"}
         ]
      }
   },
   "Register_CategorizedSales": {
       "action": "sfdcRegister",
       "parameters": {
           "alias": "Categorized_Sales",
           "name": "Categorized_Sales",
           "source": "Derived_Fields" }
   }
}
  • computeExpression 매개 변수
    computeExpression 변환을 정의할 때 작업 특성을 computeExpression으로 설정합니다. 또한 값을 생성하는 데 사용되는 식과 입력 소스에 대한 매개 변수를 지정할 수 있습니다.
 
로드 중
Salesforce Help | Article