Ver la Versión Completa : Juntar dos registros en una sola en QuickReport
enecumene
09-09-2007, 20:58:47
Hola Compañeros, tengo una duda de como juntar dos registros o mas en una sola fila en quickreport sin usar el groupheader, ejemplo:
nombre llegada salida
nando 8:00:00
nando --------- 2:30:00
carla 2:30:00
carla----------- 6:00:00
hacerlo asi:
nombre llegada salida
nando 8:00:00 2:30:00
carla 2:30:00 6:00:00
es posible hacerlo?, gracias de antemano...
eduarcol
09-09-2007, 21:06:32
y porq no lo haces por la consulta sql?? group by
enecumene
09-09-2007, 21:11:15
porque siempre me sale ese tipo de error:
---------------------------
Debugger Exception Notification
---------------------------
Project Asistencia.exe raised exception class EOleException with message 'You tried to execute a query that does not include the specified expression 'cargo' as part of an aggregate function'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
consulta:
select nombre, cargo, tanda, entrada, salida, fecha, tardanza, licencia,
excusa, permiso, enfermedad, vacacion, servicio from Asistencia
where fecha = :hoy group by nombre
Saludos
eduarcol
09-09-2007, 21:28:39
es que en el group by debes incluir en la expresion todos los campos sencillos, y porq no utiliar una banda de grupo en qr???? es mas sencillo
enecumene
09-09-2007, 21:32:26
la banda de grupo de QR hace esto:
nando
--------8:00:00
-----------------2:30:00
carla
--------2:30:00
-----------------6:00:00
hare lo que dijiste en el post anterior a ver, luego te comento...
enecumene
09-09-2007, 21:40:44
select nombre, cargo, tanda, entrada, salida, fecha, tardanza, licencia,
excusa, permiso, enfermedad, vacacion, servicio from Asistencia
where fecha = :hoy group by nombre, cargo, tanda, entrada, salida, fecha, tardanza, licencia,
excusa, permiso, enfermedad, vacacion, servicio
me sale igual que en el primer post, repetidos.:confused::confused:
eduarcol
09-09-2007, 21:40:59
quita el control de la bandadetail agregalo a la de grupo y en el onprint de la banda detalles le das Printband := False;
eso es un truco pero por lo menos sirve
enecumene
09-09-2007, 21:49:44
disculpa eduarcol, pero no caigo en lo que me dices, como quito el ¿CONTROL? de la banda detalles? te refieres a los linkband o los childband?????
eduarcol
09-09-2007, 21:55:28
Control = TQRDBText
no te sale lo del sql porq la consulta esta mal planteada necesitaria saber como se guarda la info para ayudarte a plantearla, pero yo que tu lo haria con el truco del qr
enecumene
09-09-2007, 22:00:33
eduarcol de Nuevo mis disculpas por mi ignorancia:(, ok me dijiste Control = TQRDBText pero donde pongo eso? porque en ningun lado encuentro esa propiedad ni en la banda ni en el texto, lo del onprint lo vi en el QRDBText..
Saludos
eduarcol
09-09-2007, 22:03:59
ya va quizas no me explique bien, el error fue mio comienzo de nuevo
si tienes los dos campos el inicio y el final cada uno en un tqrdbtext, quita los tqrdbtext de la banda detalle y pasala a la banda grupo
luego en el evento before print del detalle le colocas
Printband := False;
pero te recuerdo solo asumo segun la informacion que me das quizas no te entiendo bien
enecumene
09-09-2007, 22:20:31
Eduarcol, no me funciono el truco, me sale asi:
nombre entrada salida
carla------------06:00:00
y ya.
tal vez tampoco me he explicado muy bien tambien, dejame empezar de nuevo, estoy haciendo una aplicacion de control de entrada y salida de empleados donde los datos son tipos horas largas, utilizo base de datos access y los inserto en una misma tabla, entonces queria crear un reporte donde se muestre la entrada y salida en una sola fila, asi
nombre-->entrada-->salida
nando----8:00:00---2:30:00
carla-----2:30:00---6:00:00
y no asi:
nombre-->entrada-->salida
nando----8:00:00--
nando--------------2:30:00
carla-----2:30:00--
carla---------------6:00:00
creo que ahora me explique mejor, creo:D.
saludos
eduarcol
09-09-2007, 22:24:30
no estoy muy seguro que funcione pero prueba esto
Select Nombre, Min(Horaentrada), Max(HoraSalida) from mitabla
aunque el problema esta al ingreso, deberias validar que si el usuario ya tiene un registro de entrada sin salida enditarlo y colocar alli la salida
enecumene
09-09-2007, 22:52:31
Muchas Gracias Eduarcol, tenias mucha razon, el problema estaba en el ingreso, lo que hice fue que en la salida en vez de insert hacerlo por update, al principio no me actualizaba porque no estaba utilizando parametros, pero ahora que pruebo con ellos me funciona de maravillas. Te Pido Mil Disculpas y gracias por tu tiempo de corazon :)...
Saludos...
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.