JavaScript 정책

JavaScript 정책은 데이터 관리 서비스에 있는 소스 속성에 적용되며 서비스가 실행될 때 실행됩니다. 서비스 플랜을 사용하여 JavaScript 정책을 서비스에 추가하십시오.

JavaScript 정책에는 서비스 속성에 적용되는 데이터 변환에 대해 설명하는 JavaScript 파일이 포함됩니다. 엔티티에 있는 여러 속성과 함께 JavaScript 파일을 사용할 수 있지만 각 속성은 하나의 파일에만 연관시킬 수 있습니다. 서비스에는 여러 JavaScript 정책이 포함될 수 있습니다. JavaScript 파일은 데이터 프로젝트 탐색기의 기타 파일 폴더에 저장됩니다.

JavaScript를 사용하여 속성의 데이터 변환을 정의하십시오. JavaScript를 사용하여 무작위 값으로 숫자를 마스크하고, 하위 문자열을 추출하며 엔티티 값을 병합하고 JavaScript를 이용하여 사용 가능한 기타 데이터 변환을 수행할 수 있습니다. 또한 JavaScript 함수를 사용하여 날짜 개인정보 보호정책, ID 개인정보 보호정책, 숫자 개인정보 보호정책 및 스크램블 개인정보 보호정책을 적용할 수도 있습니다.

JavaScript 정책에 정의된 변환은 소스 데이터에 대해 Optim™에서 기타 검색 또는 규칙 기반 변환을 수행한 후에 발생합니다.

소스 값 검색
소스 논리 데이터 모델을 참조하려면 "record" 오브젝트를 사용하고 소스 속성에 액세스하려면 getItem() 메소드를 사용하십시오. 관계형 데이터의 경우 소스 항목은 ('/schema/entity/attribute') 형식으로 식별됩니다.

예를 들어 DEMO 스키마의 CUSTOMERS 엔티티에서 소스 ADDRESS 속성을 검색하려면 다음 구문을 사용하십시오.

record.getItem('/DEMO/CUSTOMERS/ADDRESS')
문자열 병합
문자열을 병합하려면 concat() 함수 대신 "+" 연산자를 사용하십시오.

소스 값 조절

record.getItem() 메소드에서 소스 값을 처리하는 경우, 값은 JavaScript 처리 도중 Java 데이터 유형으로 변환됩니다. JavaScript 처리 후 값은 대상 데이터베이스의 데이터 유형으로 변환됩니다.

다음 표를 참조하여 JavaScript 처리 중 소스 데이터 유형이 변환되는 방법을 판별할 수 있습니다.

소스 데이터 유형 Java 유형
문자 java.lang.String
문자 변형 java.lang.String
국가별 문자 java.lang.String
국가별 문자 변형 java.lang.String
문자 대형 오브젝트(CLOB) byte[](IBM® DB2®의 경우 java.sql.Clob, Oracle의 경우 char[])
국가별 문자 대형 오브젝트(CLOB) byte[](IBM DB2의 경우 java.sql.Clob, Oracle의 경우 char[])
2진 byte[]
2진 변형 byte[]
2진 대형 오브젝트(LOB) java.sql.Blob
부울 java.lang.Boolean
날짜 java.util.Calendar
시간 java.util.Calendar
시간소인 java.sql.Timestamp(Oracle의 경우 java.lang.Object)
숫자 java.math.BigDecimal
10진수 java.lang.String
배정밀도 java.lang.Double(Oracle의 경우 java.lang.String)
REAL java.lang.Double
부동수 java.lang.Double(Oracle의 경우 java.math.BigDecimal)
작은 정수 java.lang.Short
정수 java.lang.Integer
큰 정수 java.lang.Long
간격 java.lang.Object
XML java.lang.Object
데이터 링크 java.lang.Object