TransformerRuleList - 범위 지정, 전역

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기36분
  • TransformerRuleList API를 사용하면 다양한 유형의 JSON 및 XML 데이터를 이름-값 쌍 출력으로 변환하기 위한 규칙 목록을 만들 수 있습니다.

    TransformerRuleList API는 TransformerTransformerDefinition API와 함께 작동합니다. 이러한 API는 XML 노드 또는 구조화된 JSON 문서의 엔터티를 이름-값 쌍의 출력으로 변환합니다. 문자열, 숫자 및 기타 배열과 같은 배열 내의 객체 및 요소를 포함하여 지원되는 JSON 엔터티입니다.

    • TransformerRuleList API를 사용하면 출력에 포함할 원본 문서의 데이터와 원본 데이터를 변환하는 방법을 정의하는 변환 규칙 목록을 만들 수 있습니다.

    • TransformerDefinition API는 변환 규칙 목록을 JSON/XML 레코드 경로와 연결하여 재사용 가능한 변환 정의 객체를 정의합니다. 변환 정의 개체를 사용하여 하나 이상의 소스 문서를 변환할 수 있습니다.

    • Transformer API는 지정된 변환 규칙 목록을 사용하여 원하는 출력 데이터를 생성하기 위해 한 번에 하나의 데이터 엔터티씩 실제 데이터 변환을 수행합니다.

    TransformRuleList 객체를 인스턴스화할 때 .fromJSON() 또는 .fromXML() 메서드를 사용하여 JSON 또는 XML 소스 문서를 설명하는지 여부를 정의해야 합니다. 예:

    var trl = sn_tfrm입니다. TransformerRuleList().fromJSON(); 또는 var trl = sn_tfrm. TransformerRuleList().fromXML();

    그런 다음 addRule() 메서드를 사용하여 출력에 이름-값 쌍으로 포함할 소스 문서의 각 요소에 대한 변형 규칙을 정의합니다.

    setName() 또는 thenAdd()와 같은 "어댑터 메서드"를 사용하여 변환이 수행될 때 데이터 요소를 조작하는 방법을 정의합니다. 어댑터 메서드는 addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다. 각 데이터 변환에 하나 이상의 어댑터 메서드를 적용할 수 있습니다. 어댑터 메서드를 사용하면 다음과 같은 작업을 수행할 수 있습니다.
    • 텍스트를 연결합니다.
    • 더하기, 빼기, 나누기, 곱하기와 같은 수학 함수를 수행합니다.
    • 값을 위 또는 아래로 반올림합니다(반올림: 위/아래, 천장/바닥).
    • 소스 데이터 요소를 지정된 값과 비교할 때 최소값 또는 최대값을 사용할지 여부를 정의합니다.
    • 통화 코드를 적용합니다.
    • 서로 다른 측정 단위 간에 변환합니다.
    • 형식 데이터 요소입니다.
    • 패턴을 적용합니다.
    • 지정된 데이터 요소를 지정된 값으로 바꿉니다.
    • 문자열을 분할하고 재정렬합니다.

    TransformerRuleList 클래스는 범위가 지정된 서버 스크립트와 전역 서버 스크립트 모두에서 사용할 수 있습니다. 범위가 지정된 응용 프로그램에서 이 클래스를 사용하는 경우 sn_tfrm 네임스페이스 식별자를 사용합니다. 또한 인스턴스에서 이 API를 사용하려면 먼저 변환 서비스 플러그인(com.glide.transform)을 활성화해야 합니다.

    TransformerRuleList - addRule(문자열 규칙, 문자열 경로)

    출력에서 작성할 필드를 정의하는 관련 변환 규칙 목록에 항목을 작성합니다.

    원본 문서의 모든 요소에 대한 규칙을 만들 수 있습니다. 예를 들어, . addRule(' ticker', '$.quote.symbol')은 출력에 "ticker" 필드를 생성하고 소스의 quote.symbol에 있는 값 위에 복사합니다.

    addRule()을 사용하여 규칙을 정의한 후에는 thenAdd(), thenReplace() 및 thenFloor()와 같은 어댑터 메서드를 사용하여 규칙의 출력 데이터를 조작합니다. 단일 규칙에 필요한 만큼 어댑터 메서드를 정의할 수 있습니다. addRule() 호출 직후부터 다음 addRule() 호출까지 모든 어댑터 메서드가 해당 규칙에 적용됩니다. 어댑터 메서드는 누적되며 모든 어댑터 메서드의 결과는 출력 필드에 저장된 최종 값입니다.

    예를 들어, 다음 코드 조각에서 thenMultiply () 및 thenRoundDown ()은 addRule('change_percentage', '$.quote.changePercent')에 적용됩니다.addRule('close_price', '$.quote.close') 는 새 규칙을 시작합니다. 의 $.quote.changePercent 값이 .011이면 최종 출력 값은 "1"입니다(.011 * 100은 1 위치로 반올림됨).

    
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 

    addRule() 메서드는 매개 변수도 summary지원합니다. .addRule('summary')입니다. 이 구현은 출력에 이름 필드 "summary:"를 만들지만 소스의 필드와 상관 관계를 지정하지는 않습니다. 그런 다음 어댑터 메서드 thenConcat() 및 thenConcatSymbol()을 사용하여 요약 필드의 내용을 수정할 수 있습니다.

    표 1. 매개변수
    이름 유형 설명
    규칙 문자열 대상 출력의 요소 이름입니다.
    path 문자열 옵션입니다. JSONPath 또는 XPath를 소스 문서의 데이터 요소에 추가할 수 있습니다.

    어댑터 메소드 thenConcat() 및 thenConcatSymbol()은 규칙에 대해 다른 어댑터 메소드가 정의되지 않은 경우 이 매개변수를 정의할 필요가 없습니다. 다른 모든 어댑터 메서드에는 이 매개 변수가 필요합니다.

    표 2. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('summary') 
      .thenConcat('Shares of ') 
      .thenConcatSymbol('ticker') 
      .thenConcat(' closed at ') 
      .thenConcatSymbol('close_price'); 
    

    TransformerRuleList - setName(name 문자열)

    로깅을 위해 연결된 TransformerRuleList 개체의 이름을 정의합니다.

    표 3. 매개변수
    이름 유형 설명
    이름 문자열 연결된 TransformerRuleList 개체를 식별하는 데 사용할 이름입니다.

    API가 이 이름을 고유하게 만들지는 않지만 인스턴스 내에서 고유한 경우 유용합니다.

    표 4. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('summary') 
      .thenConcat('Shares of ') 
      .thenConcatSymbol('ticker') 
      .thenConcat(' closed at ') 
      .thenConcatSymbol('close_price'); 
    

    TransformerRuleList - thenAdaptCurrency(String currencyCode, Boolean outputNumericCurrencyValue)

    지정된 통화 코드를 연결된 addRule() 호출에 정의된 출력 필드에 연결하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 5. 매개변수
    이름 유형 설명
    currencyCode 문자열 USD, EUR 및 GBP와 같은 대상 데이터 요소에 연결할 통화 코드입니다.
    outputNumericCurrencyValue 부울 옵션입니다. 통화 코드를 표시할지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.

    • true: 국가 코드를 표시하지 않습니다. 숫자 값만 사용
    • false: 국가 코드 표시

    기본값: false

    표 6. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('summary') 
      .thenConcat('Shares of ') 
      .thenConcatSymbol('ticker') 
      .thenConcat(' closed at ') 
      .thenConcatSymbol('close_price'); 
    

    TransformerRuleList - thenAdaptDuration(문자열 inputDuration, 문자열 outputDuration)

    소스 필드를 한 측정 단위에서 다른 측정 단위로(예: 분에서 초 또는 주에서 며칠로) 변환하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 7. 매개변수
    이름 유형 설명
    입력 기간 문자열 소스 필드의 현재 측정 단위입니다.

    유효한 값은 다음과 같습니다.

    • 나노초
    • 마이크로초
    • 밀리초
    • 두 번째
    • 시간
    출력 기간 문자열 소스 필드를 출력으로 변환하는 측정 단위입니다.

    유효한 값은 다음과 같습니다.

    • 나노초
    • 마이크로초
    • 밀리초
    • 두 번째
    • 시간
    표 8. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('daily', '$.quote.weekly') 
      .thenAdaptDuration('WEEK', 'DAY'); 
    

    TransformerRuleList - thenAdd(피연산자 숫자)

    전달된 값을 소스 필드에 추가하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 9. 매개변수
    이름 유형 설명
    피연산자 번호 소스 필드에 추가할 값입니다.
    표 10. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList.fromJSON()
      .setName('Stock Report 05182019 JSON')
      .addSymbol('ticker', '$.symbol') 
      .addSymbol('change_percentage', '$.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addSymbol('trade_price', '$.current_price')
      .thenAdaptCurrency('USD', false) 
      .addMultiply('$.trade_quantity')
      .thenAdd('4.5'); 
    

    TransformerRuleList - thenApplyMap(map 객체)

    연결된 소스 필드에서 문자열 목록을 검색하고 출력에서 지정된 대체 값으로 대체하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 11. 매개변수
    이름 유형 설명
    객체 이름/값 쌍입니다.
    • 이름: 원본 데이터 요소에서 찾을 텍스트
    • value: 출력에서 바꿀 텍스트
    표 12. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.

    이 예제에서 thenApplyMap() 호출은 company_info 필드에서 Inc. 및 St.에 대한 소스 텍스트를 검색하고 출력의 company_info 필드에 있는 Incorporated 및 Street로 바꿉니다.

    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('company_info', '$.quote.company_info') 
      .thenApplyMap({'Inc.': 'Incorporated', 'St.': 'Street'});
    

    TransformerRuleList - thenApplyPattern(matchPattern, outputPattern 문자열)

    지정된 정규 표현식 패턴과 일치하는 어댑터를 소스 필드의 컨텐츠에 추가한 다음, 해당 컨텐츠를 두 번째 정규 표현식 패턴으로 바꾸거나 서식을 다시 지정하고 해당 값을 출력에 저장합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 13. 매개변수
    이름 유형 설명
    matchPattern(일치 패턴) 문자열 바꾸거나 서식을 바꿀 텍스트를 찾는 데 사용하는 정규 표현식 패턴입니다.
    출력 패턴 문자열 찾은 텍스트를 업데이트하는 데 사용할 정규 표현식 패턴입니다.
    표 14. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.

    이 예에서 "Inc."로 끝나는 모든 회사 이름은 "Incorporated"로 변환됩니다(예: Company Inc.에서 Company Incorporated로).

    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('company', '$.quote.company') 
      .thenApplyPattern('(.+)(\\w{3}\\.)', '$1Incorporated');
    

    TransformerRuleList - thenCeiling(피연산자 숫자)

    현재 규칙에 작업을 추가하여 전달된 값으로 지정된 소수점 이하 자리에서 소스 필드를 반올림합니다.

    지정된 소수점 이하 위치(0-4 반올림, 5-9 반올림)의 숫자 값을 기준으로 숫자가 반올림되는 직선 반올림과 달리 천장은 항상 반올림됩니다. 예를 들어 2.156 및 2.152의 상한값은 소수점 이하 2.16으로 전달된 경우 항상 2.16입니다. 직선 반올림의 경우 값은 각각 2.16 및 2.15입니다. 음수의 경우 상한 연산은 -2.156의 상한값이 -2.15인 것처럼 숫자를 더 양수로 만듭니다. 반올림된 숫자가 같으면 값이 더 음수인 -2.16이 됩니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 15. 매개변수
    이름 유형 설명
    피연산자 번호 숫자를 반올림할 소수점 오른쪽에 있는 소수 자리입니다(상한 적용).

    예를 들어 이 값이 2이고 원본 데이터 요소가 6.421인 경우 결과 값은 6.43입니다.

    표 16. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Mortgage Rates 05022019 JSON')
      .addRule('interest_rate', '$.quote.interest_rate') 
      .thenCeiling('2') // Always round the interest rate up to the hundredths place 
      .addRule('monthly_payment', '$.quote.total_loan_amount') 
      .thenDivideBy('180'); 
    

    TransformerRuleList - thenConcat(문자열 값)

    전달된 문자열을 출력 필드에 연결하는 어댑터를 현재 규칙에 추가합니다.

    다른 어댑터 메서드와 달리 이 메서드는 소스 필드에 적용할 필요가 없습니다. 이 메서드를 사용하여 출력에 완전히 새로운 데이터 문자열을 만들 수 있습니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 17. 매개변수
    이름 유형 설명
    문자열 현재 데이터 요소의 끝에 연결할 텍스트입니다.
    표 18. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('summary') 
      .thenConcat('Shares of ') 
      .thenConcatSymbol('ticker') 
      .thenConcat(' closed at ') 
      .thenConcatSymbol('close_price'); 
    

    TransformerRuleList - thenConcatSymbol(문자열 기호)

    이전에 규칙 목록에 정의된 필드 값을 현재 출력 필드에 연결하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 19. 매개변수
    이름 유형 설명
    기호 문자열 출력 필드에 추가할 규칙 목록 요소의 이름입니다.
    표 20. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('summary') 
      .thenConcat('Shares of ') 
      .thenConcatSymbol('ticker') 
      .thenConcat(' closed at ') 
      .thenConcatSymbol('close_price'); 
    

    TransformerRuleList - thenDivideBy(피연산자 숫자)

    소스 필드를 전달된 값으로 나누는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 21. 매개변수
    이름 유형 설명
    피연산자 번호 소스 필드를 나누는 값입니다.
    표 22. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('dividend_per_share', '$.quote.total_dividend') 
      .thenDivideBy('$.quote.total_shares'); 
    

    TransformerRuleList - thenDivideInto(피연산자 숫자)

    전달된 값을 소스 필드로 나누는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 23. 매개변수
    이름 유형 설명
    피연산자 번호 소스 필드를 나눌 값입니다.
    표 24. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('dividend_per_share', '$.quote.total_shares') 
      .thenDivideInto('$.quote.total_dividends'); 
    

    TransformerRuleList - thenFloor(피연산자 숫자)

    전달된 값으로 지정된 소수점 이하 위치에서 소스 필드를 반올림하고 출력에 저장하는 어댑터를 현재 규칙에 추가합니다.

    지정된 소수점 위치(0-4 반올림, 5-9 반올림)의 숫자 값을 기준으로 숫자가 반올림되는 직선 반올림과 달리 바닥은 항상 내림합니다. 예를 들어, 2.156과 2.152의 하한값은 소수점 이하 2로 전달된 경우 항상 2.15입니다. 직선 반올림의 경우 값은 각각 2.16 및 2.15입니다. 음수의 경우 바닥 연산은 -2.156의 하한값이 -2.16이므로 숫자를 더 음수로 만듭니다. 같은 숫자를 반올림하면 값이 더 양수인 -2.15가 됩니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 25. 매개변수
    이름 유형 설명
    피연산자 번호 숫자를 반올림할 소수점 오른쪽의 소수 자리입니다(최소 값 적용).

    예를 들어 이 값이 2이고 원본 데이터 요소가 6.427인 경우 결과 값은 6.42입니다.

    표 26. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Mortgage Rates 05022019 JSON')
      .addRule('interest_rate', '$.quote.interest_rate') 
      .thenFloor('2') // Always round the interest rate down to the hundreths place 
      .addRule('monthly_payment', '$.quote.total_loan_amount') 
      .thenDivideBy('180'); 
    

    TransformerRuleList - thenFormat(matchPattern 문자열, outputPattern 문자열)

    지정된 일치 패턴과 일치하는 소스 필드의 콘텐츠를 지정된 출력 패턴으로 다시 포맷하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 27. 매개변수
    이름 유형 설명
    matchPattern(일치 패턴) 문자열 소스 필드와 일치시킬 패턴입니다.

    유효한 값은 다음과 같습니다.

    • @: 모든 문자
    • #: 10진수
    • \: 리터럴 이스케이프(@ 기호의 경우 \@)
    출력 패턴 문자열 출력에서 내용을 대체할 패턴입니다.

    유효한 값은 다음과 같습니다.

    • @: 모든 문자
    • #: 10진수
    • \: 리터럴 이스케이프(@ 기호의 경우 \@)
    표 28. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.

    이 예에서는 견적 날짜의 형식을 YYYY/MM/DD에서 YYYY MM-DD로 다시 지정합니다.

    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('date', '$.quote.date') 
      .thenFormat('####/##/##', '#### ##-##'); 
    

    TransformerRuleList - thenMax(Number 피연산자)

    전달된 값을 소스 필드와 비교하고 두 값 중 더 큰 값을 출력 필드에 복사하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 29. 매개변수
    이름 유형 설명
    피연산자 번호 소스 필드와 비교할 값입니다.
    표 30. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Mortgage Rates 05022019 JSON')
      .addRule('lowest_interest_rate', '$.quote.interest_rate') 
      .thenMax('3.5') // Interest rate cannot be less than 3.5%
      .addRule('dividend_per_share', '$.quote.total_shares') 
      .thenDivideInto('$.quote.total_dividends'); 
    

    TransformerRuleList - thenMin(피연산자 숫자)

    전달된 값을 소스 필드와 비교하고 두 값 중 더 낮은 값을 출력 필드에 복사하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 31. 매개변수
    이름 유형 설명
    피연산자 번호 소스 필드와 비교할 값입니다.
    표 32. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addSymbol('broker_fee_percentage', '$.quote.broker_fee') 
      .thenMin('10') // Maximum of 10% broker fee
      .addSymbol('dividend_per_share', '$.quote.total_shares') 
      .thenDivideInto('$.quote.total_dividends'); 
    

    TransformerRuleList - thenMultiply(숫자 피연산자)

    소스 필드에 전달된 값을 곱하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 33. 매개변수
    이름 유형 설명
    피연산자 번호 소스 필드를 곱할 값입니다.
    표 34. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('summary') 
      .thenConcat('Shares of ') 
      .thenConcatSymbol('ticker') 
      .thenConcat(' closed at ') 
      .thenConcatSymbol('close_price'); 
    

    TransformerRuleList - thenReplace(문자열, matchString, 문자열 replaceString)

    지정된 문자열과 일치하는 소스 필드 내의 모든 텍스트를 찾아 업데이트된 문자열로 바꾸는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 35. 매개변수
    이름 유형 설명
    matchString 문자열 대체할 텍스트를 식별하기 위해 소스 필드와 일치하는 문자열입니다.
    replaceString 문자열 일치하는 텍스트를 대체할 문자열입니다.
    표 36. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.

    이 예에서 "Inc."로 끝나는 모든 회사 이름은 "Incorporated"로 변환됩니다(예: Company Inc.에서 Company Incorporated로).

    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('company', '$.quote.company') 
      .thenReplace('Inc.', 'Incorporated');
    

    TransformerRuleList - thenRoundDown(피연산자 숫자)

    전달된 값으로 지정된 소수점 이하 자리에서 소스 필드를 반올림하는 어댑터를 현재 규칙에 추가합니다.

    음수의 경우 thenRoundDown() 메서드는 숫자를 더 양수로 만듭니다. -2.156의 반올림 값은 -2.15입니다. thenFloor() 메서드는 같은 숫자를 더 음수인 -2.16으로 만듭니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 37. 매개변수
    이름 유형 설명
    피연산자 번호 숫자를 반올림할 소수점 오른쪽에 있는 소수 자리입니다.

    예를 들어 이 값이 2이고 원본 데이터 요소가 6.427인 경우 결과 값은 6.42입니다.

    표 38. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList90
      .fromJSON()
      .setName('Mortgage Rates 05022019 JSON')
      .addRule('interest_rate', '$.quote.interest_rate') 
      .thenRoundDown('2') // Always round the interest rate down to the hundredths place 
      .addRule('monthly_payment', '$.quote.total_loan_amount') 
      .thenDivideBy('180'); 
    

    TransformerRuleList - thenRound Up(피연산자 숫자)

    전달된 값으로 지정된 소수점 이하 자릿수에서 원본 데이터 요소를 반올림하는 어댑터를 현재 규칙에 추가합니다.

    음수의 경우 thenRoundUp() 메서드는 숫자를 더 음수로 만듭니다. -2.156의 반올림 값은 -2.16입니다. thenCeiling() 메서드는 같은 숫자를 더 양수인 -2.15로 만듭니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 39. 매개변수
    이름 유형 설명
    피연산자 번호 숫자를 반올림할 소수점 오른쪽의 소수 자리입니다.

    예를 들어 이 값이 2이고 원본 데이터 요소가 6.422인 경우 결과 값은 6.43입니다.

    표 40. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Mortgage Rates 05022019 JSON')
      .addRule('interest_rate', '$.quote.interest_rate') 
      .thenRoundUp('2') // Always round the interest rate up to the hundredths place 
      .addRule('monthly_payment', '$.quote.total_loan_amount') 
      .thenDivideBy('180'); 
    

    TransformerRuleList - thenSplit(문자열, splitPattern, 문자열 replaceString)

    소스 필드 내의 문자열을 분할, 재구성 및 대체하고 출력 필드에 저장하는 어댑터를 현재 규칙에 추가합니다.

    매개변수는 소스 텍스트 문자열을 세그먼트로 나누는 splitPattern 방법을 나타냅니다. 이 매개 변수는 공백(' '), 쉼표(',') 또는 세미콜론(';')과 같은 일반적인 단어 구분 기호일 수 있으며 'name'과 같은 문자열일 수도 있습니다. 예를 들어, 소스 텍스트가 "Smith John Michael"이고 the splitPattern 가 공백인 경우 사용 가능한 세그먼트는 "Smith", "John" 및 "Michael"입니다. 세그먼트를 참조하려면 $#을 사용합니다. 여기서 #은 소스 텍스트 문자열의 세그먼트 순서 번호입니다. 예를 들어, 메서드 호출이 thenSplit(' ', '$2 $3 $1')인 경우 출력은 "John Michael Smith"입니다. 또한 출력 패턴 내에 thenSplit(' ', 'First name: $2 Middle name: $3 Last name: $1')과 같은 상수를 추가할 수 있습니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 41. 매개변수
    이름 유형 설명
    스플리트패턴 문자열 텍스트를 세그먼트로 분할하는 방법을 나타내는 문자열입니다.
    replaceString 문자열 세그먼트 참조와 상수를 포함하여 출력 문자열을 정의하는 문자열입니다. 모든 세그먼트를 참조할 필요는 없습니다.

    using $#으로 splitPattern 정의된 세그먼트를 참조합니다. 여기서 #은 소스 데이터 요소에 있는 세그먼트의 순서 번호입니다. $0를 사용하여 전체 원본 데이터 요소를 참조합니다.

    표 42. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.

    이 예에서 CEO 이름은 원본 데이터에서 이름인 성이며 출력에서는 이름 성으로 변환됩니다.

    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock Report 05022019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('CEO', '$.quote.CEO') 
      .thenSplit(',', '$2 $1');
    

    TransformerRuleList - thenSubtract(피연산자 숫자)

    소스 필드에서 전달된 값을 빼서 출력 필드에 저장하는 어댑터를 현재 규칙에 추가합니다.

    주:
    이 방법은 어댑터 메서드이며 단독으로 사용할 수 없습니다. 어댑터 메서드는addRule() 메서드와 함께 작동합니다. 서식 지정, 반올림 및 패턴 적용과 같이 addRule() 메서드로 정의된 출력 필드에 적용할 적응을 정의합니다.
    표 43. 매개변수
    이름 유형 설명
    피연산자 번호 소스 데이터 요소에서 뺄 값입니다.
    표 44. 반환
    유형 설명
    객체 Current TransformerRuleList 개체입니다.
    var transformerRuleList = new sn_tfrm.TransformerRuleList()
      .fromJSON()
      .setName('Stock 05182019 JSON')
      .addRule('ticker', '$.quote.symbol') 
      .addRule('change_percentage', '$.quote.changePercent') 
      .thenMultiply('100') 
      .thenRoundDown('0') 
      .addRule('close_price', '$.quote.close') 
      .thenAdaptCurrency('USD', false) 
      .addRule('trade_price', '$.quote.current_price') 
      .addMultiply('$.quote.trade_quantity')
      .thenSubtract('$.quote.discount_dollars');