요약
다른 환경의 다른 전략
- Map From Source, Create
New Sub-map, Call Sub-map, Call ESQL Routine 조치는 반복 처리 시 동일한 전략을 공유합니다.
- Accumulate 조치는 고유한 방식으로 반복을 처리합니다.
- Enter expression 조치는 반복성과 관계 없습니다.
Map From Source, Create New Sub-map, Call Sub-map,
Call ESQL Routine 조치의 일대일 맵핑에 대한 반복 처리
- 반복 가능성을 판별할 때 요소(또는 속성)는 요소(또는 컨테이너
순서/선택/모두/그룹)가 들어 있는 하나 이상의 xsd 순서/선택/모두/그룹
요소와 함께 하나의 레벨을 구성합니다.
- 맵핑 작성은 펼치기, MapFrom 표현식 설정, ForEach/If/Condition 추가 등의 3단계 프로세스입니다. 그 다음에는 ForEach 삽입과 같은 마지막
단계에 대한 상세 알고리즘이 옵니다.
- 선택된 맵핑 소스와 대상부터 반대로 하여 반복 소스의 한 레벨을
반복 대상의 한 레벨과 일치시키십시오.
- 소스와 대상에서 일치하는 각 반복 레벨에 대해:
- 이 대상 레벨에 반복 순서/선택/모두/그룹 요소가 없는 경우
대상 구조의 레벨을 포함하는 ForEachStatement를 작성하십시오.
- ForEach의 표현식은 반복 소스의 레벨에 대한 맵핑 가능한 참조입니다.
- 이 대상 레벨이 반복 순서/선택/모두/그룹에 포함된 경우
순서/선택/모두/그룹에 모든 구조를 포함하는 ForEachStatement를 작성하십시오.
- ForEach의 표현식은 반복 소스의 레벨에 대한 맵핑 가능한 참조입니다.
- 예상 순서/선택/모두/그룹 구성원이 포함된 예상 표현식을 가진
ForEach가 이미 있는 경우 다른 ForEach를 작성하지 마십시오.
- 표현식은 다르지만 예상 순서/선택/모두/그룹 구성원이 포함된
ForEach가 이미 있는 경우 필요한 ForEach를 기존 ForEach의 하위로 작성하십시오. 내부 ForEach에는 순서/선택/모두/그룹 요소의
모든 컨텐츠가 포함된 If-Condition 블록이 들어 있습니다.
- 위의 Condition에 대한 표현식은 외부 ForEach에서의 표현식 발생이
내부 ForEach에서의 표현식 발생과 같음을 나타냅니다.
- 대상에서 일치하지 않는 반복 레벨은 무시하십시오.
- 소스에서 일치하지 않는 각 반복 레벨에 대해:
- 대상 구조의 레벨이 포함된 ConditionStatement가 있는 IfStatement를
포함하는 ForEachStatement를 작성하십시오.
- ForEach의 표현식은 반복 소스의 레벨에 대한 맵핑 가능한 참조입니다.
- 반복 소스의 레벨에 대한 ForEach가 이미 있는 경우 다른 ForEach를
작성하지 마십시오.
- Condition의 표현식은 occurrence(this_level_of_repeating_source)=1입니다.
- 첫 번째 발생한 반복 소스 레벨에 대한 Condition이 이미 있는 경우
다른 Condition을 작성하지 마십시오.
- Qualify가 있지만 예상 Condition이 없는 경우 Qualify에 다른 Condition을 작성하십시오.
- 관계형 데이터베이스 대상 명령문은 ForEach 요소 안에 넣어야 합니다.
- 단일 소스에 중첩된 반복 레벨이 포함되면 각 레벨의 ForEach가 중첩됩니다.
- 관계형 데이터베이스 소스 선택 결과 세트는 개념상 반복과 같습니다.
그러나 데이터베이스 소스에서 맵핑하려면 선택 명령문의 범위를 펼쳐야
합니다. 이를 간소화하기 위해 도구를 사용하면 ForEach가 데이터베이스
소스의 맵핑 결과로 삽입되지 않습니다.
- SelectStatement를 명령문 모델에 삽입할 때 맵핑 도구는 결과 세트를
통해 루프되도록 항상 ForEach와 함께 Select를 작성합니다.
Map From Source 조치의 일대다 맵핑에 대한 반복 처리
- 각 대상에 대해 하나씩 일대일 전략을 여러 번 사용하십시오.
- 여러 개의 맵핑을 최적화하지 마십시오.
Map From Source, Create New Sub-map, Call Sub-map,
Call ESQL Routine 조치의 다대일 맵핑에 대한 반복 처리
- 개별 소스와 대상 간에 일대일 전략을 적용하십시오.
- 소스 반복의 각 레벨에 대해 각 소스가 호출하는 ForEach 요소를 중첩시키십시오.
중첩된 ForEach 요소가 같은 색인의 인스턴스만 선택하도록 인스턴스별로 규정하십시오.