샘플 메시지 CSV_8 실행

이 샘플에서는 CSV 레코드가 태그로 사용될 수 있는 고유 ID를 포함할 경우 태그 디리미트 모델을 사용하여 이들을 구문 분석할 수 있는 방법을 설명합니다. 태그 표시된 CSV 모델은 이전 샘플에서 사용된 디리미트만 이루어진 모델보다 더 단순하고 더 유연합니다. 태그 표시된 모델을 사용하면 레코드가 선택사항이 될 수 있으며, 샘플 9에서 설명하는 대로 여러 유형의 레코드를 CSV 메시지의 주요 부분에서 임의 순서로 선택할 수 있습니다. 입력 메시지에는 단일 헤더 레코드 다음에 단일 반복 쉼표 분리 레코드가 포함되어 있습니다. 이는 샘플 메시지 세트를 사용하여 구문 분석되며 XML 메시지로 쓰여집니다.

이 주제에는 샘플 실행에 대한 지시사항이 들어 있습니다. 또한 샘플이 수행되었는지 확인할 수 있도록 입력 테스트 메시지 예와 해당되는 예상 출력 메시지도 들어 있습니다.

이 샘플에 사용된 메시지 모델에 대한 자세한 설명은 CSV(Comma Separated Value) 메시지 샘플 탐색을 참조하십시오.

입력 테스트 메시지

이 샘플을 실행하는 데 사용된 테스트 메시지는 다음 형식을 기본으로 합니다.

HEADER,2005-04-01,X123456IB7,customer details<CRLF>
CUST,Bob,Dyson,1 Desolation Row,Orlando,FL,32802,HYT-457-AX<CRLF>
CUST,Jimmy,Pace,1002 Misty Mountain Drive,New York,NY,10001,ADU-239-BX<CRLF>
CUST,Ralf,McCartney,67 Penny Lane,Las Vegas,NV,89125,JUI-854-CF<CRLF>
CUST,Elvis,John,3 Yellow Brick Road,Chicago,IL,60699,GGY-118-AS<CRLF>
CUST,Rick,Clayton,461 Ocean Boulevard,Miami,FL,33101,LOP-212-TY<CRLF>
TRAILER,5

<CRLF>는 ASCII 16진수 코드 포인트 x'0D' 및 x'0A'를 나타냅니다.

샘플 실행

이 샘플에서는 CSV2XML 메시지 플로우를 사용합니다. 여러 개의 입력 노드가 들어 있지만 이 샘플의 경우 CSV2XML.IN8이라는 큐가 있는 노드를 사용합니다. 메시지 플로우는 형식을 XML로 변경하는 Compute 노드를 통해 메시지를 전달하고 메시지를 모두 씁니다. 이는 CSV 메시지를 논리적 트리로 구문 분석한 후 XML 형식으로 작성합니다. 출력 XML 메시지는 구문 분석된 메시지의 논리적 구조를 표시합니다.

샘플을 실행하려면 다음을 수행하십시오.

  1. Message Brokers Toolkit의 브로커 응용프로그램 개발 Perspective로 전환하십시오.
  2. CSV_msg8.enqueue라는 테스트 메시지 큐에 삽입 파일을 여십시오.
  3. 큐에 쓰기를 누르십시오. 메시지가 CSV2XML.IN1 큐로 송신됩니다.
메시지 플로우는 CSV 메시지를 구문 분석하고 동일한 논리적 메시지를 XML 형식으로 모두 씁니다.
메시지가 CSV2XML.OUT 큐에 나타나야 합니다.
  1. 이 출력 메시지를 보려면 Message Brokers Toolkit으로 돌아가서 도구 모음에 있는 큐에서 메시지 가져오기 아이콘을 누르십시오.
  2. 큐 관리자 이름은 WBRK6_DEFAULT_QUEUE_MANAGER로, 큐 이름은 CSV2XML.OUT으로 입력하십시오.
  3. 큐에서 읽기를 눌러 출력 메시지의 컨텐츠를 표시하십시오.
  4. 다른 이름으로 저장 옵션을 사용하여 메시지를 XML 파일로 저장한 후 XML 편집기로 보십시오.
  5. 예상한 출력 메시지와 이를 비교하십시오.

이제 XML_msg8.enqueue 파일(첫 번째 플로우에서 동일한 XML 메시지 출력을 포함함) 및 XML2CSV.IN과 XML2CSV.OUT을 두 개의 큐로 사용하여 2-6 단계를 반복하십시오. 그러면 첫 번째 단계에서 사용된 메시지 플로우의 역방향 플로우를 통해 XML 메시지를 전달합니다. 원래 CSV 메시지와 이를 비교하십시오. 이들 메시지는 서로 동일해야 합니다.

모든 단계가 수행되면 샘플이 완료됩니다.

이제 CSV(Comma Separated Value) 메시지 샘플 탐색에서 메시지 세트 프로젝트 및 이 메시지 정의에 대한 설명을 살펴보십시오.

예상 출력 메시지

예상되는 출력 XML 메시지는 다음과 같습니다.

<?xml version="1.0"?>
<CSV_8>
<header>
<requestDate>2005-04-01</requestDate>
<requestID>X123456IB7</requestID>
<requestType>customer details</requestType>
</header>
<customer>
<firstname>Bob</firstname>
<lastname>Dyson</lastname>
<streetaddress>1 Desolation Row</streetaddress>
<cityname>Orlando</cityname>
<statecode>FL</statecode>
<postcode>32802</postcode>
<referencecode>HYT-457-AX</referencecode>
</customer>
<customer>
<firstname>Jimmy</firstname>
<lastname>Pace</lastname>
<streetaddress>1002 Misty Mountain Drive</streetaddress>
<cityname>New York</cityname>
<statecode>NY</statecode>
<postcode>10001</postcode>
<referencecode>ADU-239-BX</referencecode>
</customer>
<customer>
<firstname>Ralf</firstname>
<lastname>McCartney</lastname>
<streetaddress>67 Penny Lane</streetaddress>
<cityname>Las Vegas</cityname>
<statecode>NV</statecode>
<postcode>89125</postcode>
<referencecode>JUI-854-CF</referencecode>
</customer>
<customer>
<firstname>Elvis</firstname>
<lastname>John</lastname>
<streetaddress>3 Yellow Brick Road</streetaddress>
<cityname>Chicago</cityname>
<statecode>IL</statecode>
<postcode>60699</postcode>
<referencecode>GGY-118-AS</referencecode>
</customer>
<customer>
<firstname>Rick</firstname>
<lastname>Clayton</lastname>
<streetaddress>461 Ocean Boulevard</streetaddress>
<cityname>Miami</cityname>
<statecode>FL</statecode>
<postcode>33101</postcode>
<referencecode>LOP-212-TY</referencecode>
</customer>
<trailer>
<totalRecords>5</totalRecords>
</trailer>
</CSV_8>

기본 페이지 아이콘   샘플 홈으로 돌아가기