다음을 통해 공유


테이블 기반 반복 예

이 섹션에서는 테이블 루핑테이블 추출기 펑토이드를 사용하는 맵에 대해 간략하게 설명합니다. 펑토이드 선택, 배치, 연결 및 구성에 대한 자세한 내용은 맵에 테이블 루핑 및 테이블 추출기 펑토이드를 추가하는 방법을 참조하세요.

별도의 배송 주소와 대금 청구 주소가 필요한 문서에서 사용할 주소 목록이 있다고 가정합니다. 이 주소는 다음 코드처럼 나타날 수 있습니다.

<ns0:Root xmlns:ns0="http://TableLoopingSample.Addresses">  
    <Address>  
        <Name>Kelly Focht</Name>  
        <Street>456 1st Ave</Street>  
        <City>Miami</City>  
        <State>FL</State>  
        <PostalCode>81406</PostalCode>  
    </Address>  
    <Address>  
        <Name>Wendy Wheeler</Name>  
        <Street>7890 Broadway</Street>  
        <City>Columbus</City>  
        <State>OH</State>  
        <PostalCode>46290</PostalCode>  
    </Address>  
</ns0:Root>  

다음 코드처럼 주소는 중복되지만 특성을 사용하여 주소를 표시하는 형식의 출력이 나타날 수 있습니다.

<ns0:Root xmlns:ns0="http://TableLoopingSample.POAddresses">  
    <Address Type="ShipTo">  
        <Name>Kelly Focht</Name>  
        <Street>456 1st Ave</Street>  
        <City>Miami</City>  
        <State>FL</State>  
        <PostalCode>81406</PostalCode>  
    </Address>  
    <Address Type="BillTo">  
        <Name>Kelly Focht</Name>  
        <Street>456 1st Ave</Street>  
        <City>Miami</City><State>FL</State>  
        <PostalCode>81406</PostalCode>  
    </Address>  
    <Address Type="ShipTo">  
        <Name>Wendy Wheeler</Name>  
        <Street>7890 Broadway</Street>  
        <City>Columbus</City>  
        <State>OH</State>  
        <PostalCode>46290</PostalCode>  
    </Address>  
    <Address Type="BillTo">  
        <Name>Wendy Wheeler</Name>  
        <Street>7890 Broadway</Street>  
        <City>Columbus</City>  
        <State>OH</State>  
        <PostalCode>46290</PostalCode>  
    </Address>  
</ns0:Root>  

The following figure shows a map using the테이블반복functoid and테이블추출기functoids to generate the desired output instance message.

테이블 루핑 및 테이블 추출기 펑토이드 매핑
Table Looping 및 Extractor 펑토이드

Table Looping 펑토이드는 입력 및 출력 스키마 모두에서 레코드 수준 요소에 연결됩니다. 이러한 링크를 사용하면 종결 구조가 만들어지므로 레코드 내에 요소가 만들어집니다. 또한 출력 스키마의 각 필드에 대해 하나의 테이블 추출기 펑토이드가 있습니다.

입력 스키마의 레코드에 대한 링크는 펑토이드 펑토이드> 구성 <대화 상자의 첫 번째 매개 변수입니다.

두 번째 매개 변수는 펑토이드의 그리드 테이블에 있는 열 수입니다. 주소 유형, 이름, 거리, 도시, 주 및 우편 번호에 대해 각각 하나의 열입니다. 두 번째 매개 변수 다음에는 그리드 테이블에 나타낼 수 있는 모든 값 목록이 옵니다. 여기에는 주소 유형("ShipTo", "BillTo")을 나타내는 문자열 상수와 함께 주소 필드에 대한 링크가 포함됩니다. 주소 필드에 대한 링크에는 이름이 있습니다. 맵에서 링크의 이름을 지정하면 테이블 구성이 단순해집니다. 그렇지 않으면 전체 경로가 테이블 루핑 펑토이드 구성 대화 상자에 표시됩니다.

Table Looping 펑토이드를 구성한 후에는 테이블 반복 펑토이드 구성 대화 상자를 사용하여 테이블을 구성할 수 있습니다. 속성 창에서 Table Looping Grid 속성과 연결된 줄임표(...) 단추를 클릭하면 대화 상자가 나타납니다.

테이블 루핑 펑토이드 구성 대화 상자에 지정된 대로 6개의 열이 있습니다. 출력 스키마의 각 필드에 대해 하나의 열입니다. 드롭다운은 테이블 루프 펑토이드 구성 대화 상자에서 세 번째 및 다음 매개 변수로 지정된 필드의 가능한 값을 보여줍니다. 테이블에는 2개의 행이 있으며, 각 행에는 출력 스키마의 레코드 유형이 표시됩니다. 행이 2개이므로 이 맵은 모든 입력 레코드에 대해 레코드 2개를 생성합니다. 행이 4개이면 각 입력 레코드에 대해 출력 레코드 4개가 생성됩니다.

Table Looping 펑토이드는 각 레코드를 사용할 때 레코드의 값으로 테이블을 채운 다음 테이블 추출기 펑토이드에 한 번에 한 행을 보냅니다. 테이블 추출기 펑토이드는 각각 테이블 행에서 하나의 값을 추출하여 출력 instance 메시지의 연결된 필드에 전달합니다.

참고 항목

Table Looping 펑토이드
Table Extractor 펑토이드
테이블 기반 반복 구성
맵에 Table Looping 및 Table Extractor 펑토이드 추가 방법
고급 펑토이드
Index 펑토이드
Iteration 펑토이드
Looping 펑토이드
Record Count 펑토이드