Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-05-2011
Avatar de darkerbyte
darkerbyte darkerbyte is offline
Miembro
 
Registrado: feb 2005
Posts: 196
Poder: 20
darkerbyte Va por buen camino
Cool Utilizar una variable para acceder a diferentes controles

Hola Amigos:

Una vez mas tengo una duda inquientante que merma mi existencia. Tengo 4 Forms, cada una tiene un reporte QuickReport. Los reportes son exactamente iguales en contenido, incluso los controles y bandas tienen el mismo nombre, solo que el diseño es diferente. Lo no quisiera es hacer un proceso para llenar cada Reporte segun el usuario decide que plantilla usar.

Lo que quiero saber es si hay algun modo de crear un procedimiento al que le indique con cual de los 4 reportes ( Form1.QR, Form2.Qr...) deseo trabajar y sobre ese que valla rellenando los datos.

Una vez mas, Gracias por su valiosa ayuda, que Embarcadero los bendiga con algunas licencias gratuitas XD
Responder Con Cita
  #2  
Antiguo 18-05-2011
Pedro-Juan Pedro-Juan is offline
Miembro
 
Registrado: ago 2006
Ubicación: Barcelona - España
Posts: 315
Poder: 18
Pedro-Juan Va por buen camino
No te sería más fácil poner los 4 QuickReport en un sólo form aunque tengas que cambiarle el nombre a las bandas y demás?

Luego hacer algo así:

Código Delphi [-]
//...
if (variable = 1) then QuickReport1.Print;
if (variable = 2) then QuickReport2.Print;
//...

Espero haberte dado una idea.

Un saludo.
__________________
Este mundo es el camino para el otro, que es morada sin cesar. Mas cumple tener buen tino para andar esta jornada sin errar. (J. Manrique)
Responder Con Cita
  #3  
Antiguo 18-05-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por darkerbyte Ver Mensaje
Lo que quiero saber es si hay algun modo de crear un procedimiento al que le indique con cual de los 4 reportes ( Form1.QR, Form2.Qr...) deseo trabajar y sobre ese que valla rellenando los datos.
No se tal vez no entiendo la pregunta, pero qué problema hay en hacer...

Código Delphi [-]
procedure RellenarRep(AQR:TQuickRept);
begin
  ....

  AQR.Print;
end;

// llamadas...

RellenarRep(QuickReport1);
RellenarRep(QuickReport2);
...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 18-05-2011
Avatar de darkerbyte
darkerbyte darkerbyte is offline
Miembro
 
Registrado: feb 2005
Posts: 196
Poder: 20
darkerbyte Va por buen camino
Lightbulb Viejo truco me sorprendió

Cita:
Empezado por Neftali Ver Mensaje
No se tal vez no entiendo la pregunta, pero qué problema hay en hacer...

Código Delphi [-]
procedure RellenarRep(AQR:TQuickRept);
begin
  ....

  AQR.Print;
end;

// llamadas...

RellenarRep(QuickReport1);
RellenarRep(QuickReport2);
...
Bueno, los tutoriales que lei sobre QR decía expresamente que se debe colocar cada QR en un Form separado. Mmm.... creo que debo atreverme a romper algunas reglas.

Y bueno, Nuevamente me soprendiste Neftali. Esto es lo que deseo, ahora voy a poner los 4 Reportes en el mismo Form e intentaré implementar el procedimiento como muestras aqui.

Y perdón si no me expliqué correctamente. El punto es este, Tengo 4 reportes que me imprimen una nota de venta, los datos son los mismos, inclusive los campos, labels, memos, etc. son los mismos, lo que varía es el diseño (por ejemplo uno es para impresoras laser y de inyección, el otro es para impresoras de matriz como la vieja Epson LX-300). El usuario podrá elegir cual diseño utilizar. Lo que no quiero es hacer 4 procedimientos iguales para rellenar cada reporte. Sino con un solo procedimiento rellenar cualquiera de los 4 ya que son lo mismo
Responder Con Cita
  #5  
Antiguo 18-05-2011
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por darkerbyte Ver Mensaje
...............los datos son los mismos, inclusive los campos, labels, memos, etc. son los mismos, ................Lo que no quiero es hacer 4 procedimientos iguales para rellenar cada reporte. Sino con un solo procedimiento rellenar cualquiera de los 4 ya que son lo mismo
Hola darkerbyte, puedes utilizar la función FindComponent del formulario donde esta tu reporte, por lo que explicas y haciendolo con FindComponent ya no te conviene que esten todos tus reportes juntos, ya que cada Label,...., tendría un nombre diferente. Te pongo un ejemplo:

Código Delphi [-]
procedure RellenarRep(formulario:TForm;Reporte:String);
var
 QrLabel1 : TQRLabel;
 AQR : TQuickRep;
begin
 AQR := TQuickRep(formulario.FindComponent(Reporte));
 if Assigned(AQR) then
  begin
   QrLabel1 := TQRLabel(formulario.FindComponent('QRLabel1'));
    ........................................   
   if Assigned(QrLabel1) then
    QrLabel1.Caption := 'algo';
   .........................................
   .........................................
   AQR.Preview;
  end;
end;

//lamada
RellenarRep(FormReporte1, 'QuickRep1');

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #6  
Antiguo 23-05-2011
Avatar de darkerbyte
darkerbyte darkerbyte is offline
Miembro
 
Registrado: feb 2005
Posts: 196
Poder: 20
darkerbyte Va por buen camino
Bingo!

Hola Caro.

Muchas gracias por tu respuesta, definitivamente a eso queria llegar le diste al clavo
Responder Con Cita
Respuesta



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
Problema al acceder a los controles dentro de un TFrame Ledian_Fdez OOP 4 24-03-2011 16:36:32
como acceder a los controles de un formulario desde otro _CALI Varios 14 20-11-2010 02:23:28
acceder a los controles de otro formulario MDIChild!! _CALI Varios 1 04-12-2009 22:00:30
Moverse entre los diferentes controles. kman Varios 8 17-05-2006 00:43:47
Método accesible desde varios controles en diferentes forms athlontado OOP 9 29-10-2004 16:10:16


La franja horaria es GMT +2. Ahora son las 01:24:52.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi