Nei diagrammi riportati di seguito viene descritta l'elaborazione effettuata all'interno del nodo MQGet per:
- Trasmettere il messaggio
- Creare LocalEnvironment per la struttura di output
- Creare il messaggio per la struttura di output
Trasmissione del messaggio
- Se presente, viene utilizzato MQMD nella struttura di input; in caso contrario, viene utilizzato un
MQMD predefinito.
- Viene creato un MQGMO predefinito e, se presente, viene utilizzato GMO nella struttura di input per
modificare il valore predefinito secondo gli attributi del nodo.
- La chiamata MQGet viene inviata a WebSphere MQ.
- Viene analizzato il codice di ritorno (CC) dalla chiamata e il messaggio viene trasmesso come riportato di seguito:
- OK
- Creare LocalEnvironment di output e gli alberi del messaggio di output utilizzando le tecniche di analisi del messaggio standard. Trasmettere al terminale Esterno.
- Avvertenza
- Creare LocalEnvironment di output e gli alberi del messaggio di output utilizzando il tipo del contenuto del messaggio BLOB. Se connesso, trasmettere al terminale Avvertenza. In caso contrario, non si verifica alcuna trasmissione e il flusso termina.
- Errore (nessun messaggio)
Creare LocalEnvironment di output e gli alberi del messaggio di output copiando l'input. Se connesso, trasmettere al terminale Nessun messaggio.
In caso contrario, non si verifica alcuna trasmissione. Il messaggio di output propagato al
terminale Nessun messaggio viene creato soltanto dal messaggio di input, in base ai valori delle proprietà
Modo creazione e Copia messaggio o Copia ambiente locale.
- Errore (altro)
- Trasmettere al terminale di errore. Se il terminale di errore non è connesso, il
broker genera un'eccezione e restituisce il controllo al nodo precedente più prossimo in grado di elaborarla. Per ulteriori informazioni, fare riferimento a Gestione degli errori nei flussi di messaggi.
Nel diagramma riportato di seguito ciò viene illustrato visivamente:

Creazione di LocalEnvironment di output
- Se l'attributo generateMode nel nodo MQGet non è una delle opzioni
che comprende LocalEnv, impostare l'ambiente locale di
output in modo che costituisca l'input e trasmettere l'ambiente locale.
Nota: In
tal caso, non verrà trasmesso alcun aggiornamento inoltrato in OutputLocalEnvironment.
- In caso contrario, se l'attributo copyLocalEnv non è impostato su
nessuno, copiare l'ambiente locale di input nell'output.
- Se il percorso dei dati di output è l'ambiente locale di output, le modifiche verranno inserite in tale posizione copiando dalla struttura risultato.
- L'ambiente locale viene trasmesso.
Nel diagramma riportato di seguito ciò viene illustrato visivamente:

Creazione del messaggio di output
- Se generateMode non comprende il messaggio, impostare il messaggio di
output come input. Procedere al passo 5.
- Se Ubicazione dati di emissione è impostata su OutputRoot,
creare il messaggio di output completamente dalla struttura risultato. Procedere al passo 5.
- Se copyMessage non è impostato su
nessuno, copiare il messaggio di input nell'albero dei messaggi di output.
- Se il percorso dei dati di output è una parte dell'albero dei messaggi di output, le modifiche verranno inserite in tale posizione copiando dalla struttura risultato nel punto definito in Ubicazione dati di emissione.
- Il messaggio viene trasmesso.
Nel diagramma riportato di seguito ciò viene illustrato visivamente:
