![]() |
Ocultar filas en RAVE
Hola amigos
Espero ser claro con una idea loca que tengo en mente.:D Como ya lo mencioné en otro hilo, estoy aprendiendo RAVE, pero se me ocurrio que no muestre los registros que tienen costo cero, pero que si los cuente en el total. Esto lo podría hacer filtrando en un Query sin ningún problema, pero, aqui viene la locura de mi mente, Por ejemplo: Tengo estos registros Registro 1 costo 10.00 Registro 2 costo 0.00 Registro 3 costo 5.00 Registro 4 costo 0.00 Registro 5 costo 20.00 y quiero que los muestre así: Registro 1 costo 10.00 Registro 3 costo 5.00 Registro 5 costo 20.00 Pero que si los cuente en el total de registros Total de Registros 5 Total Costo 35.00 Quiero que aunque no los muestre si sean parte del resultado final. Estuve viendo los eventos de RAVE, por ejemplo en el BeforePrint donde puse lo siguiente Código:
{ Event for HeaderBand.OnBeforePrint }Gracias anticipadas Salud OS |
Bueno como he visto que en otro hilo haces mención de este, te diré:
No conoczo RAVE, pero si utilizas Firebird, puedes armarte un stored procedure que te devuelva el resultado tal como quieres, y luego enchufarselo al report. |
Muchas gracias ArdiIIa, efectivamente, uso Firebird, haré el procedimiento haber que gestos hace.
Gracias por responder, Salud OS. |
De todas formas egostar, examinando el código que pones en el report, me da la impresión que lo que hace visible u oculto es la banda donde está la etiqueta a imprimir (Detail), cuando en realidad, únicamente deberías ocultar solamente la etiqueta (DataView1COSTO), y seguramente obtienes esos resultados inesperados.
Te repito que no conozco el RAVE, pero no debería resultar difícil o imposible ocultar un determinado valor, pero como digo, no ocultando la banda, sino el propio valor. Corrígeme si me equivoco. Saludos. |
Así es ArdiIIa, probe con la banda Detail y tratando de ocultar todos los campos cuando la cantidad es cero pero en todos los casos el resultado es el mismo, el reporte se bloquea y no lo muestra.
Sin embargo, en base a tu comentario de hacerlo con un SP, llegue a esto y en la consulta obtengo la información que necesito.
Ahora solo lo voy a implementar en el reporte, pero pienso que ya consegui lo que deseaba. Gracias por el tip. Salud OS |
Pues nada, no me sirve el SP en Rave, solo sirve si existe al menos un dato con un valor mayor a 0.:mad::(:rolleyes::cool::)
Bueno, al mal tiempo darle buena cara, yo sigo experimentando, ya les diré que fué lo que al final me sirvió o si de plano no me sirvió nada:D. Salud OS. |
Yo haría algo así:
|
Muy bien ArdiIIa, lo hice y efectivamente si me muestra los totales aunque no haya datos mayores a cero.
Ahora lo voy a implementar en Rave. Salud OS y gracias |
Bueno, yo sigo con mi inquietud, creo que ya se está convirtiendo en obsesión.:rolleyes::D
Pues efectivamente, lo que propones amigo ArdiIIa, está perfecto, solo que hay un detalle: En el reporte si no hay datos mayores a cero me muestra todo bien, pero si existe al menos un dato mayor a cero, me duplica el registro o si hay mas de uno duplica el último registro. Pues nada, sigo investigando. Salud OS. |
Bueno, al final quedo como pense al inicio, usando el evento OnBeforePrint, solo me faltaba un else anidado al final, pues nada, les pongo el código del evento y del SP para que pueda servir a alguien con la misma inquietud.
Código en el evento OnBeforePrint de RAVE: Código:
{ Event for Detail.OnBeforePrint }
Muchas gracias amigo ArdiIIa. Salud OS |
Vale egostar :D :D
Seguramente obtenías valores duplicados porque en el procedure compartes variables de retorno a la hora de hacer el segundo suspend, bastaría con haberlas puesto a null antes de hacer el segundo select. En cuanto al procedimiento del report, no veo la razón por la cual no funcionaría así:
|
Hola ArdiIIa, efectivamente, eso pienso, pero me quite de problemas y mejor comence de cero, seguro habia algo que no habia hecho bien, cosas de principiantes, invertí tres días en esto pero al final obtuve lo que queria.
Salud OS y muchas gracias. |
| La franja horaria es GMT +2. Ahora son las 07:35:37. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi