Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
Marca de agua en una banda específica

Hola, gracias anticipadas por cualquier ayuda

Estoy intentando colocar una marca de agua en un QRBand ligado a un QRGroup. El problema lo tengo en que no hay un evento definido en las bandas que se ejecute por cada ves que se genera, o por lo menos no se actualiza la propiedad .TOP y la marca de agua se imprime en el mismo sitio quedando solo una.

Quiero que dependiendo de un estatus de ese grupo se coloque una marca de agua, ahora solo cambio el color para diferenciarla del resto, pero me han solicitado que vea la posibilidad de hacer esto que intento, pero me he topado con ese detalle ¿cómo puedo variar el parámetro DestY en la función StretchDIBits y cómo automatizar la llamada de tal forma que puedan imprimirse tantas imágenes como se ocupen en su posición correcta?

El código de la marca de agua es como todos los que circulan por este y otros foros:

Código:
TRY

    bmp := TBitMap.Create;
    bmp.LoadFromFile(ExtractFilePath(Application.ExeName)+'no_autorizado.bmp');

    with QuickRep1.QRPrinter do
    begin
      Y := YPos(PaperLengthValue) div 6;
      X := XPos(PaperWidthValue) div 4;
      R := Rect(X, Y, X*3, Trunc(Y*1.5));
      Cnv:=Canvas;
    end;

    with bmp do
    begin
      GetDIBSizes(Handle, InfoSize, ImageSize);
      GetMem(Info, InfoSize);
      try
         Getmem(Image, ImageSize);
         try
            GetDIB(Handle, Palette, Info^,Image^);
            with Info^.bmiHeader do Begin
               StretchDIBits(Cnv.Handle, R.Left, R.Top,
                             R.Right - R.Left, R.Bottom - R.Top,
                             0, 0, biWidth, biHeight, Image,
                             Info^, DIB_RGB_COLORS, SRCAND );
            End;
         finally
            FreeMem(Image, ImageSize);
         end;
      finally
         FreeMem(Info, InfoSize);
      end;
    end;

  FINALLY
    bmp.free
  END;
Gracias!

PD. No se si esta pregunta ya este antes, he querido revisar las respuestas anteriores pero por alguna razón solo veo los temas nuevos, no he encontrado alguna nueva preferencia en mi panel de control para modificar esto.

Última edición por cestradar fecha: 12-11-2009 a las 19:16:57.
Responder Con Cita
  #2  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Bueno supongo que estas trabajando con QuickReport, si es asi pues te cuento que apartir de la version 4 hacia adelante se puede poner una imagen de fondo, eso significa que tu imagen debe de estar ya bien configurada en tono,brillo,transparencia,etc para lo cual puedes editarla con cualquier programa tal como PothoShop,etc. En otras palabras tu imagen ya debe estar preparada es un archivo image(*.BMP,jpg) aunque no lo he probado con imagenes Jpg.
Bueno teniendo ya tu imagen lista en un archivo lo que se hace es lo siguiente:
Cita:
* Se baja un componente QRImage encima de tu componente QuickReport.
OJO cuando se baje el QRImage hay que tener cuidado de no ponerlo encima de ninguna banda, es decir ponerlo, por decir asi, en una esquinita del QuickReport por fuera de las lineas de impresion.
*Escribir en la propiedad BackImageControl del QuickReport el nombre del componente QrImage que acabamos de Bajar.
*Cargar la imagen a nuestro componente QrImage, esto se hace con la propiedad Picture.
*Acomodar o centrar el tamaño de nuestro Componente QrImage acorde a nuestras necesidades, ojo a veces quisas el QrImage no se va ver por que esta detras de todas las bandas en ese caso podemos seleccionarla y darle click derecho>Control>BringToFront (esto para que se venga hacia adelante)
*Finalmente poner la propiedad TransparentBand y Transparent de las bandas y los QrLabel,etc respectivamente en true.
Ojo: Lo anterior se deja al criterio de cada uno.
Eso es todo , quisas podemos visualizar el reporte dandole click derecho al QuickRepot>Preview para tener una primera impresion visual.
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7

Última edición por rgstuamigo fecha: 13-11-2009 a las 14:18:07. Razón: Estética
Responder Con Cita
  #3  
Antiguo 13-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
Hola rgstuamigo, gracias por contestar.

Efectivamente trabajo con QR (de ahí el nombre de los objetos) pero lo hago con el que viene en Delphi 7, es decir la versión 3.0.9; nunca he intentado usar otra versión por que entiendo que ya sería de pago.

Las intrucciones que colocas deduzco son para colocar una marca de agua al reporte, y ese no es el problema, el problema es que yo quiero la marca de agua en una banda específica.

Imagina un reporte quickreport con una banda de agrupación y un detailBand ligado a esta y un footerBand ligado al detail (o a la agrupadora, da lo mismo), al general el reporte se generan N hojas con M números de grupos, bueno, quiero que cuando un grupo tenga cierto estatus, en la banda correspondiente a ese grupo se coloque una marca de agua.

De momento solo coloreo la bada agrupadora dependiendo del estatus para diferenciarlo, pero como ya mencioné estoy analizando la posibilidad de todo el grupo presentarlo con una marca de agua.

Puedo colocar tantas marcas de agua como llamadas haga al StretchDIBits del código que puse, y en la posición que manualmente coloque en sus parámetros. Aquí era la pregunta, ¿cómo saber las coordenadas en la página de cierta banda?, con eso podría automatizar ese dato, pero no hay evento que se ejecute por cada grupo generado. Quizá con un sumaryBand pero igual no tengo la posición de la banda agrupadora.

Quizá simplemente no se puede
Responder Con Cita
  #4  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Lamentablemente los pasos que te he dicho es solo,como bien dije para versiones de Quick report desde la 4 hacia adelante(segun tengo entendido), si tuvieras estas versiones te ubiera dicho que intentes seguir los pasos que te habia puesto anteriromente con la diferencia que solo hagas transparente la banda en la que quieres que se visualize la imagen,desde luego deberias redimensionar el tamaño del QrImage al tamaño especifico de la banda y ubicarlo exactamente atras.
Pero como bien digo esto es solo para versiones a partir de la 4 hacia adelente; personalmete trabajo con la version 5.02 de Quick Report.
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #5  
Antiguo 13-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
Supongo que eso solo haría que se viera en todos los agrupamientos, como si fuera una marca de agua de reporte, y no es lo que necesito.

Es la misma banda, hacerla transparente no me serviría por que yo quiero que la marca de agua este en esa banda si y solo si un dato en específico vale algo. Por ello el interes de saber la posición en la hoja de la banda en el momento de esa condición.

Igual, supongo no se puede.
Responder Con Cita
  #6  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por cestradar Ver Mensaje
Supongo que eso solo haría que se viera en todos los agrupamientos, como si fuera una marca de agua de reporte, y no es lo que necesito.

Es la misma banda, hacerla transparente no me serviría por que yo quiero que la marca de agua este en esa banda si y solo si un dato en específico vale algo. Por ello el interes de saber la posición en la hoja de la banda en el momento de esa condición.

Igual, supongo no se puede.
Bueno en tal caso quisas podrias usar el evento BeforePrint(antes de imprimir) de tu banda en cuestion, para poder poner la propiedad enable del qrImage en true o false segun la condicion que desees..heee, no lo sé, abria que probarlo.
Saludos..
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #7  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Otra opcion que veo(Bueno hay que probarlo) es que el QRImage lo pongas en la banda que deses que solo se imprima y utilizar el evento BeforePrint de la banda ,como te he comentado en el anterior post.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #8  
Antiguo 13-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
El beforePrint, como dice su nombre, se ejecuta antes de ser impreso o previsualizado y actua sobre todas la bandas que se hayan ocupado, ahí no vale ninguna condición por que pondria transparente todas las bandas del mismo tipo, yo ocuparía algo como el OnNeedData.

Igual, solo era por estética, el colorear la banda agrupadora cumple el objetivo.

Saludos
Responder Con Cita
  #9  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por cestradar Ver Mensaje
El beforePrint, como dice su nombre, se ejecuta antes de ser impreso o previsualizado y actua sobre todas la bandas que se hayan ocupado, ahí no vale ninguna condición por que pondria transparente todas las bandas del mismo tipo, yo ocuparía algo como el OnNeedData.

Igual, solo era por estética, el colorear la banda agrupadora cumple el objetivo.

Saludos
No confundas las cosas; el evento OnNeedData es solo del componente QuickRep desde luego tambien tiene su respectivo evento BeforePrint, alo que me estaba refiriendo es al evento BeforePrint pero de la banda en cuestion.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #10  
Antiguo 13-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
No estoy confundiendo las cosas, te he entendido en cada uno de tus post, el que quizá no esta entiendo lo que necesito, y por qué lo que me dices no me sirve eres vos. No sirve modificar las propiedades de una banda dentro de esos eventos por que afectaría a todas las bandas del reporte, no haría caso del contenido específico de dichas bandas. Lo que te mencioné del OnNeedData era que que vieras que necesito algo que se ejecute cuando se obtengan datos pero a nivel de banda, no de DataSet obviamente.

Nada que ver con lo que me estas diciendo

Igual, todo lo que haz mencionado es en un hipotético caso que ya aclaramos no se cumple, no uso esa versión de QR, y no ocupo poner una marca a nivel de reporte.

Gracias de todas formas
Responder Con Cita
  #11  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por cestradar Ver Mensaje
No estoy confundiendo las cosas, te he entendido en cada uno de tus post, el que quizá no esta entiendo lo que necesito, y por qué lo que me dices no me sirve eres vos. No sirve modificar las propiedades de una banda dentro de esos eventos por que afectaría a todas las bandas del reporte, no haría caso del contenido específico de dichas bandas. Lo que te mencioné del OnNeedData era que que vieras que necesito algo que se ejecute cuando se obtengan datos pero a nivel de banda, no de DataSet obviamente.

Nada que ver con lo que me estas diciendo

Gracias de todas formas
Creo que por ayudar mas bien voy a salir reteado.
Haber....(voy tratar de hacerme entender mejor esta ves )dale click atu banda (selecionala para que se vean sus propiedades en el Object Inspector), ahora ve ala pestaña evento del Object Inspector y si te das cuenta cada banda tiene sus propios eventos,el que te estoy pidiendo que uses es el evento que ya anteriormente te mencioné es decir BeforePrint de tu banda; de ahi que te dije que te estabas confundiendo.
Espero que haya quedado claro.
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #12  
Antiguo 13-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
Disculpa si te he ofendido, te juro que jamás pensaría ser malagradecido con quien intenta ayudarme, pero te repito: entiendo lo que dices, conozco Delphi, conozco QR y conozco que lo que necesito no se puede hacer como tu me dices.

En evento que tu dices, aunque sea el evento de la banda afecta a todas y cada una de las bandas DetailBand (o cualquier banda) que se hayan impreso, no sirve para lo que ocupo. Recuerda que yo ocupo que las bandas se comporten o tengan algo difernete (la marca de agua) solo en cierto caso.

Si haces una prueba, verás que en ese evento no puedes afectar a la banda poseedora del evento de manera discrecional, se afectan todas. No puedes decir en ese evento que la ponga transparente la banda o que haga x cosa dependiendo del valor por que lo haría solo una vez.

Mucho antes de rendirme y desidir buscar ayuda en un foro ya he intendado eso, preguntar en un foro es lo último que hago, tengo la costumbre de primero agotar alternativas por mis medios, no me gusta molestar a la gente con "preguntas bobas" (costumbre que me quedó de años atras en alguna lista de correo) que se han resulto decenas de veces en Internet, quizá por eso mi desesperación a tu apreciación de que no entiendo tan elementales conceptos que me haz cometado, jejeje.

Gracias por tu interes rgstuamigo, de verdad te lo aprecio mucho, pero lo que necesito no se puede hacer usando los eventos beforePrint o afterPrint de las bandas.
Responder Con Cita
  #13  
Antiguo 13-11-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por cestradar Ver Mensaje
Disculpa si te he ofendido, te juro que jamás pensaría ser malagradecido con quien intenta ayudarme, pero te repito: entiendo lo que dices, conozco Delphi, conozco QR y conozco que lo que necesito no se puede hacer como tu me dices.

