FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
DBGrid llenar valores Booleanos mostrando forma String
Saludos muy buen día, he estado buscando pero no encuentro la forma
lo que pasa es que en MySQL creé una tabla en la cual un campo es de tipo "booleano" en realidad dice TyniInt(1) en el cual la lógica sería si es 1 significaría "ATENDIDO" y 0 "PENDIENTE" el chiste de todo esto es que lleno un DBGrid con esta tabla pero me obviamente me aparecen los registros con 0 y 1's¿cómo le pudiera mostrar al usuario? el estado en que están sin afectar la tabla o ya sea hacer una instrucción SQL que me detecte 1 sea esto y 0 sea aquello Saludos y gracias por su tiempo. |
#2
|
||||
|
||||
Hola, tienes que utilizar el evento OnGetText de tu campo.
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
#3
|
||||
|
||||
Gracias sigo buscando
jeje no encontré el evento en el query o en el DBGrid pero recuerdo haberusado al menos la función GetText voy a seguir investigando gracias por tu tiempo.
|
#4
|
||||
|
||||
mrnovice, lo que dice caro es que utilices el evento OnGetText del CAMPO, ni el DBGrid ni el TQuery tienen este evento. Haz tus campos persistentes, seleccionalo y verás los eventos que dispone.
Saludos, |
#5
|
||||
|
||||
Cita:
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
#6
|
||||
|
||||
Ahora bien, si tus consultas van a ser armadas en tiempo de ejecución, no es posible emplear campos persistentes. En este caso lo que debes emplear es el CASE en tu SQL.
Desconozco MySQL, pero algunos motores tienen la sentencia CASE. Se puede hacer algo como:
Puedes verificar también si MySQL tiene además alguna función equivalente a IIF() de Firebird 2.0 Saludos, |
#7
|
|||
|
|||
Creando los campos en el dataset no es necesario usar el GetText, esta la propiedad Display values la cual mostrara el valor por ejemplo
Campo.DisplayValues := 'Atendido;Pendiente'; son los valores que puede tener separados por ";" o Campo.DisplayValues := ';Pendiente'; en este ultimo solo mostraria algo en falso... |
#8
|
||||
|
||||
Instrucción SQL funciona en MySQL pero en Delphi no?
Saludos nuevamente, ya estuve viendo las propuestas y me parecio muy interesante la instrucción SQL el problema es que Delphi no me la detecta incluso si la hago vista saben a qué se debe esta situación?
esta es mi instrucción
Y la converti a Vtabla(es la vista) pero no me detecta delphi ese campo qué ondas :S jojo gracias nuevamente a su contribución thanks. en cuanto a displayvalues o gettext ando muy perooo muy perdido :S JEJE PERO YA LO ENCONTRÉ PERO ME GUSTARIA ENTENDER LO QUE PASO CON EL SQL POR FAVOR Última edición por mrnovice fecha: 26-11-2008 a las 04:18:30. |
#9
|
||||
|
||||
Hola de nuevo, yo también pienso que es mejor que utilices el Case en tu consulta. En mysql si funciona, tal cual te lo ha puesto Delphius. En lo que tu nos estas mostrando lo unico que veo que el falta es un end
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
#10
|
||||
|
||||
Si Si Me Falto El End Pero...
Si Se Lo Habia Puesto En La Sql /query Ese No Es El Detalle
No Me Lo Detecta Delphi El Campo "as Nombrecampo" <---por Ejemplo |
#11
|
||||
|
||||
Hola mrnovice,
¿Podríamos ver el código y la consulta que tienes? Si te da un error, por favor copia y pega el nombre exacto del error para saber a que enemigo nos enfrentamos Tal vez exista un inconveniente, muy poco probable... pero puede que exista, en nombrar un alias a un campo cuando se emplea el CASE. No uso MySQL por lo que no te sabría decir. Cuanto más detalles nos puedas dar sobre el caso mejor te asesoraremos. Por cierto, si no es molestia te pediría que no escribieras de ese modo... la verdad es que hace más difícil la lectura. Saludos, |
#12
|
||||
|
||||
Saludos
HOLAS, PUES LO HE RESUELTO CON EL GETTEXT PERO ME SIGUE PICANDO LA DUDA EL MÉTODO USANDO SQL AGRADEZCO A TODOS SU AYUDA EN SERIO
AQUI VA
|
#13
|
||||
|
||||
Pues la verdad es que debería funcionar. ¿Probaste sin el AS?
Como he dicho, a riesgo de equivocarme, a lo mejor no se permite nombrar un alias a un campo en un CASE en MySQL. Lo que si veo es que no hay un espacio entre la "condición" y el THEN. Por otro lado, mezclar mayusculas con minúsculas... eso no es saludable, evita las mezclas Saludos, |
#14
|
||||
|
||||
gracias voy a probar eso de las mayúsculas ops! jeeje
gracias, en cuanto sepa la respuesta lo notificaré, un saludo muy cordial y lo que se les ofrezca ya saben que en lo que pueda ayudar.
|
#15
|
||||
|
||||
lo que veo "extraño" es que el alias que has usado para el campo es el mismo que el nombre del campo....jo que lioso que soy:
Cita:
Otra cosita, ya que has creado un Vista, allí mismo podrías incluir ese SQL que has puesto aquí, de forma que la Vista ya sustituye el cero y uno por el texto y entonces, tu consulta pasaría a ser:
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#16
|
||||
|
||||
Cita:
Cita:
Tu consulta debería quedar así:
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Llenar con ceros a la izquierda una variable string | egostar | .NET | 9 | 22-08-2007 08:57:19 |
Llenar DbGrid sin Instrucciones SQL | CamiloU | OOP | 7 | 16-01-2006 23:54:14 |
comparar un string con un rango de valores | locorez | Varios | 2 | 09-01-2006 15:54:43 |
Dbgrid Que Permita Checkbox Para Datos Booleanos | SoftMakerMex | OOP | 4 | 19-12-2003 20:46:38 |
Restaurar los valores de una forma | Newbie | Varios | 1 | 21-07-2003 20:44:15 |
|