Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Imprimir dependiendo de valor Edit (https://www.clubdelphi.com/foros/showthread.php?t=46359)

molina669 30-07-2007 13:37:32

Imprimir dependiendo de valor Edit
 
Hola a tod@s,
tengo 5 reports (rep1, rep2...,rep5) y quiero mostrar aquel que el usuario escriba en un edit. Eso es que si escribe en el edit "rep1", se imprima ese, es posible esto?????.

Gracias por todo

dec 30-07-2007 13:43:26

Hola,

Tal como lo planteas se trata simplemente de utilizar instrucciones condicionales:

Código Delphi [-]

if (CompareStr(Edit1.Text, 'rep1') = 0) then
  // Imprime el reporte 1
else if (CompareStr(Edit1.Text, 'rep2') = 0) then
  // Imprime el reporte 2

molina669 30-07-2007 13:50:10

Gracias Dec, esa opción ya la contemplé pero existe el problema que si incorporo nuevos informes tendría que modificar el codigo para incluir una nueva condicional y es eso precisamente lo que no quiero hacer.

Gracias de nuevo.

Lo suyo sería algo así (a lo burro):

Cita:

(edit1.text).preview;

Gabo 30-07-2007 13:54:06

O quizas sería mejor poner un ComboBox con las opciones y ejecutar el código según la elección:

Código Delphi [-]
if (ComboBox->ItemIndex==0) then
  // Imprime el reporte 1
else if (ComboBox->ItemIndex==1) then
  // Imprime el reporte 2

molina669 30-07-2007 13:57:20

Buena opción también, pero creo que, si se pudiera hacer como os muestro, me ahorraría muchas lineas de codigo y modificar el fuente en un futuro.

molina669 30-07-2007 14:24:17

Aquí os pego el codigo de lo que voy avanzando:
Cita:

procedure TForm1.Button1Click(Sender: TObject);
var
formulario:Tform;
begin
Application.CreateForm(TForm2,formulario);
formulario.Name:=Edit1.Text;
formulario.show;
end;
Esto funciona bien pero me abre siempre el form2.
Lo que me falta es saber como decirle que TForm2 es "formulario".

Caro 30-07-2007 15:57:53

Hola, yo necesitaba hacer algo parecido, este hilo me ayudo muchisimo.

http://www.clubdelphi.com/foros/showthread.php?t=2656

Saludos

molina669 30-07-2007 16:34:09

Muchas gracias Caro, era justo lo que buscaba.


La franja horaria es GMT +2. Ahora son las 19:50:51.

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