La funzione BITSTREAM viene conservata solo per la compatibilità con le versioni precedenti.
ASBITSTREAM restituisce un valore di tipo BLOB che contiene una rappresentazione del flusso di bit del campo indicato da FieldReference e dai relativi child
In questo modo, l'algoritmo per la determinazione di tali proprietà è essenzialmente uguale a quello utilizzato per la funzione BITSTREAM.
Alcuni programmi di analisi supportano anche la modalità FolderBitStream, che genera un flusso di bit valido per qualsiasi struttura ad albero secondaria, purché il campo indicato rappresenti una cartella.
In tutti i casi, il flusso di bit ottenuto può essere assegnato ad un'istruzione CREATE con una clausola PARSE, utilizzando gli stessi DOMAIN ed OPTIONS per riprodurre la struttura ad albero secondaria originaria.
Quando la funzione viene richiamata, vengono valutate tute le espressioni della clausola. Viene generata un'eccezione se una delle espressioni non risulta in un valore del tipo appropriato.
Se uno dei parametri è NULL, il risultato è NULL.
Clausola | Tipo | Valore predefinito |
---|---|---|
Opzioni | integer | RootBitStream & ValidateNone |
Codifica | integer | 0 |
Ccsid | integer | 0 |
Serie di messaggi | character | Stringa di lunghezza zero |
Tipo di messaggio | character | Stringa di lunghezza zero |
Formato del messaggio | character | Stringa di lunghezza zero |
Sebbene la clausola OPTIONS accetti qualsiasi espressione che restituisce un valore di tipo integer, è utile creare valori dell'opzione dall'elenco delle costanti fornite, utilizzando la funzione BITOR, solo se è richiesta più di un'opzione.
Validate master options... ValidateContentAndValue ValidateValue -- Can be used with ValidateContent ValidateContent -- Can be used with ValidateValue ValidateNone Validate failure action options... ValidateException ValidateExceptionList ValidateLocalError ValidateUserTrace Validate value constraints options... ValidateFullConstraints ValidateBasicConstraints Validate fix up options... ValidateFullFixUp ValidateNoFixUp
API C e Java equivalenti
E' possibile specificare una sola opzione da ciascun gruppo, con l'eccezione di ValidateValue e ValidateContent, che possono essere utilizzate insieme per ottenere il contenuto e la convalida del valore. Se non si specifica un'opzione all'interno di un gruppo, viene utilizzata l'opzione in grassetto.
0 MQENC_INTEGER_NORMAL MQENC_INTEGER_REVERSED MQENC_DECIMAL_NORMAL MQENC_DECIMAL_REVERSED MQENC_FLOAT_IEEE_NORMAL MQENC_FLOAT_IEEE_REVERSED MQENC_FLOAT_S3900 utilizza la codifica del gestore code.
I valori utilizzati per la clausola CCSID seguono il normale sistema di numerazione. Ad esempio, 1200 = UCS-2, 1208 = UTF-8.
0 -10 utilizza il CCSID del gestore code e -1 utilizza il CCSID determinato dal programma di analisi. Questo valore è riservato.
Per le clausole assenti, vengono utilizzati i valori predefiniti forniti. Utilizzare i valori predefiniti di codifica e CCSID perché essi utilizzano i valori delle impostazioni CCSID e di codifica del gestore code.
Allo stesso modo, utilizzare i valori predefiniti per ciascuna delle opzioni relative al formato, al tipo ed alla serie di messaggi, perché molti programmi di analisi non richiedono le informazioni relative al formato, al tipo ed alla serie di messaggi; è sufficiente qualsiasi valore valido.
ENCODING -> CCSID -> SET -> TYPE -> FORMAT -> OPTIONS
L'elenco può essere troncato in qualsiasi punto ed è possibile utilizzare un'espressione vuota per le clausole per cui non viene fornito un valore.
DECLARE options INTEGER BITOR(FolderBitStream, ValidateContent, ValidateValue); SET result = ASBITSTREAM(cursor OPTIONS options CCSID 1208); SET Result = ASBITSTREAM(Environment.Variables.MQRFH2.Data,,1208 ,,,,options);