Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In Project TI (Transaction Integrator) è possibile specificare il formato di caratteri mainframe che verrà creato dall'ambiente di runtime TI durante l'invio di dati al mainframe. Esistono due formati di caratteri mainframe supportati da TI:
PIC X(n) COBOL o RPG A
PIC G(n) COBOL, o RPG G
Quando si creano parametri stringa, campi o colonne in TI Project, il formato PIC X(n) o RPG A viene selezionato automaticamente.
Se necessario, è possibile usare il comando Proprietà per modificare il formato del carattere mainframe.
Se si seleziona il formato PIC X o RPG A per una stringa, l'ambiente di runtime TI converte questa stringa in una stringa di caratteri EBCDIC (Extended Binary Coded Decimal Interchange Code) o in una stringa di caratteri miscelati. In particolare, se il componente TI definito nel progetto TI viene assegnato a un ambiente remoto (RE) con una tabella codici EBCDIC, l'ambiente di runtime TI converte una stringa con un formato PIC X o RPG A in una stringa EBCDIC. Se il RE del componente TI identifica una pagina codice DBCS (Double Byte Character Set), l'ambiente di runtime TI converte una stringa con formato PIC X come stringa intermix (non supportata per RPG).
Se si seleziona il formato PIC G o RPG G per una stringa, l'ambiente di runtime TI converte sempre la stringa in una stringa DBCS. Pertanto, qualsiasi componente TI che utilizza una stringa con un formato PIC G o RPG G deve essere assegnato a un RE con una tabella codici DBCS.
Se un componente TI che utilizza una stringa con un formato PIC G o RPG G viene assegnato a un RE che ha una pagina di codici EBCDIC, l'ambiente di runtime TI segnala un errore di conversione quando tenta di convertire la stringa verso o da il formato PIC G o RPG G. L'ambiente di runtime TI inserisce un messaggio di errore che descrive questo problema di conversione nel registro eventi di Windows e restituisce un errore all'applicazione client chiamante.
Nella tabella seguente viene riepilogato il modo in cui la selezione del formato stringa e della tabella codici controlla il tipo di conversione dei caratteri eseguita dall'ambiente di runtime TI.
| Formato stringa | Tabella codici EBCDIC | Tabella codici DBCS |
|---|---|---|
| PIC X o RPG A | Stringa EBCDIC | Stringa intercalata |
| PIC G o RPG G | L'ambiente di runtime TI segnala errori di conversione. | Stringa DBCS |
Valori delle dimensioni delle stringhe
Il significato della dimensione di una stringa (la n parte dei formati PIC X(n) o RPG A(n) e la n parte dei formati PIC G(n) o RPG G(n) si basa sul formato carattere in uso. Specificare la dimensione di una stringa nella pagina delle proprietà COBOL Definition in Transaction Integrator (TI) Project.
Il valore della dimensione per una stringa con un formato PIC G o RPG G fornisce il numero di caratteri a byte doppio utilizzati nella rappresentazione mainframe della stringa. Non viene aggiunta alcuna coppia di caratteri SO e SI quando viene convertita una stringa con un formato PIC G o RPG G.
Il valore della dimensione per una stringa con un formato PIC X o RPG A fornisce il numero di byte utilizzati nella relativa rappresentazione mainframe. Il numero di caratteri che possono essere inseriti o acquisiti da una stringa formattata PIC X o RPG Varia a seconda del numero di :
Caratteri DBCS (Double-Byte Character Set), ognuno dei quali richiede due byte di archiviazione.
Sono necessarie coppie di caratteri SO e SI. Ogni coppia a due byte deve incapsulare ogni flusso contiguo di caratteri DBCS.
Gli sviluppatori che usano TI devono tenere conto di questa variabilità nelle dimensioni di una stringa mescolata quando specificano i valori delle dimensioni nel progetto TI.
Il numero di byte per una stringa convertita utilizzando una tabella codici EBCDIC con un formato PIC X o RPG A è identico al numero di caratteri perché nella stringa non sono presenti caratteri DBCS.
Tuttavia, per una stringa convertita utilizzando una tabella codici DBCS con un formato PIC X o RPG A, il numero effettivo di caratteri che possono essere inseriti in un determinato numero di byte varia. Ad esempio, se la conversione da o verso UNICODE non richiede l'uso di caratteri DBCS , ovvero nessun carattere SO e SI viene usati nella stringa mainframe, ogni carattere occupa un singolo byte. Tuttavia, se i caratteri DBCS vengono visualizzati all'interno della stringa mainframe, sono necessarie le coppie di caratteri SO e SI.
Come l'Importazione guidata definisce le stringhe
Quando si usa la procedura guidata di importazione del progetto di Transaction Integrator (TI) per importare una definizione del host per creare nuovi metodi e recordset, la procedura guidata seleziona il formato caratteri mainframe basato sulla definizione del host importata. Nella tabella seguente viene illustrato come la procedura guidata esegue il mapping di diverse dichiarazioni COBOL a una stringa.
| Tipo COBOL | Tipo di stringa creata |
|---|---|
| PIC X(n) o RPG A | Stringa di dimensione n byte |
| PIC G(n) o RPG G | Stringa di dimensione n caratteri |