Configurazione dei flussi di messaggi per la conversione dei dati

Se si scambiano messaggi tra applicazioni in esecuzione su sistemi che in qualche modo sono incompatibili, è possibile configurare il proprio sistema in modo da fornire la conversione dei dati quando il messaggio passa attraverso il broker. La conversione dei dati potrebbe essere necessaria se uno o l'altro dei due seguenti valori è diverso sui sistemi di invio e ricezione:

  1. CCSID. Il CCSID (Coded Character Set Identifier) fa riferimento ad una serie di caratteri codificati e alle relative assegnazioni di codici carattere. WebSphere Message Broker può elaborare e creare messaggi applicativi in qualsiasi code page per la quale WebSphere MQ fornisca la conversione in e da Unicode, su tutti i sistemi operativi. Per ulteriori informazioni circa il supporto code page, consultare il manuale WebSphere MQ Application Programming Reference.

    Questo funzionamento potrebbe essere influenzato dall'utilizzo di altri prodotti insieme a WebSphere Message Broker. Controllare la documentazione relativa agli altri prodotti, compresi tutti i database utilizzati, per ulteriori informazioni sul supporto alla code page.

  2. Codifica. Definisce il modo in cui una macchina codifica i numeri, cioè numeri interi binari, interi a decimali compressi e numeri a virgola mobile. I numeri rappresentati come caratteri sono gestiti allo stesso modo di tutti gli altri dati di stringa.

Se il CCSID e la codifica nativi sui sistemi di invio e ricezione sono gli stessi, non è necessario richiamare i processi di conversione dati.

WebSphere Message Broker e WebSphere MQ forniscono funzioni di conversione dei dati per supportare lo scambio di messaggi tra sistemi diversi. La scelta di quali funzioni utilizzare dipende dalle caratteristiche dei messaggi che sono elaborati dal flusso di messaggi:

Messaggi che contengono solo testo

Leggere questa sezione se i messaggi sono messaggi WebSphere MQ che contengono unicamente testo (dati carattere o stringa). Se WebSphere MQ supporta la conversione dei dati nei sistemi su cui sono in esecuzione sia le applicazioni di invio che di ricezione, utilizzare le funzioni WebSphere MQ. Questa è l'opzione di conversione dati più efficace.

Il funzionamento predefinito di WebSphere MQ è quello di inserire i messaggi nelle code specificando CCSID e codifica del sistema locale. Le applicazioni che emettono MQGET possono richiedere che il gestore code fornisca la conversione nel CCSID e nella codifica locali come parte dell'elaborazione get.

Per utilizzare questa opzione:

  1. Progettare i messaggi in modo che siano di solo testo. Se si sta utilizzando COBOL, spostare i campi numerici su USAGE DISPLAY per convertirli in formato di stringa.
  2. Impostare il campo Formato in MQMD su MQFMT_STRING (valore MQSTR).
  3. Emettere MQGET con MQGMO_CONVERT nell'applicazione di ricezione. Se si preferisce è possibile eseguire la conversione quando il broker riceve il messaggio, impostando la proprietà Converti del nodo MQInput su sì (selezionando la casella di spunta).

Se si richiede una conversione dati più sofisticata di quella che WebSphere MQ fornisce in questo modo (ad esempio, in una code page non supportata), utilizzare i programmi di uscita della conversione dati WebSphere MQ. Per ulteriori informazioni a questo riguardo, consultare il manuale WebSphere MQ Application Programming Reference.

Messaggi che includono caratteri numerici

Leggere questa sezione se i messaggi includono dati numerici o sono di solo testo, ma non sono messaggi WebSphere MQ. Se questi messaggi possono essere predefiniti (cioè, il loro contenuto e la loro struttura sono noti e prevedibili), utilizzare le funzioni fornite da WebSphere Message Broker e MRM.

Tutti i messaggi applicativi sono gestiti dal broker in Unicode, in cui sono convertiti al momento dell'input e da cui sono convertiti al momento dell'output. E' possibile configurare i flussi di messaggi per influenzare il modo in cui sono creati i messaggi di output.

Per utilizzare questa opzione:

  1. Definire il messaggio di output nel dominio MRM. E' possibile creare questa definizione in uno dei seguenti modi:
    • Importare una definizione del messaggio esterna (ad esempio un'intestazione C o un copybook COBOL).
    • Creare il modello di messaggio nell'editor Definizione del messaggio.
  2. Configurare un flusso di messaggi per ricevere ed elaborare questo messaggio:
    1. Se si include un nodo MQInput, non richiedere la conversione da questo nodo.
    2. Includere un nodo Compute in un flusso di messaggi per creare il messaggio di output con il contenuto richiesto:
      • Se il messaggio di output è un messaggio WebSphere MQ, codificare l'ESQL nel nodo Compute per impostare CCSID e codifica per il sistema di destinazione nell'MQMD.

        Ad esempio, per impostare i valori per un sistema z/OS di destinazione in esecuzione con CCSID 37 e codifica 785:

        SET OutputRoot.MQMD.CodedCharSetId = 37;
        SET OutputRoot.MQMD.Encoding = 785;
      • Se il messaggio di output non è un messaggio WebSphere MQ, codificare l'ESQL nel nodo Compute per impostare CCSID e codifica per il sistema di destinazione nella cartella Proprietà.
Messaggi a definizione automatica

Leggere questa sezione se i messaggi sono a definizione automatica.

I messaggi a definizione automatica sono supportati nei domini XML e JMS. Tali messaggi sono di solo testo e possono essere gestiti da WebSphere MQ, se originati dalle o destinati alle applicazioni WebSphere MQ. In caso contrario, utilizzare le funzioni di WebSphere Message Broker impostando i campi CCSID e codifica nella cartella Proprietà nel messaggio, quando passa attraverso un nodo Compute.

Concetti correlati
Messaggi predefiniti e a definizione automatica
Panoramica dei flussi di messaggi
Supporto per l'applicazione utente finale
Attività correlate
Progettazione di un flusso di messaggi
Conversione della code page e della codifica del messaggio
Creazione di un flusso di messaggi
Definizione del contenuto del flusso di messaggi
Supporto per le applicazioni utente finale
Riferimenti correlati
Nodi integrati
Code page supportate
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ac12380_