Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Probado con QuickReport que viene en Delphi 7 y funcionando:

Creamos una variable donde guardamos el número de página (number)
Código Delphi [-]
class TfrmQR3Demo = Class(TForm);
...
  private
    { Private declarations }
    Number : integer;
    procedure Myprint(Sender:TObject; var Value:string);
    procedure FormCreate(Sender: TObject);
end;

En el OnCreate de la ventana:
Código Delphi [-]
procedure TfrmQR3Demo.FormCreate(Sender: TObject);
var i: integer;
begin
// rescatar el valor inicial de la base de datos 
// y asignarlo a la variable Number

  Number := 3;
end;

Yo he hecho todo por código delphi:
- crear la banda
- asignar propiedades
- Crear un qrlabel y asignar su evento
- dar sus coordenadas, etc
Código Delphi [-]
aReport.Bands.HasPageFooter := true;
aReport.Bands.PageFooterBand.Enabled:= True;
aReport.Bands.PageFooterBand.Visible:= true;
aReport.Bands.PageFooterBand.Height:= 90;
aReport.Bands.PageFooterBand.Color := clCream;
with TQRLabel(aReport.Bands.PageFooterBand.AddPrintable(TQRLabel)) do
begin
  Left := 20;
  top := 40;
  AutoSize:= False;
  width := 300;
  Enabled:= true;
  Caption := '00'; // si se omite esta línea no sale nada ¿cosas del QuickReport?
  OnPrint := MyPrint;

end;
Si tienes un QuickReport en tiempo de diseño:
- coloca un qrLabel dentro del FooterBand.
- Asegúrate de escribir algo en su propiedad Caption por ejemplo dos ceros '00'
(si se deja vacía,QuickReport no ejecuta el evento OnPrint (nu sé por qué)
- Asigna el evento OnPrint con el nombre que quieras (doble clic en el inspector de objetos y corriendo que es gerundio). Debe quedar más o menos así:
Código Delphi [-]
procedure TfrmQR3Demo.Myprint(Sender: TObject; var Value: string);
begin
  Inc(Number,1); 
  Value := IntToStr(Number);
end;

Queda guardar el valor de Number en la Base de datos, supongo que podrás hacerlo en el evento OnAfterPrint del quickReport.

Edito: Por cierto, mi nombre no es raro, es el nombre de mi ciudad. El tuyo si que es raro

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #2  
Antiguo 22-10-2007
Alfredo Alfredo is offline
Miembro
 
Registrado: nov 2003
Ubicación: Valencia, Venezuela
Posts: 234
Poder: 23
Alfredo Va por buen camino
Cita:
Empezado por Lepe Ver Mensaje
Edito: Por cierto, mi nombre no es raro, es el nombre de mi ciudad. El tuyo si que es raro

Jajajajajaja,,,, No mi estimado amigo, no me referia a tu nombre, o el de tu ciudad en tal caso, sino al nombre que le puse a el RqLabel, que en vez de ponerle algo como rqLabelPagina, le puse rqBand_pagina y obiamente no contribuye a que se entienda el planteamiento.....


Bueno he estado con la conexion a internet medio intermitente y asta ahora pude ver tu respuesta, lo que te agradezco enormemente y voy a probar ahorita mismo. En todo caso logre el cometido precisamente creando mi propio "Preview", bastante basico, pero funcional. Sin embargo me intereza mucho su solución porque resulta que ahora tengo que diferenciar entre los pares e impares, pues en las paginas impares la numeración debe ir asi: "Página doce (12)" -lo que me obliga a tener que convertir numeros a letras- y en las paginas pares: "vuelto página 12", y creo que mediante tu formulación lo puedo abordar mejor...

Un millon y luego posteo el avance...
__________________
if Vivir = Vivir + Aprender then Aprender = ?
Alfredo Borges
Responder Con Cita
  #3  
Antiguo 23-10-2007
Alfredo Alfredo is offline
Miembro
 
Registrado: nov 2003
Ubicación: Valencia, Venezuela
Posts: 234
Poder: 23
Alfredo Va por buen camino
Resuelto

Ok..
Para LEPE: Super agradecido con tu sugerencia, me sirvio de más..., porque yo trate de implementar lo de la variable pero no estaba claro de como funcionaban las cosas...

Al final como comente antes cree mi propio preview, como el que pude trabajar sin problemas el QrLabel que cambiaria la paginación; pude montar todo sobre el preview que el Qreport trae por defecto, pero me gustaron las personalizaciones que hice. Lo siguiente fue agregar otra variable que controlaria las paginas pares e impares.

Para cualquier otro despistado como yo que quiera usar la guia de Freire de como personalizar el Preview de Qreport, le aclaro que los identificadores no declarados que da como error el compilador, son los nombres que el autor le dio a los componentes que añadio al que seria el form del preview, llamado form3, sobre un panel alineado al top, o sea:
sbFirstPage: TSpeedButton
sbPreviousPage: TSpeedBut
sbNextPage: TSpeedButton;
sbLastPage: TSpeedButton;
StBar: TStatusBar;
printsetup: TSpeedButton;
print: TSpeedButton;
exit: TSpeedButton;
sepage: TSpinEdit; ETC....

Lo otro es que recuerden hacer esto :
Código Delphi [-]
         form3.QuickRep1.OnPreview := form2.muestra;
         form3.QuickRep1.Preview;
donde muestra es el procedimiento que inicializa los valores pero sobre todo
contiene esta linea: QRPrev.QRPrinter := TQRPrinter(Sender)
por su puesto todo esto despues de crear la form3 (mi caso), pues en el ejemplo, el amigo Freire simplifica el ejemplo al mantener la form creada.

Un saludo a todos.
__________________
if Vivir = Vivir + Aprender then Aprender = ?
Alfredo Borges
Responder Con Cita
  #4  
Antiguo 23-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
En cuanto a pasar de números a letras en el foro tienes el componente ATexto, no sé si lo conoces.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Key violation. Continuar con siguiente registro CHiCoLiTa Conexión con bases de datos 11 14-02-2007 21:48:37
Continuar numeracion en impresion !! Help RJF Impresión 2 07-11-2006 04:43:17
Reiniciar numeración en DB SQLServer Alexander Conexión con bases de datos 5 03-09-2004 00:36:22
Numeracion y viñetas en Word maurogambo Servers 1 27-07-2004 10:18:26
No se continuar pepelu1975 Varios 1 19-02-2004 11:02:22


La franja horaria es GMT +2. Ahora son las 17:50:04.


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
Copyright 1996-2007 Club Delphi