Rave

36
www.fiti.com.br Delphi Standard Delphi Standard Primeira Edição [Mês] [Ano] Impacta Tecnologia Ltda Av. Paulista, 1106 – 7º Andar Cerqueira César - Cep 01310-100 - São Paulo – SP

Transcript of Rave

Page 1: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Delphi Standard

Delphi Standard

Primeira Edição

[ M ê s ] [ A n o ]

Impacta Tecnologia Ltda

Av. Paulista, 1106 – 7º Andar

Cerqueira César - Cep 01310-100 - São Paulo –

SP

Tel: [11] 3285-5566 – Fax: [11] 288-0984

Page 2: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Índice

Page 3: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Page 4: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Capítulo 8

Reports con Rave Reports

Reports Simples

Reports con descanso de grupo

Totalizaciones

En éste capitulo aprenderá:

Page 5: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Preparando la Aplicación

Tomando como la base nuestra último aplicación, seleccionaremos el

DataModule dmEmp para poner en él 3 componentes de la paleta Rave:

RvProject: Responsable para la conexión entre el proyecto Delphi y el

proyecto de informes Report.

RvDataSetConnection: Exporta un DataSet del projeto Delphi para el

proyecto Rave.

RvSystem: Responsable por el enviar del informe para la copiadora o

para la pantalla de Vista preliminar.

Configuración de los componentes Rave en la aplicación Delphi

RvDataSetConnection Name: rvdsEmp

DataSet: tbEmp

RvSystem Name: rvsysEmp

TitlePreview: La previsión del

Informe

TitleSetup: Opciones de impresión.

TitleStatus: Estado de impresión

RvProject Name: rvprjEmp

Engine: rvsysEmp

Ahora ejecute un clic doble en el componente RvProject para abrir

Rave Visual Designer.

Page 6: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Rave Visual Designer

Configuración General

File - New

File Save: Empregados.rav

Panel del arbol de objetos

Panel de propiedades

Explicacion de la propiedad actual

Página

Paleta de componentes

Barra de ferramentas

Page 7: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

En el Árbol de Objetos, selecciona RaveProject y, en el Tablero de Propiedades,

altere las Unidades de propiedad para el unMM (los milímetros)

En el Árbol de Objetos, selecciona Report Library, y dentro

de él selecciona Report1. En el Tablero de Propiedades,

altere las propiedades:

FullName: El informe general de Empleados

Name: rptEmpGeral

Todavía en el Árbol de Objetos, Page1 selecto y en el Tablero de Propiedades,

configure las propiedades siguientes.

Page 8: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Acceso a los Datos

Para el acceso de las condiciones a los datos que nosotros imprimiremos, necesitó

crear un Daba Object. Para eso selecciona File - New Data Object, o entonces haz

clic en el botón que corresponde de la barra de herramientas - . Aparecerá en

pantalla:

Seleccione Direct Data View. Esto nos dará

acceso a DataSets creados dentro de nuestro

proyecto Delphi. Despues haz clic en Next.

Aparecerán todos los componentes

RvDataSetConnection que colocamos en el

proyeto Delphi, en nuestro caso solo 1.

Seleccionalo y haz clic en Finish.

Page 9: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

En el Árbol de Objetos, nosotros veremos

todos los campos del tbEmp. DataView1

selecto y altera las propiedades mostradas

anteriormente.

Comentários:_______________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

Page 10: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Dibujado el Informe

En las paletas de componentes, selecciona la paleta Report y traga para la

Página un componente Region . El determina y delimita el area de impresion

de la página.

Redimensione el componente Region de modo que ocupe casi toda la área. Deja

un area libre al final de la página, la usaremos como pie de página.

En paletas de componentes, seleciona la paleta Report y extrae para Region1

un objeto Band - - y un objeto DataBand - . los usaremos para crear las

áreas de impresión del informe.

rodapé de página

componente Region redimensionado

Page 11: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Ellos aparecerán en la cima de Region1.

Con el objeto Band1 seleccionado, modifique las

propiedades siguientes:

BandStyle:

ControllerBand: DataBand1

Name: PageHeader

Selecione:

Body Header (cabeza)

First (Primera página)

New Page (Nueva

página)

Page 12: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Seleciona el objeto Band2 y modifica las propiedades:

DataView: dvEmp

Name: Detalhe

Los iconos a la izquierda de cada venda cambiarán, como el muestra el

dibujo.

Extraiga un componente BitMap de la paleta

Standard y coloquelo sobre el encabezado.

Altere la propiedad Image, seleccionando una figura del disco. También

altere la propiedad MatchSide para msBoth, esto hará la ilustración para

ocupar el área entera del componente.

Page 13: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Para colocar los títulos en el encabezado de página, utilize el componente Text -

-de la paleta Standard. Altere las propriedades:

Text: RELATÓRIO GERAL DE FUNCIONÁRIOS

FontJustify: pjCenter

Font: Aumente el tamaño de la fuente o cambie su estilo.

Aumente la anchura y la posición del Texto del componente para que el

horizontalmente se centralice.

Coloque un subtitulo como el nombre de la empresa

Para poner la fecha de impresión del informe, traga para el título un componente

DataText de la tableta Report. En la propiedad DataField, haga clic en el

pontinhos....

En

Report Variables, selecciona

DateShort

Page 14: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Haz clic ene. botón Insert Report Var y la variable seleccionada será

insertada en el cuadro Data Text.

Despues escriba en Data Text, un título para a variable que se insertó.

Para coloar una linea separando el encabezado del resto de la página,

seleccione la paleta Drawing y ponga un componente HLine - . Utilie las

propriedades LineWidth, Color etc.. para configurarla.

Page 15: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Ahora vamos a montar la banda de detalle. Este informe será un informe en el

formato del registro, similar a una insignia. Por consiguiente nosotros no

tendremos título de columnas.

Ponga en la región de detalle un componente BitMap de la paleta Standard.

Altera su tamaño y posición como muestra en la figura.

Altere las propiedades:

DataView: dvEmp

DataField: FOTO

Vamos ahora a montar los titulos de los campos que aparecerán en la banda de

detalle, para eso, extraiga 6 componentes Text de la paleta Standard y

configuralos como muestra en la figura.

Con la tecla CONTROL presionada, arrastre cada

campo al Arbol de Objetos, para posicionarlo

como corresponde en el detalle.

Aparecerá un componente DataText,

devidamente configurado para exibir el campo.

Page 16: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Pressione a tecla F9 para ver como está quedando el resultado.

Page 17: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Para colocar una numeración de página al final de cada página, coloca un

componente DataText (Report) al final de la pagina y fuera de Region1. En su

propiedad DataField coloca:

'Página ' + Report.CurrentPage + '/' + Report.TotalPages

Page 18: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Informe con el Descanso de GrupoEn el mismo proyecto del informe (Empregados.rav) nosotros crearemos un

segundo informe. Seleccione File - New Report.

En el Arbol de objetos (a la derecha), seleciona un nuevo informe (Report1) y

altera las propiedades:

FullName: Empregados Por Departamento

Name: frmEmpDepto

Verifique tambiém las medidas de la hoja en Page1

Traga para la página, un componente Region (Pág. Report). y traga dentro de él:

2 componentes Band (Report)

1 componente DataBand (Report)

2 componentes Band (Report)

Page 19: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Cambie las propiedades Name (de cima para bajo) para:

PageHeader Encabezado de página

GroupHeader Encabezado de grupo

Detail Detalle

GroupFooter Pie de grupo

ReportFooter Pie de relatório

Para cada banda, altere las siguientes propiedades:

PageHeader: BandStyle - Selecione Body Header e First

ControllerBand - Detail

GroupHeader: BandStyle - Selecione Group Header e First

ControllerBand - Detail

GroupDataView - dvEmpregados

GroupKey - COD_DEPTO

StartNewPage - True

Detail: DataView - dvEmp

GroupFooter: BandStyle - Group Footer e First

ControllerBand - Detail

GroupDataView - dvEmpregados

GroupKey - COD_DEPTO

ReportFooter: BandStyle - Body Footer

ControllerBand: Detail

Page 20: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Monte a banda PageHeader de forma semelhante ao que foi feito no relatório

geral. Altere apenas o título principal.

A banda GroupHeader terá a seguinte aparência:

Para a banda de detalhe, segure a tecla CONTROL yarraste ls campos deseados

para dentro de la banda. Utiliza la propriedad FontJustify para alinear los campos

CODFUN y SALARIO a la izquierda

Para as bandas GroupFooter e ReportFooter, utiliza un componente CalcText -

- de la paleta Report para efetuar los cálculos de totalización.

Altere as propriedades: CalcType: ctSum

ControllerBand: Detail

DataView: dvEmp

DataField: SALARIO

DisplayFormat: #,##0.00

FontJustify: pjRight

Text (Standard)

DataText (Report)

HLine (Drawing)

Text (Standard)

Page 21: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

La apariencia final será Para cada banda, altere as seguintes

propriedades:

:

Primeira

página:

Última

página:

Page 22: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Imprimiendo el Informe en Delphi

Vuelva a Delphi y seleccione el Data Module dmEmp. Selecione un componente

RvProject (rvprjEmp), y en su propiedad ProjectFile, selecione el archivo

Empregados.rav que acabamos de generar en Rave Visual Designer.

Pronto después, nosotros pediremos guardar el archivo dentro de RAV del

proyecto Delphi, esta manera, que nosotros no necesitaremos instalar el archivo

RAV en la máquina del usuario. Seleccione la propiedad StoreRAV y haga clic en la

Carga del botón para él que el lea el archivo

Obs.: Si se produce cualquier alteración psoterior del archivo RAV este

proceso tendrá que ser repetido.

Page 23: Rave

w w w . fi t i . c o m . b r w w w . i m p a c t a . c o m . b r

Vamos ahora a crear los procedimientos para los Actions actRelGeral y

actRelDepto:

procedure TfrmEmp.actRelGeralExecute(Sender: TObject);

begin

dmEmp.rvprjEmp.ExecuteReport('rptEmpGeral');

end;

procedure TfrmEmp.actRelDepExecute(Sender: TObject);

var sIndice: string;

begin

sIndice := dmEmp.tbEmp.IndexFieldNames;

dmEmp.tbEmp.IndexFieldNames:='COD_DEPTO';

//------------------------------------

dmEmp.rvprjEmp.ExecuteReport('rptEmpDepto');

//------------------------------------

dmEmp.tbEmp.IndexFieldNames := sIndice

end;