FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Imprimir con QRDBText un cero cuando el valor es nulo
Hola a todos! Hace tanto tiempo que no me conecto. Lo que me trae al foro el día de hoy es el siguiente subterfugio que se me presentó. Quizá sea una tontería, pero casi no trabajo con impresiones, generalmente lo hago con interfaces por pantalla. Busqué en el foro, pero es muy difícil escontrar un hilo, puesto que los títulos son vagos al extremo.
Tengo una planilla inundada de QRDBText, que forman una matriz. Reflejan el resultado de un JOIN bastante importante, cuyas columnas son en un 90% numéricas con valores enteros de uno (dos dígitos en casos excepcionales). El usuario quiere que en la planilla, cuando no hay valores figure un cero (0), y no un espacio en blanco (como me sucede). Cómo puedo hacer para que cuando el valor del datafield de un QRDBText sea NULL, dicho componente me muestre un cero? Desde ya muchas gracias por su tiempo. |
#2
|
||||
|
||||
Hola:
Función VarisNull. Un ejemplo sencillo: ó
en tu caso ó
__________________
No todo es como parece ser... |
#3
|
||||
|
||||
Saludos
Este tiene una propiedad Mask y "creo" que dando el valor de ###,##0.00 se consigue lo que dices
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#4
|
||||
|
||||
En vez de usar un QRDBText podrias usar QRExpr que es donde manejar varias expresiones, ahi tendrias que hacer una condicional
propiedad express->IF(table.campo=NULL,'0',table.campo), si es nulo te muestra 0 y si te muestra la informacion de dicho campo. |
#5
|
||||
|
||||
Hola, probé las soluciones de lucasarts_18 pero ninguna solucionaba realmente el problema. Luego intenté un enfonque muy similar al que encontré por parte de vtdeleon cuando entré a comentar que lo había resuelto. Jejeje, debo estar medio dormido, porque no se me ocurrió esto antes. En los campos del Dataset coloqué '#0' en la propiedad DisplayFormat. Gracias a uds. por su tiempo.
Saludos |
#6
|
||||
|
||||
Hola:
Alguien sabe que hace el caracter # Saludos..
__________________
No todo es como parece ser... |
#7
|
||||
|
||||
En su funcionamiento básico, el caracter '#' es similar a la función Chr(). Según el ejemplo citado en la ayuda de Delphi, si escribes esto de esta manera: #89#111#117 obtendrás como resultado el string 'You'.
|
#8
|
||||
|
||||
Cosa totalmente distinta a como este funciona cuando lo utilizas en un mask o en format, el cuál indica que en esa posición debe de ir un dígito. (Que es como lo esta utilizando vtdeleon).
__________________
|
#9
|
||||
|
||||
Si, es obvio que no es lo mismo, pero es resultado si. Igual, no me funcionó para todas las líneas del detalle; pero después probe usando el QRExpr y funcionó muy bien.
|
#10
|
||||
|
||||
AHHHHHHHHHHHHHH ahora caigo, jajajajaja, te referías al carcater '#' en el mask, jejeje. Yo hablaba de otra cosa de la solución al problemita. Coincidimos en lo que dices ContraVeneno. Saludos
|
|
|
|