Ver Mensaje Individual
  #1  
Antiguo 23-02-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Ubicación: Toledo - España
Posts: 1.418
Reputación: 21
Angel.Matilla Va por buen camino
Comprobar si un valor es nulo

Me estoy volviedo loco. Estoy ejecutando este query en Builder 6 contra una base de datos Firebird:
Código SQL [-]
SELECT DISTINCT A.Situacion, B.Literal FROM Persona A LEFT JOIN Instalacion B ON A.Situacion = B.Valor AND B.Etiqueta = 'Situacion'
WHERE A.CodPrv = (SELECT Literal FROM Instalacion WHERE Etiqueta = 'Provincia') AND A.Sexo = 0 ORDER BY Situacion
que me devuelve este resultado:
Cita:
SITUACION LITERAL
-2 DESCONOCIDA
0 SITUACIÓN 1
1 SITUACIÓN 2
2 SITUACIÓN 3
3 SITUACIÓN 4
4 Null
Todo esto para cargar un TCheckListBox. Lo que pretendo es que me cargue un único ítem con el valor desconocida, de forma que no haya un ítem vacío. He probado de todo; ahora lo tengo puesto así:
Código:
for (; !fPersona->Query->Eof; fPersona->Query->Next())
{
     cAux = UpperCase(fPersona->Query->FieldByName("Literal")->AsString);
     if (lPrueba && (cAux == "DESCONOCIDA" || cAux == NULL))
     {
          CheckListBox2->Items->Add("Desconocida");
          lPrueba = true;
     }
     else if (cAux != NULL)
          CheckListBox2->Items->Add(fPersona->Query->FieldByName("Literal")->AsString);
}
pero también he probado con
Cita:
fPersona->Query->FieldByName("Literal")->IsNull
fPersona->Query->FieldByName("Literal")->AsString == ""
fPersona->Query->FieldByName("Literal")->AsString.IsEmpty()
Y siempre me añade al final un ítem con el caption vacío:
Responder Con Cita