PDA

Ver la Versión Completa : Nomina Qreport


ingabraham
22-11-2007, 00:41:55
delphi 6 , qreport

Tengo una consulta sql con groupby,
Realizo un programa de nomina
necesito q me salga en el qreport 3 colillas de pago por cada hoja.

Quien me puede ayudar o darme una idea, por favor es urgente.
es q cuando son varias colillas me salen mochas,

help

ContraVeneno
22-11-2007, 01:44:07
¿que son "colillas de pago" ?

¿a que te refieres con "salen mochas"?

¿que es "help"? :D

eduarcol
22-11-2007, 14:29:10
divide el alto de la hoja y lo divides entre tres, el resultado es el tamaño de cada detalle en el reporte.

que tengas suerte

ingabraham
22-11-2007, 15:26:00
pero es algo muy generalizado.
no me podrias hacer el favor de darme un ejemplo o algo asi
es q no manejo mucho los qreport

donde se coloca el codigo

ej: de mis colillas:
____________________________________________
ced xxxxxxxxxxx nombre xxxxxxxxx empleo xxxxxxxxx
cod concepto ded dev total
xxx xxxxxxxxx xxx xxx xxx
____________________________________________

Osea q el empleado puede tener varios conceptos (salud,pension,primas,libranza,sobresueldo,embargos...etc)

ingabraham
22-11-2007, 15:44:18
¿que son "colillas de pago" ?

R: son recibitos donde aparece el nombre del empleado, sus deducidos, devengados y total neto a pagar a un empleado en el mes laboral.

¿a que te refieres con "salen mochas"?

R. Que las colillas (recibitos de pago), sale cortas, incompletas, una parte en una hoja y la otra parte en la sgte hoja

¿que es "help"?
R. Ayuda, osea en ingles

ingabraham
22-11-2007, 17:55:40
____________________________________________
ced xxxxx nombre juan diaz empleo xxxxxxxxx
cod concepto dev ded neto a pagar
000 sueldo 400000
001 pension 2000
002 salud 12000
totales 400000 140000 260000
____________________________________________
ced xxxxx nombre manuel perez empleo xxxxxxxxx
cod concepto dev ded neto a pagar
000 sueldo 400000
001 pension 2000
002 salud 12000
003 libranza 2000
totales 400000 160000 240000
____________________________________________
ced xxxxx nombre carlos diz empleo xxxxxxxxx
cod concepto dev ded neto a pagar
000 sueldo 400000
001 pension 2000
001 salud 12000
totales 400000 140000 260000
____________________________________________

q esta ultima no pase a la otra hoja, q salgan por hoja 3 colillas de estas(recibos de pagos)

Lepe
22-11-2007, 18:18:04
ingabraham ten en cuenta que en Clubdelphi somos hispanohablantes, pero yo que soy español, no conozco tus modismos, por tanto evita usarlos en el foro (o explicas el significado), porque tú eres el interesado en que te entendamos, nosotros no estamos obligados a tirarte de la lengua para entenderte. Lo normal al ver un mensaje como el primero, es no contestar.

También te comento, que no hay urgencias en el foro, porque no sabes cuando se va a conectar al foro alguien que conozca la respuesta :(

Seguro que lo tendrás en cuenta la próxima vez, además lee la guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php), donde se dicen otros muchos detalles a tener en cuenta :).

En cuanto a tu pregunta, hemos quedado en que en una hoja caben 3 "colillas" pero no tenemos ni idea de lo que quieres obtener:
- quieres que se imprima la misma 3 veces (o sea, por triplicado)
- quieres que impriman todas las colillas distintas de un empleado (1 colilla de salud,la siguiente colilla sea de pension, ...), o
- solo quieres 1 sola colilla , por ejemplo, la colilla de salud del 3 de marzo de 2005.

Dependiendo de lo que quieras, hay que hacerlo de una forma u otra.

SAludos

