Esecuzione del messaggio di esempio CSV_3

Questo esempio si basa sull'esempio 2 ed aggiunge un record trailer al messaggio CSV. Analizza il trailer utilizzando un modello dati per distinguere tra il trailer (che inizia con un cifra decimale) ed il record che si ripete (che non inizia nello stesso modo).  Nel messaggio di input vi è un singolo record header seguito da un singolo record separato da virgole che si ripete, a sua volta seguito da un singolo record trailer.Tale messaggio viene analizzato utilizzando la serie di messaggi di esempio e scritto come messaggio XML.

Questo argomento include istruzioni per l'esecuzione dell'esempio. Include inoltre un esempio di messaggio di prova di input e un messaggio di output corrispondente previsto, in modo da poter confermare il funzionamento dell'esempio.

Per una spiegazione dettagliata del modello di messaggio utilizzato in questo esempio fare riferimento a  Esame dell'esempio CSV (Comma Separated Value).

Il messaggio di prova di input

Il messaggio di prova utilizzato nell'esecuzione di questo esempio si basa sul seguente formato:

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

<CRLF> rappresenta i caratteri con punti codice esadecimale ASCII x'0D' e x'0A'.

Esecuzione dell'esempio

Questo esempio utilizza il flusso di messaggi CSV2XML. Contiene molti nodi di input ma per questo esempio utilizza il nodo con la coda denominata CSV2XML.IN3. Il flusso di messaggi trasmette il messaggio ad un nodo Compute che ne modifica il formato in XML e scrive il messaggio. Questo fa sì che il messaggio CSV venga analizzato in un albero logico e quindi scritto in formato XML. Il messaggio XML di output mostra la struttura logica del messaggio analizzato.

Per eseguire l'esempio:

  1. Passare alla vista Broker Application Development nel Message Brokers Toolkit.
  2. Aprire il file di accodamento del messaggio di prova denominato: CSV_msg3.enqueue.
  3. Fare clic su Scrivi nella coda. Viene inviato un messaggio alla coda CSV2XML.IN1.

    Il flusso di messaggi analizza il messaggio CSV e scrive lo stesso messaggio logico in XML. Nella coda CSV2XML.OUT dovrebbe venire visualizzato un messaggio.

  4. Per visualizzare il messaggio di output, tornare al Message Brokers Toolkit e fare clic sull'icona Richiama messaggio da una coda sulla barra degli strumenti.
  5. Immettere un nome Gestore code WBRK6_DEFAULT_QUEUE_MANAGER ed un nome Coda CSV2XML.OUT.
  6. Fare clic su Leggi dalla coda per visualizzare il contenuto del messaggio di output.
  7. Utilizzare l'opzione Salva con nome per salvare il messaggio come file xml e visualizzarlo nell'editor XML.
  8. Confrontarlo con il messaggio di output previsto.

Provare a ripetere i passi da 2 a 6, utilizzando il file XML_msg3.enqueue (che contiene lo stesso messaggio XML emesso dal primo flusso) e XML2CSV.IN e XML2CSV.OUT come le due code. In questo modo si trasmette il messaggio XML al flusso inverso rispetto a quello utilizzato nel primo stadio che dà come risultato un messaggio CSV come output. Confrontare questo messaggio con il messaggio CSV originale. Dovrebbero essere identici.

Se tutti i passi sono riusciti, l'esempio è completato.

Ora è opportuno consultare il progetto della serie di messaggi e la spiegazione di questa definizione di messaggio contenuti nella sezione Esame dell'esempio CSV (Comma Separated Value).

Messaggio di output previsto

Il messaggio XML di output previsto è:

<?xml version="1.0"?>
<CSV_3>
<header>
<requestDate>2005-04-01</requestDate>
<requestID>X123456IB7</requestID>
<requestType>dettagli cliente</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_3>

icona Pagina principale   Torna alla pagina home dell'esempio