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 18-10-2017
ysiverio ysiverio is offline
Registrado
NULL
 
Registrado: oct 2017
Posts: 2
Poder: 0
ysiverio Va por buen camino
Delphi XE 10.2 Tokio + Rave Reports

Buenas, Soy nuevo en el mundo de la programación en Delphi, quiero crear un reporte en Rave con una imagen que se incluye en una tabla virtual que luego se carga en el rave, en Delphi 7 me funciona bien, ahora estoy migrando el código a Delphi XE 10.2 Tokio y me da error al compilar el código para x64, debajo le dejo el método con el que copio la imagen a una variable Blob y luego la paso para a la tabla virtual del Rave.


Código Delphi [-]
//Función que carga una imagen desde el archivo y la escribe en la conexión RAVE
procedure EscribirImagen(Connection: TRvCustomConnection; ArchivoImagen: string);
var
  Buffer: Pointer;
  Stream: TFileStream;


  begin
  Stream := TFileStream.Create(ArchivoImagen, fmOpenRead);
  try
    Buffer := AllocMem(Stream.Size);
    try
      Stream.Read(Buffer^, Stream.Size);
      Connection.WriteBlobData(Buffer^, Stream.Size);
    finally
      FreeMem(Buffer, Stream.Size);
    end;
  finally
    Stream.Free;
  end;
end;

Última edición por dec fecha: 18-10-2017 a las 18:28:36. Razón: Poner etiquetas DELPHI
Responder Con Cita
  #2  
Antiguo 18-10-2017
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 16
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Y cual es el error?
Responder Con Cita
  #3  
Antiguo 19-10-2017
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 20
ElDioni Va por buen camino
Hola, como no especificas que error es, pues es un poco dar palos de ciego pero allá que voy.

Al instalar Rave Reports se instalan, tanto la versión para 32bits como la de 64bits. Puede ser que en los repositorios de delphi lo que estés cargando sean las librerías de Rave de la versión de 32bits, compruébalo y si es así cámbialas por las que están en la misma ruta pero en la carpeta 64.

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita
  #4  
Antiguo 20-10-2017
ysiverio ysiverio is offline
Registrado
NULL
 
Registrado: oct 2017
Posts: 2
Poder: 0
ysiverio Va por buen camino
Cita:
Empezado por ElDioni Ver Mensaje
Hola, como no especificas que error es, pues es un poco dar palos de ciego pero allá que voy.

Al instalar Rave Reports se instalan, tanto la versión para 32bits como la de 64bits. Puede ser que en los repositorios de delphi lo que estés cargando sean las librerías de Rave de la versión de 32bits, compruébalo y si es así cámbialas por las que están en la misma ruta pero en la carpeta 64.

Saludos.
Buenos Días y gracia por responderme,
Yo tengo bien puesto el rave para x64, el error que me da es que cuando intente escribir en la conexion del rave
[code]
Connection.WriteBlobData(Buffer^, Stream.Size);
[code]


Anexo una imagen del error.


Saludos y gracias de antemano.
Imágenes Adjuntas
Tipo de Archivo: png errorr.png (10,0 KB, 5 visitas)
Responder Con Cita
  #5  
Antiguo 05-02-2018
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 20
ElDioni Va por buen camino
Hola,

hace ya tiempo de este hilo pero por si alguien vuelve hasta aquí daré por lo menos una solución alternativa que puede que funcione.
En lugar de como lo estaba haciendo el compañero ysiverio se puede crear una variable TRavePage y otra TRaveBitmap en el projecto delphi y luego tratar estas variables en el código delphi directamente.

Código Delphi [-]
procedure TFrmMenuArt.ImpEntradaDiseno();
var
  MyBmp:TRaveBitmap;
  MyPage: TRavePage;
begin
  RvProject1.SelectReport('Report1',true);
  MyPage:= RVProject1.Projman.FindRaveComponent('Report1.Page1',nil) As TRavePage;
  MyBmp:=RvProject1.ProjMan.FindRaveComponent('BmpTiempos',MyPage) as TRaveBitmap;

Luego podemos cargar directamente la imagen en la variable MyBmp a través del siguiente código.

Código Delphi [-]
MyBmp.Image.LoadFromStream(VariableStream);

Espero que a alguien le sirva de ayuda.

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
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
Rave reports Campos invalidos desde delphi,pero no en el Diseñador Rave feliz-58 Impresión 5 02-09-2013 19:03:38
Rave Reports para Delphi.NET? xaguilars Impresión 7 27-03-2008 01:01:24
Rave Reports en Delphi 2006 gaps2k Impresión 0 12-04-2007 19:01:11
Delphi 2005 y Rave Reports gluglu Impresión 2 14-01-2005 15:58:22
Delphi 8 y Rave Reports gluglu Varios 0 18-10-2004 01:33:23


La franja horaria es GMT +2. Ahora son las 01:51:53.


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