Ver Mensaje Individual
  #1  
Antiguo 12-03-2009
JPMMVR JPMMVR is offline
Miembro
 
Registrado: feb 2008
Posts: 30
Reputación: 0
JPMMVR Va por buen camino
RAVE y customConnection

Buenos dias, llevo 3 días intentando hacer un reporte con RAVE y les cuento:

He diseñado un reporte el cual tiene campos de datos que los ha de leer de manera dinamica, es decir, en el momento de imprimir los lee del mismo programa delphi. El reporte ya lo tengo y cuando quiero ver el resultado, me pone en todos los campos DATA TEXT del reporte (invalid).

Despues de mucho probar y leer en foros y paginas WEB, he logrado lo siguiente:

En mi programa Delhi tengo:
- Un componente TRvProject1: RvProject1
- Un componente TRvCustomConnection: RvCustomConnection1

En el reporte RAV he creado:
- Un Data Object
->Direct Data View->RvCustomConnection1 (DT)->Finish

Esto genera:
Data View Dictionary
-DataView1
-DataView1FieldName

Cambio el Name = FArticulo y queda:
Data View Dictionary
-DataView1
-FArticulo

Ahora a este campo FArticulo le cambio el atributo
FieldName=Articulo

Selecciono en el reporte que he generado, el "DATA TEXT" que quiero que sea el Articulo y le cambio los atributos siguientes:
DataView=DataView1
DataField=Articulo

y bien, ahora en mi codigo Delphi le digo
Código Delphi [-]
procedure TForm1.SpeedButton_ImprimirClick(Sender: TObject); 
begin   
  RvProject1.ProjectFile:='C:\rpArticulos.rav';   
  RvProject1.Execute; 
end;  

procedure TForm1.RvCustomConnection1Open( Connection:TRvCustomConnection); 
begin   
  Connection.DataRows:=1; 
end;  

procedure TForm1.RvCustomConnection1GetRow(   Connection: TRvCustomConnection); 
begin   
  Connection.WriteStrData('', 'Mesa estilo Colonial'); 
end;  

procedure TForm1.RvCustomConnection1GetCols(   Connection: TRvCustomConnection); 
begin   
  Connection.WriteField('Articulo', dtString, 100, '', ''); 
end;


Esto lo hace perfectamente, en el reporte me aparece en el campo Articulo
el valor 'Mesa estilo Colonial'. El problema es que no logro añadir dos campos más, en este caso Color y Precio.

No se como añadir al DataView1 más campos. La idea seria algi asi, pero no se como hacerlo.
Data View Dictionary
- DataView1
- FArticulo
- FColor
- FPrecio

He probado de insertar, pero no encuentro la manera de hacerlo.

Si hay alguien que pueda ayudarme y me pueda dar una solución al tema.

Gracias a todos
Responder Con Cita