En evento que tu dices, aunque sea el evento de la banda afecta a todas y cada una de las bandas DetailBand (o cualquier banda) que se hayan impreso, no sirve para lo que ocupo. Recuerda que yo ocupo que las bandas se comporten o tengan algo difernete (la marca de agua) solo en cierto caso.

Si haces una prueba, verás que en ese evento no puedes afectar a la banda poseedora del evento de manera discrecional, se afectan todas. No puedes decir en ese evento que la ponga transparente la banda o que haga x cosa dependiendo del valor por que lo haría solo una vez.

Mucho antes de rendirme y desidir buscar ayuda en un foro ya he intendado eso, preguntar en un foro es lo último que hago, tengo la costumbre de primero agotar alternativas por mis medios, no me gusta molestar a la gente con "preguntas bobas" (costumbre que me quedó de años atras en alguna lista de correo) que se han resulto decenas de veces en Internet, quizá por eso mi desesperación a tu apreciación de que no entiendo tan elementales conceptos que me haz cometado, jejeje.

Gracias por tu interes rgstuamigo, de verdad te lo aprecio mucho, pero lo que necesito no se puede hacer usando los eventos beforePrint o afterPrint de las bandas.
Claro que se puede hacer mi amigo, por lo cual te he adjuntado un archivo ejemplo para que lo mires.
Ten en cuenta que el evento BeforePrint de cada banda se ejecuta tanta veces se tenga que imprimir la banda, es decir si por ejemplo tengo que imprimir el contenido de un Dataset que tiene 10 registros, entonces el evento BeforePrint se de la Banda que imprimira los 10 registros, se ejecutara 10 veces.
Si te sirvio no dejes de comentarnos.
saludos...
Archivos Adjuntos
Tipo de Archivo: zip Imprimir_ Imagen_En_Banda_Segun_Condicion.zip (8,8 KB, 55 visitas)
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7

Última edición por rgstuamigo fecha: 16-11-2009 a las 14:03:48.
Responder Con Cita
  #14  
Antiguo 17-11-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
Hola rgstuamigo

Disculpa la tardanza en responder, ayer fue dia feriado en México y no probé tu ejemplo hasta hoy.

Como te he comentado ya bastantes veces, eso no es lo que estoy ocupando, ese ejemplo hace exactamente lo que te he dicho que no necesito, no ocupo poner o quitar una marca de agua en el reporte según una condición, para eso si que sirven el evento que usas, o incluso cualquier otro de cualquier otra banda. Eso de que se ejecuta el mismo número de veces que registros se tienen pues .... no viene al caso discutirlo, pero de que si afectas las propiedades de la banda se afectan las de todas las bandas generadas en el reporte, lo he comprobado, no se pueden definir condiciones particulares para cierto grupo en ese evento.

Veo que por más que lo digo de formas diferentes no me doy a entender contigo, así que te pondré una imagen. Yo necesito algo como esto:

http://img526.imageshack.us/img526/9605/image2or.jpg

En esa imagen puedes ver que tengo tres marcas de agua en la misma banda (un detailBand ligado a un GroupBand) pero dependiendo de cierta condición quisiera se imprimiera o no algo. Si coloco en código duro las coordenadas para cada marca de agua funciona, pero claro que esto no funciona en la realidad, supongo no se puede hacer con QR, quizá con Rave u otro reporteador, pero para efectos prácticos, con el color en la banda agrupadora tengo.

Espero ahora si visualices lo que en realidad he estado intentando decir

Saludos

Última edición por cestradar fecha: 17-11-2009 a las 18:44:49.
Responder Con Cita
  #15  
Antiguo 06-12-2009
URBANO URBANO is offline
Miembro
 
Registrado: jul 2003
Ubicación: Huelva
Posts: 126
Poder: 21
URBANO Va por buen camino
Red face

Hola Cestradar,

No se realmente como se puede hacer lo que comentas, pero por lo que he leido tu si sabes lo que yo necesito y que no consigo hacer. Necesito poner un marca de agua en un informe (QR) en el centro de este. El informe es de una sola hoja.

He visto el codigo que utilizas, pero no lo entiendo, algo complejo para mi. Podrías explicarme algo ese codigo. De que metodo se llama, declaración de variables que utilizas, uses, etc...

