![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
En un AND donde encuentra el primer falso ya no chequea más
En un OR, con un sólo verdadero ya alcanza para que sea verdadero Basicamente (True) AND (True) AND (True) AND (True) AND (False) = False (False) AND (True) AND (True) AND (True) AND (True) = False, solo se evalua el primer condicional (True) OR (True) OR (True) OR (True) OR (False) = True, solo se evalua el primer condicional Tiene cierto "truco", ya que a pesar de que aca estamos hablando de constantes True/False, muchas veces tenemos funciones que devuelven True o False. Y si bien es un error grave que tengan efectos colaterales, es para tener en cuenta, no se debe asumir que siempre se evaluan todas las condiciones; tambien es para tener en cuenta el orden en que encadenamos condiciones, lo propio es poner lo mas rapido primero y dejar lo pesado para el final Se puede configurar el compilador para que haga Full Boolean Evaluation Última edición por AgustinOrtu fecha: 24-02-2016 a las 16:47:15. |
|
#2
|
||||
|
||||
|
No se si alguien lo ha comentado ya, pero ¿no puedes añadir la condición a la SQL, en lugar de tratarlo a posteriori?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#3
|
||||
|
||||
|
Esa condición no me vale. Fíjate que lo que me interesa es precisamente que salgan los valores nulos para saber que registros están mal grabados y la tabla en la que voy a buscar los literales no está indexada, ni me interesa, ya que es donde se guardan los valores básicos de configuración.
![]() Última edición por Angel.Matilla fecha: 25-02-2016 a las 09:45:11. |
|
#4
|
||||
|
||||
|
Hola.
La situación no me termina de quedar clara... Cuando el valor de la columna LITERAL es NULL, ¿ Deseas que el ítem del CheckListBox incluya algún texto como sugiere la imágen de tu primer mensaje ? Si no te interpreté mal y es así, creo que lo mas simple es hacerlo con la sugerencia de Casimiro, ejemplo : Código PHP:
![]() Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#5
|
||||
|
||||
|
Cita:
Código:
Query->Close();
Query->SQL->Text = "SELECT DISTINCT A.Situacion, "
"COALESCE(B.Literal, 'Desconocida') 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')";
Query->Open();
bool lPrueba = false;
for (; !fPersona->Query->Eof; fPersona->Query->Next())
{
if (UpperCase(fPersona->Query->FieldByName("Literal")->AsString) == "DESCONOCIDA")
{
if (lPrueba)
continue;
lPrueba = true;
}
CheckListBox2->Items->Add(fPersona->Query->FieldByName("Literal")->AsString);
}
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Comprobar si un campo es nulo | Gabo | C++ Builder | 2 | 08-10-2007 23:08:11 |
| Valor nulo en un string | ElDioni | Conexión con bases de datos | 5 | 10-11-2005 09:29:57 |
| Valor Nulo o en blanco y nil | vtdeleon | OOP | 1 | 25-11-2004 05:41:50 |
| Campo con valor nulo | fjcg02 | Conexión con bases de datos | 4 | 10-11-2004 08:55:07 |
| Valor nulo | pache | OOP | 3 | 19-06-2003 08:39:13 |
|