앱에 포함된 CMDB용 통합 커먼즈 RTE 운영 유형
RTE(강력한 변환 엔진) 작업 유형은 복잡한 데이터 변환을 직접 작성할 필요 없이 ETL에서 사용할 수 있는 일반적인 작업 방법입니다.
앱에서 사용할 수 있는 CMDB용 통합 커먼즈 운영 유형은 다음과 같습니다.
연결
입력 필드의 값을 단일 문자열로 결합하고 선택적 joining_string 필드에 결합합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 연결 운영 [sys_rte_eb_concat_operation] |
| 입력 필드 | source_sys_rte_eb_fields 입력은 필드와 상수의 집합입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 제공된 필드를 단일 문자열로 결합한 값입니다. |
| 추가 필드 | joining_string (선택 사항) |
| 입력 | joining_string | 결과 |
|---|---|---|
| "input_1", "input_2", "input_3" | ", " | "input_1, input_2, input_3" |
부울로 변환
수신 값을 부울로 변환합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티를 부울로 변환 운영 [sys_rte_eb_to_boolean_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 입력이 |
| 입력 | 결과 |
|---|---|
| input_1 | false |
| true | true |
| 1 | true |
| 0 | false |
| 11 | false |
날짜로 변환
들어오는 값에 date_format 적용하여 들어오는 값을 GlideDateTime 값으로 변환하려고 시도합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티를 날짜로 변환 운영 [sys_rte_eb_to_date_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 날짜 형식의 데이터 타임스탬프 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 지정된 날짜 형식의 날짜 타임스탬프입니다. date_format가 올바르지 않은 경우 GlideDateTime을 사용하여 직접 변환을 시도합니다. 구문 분석할 수 없는 경우 빈 값을 반환합니다. |
| 입력 | 결과 |
|---|---|
| "2018/09/20 11:21:00 AM EST", date_format "yyyy/MM/dd hh:mm:ss a z" | "2018-09-20 16:21:00" |
| "2018/09/20 01:21:00 PM EST", date_format "yyyy/MM/dd hh:mm:ss a z" | "2018-09-20 18:21:00" |
| "09/20/18", date_format "yyyy/MM/dd hh:mm:ss a z" | ""0018-09-20 00:00:0" |
숫자로 변환
들어오는 값을 숫자로 변환합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티를 숫자로 변환 운영 [sys_rte_eb_to_numeric_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 숫자 값입니다. 입력 값이 숫자가 아니면 출력이 비어 있습니다. |
| 입력 | 결과 |
|---|---|
| input_1 | null |
| 1.23 | 1.23 |
| 1.00 | 1 |
| 2 | null |
복사
소스 필드의 값을 모든 대상 필드에 복사합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 복사 작업 [sys_rte_eb_copy_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 값입니다. |
| 출력 필드 | target_sys_rte_eb_fields 출력은 복사된 소스 필드 값입니다. |
| 추가 필드 | overwrite_existing_value (선택 사항, Boolean): true이면 대상 필드의 값이 바뀝니다. 그렇지 않으면 비어 있지 않은 값을 덮어쓰지 않습니다. |
첫 번째 숫자 추출
대상 필드를 소스 필드에서 발견된 첫 번째 숫자 값으로 설정합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 숫자 추출 운영 [sys_rte_eb_extract_numeric_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 입력에 있는 숫자 값입니다. |
| 추가 필드 |
|
| 입력 | 결과 |
|---|---|
| 100mb | 100 |
| 100.123 메가바이트 | 100.123 |
| 100.123MB, decimal_places=2 | 100.12 |
| 100MB(=2 포함 decimal_places) | 100.00 |
| 100MB 포함 remainder_target_field | Mb |
Glide 조회 작업
필드에 지정된 대상 테이블의 데이터베이스에서 조회를 target_table 수행합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE Glide 조회 운영 [sys_rte_eb_glide_lookup_operation] |
| 입력 필드 | source_sys_rte_eb_fields 조회할 데이터베이스 테이블입니다. |
| 출력 필드 | target_sys_rte_eb_fields 조회 작업을 기반으로 한 결과 데이터입니다. |
| 추가 필드 |
|
| 입력 | 결과 |
|---|---|
|
출력 필드 1: 25ab9c4d0a0a0bb300f7dabdc0ca7c1c |
멀티 입력 스크립트
필드를 해당 스크립트의 출력으로 설정하는 target_sys_rte_eb_field 여러 입력이 있는 스크립트를 실행합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 다중 입력 스크립트 운영 [sys_rte_eb_multi_in_script_operation] |
| 입력 필드 | source_sys_rte_eb_fields 입력은 스크립트입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 입력 스크립트의 결과입니다. |
| 추가 필드 |
|
record_type와 operating_system를 입력으로 받고 record_with_os 반환하는 스크립트 함수와 함께 를 사용하는 use_unique_input_sets예:
| 기록 | record_type | operating_system |
|---|---|---|
| 1 | computer | Windows XP |
| 2 | computer | Linux |
| 3 | computer | Windows XP |
use_unique_inputs_sets가 true로 설정된 경우 스크립트는 두 개의 값(컴퓨터 + Windows XP 및 컴퓨터 + Linux)만 처리합니다. use_unique_inputs_setsfalse로 설정하면 세 개의 값이 각각 개별적으로 처리됩니다(컴퓨터 + Windows XP, 컴퓨터 + Linux 및 컴퓨터 + Windows XP).
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
// batch[i] is the unique set of inputs/individual record
// batch[i].<field> gives access to the field value
var in0 = gs.nil(batch[i].record_type) ? '' : batch[i].record_type;
var in1 = gs.nil(batch[i].operating_system) ? '' : batch[i].operating_system;
// output[i] is the output for the specific combination of inputs/individual record
output[i] = in0 + "_" + in1;
}
}
})(batch, output);다중 입력/출력 스크립트
필드에 지정된 target_sys_rte_eb_fields 대상 필드를 해당 스크립트의 다중 출력으로 설정하여 스크립트를 실행합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 다중 입력/출력 스크립트 운영 [sys_rte_eb_multiple_input_output_script_operation] |
| 입력 필드 | source_sys_rte_eb_fields 입력은 스크립트입니다. |
| 출력 필드 | target_sys_rte_eb_fields 출력은 입력 스크립트의 결과입니다. |
| 추가 필드 | script (스크립트) |
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
var userId = (batch[i].user_id);
var userIdParts = userId.split(".");
output[i].first_name = userIdParts[0];
output[i].last_name = userIdParts[1];
}
}
})(batch, output);정규 표현식 바꾸기
필드에 지정된 match_regex 정규 표현식 패턴과 일치하는 입력 문자열의 각 하위 문자열을 필드에 지정된 replacement_regex 문자열로 바꿉니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 정규 표현식 바꾸기 작업 [sys_rte_eb_regex_replace_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 바뀐 문자열입니다. |
| 추가 필드 |
|
| 입력 | 결과 |
|---|---|
| "String&With(Special)$Characters" with match_regex="[^0-9a-zA-Z]+" 및 replacement_regex=" " | "특수 문자가 있는 문자열" |
교체
필드에 지정된 match_string 문자열과 일치하는 입력 문자열의 각 하위 문자열을 필드에 지정된 replacement_string 문자열로 바꿉니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 바꾸기 운영 [sys_rte_eb_replace_operation |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 바뀐 문자열입니다. |
| 추가 필드 |
|
| 입력 | 결과 |
|---|---|
| match_string = "Original" 및 replacement_string= "Replacement"인 "Original String" | "대체 문자열" |
반올림 숫자
입력 숫자 값을 가장 가까운 정수로 반올림합니다. 숫자가 아닌 값은 잘립니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 숫자 반올림 운영 [sys_rte_eb_round_numeric_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 숫자 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 정수입니다. |
| 추가 필드 |
|
| 입력 | 결과 |
|---|---|
| "1.5" | "2" |
| "1.4" | "1" |
| "나는 끈이다" | "" |
스크립트 작업
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 스크립트 운영 [sys_rte_eb_script_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 스크립트입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 입력 스크립트의 결과입니다. |
| 추가 필드 |
|
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
// batch[i] is the unique set of inputs/individual record
// batch[i].input gives access to the field value
var in0 = gs.nil(batch[i].input) ? '' : batch[i].input;
// output[i] is the output for the specific combination of inputs/individual record
output[i] = in0 + " modified by script";
}
}
})(batch, output); /* Example Script
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
//step1: access the input variables
var a = batch[i].input; //Value of the source field.
//step2: Your script/code goes here.
var b = a + 1;
//step3: set the output for each elements
output[i] = b;
}
})(batch, output);
*/ 설정
필드 값을 필드에 제공된 set_value 문자열로 설정합니다target_sys_rte_eb_field.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 설정 운영 [sys_rte_eb_set_operation] |
| 출력 필드 | target_sys_rte_eb_field 출력은 필드와 연결된 값입니다 set_value . |
| 추가 필드 |
|
최소값/최대값 설정
대상 필드를 모든 입력 필드의 값 중 최대값 또는 최소값으로 설정합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 최소/최대 운영 [sys_rte_eb_min_max_operation] |
| 입력 필드 | source_sys_rte_eb_fields 입력은 값의 집합입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 값을 기준으로 한 최대값 또는 최소값입니다 min_max . |
| 추가 필드 |
|
| 입력 | 출력 |
|---|---|
| "2", "-1", "0" | 2 |
| "ᅡ", "ᄂ" | c |
| "2", "-1", "0" | -1 |
| "ᅡ", "ᄂ" | a |
분할
입력 값에 source_sys_rte_eb_field 포함된 문자열을 필드에 지정된 splitting_string 구분 기호로 분할하고 결과 문자열 target_sys_rte_eb_field 배열을 순서대로 필드에 할당합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 분할 운영 [sys_rte_eb_split_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_fields 출력은 하위 문자열 목록입니다. |
| 추가 필드 | splitting_string (문자열) |
| 입력 | 결과 |
|---|---|
| "값1||값2||값3", splitting_string:"||" target_sys_rte_eb_fields {target1,target2,target3} | target1 : 값1, target2 : 값2, target3 : 값3 |
| "값1||값2||값3", splitting_string:"||" with target_sys_rte_eb_fields {target1} | 대상1 : 값1 |
| "값1", splitting_string:"||" target_sys_rte_eb_fields {target1,target2,target3} | target1 : 값1, target2 : <null>, target3 : <null> |
트림
입력 값에 포함된 문자열의 시작 부분과 끝 부분에 있는 공백을 source_sys_rte_eb_field 제거하고 결과를 target_sys_rte_eb_field 필드에 할당합니다. 이 변환은 Java String trim() 메서드와 동일합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 트리밍 운영 [sys_rte_eb_trim_operation |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 입력 문자열 값이지만 선행 공백과 후행 공백이 없습니다. |
| 입력 | 결과 |
|---|---|
| " 값 1 " | " 값 1 " |
대문자
입력 값의 source_sys_rte_eb_field 모든 문자를 대문자로 변경하고 결과를 필드에 할당합니다 target_sys_rte_eb_field .
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 대문자 운영 [sys_rte_eb_upper_case_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_field 출력은 대문자 문자열 값입니다. |
| 입력 | 결과 |
|---|---|
| "값1" | "값 1" |
대문자 트리밍
대문자 변환과 트리밍 변환을 모두 결합합니다.
| 세부사항 | |
|---|---|
| 테이블 | RTE 엔터티 대문자 트리밍 운영 [sys_rte_eb_upper_case_trim_operation] |
| 입력 필드 | source_sys_rte_eb_field 입력은 문자열 값입니다. |
| 출력 필드 | target_sys_rte_eb_field Output은 시작과 끝에 공백이 없는 대문자 문자열 값입니다. |
| 입력 | 결과 |
|---|---|
| " 값1 " | "값 1" |