ContraVeneno
22-11-2007, 19:04:25
Con una banda tqrgroup y tqrgroupfooter puedes acomodar la información así como tu quieres.

Después podrías utilizar la banda "title" o la "pageheader" junto con la "pagefooter" o una "summary" para limitar el espacio en las hojas y forzar que solo aparezcan 3.

También la propiedad "ForceNewPage" de la banda "qrgroup" te puede ayudar.

ingabraham
23-11-2007, 22:50:23
ForceNewPage, la pongo en false, y me muestra varias colillas de pago sin liminarlas (podre colocarla para q aparezcan solo 3?)

eduarcol
23-11-2007, 23:20:23
como ya te decia lo que necesitas es saber el alto del area de impresion de la pagina, luego ese valor lo divides entre tres y ese va a ser el valor de la banda de detalle, para ejemplo

ingabraham
24-11-2007, 00:33:04
como ya te decia lo que necesitas es saber el alto del area de impresion de la pagina, luego ese valor lo divides entre tres y ese va a ser el valor de la banda de detalle, para ejemplo
especificame mas tu ayuda hasme el favor, algun ejemplo o algo, es urgente esto para mi

Lepe
24-11-2007, 11:03:26
el folio mide 297 mm de alto:
- le restas el margen superior
- le restas el margen inferior
- le restas el alto de la banda pageHeader

El número que queda, lo divides entre 3 y el resultado, será el alto de la banda detalle (el que necesitas).

También tendrás que restar otras bandas (si las usas) pero en fins.

Saludos

luis vazquez
24-11-2007, 12:57:27
buena mira yoya termine un suistema de nomina y tuve el mismo problema, lo resolvi asiendo todo el recibo en la banda de detalle y la ajuste al tamaño que requeria si ajusta el tamaño encogiendo o estirando la altura el mismo qrepor te sacara una o varias depaendiendo del tamaño de papel, asi de facil sin complicaciones, el uso de las demas bandas me ocacionava problemas al tratar de ajustar.

me explico crea una banda de detalle y alli metes encavesado y los destalles del recibo (colilla), el tamaño se lo das estirando y encogiendo los limites de la banda,

suerte

ingabraham
24-11-2007, 16:04:41
buena mira yoya termine un suistema de nomina y tuve el mismo problema, lo resolvi asiendo todo el recibo en la banda de detalle y la ajuste al tamaño que requeria si ajusta el tamaño encogiendo o estirando la altura el mismo qrepor te sacara una o varias depaendiendo del tamaño de papel, asi de facil sin complicaciones, el uso de las demas bandas me ocacionava problemas al tratar de ajustar.

me explico crea una banda de detalle y alli metes encavesado y los destalles del recibo (colilla), el tamaño se lo das estirando y encogiendo los limites de la banda,

suerte


muchisimas gracia luis,

mira y te explico q utilizo
title band1, titulo de la nomina
qrgroup1, datos del empleado
qrband, detalles ded,dev
sumaryband, totales ded,dev,neto

como se llama la de detalle q dices¿, es q no manejo mucho el qreport, puedo meter todo esto alli¿ y la agrupacion q pasa?.
agradezco tu atencion compañero

ingabraham
28-11-2007, 15:04:13
Agradezco a todos la ayuda, el problema lo resolvi, con una pequeña orientación que me brindo un colega.
Gracias a todos y aqui esta el codigo para el que lo necesite en algun futuro.

En el evento BeforePrint del QRGroup del qreport, colocar este codigo para que aparezcan el nro de colillas deseadas


procedure TForm29.QRGroup1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin

if (NHOJAS mod 3 =0 )Then
begin
Form29.QRGroup1.ForceNewColumn:=True; //NUEVA HOJA -SALTAR
Form29.QRGroup1.ForceNewpage := True;
end
else
begin
Form29.QRGroup1.ForceNewColumn:=false; //COLILLAS UNIDAS
Form29.QRGroup1.ForceNewpage:=false;
end;

inc(NHOJAS);

end;