Nodo Mapping

Questo argomento contiene le seguenti sezioni:

Scopo

Utilizzare il nodo Mapping per costruire uno o più messaggi nuovi e popolarli con nuove informazioni, con informazioni modificate provenienti dal messaggio di input o con informazioni estratte da un database. E' possibile modificare gli elementi dei dati relativi al contenuto del messaggio, l'ambiente associato e l'elenco di eccezioni.

Quando si apre o crea per la prima volta una mappa del messaggio per il nodo, se si specifica l'opzione Questa mappa è richiamata da un nodo del flusso di messaggi ed esegue la mappatura delle proprietà e del contenuto del messaggio, le intestazioni nel messaggio di input sono sempre copiate nel messaggio di output senza modifiche.

Se si desidera modificare le intestazioni del messaggio in un nodo Mapping, è necessario selezionare l'opzione Questa mappa è richiamata da un nodo del flusso di messaggi ed esegue la mappatura delle proprietà, delle intestazioni e del contenuto del messaggio. Così facendo, la mappa creata consente la mappatura di elementi aggiuntivi, comprese le intestazioni MQ, HTTP e JMS.

Tali componenti del messaggio di output possono essere definiti utilizzando le mappature basate sugli elementi del messaggio di input e dei dati provenienti da un database esterno. Si creano le mappature associate a questo nodo nel relative file di mappatura eseguendo la mappatura degli input (messaggio o database) agli output. Facoltativamente, è possibile modificare le assegnazioni effettuate da queste mappature utilizzando le funzioni e le procedure fornite o definite dall'utente: ad esempio, è possibile convertire un valore di stringa in caratteri maiuscoli quando questo è assegnato al campo di output del messaggio.

Utilizzare il nodo Mapping per:

  • Creare un nuovo messaggio
  • Copiare i messaggi tra i programmi di analisi
  • Trasformare un messaggio da un formato ad un altro

Il nodo Mapping è rappresentato nel workbench dalla seguente icona:

Icona del nodo Mapping

Utilizzo di questo nodo in un flusso di messaggi

Fare riferimento all'esempio riportato di seguito per capire come utilizzare questo nodo:

Configurazione del nodo Mapping

Una volta inserita un'istanza del nodo Mapping in un flusso di messaggi, è possibile configurarla. Fare clic con il tasto destro del mouse sul nodo nella vista dell'editor e fare clic su Proprietà. Vengono visualizzate le proprietà base del nodo.

Tutte le proprietà obbligatorie, per le quali è necessario immettere un valore (quelle per le quali non è specificato un valore predefinito), sono contrassegnate con un asterisco nella finestra di dialogo delle proprietà.

