Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Rave Reports, Para Cesar

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Rave Reports, Para Cesar Responder citando

Cesar sabes ya como se utiliza el RaveReports?
_________________
Muchos hombres no se equivocan jamás porque no se proponen nada razonable.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor
Mensaje    Asunto: Responder citando

que necesitas, en concreto, crear un reporte o jalar los datos de una Base de datos (tablas, querys o Dataset's?)

Estamos en contacto...
saludos..

o a travez del msn, te contacto
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Bien despues de luchar a capa y espada con Rave Reports aqui esta la solución a como imprimir los datos de una tabla creo que a todo mundo le interesa saber como hacerlo.

Bien algo complicado si se viene desde el quickreport
este ejemplo lo hice sacando los datos de un IBDataSet, de Interbase y conectandome desde
Firebird,

lo primero el enlace a los datos. esto es igual que todo, nada mas que hay que realizar las
siguientes operaciones,
los componentes usados dentro del form son:
Cita:
TIBDatabase *IBDatabase1; // la conexion con la base de datos
TIBTransaction *IBTransaction1; //para la transaccion, por el momento no agrego ni edito
//para las transacciones, no me sirve, por que es para el ejemplo
// del reporteador, pero por si las "Fly's", jeje
TIBDataSet *IBDataSet1; // el enlace para los datos "Select * from Tabla" ya saben
TDataSource *DataSource1; // el data Source por aquello que servia, jeje
TRvProject *RvProject1; // el componente para crear los reportes 2click y te lleva al reporteador
TRvSystem *RvSystem1; // para configurar la manera de ver los reportes
// este componente lo pongo ya que es el que se necesita para el enlace con el
// componente rave reports lineas mas arriba RvProject

TRvDataSetConnection *RvDataSetConnection1; <-- por cada tabla, query o DataSet debe ir uno

// los campos del IBDataSet.
TIntegerField *IBDataSet1PR_ID;
TIBStringField *IBDataSet1PR_CODIGO_BARRAS;
TIBStringField *IBDataSet1PR_DESCRIPCION;
TIntegerField *IBDataSet1PR_CARGAR_IVA;
TIntegerField *IBDataSet1PR_PEDIR_NS;
TFloatField *IBDataSet1PR_PRECIO_VENTA;
TFloatField *IBDataSet1PR_CANTIDAD_MINIMA;
TFloatField *IBDataSet1PR_CANTIDAD_EXISTENTE;
TIntegerField *IBDataSet1PR_ID_CLASIFICACION;
TIntegerField *IBDataSet1PR_ID_UBICACION;
TIntegerField *IBDataSet1E_ID;
TIntegerField *IBDataSet1PR_DESCONTABLE;
TIntegerField *IBDataSet1PR_PRESENTACION;

bien la manera de hacerlo es la siguiente.. con los pasos, que pude
sacar de la miniayuda que viene el Report, ya que esta trae los eventos de los componentes
del Rave Reports pero no viene absolutamente nada de como hacerlo. jeje


1.-Necesitas es un componente RvSystem, con el cual puedes configurar la manera en que el motor de Rave trabaja (Previsualización, Textos de las pantallas de dialogo, etc).

2.- Un componente RvProject para poder enlazar tu aplicación con el proyecto Rave (donde has confeccionado los listados)

3.- A nivel de BD, tendrás tus accesos a los datos a través por ejemplo de DataSets (yo los agrupo en un dataModule para los listados)

4.- En ese DataModule, por cada uno de los accesos que tengas a tablas o Querys, debes crear un componente Rave que apunte a dicho componente
(Ej: tienes un IBDataSet y debes crear un RvDataSetConnection y en su propiedad DataSet le pones el IBDataSet que accede a los Registros de la tabla

5.- Una vez que tienes diseñado el acceso a datos para todas la tablas, Presionas Doble click en el componente que dice TRvProject y vas creando por cada uno de los accesos a datos Rave un Data Object (de tipo Direct data View), te lo pide en la priemera pantalla y en la siguiente escoges el Acceso a datos Rave que habías creado en el DataModule (el nombre del TRVDataSetConnection).

6.- Debes tener en cuenta que para que lo reconozca, debes tener abierto el datamodule y conectadas las tablas o querys o el IBDataSet con los campos definidos en la propiedad field (doble click el TTable o TQuery o TIBDataSet, y agregas todos los campos)

7.- Cuando has creado los Data Object en Rave, debes crear una Región que ocupe la totalidad de la pagina del RaveReports esta region es al area de impresion de la pagina si la haces muy corta, puede que solo entren 2 registro por pagina, asi que debes hacer la que ocupe casi la todalidad o el margen de impresion y dentro de la region vas metiendo los DataBand o band de la paleta Reports, si es un DataBand modifica la propiedad BandStyle a Detail, para que salgan los datos dentro de ella arrasta los campos con el mouse de la parte derecha donde dice Data View Dictionary y los pones dentro del DataBand (puedes arrastrarlos utilizando el Ctrl Click Drag&Drop (te crea un datatext muestra el contenido del campo) o el Alt Click Drag&Drop (te crea un Text muestra el titulo).


// bien este es el codigo para ejecutar el Reporte, no se si servia, pero por las dudas
// dentro del Editor RaveReports grabe el projecto del reporte dentro del mismo directorio
// donde estoy haciendo este ejemplo el nombre es Project1.rav.

Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   // en la propiedad del componete TrProject, efectivamente si sirve el nombre
   // del proyecto guardado anteriormente, dentro del proyecto se pueden generar
   // varios infomrmes y guardarlos con un mismo nombre
   this->RvProject1->Execute();
}
//---------------------------------------------------------------------------

_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Gracias Cesar por tus pruebas, en breve comprobaremos todos estos pasos y continuaremos con el tema. Esta es la mejor forma de conocer los nuevos componentes Rave Reports.
_________________
Muchos hombres no se equivocan jamás porque no se proponen nada razonable.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.