TDS soporta el manejo de valores nulos en los mensajes. Puede utilizar
la propiedad de conjunto de mensajes Representación nulos
booleanos para especificar el valor que se debe utilizar para la
representación de nulos booleanos. Puede utilizar las propiedades de objeto Codificación de
nulo y Valor de codificación de nulo
para controlar cómo se representa el manejo de nulos para objetos individuales.
Puede
seleccionar la propiedad Codificación de nulo
entre los tres valores enumerados
NULLPadFill, NULLLogicalValue y NULLLiteralValue:
- Sólo deberá utilizar la opción
NULLPadFill para objetos de longitud
fija. Si selecciona esta opción para un objeto de fecha y hora de tipo
simple, se grabará una fecha y hora nula, que es un código vacío con un delimitador. (Esto
equivale a seleccionar NullLiteralValue, con la propiedad
Valor de codificación de
nulo establecida en la serie vacía "".) Si selecciona esta opción para
un objeto de otro tipo simple, el objeto se rellenará con el valor especificado por
la propiedad Carácter de relleno. Si
selecciona esta opción, se inhabilitará la propiedad
Valor de codificación de nulo.
Si utiliza esta opción para un objeto de longitud variable, el analizador no
sabrá cuántos caracteres de rellenos debe escribir y, por consiguiente, no escribirá
ninguno. En lugar de ello, el analizador escribirá un nulo explícito, con
código y delimitador pero sin valor de datos. Por ejemplo: se escribe
tag1:,
donde
tag1 es el código para el elemento de longitud variable
con
NULLPadFill
establecido,
":" es el separador de datos de
código y
"," es el delimitador.
- Si selecciona la opción
NULLLogicalValue, el valor entrado para
la propiedad Valor de codificación de nulo
se convierte en el valor lógico. Respecto a la escritura, el valor lógico se escribe
del mismo modo que cualquier otro valor. Respecto al análisis, se compara
el valor lógico convertido con los datos de mensaje convertidos.
- Si selecciona la opción
NULLLiteralValue, el valor entrado
para la propiedad Valor de codificación de nulo
se sustituye directamente como si fuera un valor de serie de caracteres. El valor no es sensible a las mayúsculas y minúsculas. Para objetos de longitud fija, el valor
de literal no debe tener una longitud mayor que la del objeto.
Si el valor de literal
tiene una longitud menor, la propiedad
Valor de codificación de nulo se
rellena (utilizandoCarácter de relleno)
en la salida. En la entrada, si la longitud de
NULLLiteralValue no coincide
con el campo Longitud, deberá
establecer la propiedad
Ajustar serie de longitud fija
de nivel de conjunto de mensajes para que los nulos rellenados se analicen correctamente.
La utilización de la propiedad
Valor de codificación de nulo
depende del valor que seleccione para la propiedad
Codificación de nulo descrita más
arriba. No se definen valores nulos para los tipos binarios. Por consiguiente, las propiedades
Codificación de nulo y Valor de codificación de nulo no se establecen
para los tipos binarios.