Configurare il nodo Mapping come segue:

  1. Specificare in Origine dati il nome con il quale il database appropriato viene riconosciuto nel sistema su cui deve essere eseguito questo flusso di messaggi. Il broker si connette a questo database con le informazioni relative all'ID utente e password specificati nel comando mqsicreatebroker, mqsichangebroker o mqsisetdbparms.

    Sui sistemi z/OS, il broker utilizza l'ID dell'attività avviata dal broker o l'ID utente e la password specificati nel JCL del comando mqsisetdbparms, BIPSDBP nel data set di personalizzazione <hlq>.SBIPPROC.

  2. Selezionare l'impostazione Transazione dal menu a discesa. I valori sono:
    • Automatico (il valore predefinito). Il flusso di messaggi, di cui fa parte il nodo Mapping, è sottoposto a commit se ha esito positivo. Cioè, le azioni definite nelle mappature vengono eseguite e il messaggio continua attraverso il flusso di messaggi. Se il flusso di messaggi ha esito negativo, viene sottoposto a rollback. Se si sceglie Automatico, la capacità di eseguire il commit o il rollback dell'azione del nodo Mapping sul database dipende dall'esito positivo o negativo dell'intero flusso di messaggi.
    • Commit. Se si desidera eseguire il commit di azioni non sottoposte a commit, eseguite in questo flusso di messaggi, nel database connesso a questo nodo, indipendentemente dall'esito positivo o negativo dell'intero flusso di messaggi, selezionare Commit. Le modifiche al database sono sottoposte a commit anche se il flusso di messaggi ha esito negativo.
  3. In Routine di mappatura, identificare la routine di mappatura da eseguire in questo nodo. Per impostazione predefinita, il nome assegnato alla routine di mappatura è identico al nome del file di mappature in cui è definita la routine. Il nome predefinito per il file è il nome del flusso di messaggi concatenato al nome del nodo, quando questo è incluso nel flusso di messaggi (ad esempio, MFlow1_Mapping.mfmap per il primo nodo Mapping nel flusso di messaggi MFlow1). Non è possibile specificare un valore che includa degli spazi.

    Facendo clic su Sfoglia accanto a questo campo di immissione, viene visualizzata una finestra di dialogo che elenca tutte le routine di mappatura disponibili a cui può accedere questo nodo. Selezionare la routine desiderata e fare clic su OK. Il nome della routine è impostato in Modulo mappatura.

    Per gestire la routine di mappatura associata a questo nodo, fare clic con il tasto destro del mouse sul nodo e selezionare Apri mappature. Se la routine di mappatura non esiste, essa viene creata con il nome predefinito nel file predefinito. Se il file già esiste, è possibile anche aprire <flow_name>_<node_name>.mfmap nella vista Navigator.

    Una routine di mappatura è specifica per il tipo di nodo a cui è associata; non è possibile utilizzare una routine di mappatura sviluppata per un nodo Mapping con un qualsiasi altro nodo che utilizza le mappature (ad esempio, un nodo DataInsert). Se si crea una routine di mappatura, non è possibile richiamarla da altre routine di mappatura, sebbene la si possa richiamare da una routine ESQL.

    Per ulteriori informazioni su come gestire i file di mappatura e definirne il contenuto, consultare Sviluppo delle mappature di messaggi.

  4. In Modalità mappatura, specificare la modalità che si desidera utilizzare per elaborare le informazioni trasmesse attraverso il nodo Mapping. E' possibile scegliere qualsiasi combinazione dei componenti Message, LocalEnvironment ed Exception da generare e modificare con il nodo Mapping.

    E' necessario impostare questa proprietà per riflettere correttamente il formato del messaggio di output richiesto. Se si seleziona un'opzione (o si accetta il valore predefinito) che non include un componente particolare del messaggio, tale componente non è incluso in alcun messaggio di output che viene creato.

    (Nei rilasci precedenti alla Versione 2.1, l'ambiente associato (LocalEnvironment) era noto come DestinationList. DestinationList è valore valido e si può utilizzare per compatibilità.)

    (Il componente Environment della struttura ad albero del messaggio non è influenzato dall'impostazione della modalità. Il relativo contenuto, se presente, è trasmesso da questo nodo.)

    Le opzioni sono illustrate nella seguente tabella.

    Modalità Descrizione
    Message (il valore predefinito) Il messaggio viene creato o trasmesso dal nodo Mapping come è stato modificato all'interno del nodo.
    LocalEnvironment La struttura ad albero LocalEnvironment viene creata o trasmessa dal nodo Mapping come è stata modificata all'interno del nodo.
    LocalEnvironment e Message La struttura ad albero LocalEnvironment ed il messaggio vengono creati o trasmessi dal nodo Mapping come sono stati modificati dal nodo.
    Exception L'Elenco di eccezioni viene creato o trasmesso dal nodo Mapping come è stato modificato dal nodo.
    Exception e Message L'Elenco di eccezioni e il messaggio vengono creati o trasmessi dal nodo Mapping come sono stati modificati dal nodo.
    Exception e LocalEnvironment L'Elenco di eccezioni e la struttura ad albero LocalEnvironment vengono creati o trasmessi dal nodo Mapping come sono stati modificati dal nodo.
    Tutto Il messaggio, l'Elenco di eccezioni e LocalEnvironment vengono creati o trasmessi dal nodo Mapping come sono stati modificati dal nodo.
  5. Selezionare Base nel Navigator della finestra di dialogo delle proprietà ed impostare o deselezionare le due caselle di spunta:
    • Se si desidera che i messaggi di avvertenza del database vengano considerati come errori e che il nodo trasmetta il messaggio di output al terminale failure, selezionare la casella di spunta Valuta le avvertenze come errori. La casella è inizialmente deselezionata.

      Quando si seleziona tale casella, il nodo gestisce tutti i codici di ritorno positivi, provenienti dal database, come errori e genera eccezioni nello stesso modo in cui gestisce gli errori negativi o più gravi.

      Se non si seleziona la casella, il nodo considera le avvertenze come codici di ritorno normali e non genera alcuna eccezione. L'avvertenza più significativa è non trovato, che può essere gestita come un codice di ritorno normale senza alcun rischio, nella maggior parte dei casi.

    • Se si desidera che il broker generi un'eccezione quando si rileva un errore di database, selezionare la casella di spunta Genera eccezione in caso di errore database. La casella è inizialmente selezionata.

      Se si deseleziona la casella, è necessario gestire l'errore nel flusso di messaggi per garantire l'integrità del broker e del database: l'errore viene ignorato se non lo si gestisce con la propria elaborazione, poiché si è scelto di non richiamare la gestione errori predefinita da parte del broker. Ad esempio, si potrebbe connettere il terminale failure a una routine secondaria di elaborazione errori.

  6. Selezionare Convalida nel navigator della finestra di dialogo delle proprietà se si desidera che il programma di analisi MRM convalidi il contenuto dei messaggi rispetto al dizionario generato dalla serie di messaggi (Se un messaggio è trasmesso al terminale failure del nodo, non viene convalidato.)

    Per ulteriori dettagli fare riferimento a Convalida dei messaggi e Proprietà della convalida per i messaggi nel dominio MRM.

  7. Selezionare Opzioni generali messaggio nel Navigator della finestra di dialogo delle proprietà. Intervallo di analisi è, per impostazione predefinita, impostato su Su richiesta. Questo fa sì che la convalida venga ritardata fino al completamento dell'analisi parziale. Se si modifica in Immediata, l'analisi parziale viene sovrascritta e tutto il contenuto presente nel messaggio viene analizzato e convalidato, tranne i tipi complessi con una Composizione di Scelta o Messaggio, che non può essere risolta al momento. Se questa impostazione viene modificata in Completa, l'analisi parziale viene sovrascritta e tutto il contenuto del messaggio viene analizzato e convalidato; i tipi complessi con una Composizione di Scelta o Messaggio, che non possono essere risolti al momento, hanno come risultato un errore di convalida.

    Selezionare la casella di spunta Utilizza programma di analisi compatto MQRFH2C per il dominino MQRFH2 se si desidera utilizzare il programma di analisi MQRFH2C invece del programma di analisi MQRFH2 per le intestazioni MQRFH2.

  8. Selezionare le opzioni del programma di analisi XMLNSC nel Navigator della finestra di dialogo delle proprietà e selezionare la casella di spunta Utilizza programma di analisi compatto XMLNSC per il dominio XMLNS se si desidera utilizzare il programma di analisi XMLNSC per i messaggi nel dominio XMLNS.

    Altre proprietà controllano se il programma di analisi XMLNSC viene utilizzato per il testo misto, i commenti e le istruzioni di elaborazione nel messaggio di input.

  9. Selezionare Descrizione nel Navigator della finestra di dialogo delle proprietà per immettere una descrizione breve, una descrizione completa o entrambe.
  10. Fare clic su Applica per effettuare le modifiche al nodo Mapping senza chiudere la finestra di dialogo delle proprietà. Fare clic su OK per applicare le modifiche e chiudere la finestra di dialogo delle proprietà.

    Fare clic su Annulla per chiudere la finestra di dialogo ed eliminare tutte le modifiche apportate alle proprietà.

Terminali e proprietà

I terminali del nodo Mapping sono descritti nella seguente tabella.

Terminale Descrizione
In Il terminale di input che accetta un messaggio affinché venga elaborato dal nodo.
Failure Il terminale di output a cui è trasmesso il messaggio di input se si rileva un errore durante il calcolo. Se è stata selezionata l'opzione Valuta le avvertenze come errori, il nodo trasmette il messaggio a questo terminale se vengono restituiti messaggi di avvertenza del database, anche se l'elaborazione potrebbe terminare con esito positivo.
Out Il terminale di output che emette il messaggio in seguito all'esecuzione delle mappature.

Le seguenti tabelle descrivono le proprietà del nodo; la colonna con l'intestazione O indica se la proprietà è obbligatoria (contrassegnata con un asterisco nella finestra di dialogo delle proprietà, se è necessario immettere un valore quando non è specificato un valore predefinito), la colonna con l'intestazione C indica se la proprietà è configurabile (è possibile modificare il valore quando si aggiunge un flusso di messaggi a un file bar per distribuirlo).

Le proprietà base del nodo Mapping sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Origine dati No   Il nome dell'origine dati ODBC del database in cui risiedono le tabelle a cui si fa riferimento nelle mappature associate a questo nodo (identificato dalla proprietà Modulo mappatura).
Transazione No Automatico La modalità transazione per il nodo. I valori validi sono Automatico o Commit.
Routine di mappatura No Mapping Il nome della routine di mappatura che contiene le istruzioni da eseguire sul database o sulla struttura ad albero del messaggio. La routine è univoca per questo tipo di nodo.
Modalità mappatura No Message Selezionare uno dei seguenti valori:
  • Message
  • LocalEnvironment
  • LocalEnvironment e Message
  • Exception
  • Exception e Message
  • Exception e LocalEnvironment
  • Tutto
Se si desidera creare una mappa che trasmetta più messaggi di destinazione, impostare questa proprietà su Local Environment e Message per garantire l'esecuzione corretta del nodo.
Valuta le avvertenze come errori No Deselezionata Indica di valutare le avvertenze SQL del database come errori. Questa azione viene eseguita se si seleziona la casella di spunta.
Genera eccezione in caso di errore database No Selezionata Gli errori di database fanno sì che il broker generi un'eccezione. Questa azione viene eseguita se si seleziona la casella di spunta.

Le proprietà Convalida del nodo Mapping sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Convalida Nessuno Indica se viene effettuata la convalida. I valori validi sono Nessuno, Contenuto e valore, Contenuto ed Eredità.
Azione in caso di errore No Eccezione Indica cosa accade se si verifica un errore di convalida. E' possibile impostare questa proprietà solo se Convalida è impostata su Contenuto o Contenuto e valore. I valori validi sono Traccia utente, Registrazione errori locale, Eccezione ed Elenco di eccezioni.
Includi tutti i vincoli valore No Selezionata Questa proprietà non può essere modificata. L'azione predefinita, indicata dalla casella di spunta selezionata, consiste nell'inclusione di tutti i vincoli valore nella convalida.
Correzione No Nessuno Questa proprietà non può essere modificata. Viene fornito un livello di correzione minimo. I valori validi sono Nessuno e Completo.

Le proprietà delle Opzioni generali messaggio per il nodo Mapping sono descritte nella seguente tabella:

Proprietà O C Valore predefinito Descrizione
Intervallo di analisi No Su richiesta Questa proprietà consente di controllare quando viene analizzato un messaggio di input. I valori validi sono Su richiesta, Immediata e Completa.

Fare riferimento ad Analisi su richiesta per una descrizione completa di questa proprietà.

Utilizza programma di analisi compatto MQRFH2C per il dominino MQRFH2 No No False Questa proprietà consente di controllare se viene utilizzato il programma di analisi compatto MQRFH2C, invece del programma di analisi MQRFH2, per le intestazioni MQRFH2.

Le opzioni del programma di analisi XMLNSC per il nodo Mapping sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Utilizza programma di analisi compatto XMLNSC per il dominio XMLNS Deselezionata No Inizio modificaSe si imposta tale proprietà, MQRFH2 in uscita specifica il programma di analisi XMLNS anziché XMLNSC, lasciando invariata un'applicazione esterna. Se i messaggi in uscita non contengono intestazioni MQRFH2, questa proprietà non ha alcun effetto.Fine modifica
Modalità di mantenimento contenuto misto No Nessuno Questa proprietà controlla se il programma di analisi XMLNSC crea elementi nella struttura ad albero del messaggio quando rileva testo misto in un messaggio di input. I valori validi sono Nessuno e Tutti. La selezione del valore Tutti indica che gli elementi vengono creati per testo misto. La selezione del valore Nessuno indica che il testo misto viene ignorato e non viene creato alcun elemento.
Modalità di mantenimento commenti No Nessuno Questa proprietà controlla se il programma di analisi XMLNSC crea elementi nella struttura ad albero del messaggio quando rileva commenti in un messaggio di input. I valori validi sono Nessuno e Tutti. La selezione del valore Tutti indica che vengono creati elementi per i commenti. La selezione del valore Nessuno indica che i commenti vengono ignorati e non viene creato alcun elemento.
Modalità di mantenimento delle istruzioni di elaborazione No Nessuno Questa proprietà controlla se il programma di analisi XMLNSC crea elementi nella struttura ad albero del messaggio quando rileva istruzioni di elaborazione in un messaggio di input. I valori validi sono Nessuno e Tutti. La selezione del valore Tutti indica che vengono creati elementi per le istruzioni di elaborazione. La selezione del valore Nessuno indica che le istruzioni di elaborazione vengono ignorate e non viene creato alcun elemento.

Le proprietà Descrizione del nodo Mapping sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Descrizione breve No No   Una breve descrizione del nodo.
Descrizione completa No No   Testo che descrive lo scopo del nodo nel flusso di messaggi.
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ac04720_