Te agradecería mucho la ayuda. Gracias.

Saludos.
__________________
El saber no ocupa lugar.
Responder Con Cita
  #16  
Antiguo 07-12-2009
cestradar cestradar is offline
Miembro
 
Registrado: ene 2008
Posts: 24
Poder: 0
cestradar Va por buen camino
Hola URBANO, en realidad con el ejemplo de rgstuamigo tienes para hacer lo que ocupas, pero si deseas hacerlo con el código que coloqué es fácil, esta explicado en muchos post en este y otros foros por internet, basta con que coloques una función como esta:

Código Delphi [-]
 
procedure TFQRBorrador.ImprimeMarcaAgua(QuickRep1:TQuickRep; Sender: TQRCustomBand);
var
   bmp : TBitMap;
   R      : TRect;
   X, Y   : integer;
   Cnv    : TCanvas;
   Info : PBitMapInfo;
   InfoSize : DWORD;
   Image : Pointer;
   ImageSize : DWORD;
begin
  TRY
    bmp := TBitMap.Create;
    bmp.LoadFromFile(ExtractFilePath(Application.ExeName)+'no_autorizado.bmp');
    with QuickRep1.QRPrinter do
    begin
      Y := YPos(PaperLengthValue) div 6;
      X := XPos(PaperWidthValue) div 4;
      R := Rect(X, Y, X*3, Trunc(Y*1.5));
      Cnv:=Canvas;
    end;//with
    with bmp do
    begin
      GetDIBSizes(Handle, InfoSize, ImageSize);
      GetMem(Info, InfoSize);
      try
         Getmem(Image, ImageSize);
         try
            GetDIB(Handle, Palette, Info^,Image^);
            with Info^.bmiHeader do Begin
               StretchDIBits(Cnv.Handle, R.Left, R.Top,
                             R.Right - R.Left, R.Bottom - R.Top,
                             0, 0, biWidth, biHeight, Image,
                             Info^, DIB_RGB_COLORS, SRCAND );
            End;
         finally
            FreeMem(Image, ImageSize);
         end;//try-finally
      finally
         FreeMem(Info, InfoSize);
      end;//try-finally
    end;//with
  FINALLY
    bmp.free
  END;//try-finally
end;

y la mandes llamar en el evento AfterPrint de alguna banda o del reporte, con algo como esto:

Código Delphi [-]
 
   If not QBorradorAutorizado.AsBoolean Then Begin
      ImprimeMarcaAgua(QRBorrador, Sender)
   End

Se puede hacer de otras formas pero con ese funcionará. Cambia la ruta/imagen que viene el código duro.

Las funciones StretchDIBits, GetDIBSizes, GetMem y demás estan explicadas en el menu Ayuda apartado Windows SDK

Saludos
Responder Con Cita
  #17  
Antiguo 10-12-2009
URBANO URBANO is offline
Miembro
 
Registrado: jul 2003
Ubicación: Huelva
Posts: 126
Poder: 21
URBANO Va por buen camino
Smile

Gracias por tus comentarios. Lo he probado y funciona bien.

El único problema que he encontrado es a la hora de convertirlo a pdf. Si mando el informe a imprimir a una impresora virtual (PDFCreator) , me genera el informe pero imprime la marca de agua delante del texto. Esto lo he solucionado utilizando el componente "ExportQR" el cual lo he colocado en mi informe y me permite generar un pdf a partir de el. Con lo que ya no dependo de tener instalada una impresora virtual de pdf en el sistema y la marca de agua aparece de forma correcta en el documento pdf.

Saludos.
__________________
El saber no ocupa lugar.
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
Texto en el agua vtdeleon Noticias 2 01-09-2006 14:18:00
Imprimir una página especifica Alexander Impresión 0 10-07-2006 16:07:21
Utilizar Unidad Especifica Jvilomar OOP 4 17-04-2006 15:55:47
Búsqueda muy específica en un string... JuanBCT Varios 15 02-05-2005 14:58:00
marca de agua davidgaldo Impresión 1 18-02-2004 12:47:28


La franja horaria es GMT +2. Ahora son las 14:27:58.


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