Documentos de Académico
Documentos de Profesional
Documentos de Cultura
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
1
INDICE
Iniciando un nuevo reporte ..................................................................................................................................... 4
Secciones del Reporte ............................................................................................................................................. 6
Formato de los objetos ............................................................................................................................................ 6
Utilizando objetos de textos.................................................................................................................................... 7
Importante ............................................................................................................................................................... 7
Seleccin de Registros ............................................................................................................................................ 9
Refrescando el reporte VS. Usando datos guardados ............................................................................................. 9
Limitando datos con el criterio de seleccin de grupos........................................................................................ 10
Consideraciones de Performance.......................................................................................................................... 10
Ordenando, Agrupando y Sumarizando................................................................................................................ 11
Agrupando............................................................................................................................................................. 11
Importante ............................................................................................................................................................. 12
Sumarizaciones ms utilizadas ............................................................................................................................ 12
Top N / Botton N .................................................................................................................................................. 14
Problemas que surgen al insertar grupos .............................................................................................................. 14
Campos de Frmula .............................................................................................................................................. 15
Variables en frmulas ........................................................................................................................................... 16
Running Total ....................................................................................................................................................... 16
Formato Avanzado................................................................................................................................................ 17
The Hightlighting Expert ...................................................................................................................................... 18
Formato de las Secciones...................................................................................................................................... 20
El Section Expert............................................................................................................................................... 20
Parmetros............................................................................................................................................................. 22
Seteando valores por default................................................................................................................................. 23
Mtodos para generar las Listas de Valores Dinmicas ....................................................................................... 23
Utilizando Listas de Valores Dinmicas ya existentes ......................................................................................... 24
Otro uso de los parmetros ................................................................................................................................... 24
Objetos Cross Tab ............................................................................................................................................ 26
Cambiando el objeto Cross Tab............................................................................................................................ 26
Suprimiendo Subtotales y etiquetas ...................................................................................................................... 27
Mejorando la apariencia de un Cross Tab............................................................................................................ 27
Importante ............................................................................................................................................................. 27
Subreportes ........................................................................................................................................................... 28
Grficos................................................................................................................................................................. 30
Chart Expert .......................................................................................................................................................... 30
Chart Analyzer ...................................................................................................................................................... 32
Anexo A: Forma en que Crystal Reports genera los reportes ........................................................................... 33
Anexo B: Haciendo reportes desde bases de datos SQL ............................................................................... 36
Logearse a SQL Database..................................................................................................................................... 36
Drivers de Acceso Directo .................................................................................................................................... 36
ODBC ................................................................................................................................................................... 36
Cambiar un reporte de una base PC Style a una Cliente/Servidor...................................................................... 36
Linkeando Tablas.................................................................................................................................................. 37
Diferencias de Linking entre PC-Style y SQL Databases .................................................................................... 37
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
Standard: ste es el asistente ms genrico y usado. A travs de los tabs, del mismo, se puede no
solo seleccionar la fuente de datos, las tablas, hacer los links, seleccionar los campos a visualizar
en el reporte, sino tambin ordenar los registros, agruparlos, insertar sumarizaciones, insertar
filtros y grficos.
Cross Tab: Permite crear reportes en los cuales los datos son mostrados en un objeto Cross
Tab.
OLAP: Este asistente est orientado a realizar reportes con fuentes de datos multidimensionales,
permitiendo desplegar la informacin de los cubos en una grilla muy parecida al cross-tab.
Crystal Reports posee conectividad con: Business Warehouse, Essbase Cube, IBM DB2 Cube,
OLE DB for OLAP, Informix MetaCube, Holos HDC Cube.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
Tambin se puede comenzar eligiendo la opcin de un reporte en blanco. Mediante esta opcin, lo primero que
hay que hacer es seleccionar la fuente de datos. Una vez seleccionada la misma, se puede comenzar a
desarrollar el reporte. Mediante el Explorador de Campos, el cual se accede desde el men o desde la barra de
herramientas, se pueden elegir los campos de la fuentes de datos seleccionada y otros tipos de campos, que
explicaremos a lo largo del documento, con los que queremos armar el reporte.
En cualquiera de las dos opciones que utilizamos para armar un reporte, si elegimos mas de una tabla,
automticamente va a aparecer una ventana llamada Visual Linking Expert, mediante la cual podemos
establecer las relaciones entre las tablas seleccionadas previamente. Estos links o Join, se pueden establecer con
diferentes opciones.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
Details
Report Footer
Page Footer
Cundo aparece???
Aparece una sola vez y al principio
del reporte.
Aparece en el encabezado de cada
pgina tantas veces como pginas
contenga el reporte.
Aparece tantas veces como registros
haya en la fuente de datos.
Aparece una sola vez y al final del
reporte.
Aparece en el pie de cada pgina
tantas veces como pginas contenga
el reporte.
Qu colocar???
Ttulos, logo de la empresa, grficos,
objetos cross-tabs, lneas, etc.
Ttulos de Columnas, lneas, frmulas,
etc.
Campos de la fuente seleccionada,
frmulas, texto, etc
Totales, grficos, cross- tabs, etc.
Nmero de pginas, texto, etc.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
Importante
Los objetos de tipo texto se pueden combinar con campos de la fuente de datos o campos de frmulas o
parmetros.
Supongamos que tenemos la siguiente situacin: disponemos de dos campos de la fuente de datos de tipo
string y el contenido del mismo es de longitud variable. Un campo contiene el nombre del cliente y el otro el
apellido y queremos mostrar primero el apellido, a continuacin una coma, y despus el nombre. Para resolver
esto, insertamos ambos campos separados por una coma dentro de un objeto texto. Al insertar un campo dentro
de un objeto de texto, ste se ajusta el tamao del mismo resolviendo el inconveniente propuesto, quedando no
solo en forma mas prolija sino tambin en un solo campo, permitiendo de este modo tratar al mismo como un
objeto nico, para moverlo o darle formato en forma global si as lo quisiera.
Se pueden combinar tambin con campos especiales(Son campos incluidos en Crystal Reports, como nmero
de pgina, ttulo, autor, etc.), parmetros o frmulas.
Consideraciones de Performance
Crystal Reports debe hacer muchos clculos internos para combinar y ajustar el tamao, que degradan la
performance. Por lo tanto se recomienda combinar objetos de texto con campos, pero en secciones que no se
repitan tanto, como los Headers y/o Footer.
Si se inserta en la seccin detail se procesa cada vez que se lee un registro, si es necesario se recomienda usar
frmulas que son mas performantes.
Tratar de no usar el clsico Pag. xx de xx, debido a que el reporte debe calcular el total de pginas antes de
poder mostrar la primer pagina. Es decir, que de no usar este tipo de campos, Crystal Report muestra la primer
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
pagina sin tener que darle formato a las pginas siguientes, lo cual hace que en reportes extensos, sea
sumamente performante.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
Seleccin de Registros
A travs del Record Selection Frmula se pueden filtrar los registros que son ledos de la fuente de datos y
trados al reporte. Sirve principalmente para evitar, en bases de millones de registros, traer todos los registros,
incluso los que no nos interesan.
En sntesis, vendra a hacer la clusula WHERE de una consulta SQL, aqu tambin se pueden combinar
diferentes criterios de filtro relacionndolos por medio de and o or.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
datos, sino que, lo aplic a los datos guardados. Deberamos hacer un refresh para cercioraron que el resultado
anterior es correcto.
Cuando se usa el select expert con una base de tipo PC-Style , hay que tener en cuenta que son case sensitive,
por lo cual hay que estar atento al escribir la frmula. Usar la funcin uppercase (campo)=Criterio en
mayscula.
Consideraciones de Performance
La seleccin de registros es la parte mas crtica del reporte ya que es donde ms tarda. Como vimos
anteriormente Crystal genera una consulta SQL para leer los registros, con lo cual es fundamental optimizar
dicha consulta.
Como primer consideracin hay que intentar no utilizar funciones de Crystal en el filtro, as el filtro puede ser
traducido al lenguaje SQL de la fuente de datos con la que estemos trabajando y de esta manera que sea el
motor de la fuente de datos el que haga el trabajo de filtrar los registros y no Crystal, que lo realiza registro a
registro a medida que los va leyendo, lo cual es ms lento.
Para evitar el uso de funciones de Crystal, la herramienta provee, para cierto tipo de base de datos (Access, SQL
Server, Oracle) los SQL Expressions que son como frmulas en las cuales podemos utilizar diferentes
funciones (dependen del lenguaje de base de datos) evitando as, usar funciones de Crystal que no son
interpretadas.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
10
Agrupando
La agrupacin lo que hace es juntar todos los registros que tengan el mismo valor del campo por el cual se est
agrupando. Se puede definir un grupo desde el men o desde el botn en la barra de herramientas en base a un
campo de la fuente de datos o una frmula.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
11
Crystal permite definir N grupos en un solo reporte, no hay limitaciones en cuanto a cantidad de grupos se
refiere.
Al insertar un grupo en el reporte, se crean dos secciones mas en el mismo, por encima y por debajo de la
seccion Details o en su defecto del o los grupo/s ya definido/s:
A su vez, al hacer una vista previa, aparece un rbol a la izquierda del reporte, llamado Group Tree, que sirve
para acceder de forma mas rpida (Acceso Directo) a un grupo en particular y para visualizar la estructura
jerrquica cuando hay mltiples grupos. El usuario final, que consultara el reporte, puede ocultar el Group
Tree mediante las opciones del viewer.
Importante
Otra de las cosas a tener en cuenta es que la jerarqua generada por los grupos est dada en el orden que se
encuentran los mismos. Que significa esto, que si generamos un grupo por Pas primero (G1) y un grupo por
Provincia despus (G2), la estructura generada va a estar dada por el G1 y el G2, es decir, por Pas y despus
por Provincia. Ahora bien, supongamos que generamos primero el grupo por Provincia (G1), y despus
generamos el grupo por pas (G2), la estructura generada va ser Provincia Pas, la cual es incorrecta. Cmo
corregimos esto?? No es necesario borrar todos los grupos existentes y volver a crearlos en el orden correcto
como para que genere la estructura en forma correcta, lo que podemos hacer es corregir el orden de los mismos,
o bien arrastrando la seccin del grupo en cuestin al lugar correcto o mediante el Change Group Expert por
el men.
Una vez, generados l o los grupos, se est en condiciones de poder definir diferentes sumarizaciones en base a
ellos. Al agregar un subtotal Crystal lo coloca automticamente en el footer del o los grupos seleccionados, lo
cual no significa que no puedan ir en los header de las secciones involucradas. Para ello simplemente se
arrastra.
A su vez, los subtotales se pueden copiar y pegar en los diferentes niveles de agrupacin que tengamos, ya que
stos, simplemente tienen asociados la operatoria designada, de est forma, evitamos volver a crearlos.
Sumarizaciones ms utilizadas
Sum: Suma los valores de campos de tipo numrico.
Count: Cuenta tos los campos ledos ya sean de tipo numrico o string
Average: Calcula el promedio
Maximum: Calcula el mximo
Minimum: Calcula el mnimo
Distinct Count: Cuenta los distintos.
Si el campo que queremos sumarizar contiene valores nulos la funcin de sumarizacin no los va a tener en
cuenta. Hay una opcin que permite convertir los valores nulos a cero o empty string en Report Options.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
12
Drill-Down
La importancia de definir grupos, no solo est dada por la posibilidad de mostrar informacin sumarizada sino
tambin la posibilidad de hacer drill down, la cual nos permite ir explorando la informacin por los
diferentes grupos, bajando de un grupo a otra hasta llegar al nivel de detalle del reporte.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
13
Se puede hacer drill down a travs del reporte o el Grupo Tree. En el reporte se puede cliquear sobre el Group
Name o sobre el valor sumarizado para hacer drill down.
En algunas ocasiones se necesita impedir que el usuario haga drill down, por ejemplo sobre los valores que
calcul la sumarizacin. Para resolver este problema se deben insertar campo resultado dentro de un objeto de
texto.
Top N / Botton N
Para poder definir un Top N o Botton N, es necesario que en el reporte exista al menos un grupo y alguna
sumarizacin por el mismo, debido a que se estos se definen en base a un subtotal o una sumarizacin de un
grupo.
En la versin XI se incorpor la posibilidad de definir por medio de una formula la cantidad de registros a
visualizar, en las versiones anteriores el parmetro N se define de forma fija.
Una aclaracin importante es que, no se puede hacer un sub-total de los Top N o Botton N, debido a la forma en
que Crystal los calcula. Para solucionar esto, se debe usar un campo Runnig Total
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
14
Campos de Frmula
Los campo de frmulas son objetos que se construyen a partir de campos existentes en la fuente de datos con
funciones definidas por el usuario de desarrollo y que se manejan como si fuera un campo mas de la base.
Obteniendo de esta manera campos o clculos que no vienen definidos en la fuente de datos.
Para insertar un campo de frmula, se debe ir al Explorador de Campos
Al crear una nueva frmula, primero se le debe asignar un nombre (el cual figura en el Explorador de Campos)
y luego se abre el Editor de Frmulas.
Los campos frmulas pueden ser creados con sintaxis Crystal o con sintaxis Basic, la diferencia radica en el
lenguaje de escritura de las mismas. La sintaxis Crystal es un lenguaje muy parecido a los lenguajes de
programacin pero es un lenguaje propio de Crystal, en cambio, la sintaxis Basic resulta ms sencilla para
aquellos usuarios que estn familiarizados con Visual Basic.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
15
El editor de frmulas, posee tres arboles diferentes. Uno con los campos de la fuente de datos seleccionada, y
todos aquellos elementos que se definan en el reporte. Otro con las funciones de Crystal y por ltimo, uno de
Operadores, los cuales facilitan al usuario la construccin de frmulas.
Variables en frmulas
Hay ocasiones en las que se necesita mantener el valor registro a registro, lo cual se resuelve mediante el uso de
variables. Hay diferentes tipos de variables y con tres diferentes alcances:
Local: Mantienen el valor en la frmula en la que fue definida.
Global: La variable mantiene el valor en todo el Reporte. Una variable definida en una frmula puede ser usada
en otra frmula, incluso en otra seccin. Por defecto sino definimos el alcance de un a variable al declararla,
este es de alcance global.
Shared: Sirven para compartir variables entre un Reporte y un Sub-Reporte, de gran utilidad cuando queremos
traer informacin del Sub-Reporte al Reporte Principal.
Running Total
Es un campo, que brinda flexibilidad para acumular o incrementar los valores. Se calcula en
(WhilePrintingRecords) y hace la operacin de sumatoria definida con los datos que van a ser impresos.
Algunos de los principales tipos de sumatorias que realiza son: Sum, Count, Average. Sirve para resolver el
problema que se tiene al querer sumarizar los valores de cierto grupo que tiene un Top/Botton N, ya que al
hacer un Sub-Total de los Top/Botton N, me suma todos los valores de los grupos.
No se pueden crear Running Total en base a frmulas que se evalan en la segunda pasada, ni en base a graficos
y mapas.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
16
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
17
Formato Avanzado
The Hightlighting Expert
Permite dar formato a los campos dependiendo de los valores que estos tengan. Es de gran utilidad cuando se
presenta el caso donde en funcin de varias condiciones queremos dar formato a un campo, incluso estas
condiciones tienen prioridades. La desventaja que posse, es que se debe configurar campo por campo, no
podemos hacerlo al mismo tiempo para varios campos.
Por ejemplo: Si la deuda es mayor a 1000 mostrar en rojo, si la deuda es menor o igual a 1000 pero mayor a 100
mostrar en azul y si es menos o igual a 100 dejar como est. Para realizar este tipo de formato condicional, es
una muy buena opcin utilizar el Hightlighting Expert
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
18
Imagenes
Se puede variablizar la imagen que se sita en un Reporte, hacienda variable la ubicacin de la misma.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
19
El Section Expert
Free form placement: Permite mover objetos y que se ajusten a las guas
Hide(drill- down ok): Permite ocultar la seccin para hacer drill down.
Suppress: Suprime la seccin y todos los objetos dentro de ella. Es la ms utilizada y practica.
New Page Before: Empieza una pagina nueva antes de imprimir la seccin
New page after: Empieza una pgina nueva despus de imprimir la seccin
Underlay Following Section: Cada seccin empieza donde termina la anterior. Si esta seleccionada esta
opcin en la seccin B, dicha seccin imprime el contenido de la misma, en las siguiente, es decir las
secciones siguiente no empiezan donde termina la seccin B. Sirve para acomodar grficos al costado de
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
20
los datos, poner imgenes de fondo, poner informacin de un Sub-Reporte como doble columna en el
reporte principal
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
21
Parmetros
Los campos parmetros sirven para que el usuario final pueda ingresar datos al reporte, de esta forma se puede
hacer variable el reporte tanto en informacin, si se utiliza para cambiar el criterio de seleccin de registros, o
en formato, si se utiliza para hacer condicional el formato de los campos.
Para crear un parmetro se hace desde el Explorador de Campos.
Cuando se hace un refresh del reporte y este contiene parmetros, Crystal, ofrece la opcin de usar los valores
asignados previamente al parmetro o definir nuevos valores. El valor que es ingresado, luego es pasado, segn
su utilizacin, al Record Selection Frmula, o al editor de frmula de formato condicional del campo que
corresponda.
Los parmetros tambin se pueden mostrar en un reporte y manipularlos como los campos de la base o
frmulas.
Para los parmetros que permiten mltiples valores o valores de rango, se les deber hacer un tratamiento
especial para mostrar en el reporte los valores ingresados por el usuario.
Los tipos de parmetros pueden ser Simples o en Cascada, donde los tipos de datos van acorde a los posibles en
Crystal Reports.
Los parmetros simples son aquellos parmetros que solo tienen definido un solo nivel de carga y el valor a
ingresar no depende de otro valor ingresado. En cambio los parmetros en cascada pueden tener diferentes
niveles de carga de valores, donde cada uno de ellos va filtrando los valores de los niveles inferiores.
Por ejemplo, si tuviramos que realizar un reporte de clientes, donde el filtro del mismo, sea la ciudad, podemos
realizar un parmetro en cascada con los siguientes niveles de carga: Pas Regin Ciudad. De este modo el
usuario primero seleccionara un Pas, luego cuando vaya a seleccionar una regin, solo ver las regiones del
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
22
pas previamente seleccionado. Luego de seleccionar una regin deber seleccionar la ciudad, donde solo ver
las ciudades correspondientes a la regin previamente seleccionada.
En el caso de los parmetros en cascada podemos generar un parmetro para cada nivel o simplemente
generamos un solo parmetro para el ltimo nivel de la cascada.
23
4) Generar un Business View: Conjunto de Business Element, del cual un usuario final podra
desarrollar reportes, sin tener que conocer el Modelo de Datos Relacional.
5) Generar una Lista de Valores: La lista de valores se genera en base a un Business View
6) Configurar el esquema a utilizar para la actualizacin de la Lista de Valores, es decir, se puede
configurar que se actualice cada n segundos o programar la actualizacin de la lista, similar a un
scheduled de un Reporte en Enterprise.
IMPORTANTE: Al visualizar el Reporte en enterprise puede suceder que se solicite ingresar usuario y
password de la base de datos donde se obtiene la lista dinmica. Para que esto no suceda se debe setear en la
conexin que utiliza la Lista Dinmica, que no pregunte usuario y password cada vez que se ejecuta la lista y
definirle un usuario y password para realizar la conexin.
24
d) Tambin se puede usar los parmetros para ordenar o agrupar, creando una frmula como por ejemplo:
IF {group by }= Country THEN
{Customer.country}
ELSE
{Customer.region}
Al usar este tipo de frmulas para agrupar, s esta obligando a que Crystal haga el trabajo, si es que se est
usando una base SQL, perdiendo performance ya que el trabajo de agrupar y ordenar lo podra estar haciendo el
servidor.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
25
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
26
Cuando se agrega otra campo a la fila o columna, se crea una relacin de grupo entre los campos, que debe ser
coherente y tener lgica. Se debe pensar en la relacin de que en un grupo hay muchos grupos pertenecientes al
mismo, con lo cual se define una estructura jerrquica.
Importante
A pesar de que tanto las filas como las columnas, estn conformadas por grupos, no se puede utilizar la
funcionalidad del Drill Down. Para esto lo que se puede hacer es utilizar una combinacin de grupos del reporte
con Cross Tab.
As como mencionamos la gran utilidad que tiene este objeto, al hacer descomponer un valor en forma variable
tanto en las filas como en las columnas, una gran desventaja del mismo es que no se pueden calcular porcentajes
en los mismos. De existir la necesidad de hacerlo y si se trabaja con una base SQL, podramos utilizar un Stored
Procedure, que calcule los valores y los porcentajes y utilizar el Cross Tab simplemente para mostrar los datos
calculados por el SP.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
27
Subreportes
Algunos problemas que no se pueden resolver con reportes tradicionales:
Una lista de ordenes por clientes y por mes , que tambin contenga los 5 productos mas vendidos del
mes, sin importar los clientes.
Un reporte basado en un pc-style database que no se puede linkear, debido a que no hay campos
indexados.
Un reporte que contenga informacin de una tabla, que no contengan un campo que pueda ser linkeada
con otra y necesitemos mostrar la informacin en un solo reporte.
Subreportes Unlinked
Son los que se manejan completamente separados del Reporte Principal y no hay nada que los una.
Subreporte Linkeados
Estos tipos de reportes son controlados por el reporte principal. Es decir, los subreportes devuelven y/o dan
formato a la informacin sobre la base de un campo del reporte principal que funciona como parmetro para el
subreporte. Esto se realiza mediante un link entre el Reporte Principal y el Subreporte.
Este tipo de link hace lo siguiente: pasa datos del Reporte Principal al Subreporte, el cual lo almacena en un
campo parmetro, para luego utilizarlo donde corresponda.
Es por ello, que cuando se desarrolla el subreporte por separado, como un Reporte Normal, al hacer una vista
previa del mismo, aparece la ventana para ingresar el valor del campo parmetro, y una vez incorporado al
Reporte Principal como subreporte y realizado el link, no lo solicita ms.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
28
Otros de los benficos de hacer link entre reportes, es poder hacer links entre las tablas que componen ambos
reportes, mediante la utilizacin de frmulas, si es que los campos mediante los cuales queremos establecer la
relacin son de diferentes tipos de datos.
En cuanto a la forma de ejecucin, tambin encontramos dos tipos diferentes de subreportes:
Observaciones:
Los pasos 1 y 2, deben estar en secciones anteriores a la seccin donde se encuentra el subreporte y el
paso 5 debe estar en una seccin posterior a la seccin donde se encuentra el subreporte.
Este tipo de pasaje de informacin no funciona en subreporte que son en demanda, debido a que no se
ejecutan hasta que el usuario lo requiera, por lo tanto en el reporte principal no se contara con dicha
informacin, aun luego de que se ejecute, ya que al hacerlo es en una instancia diferente.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
29
Grficos
Al crear grficos hay que tener dos cosas en cuenta:
Una es el Chart Type, que se refiere al tipo de grafico elegido para representar los datos.
El Char Layout, se refiere a los datos que van a ser usados, si viene de la seccin de detalles, de
sumarizaciones de grupos.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
30
Chart Expert
El Chart Expert facilita la construccin de reportes, donde el Type Tab contiene las distintas opciones de tipos
de grficos, el Data Tab permite elegir de donde se va a nutrir de informacin el grfico.
Si se selecciona un Group Chart, es condicin necesaria que adems de existir un grupo exista algn subtotal o
una sumarizacin, para poder hacer el grfico. Se puede hacer grficos con mltiples niveles de grupo. Con esta
opcin se pueden generar diferentes grficos para los distintos niveles de la jerarqua e ir profundizando la
informacin con el mtodo de Drill-Down.
Si se selecciona un Advance Chart , se pueden crear grupos invisibles, o sea que no aparezcan en el Group Tree,
pero que si este en el grfico con la opcin On change of. Se puede usar la opcin de los Top/Botton N en
este tipo de grficos, cambiar los tipos de sumarizaciones, ordenar el orden del grupos invisibles.
Si se selecciona Cross Tab Chart, debe haber un objeto Cross Tab en el reporte, quedando muy bien los grficos
en 3-D.
Si se selecciona un grfico OLAP debe haber un OLAP Grid. Es muy parecido a crear un Cross Tab Chart,
quedando muy bien los grficos en 3D.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
31
Chart Analyzer
Sirve para visualizar el grfico y darle formato. A lo nico que hay que prestarle atencin, cuando se usa el
Chart Analyzer para dar formato, es a replicarlo al resto de los grficos si es que hay ms de uno. Lo que suele
ocurrir es darle formato a un grafico, de algn grupo en particular y luego al ver el mismo grfico, para otro
grupo, no ver los cambios realizados recientemente y pensar que se borraron.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
32
Qu es una pasada?
Una pasada es un proceso que Crystal Reports usa cada vez que se leen o se manipulan los datos. Dependiendo
de la complejidad del informe, Crystal Reports puede hacer 1, 2 o 3 pasadas sobre los datos. Esta funcin
permite complejas tareas de elaboracin de informes y manipulacin de frmulas.
Previa n 1
Al observar una vista previa de un informe, los primeros elementos que se evalan son las frmulas
constantes. Las frmulas constantes son aquellas que tienen un valor constante durante todo el informe. Es
decir, no cambian de un registro a otro. Por ejemplo, 100* 30 sera una frmula constante. Las frmulas
constantes se evalan al comienzo del proceso de generacin de impresin y no se vuelven a evaluar. Este
proceso se conoce como BeforeReadingRecords. Si ubicara un campo de frmula constante (es decir,
100*30) en la seccin Detalles, el resultado sera 3.000 para cada registro que se muestre.
Pasada n 1
Despus que se ha producido el proceso BeforeReadingRecords, Crystal Reports comienza a leer los registros
de la base de datos. Durante el proceso de lectura de registros, ocurrir lo siguiente:
Recuperacin de registros. Donde la posible seleccin y ordenamiento de registros se transfieren a la
base de datos en este paso.
Evaluacin de frmulas recurrentes. Estas frmulas contienen campos de base de datos, pero no
contienen referencias a subtotales o informacin de resumen. Este tiempo de evaluacin se conoce como
WhileReadingRecords. Las frmulas que contienen referencias a subtotales o informacin de resumen
se procesan en la segunda pasada.
Aplicacin local de la seleccin de registros. Si la seleccin de registros es demasiado compleja para
transferirla a la base de datos, Crystal Reports se encarga de aplicarla en este paso.
Ordenamiento, agrupamiento y clculo de totales. En este paso, Crystal Reports ordena los
registros, los separa en grupos y luego calcula los subtotales y resmenes necesarios para cada grupo.
Generacin de tablas cruzadas, grficos y mapas. En la Pasada n 1 slo se generarn las tablas
cruzadas, los grficos y los mapas que estn basados totalmente en campos de bases de datos y frmulas
recurrentes. Si estos objetos contienen totales acumulados o frmulas PrintTime, se generarn en la
Pasada n 2.
Almacenamiento de datos guardados. Despus de terminar el proceso de clculo de totales, todos los
registros y totales se almacenan en la memoria y en archivos temporales. Crystal Reports no lee la base
de datos nuevamente, sino que utiliza los datos guardados durante todo el procesamiento posterior.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
33
Pasada previa n 2
Durante la Pasada previa n 2, Crystal Reports ordena los grupos del informe para lograr un agrupamiento
jerrquico o N superiores/inferiores. Los registros no se leen en este proceso, en cambio Crystal Reports slo ve
las instancias de grupo de la Pasada 1 y toma los N superiores como apropiados, o bien ordena los grupos segn
la configuracin especificada de agrupamiento jerrquico.
Pasada n 2
Crystal Reports realiza la segunda pasada por los datos para dar formato a las pginas. A las pginas se les da
formato a la orden. Esto significa que Crystal Reports no dar formato a una pgina hasta que el usuario lo
indique o hasta que lo requiera el recuento total de pginas en la Pasada n 3. Durante el proceso de dar formato
a las pginas, Crystal Reports realiza lo siguiente:
Frmulas de seleccin de grupos.
Totales acumulados.
Clculo de frmulas marcadas como WhilePrinting Records. Estas frmulas contienen referencias a
los subtotales o a la informacin de resumen, tambin conocidas como frmulas PrintTime. Este
tiempo de evaluacin se conoce como WhilePrinting Records.
Tablas cruzadas, grficos y mapas. Las tablas cruzadas, los grficos y los mapas que incluyen totales
acumulados o frmulas PrintTime, y los grficos que estn basados en tablas cruzadas se generan en la
Pasada n 2.
cuadrculas OLAP.
Subinformes.
Generar pginas a la orden.
Nota: Puede que los subtotales, los totales generales y los resmenes parezcan incorrectos si el informe tiene
una frmula de seleccin de grupos. Esto ocurre porque los totales generales y los resmenes se calculan
durante la Pasada n 1, pero la frmula de seleccin de grupos vuelve a filtrar los datos en la Pasada n 2.
Los campos de totales acumulados se pueden utilizar en lugar de los resmenes para obtener el total de datos en
informes que contengan una frmula de seleccin de grupos.
Pasada n 3
En la tercera y ltima pasada, se determina el recuento total de pginas. Esto se aplica a los informes que
utilizan los campos especiales de nmero total de pginas o Pgina N de M.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
34
Nota: Aunque los subinformes aparecen en la Pasada n 2 en el diagrama de flujo, se pueden usar subinformes
bajo demanda para asegurarse de que el informe principal sigue siendo un informe de una sola pasada. Con los
subinformes a la orden, Crystal Reports todava tiene que hacer una segunda pasada sobre los datos; sin
embargo, esta segunda pasada no empezar hasta que usted profundice en el subinforme. En consecuencia,
puede aumentar el rendimiento de los informes que contienen subinformes mediante el uso de subinformes a la
orden.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
35
ODBC
Microsoft diseo un mtodo de comunicacin llamado ODBC para conectar una PC cualquiera a algn Server
de datos especfico. Cualquier base de datos que provea un ODBC para Microsoft puede ser reporteada por
Crystal. Al instalar Crytal se instalan lso drivers de ODBC mas comunes del mercado.
A traves del Data Explorer podemos elegir el driver con el cual nos queremos comunicar con la base y luego
nos logeamos. Al logearse aparecern las Tablas, Stored Procedures, Vistas, con las cuales podemos desarrollar
un reporte. Hay una opcin en File/Options que permite seleccionar que queremos ver al conectarnos a una
base.
Una vez logeados al servidor, permanecemos conectados aunque cerremos el reporte.
Para deslogearse hay que cerrar la conexin a travs de la opcin Database/Log On/Off Server... del menu de
Crystal Report.
36
Linkeando Tablas
Cuando se construye un reporte con ms de una tabla, Crystal abre una venta llamada Visual Linking Expert y
automticamente linkea los campos de las tablas que tengan los nombres iguales (Desde File/Options se puede
deshabilitar esta opcin y evitar el linkeo automtico).
Linkear consiste en elegir un campo de una tabla y relacionarlo con otra, permitiendo a la segunda tabla seguir a
la principal a medida que los registros son ledos uno por uno.
Para linkear manualmente hay que elegir un campo desdeuna tabla y arrastrarlos y soltarlo Hacia otra
campo de otra tabla, obviamente debern coincidir ambos campos en el tipo de dato. Desde se identifica con
un bloque y Hacia con una flecha.
Si se requiere agregar una tabla ya existente, Crystal esto lo premite, pero hay que asignarle un alias.
Es muy fcil crear un link que no devuelva errores pero que cuando se calcule el Reporte, este devuelva un
resultado incorrecto.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
37
string. O si, se usan tablas de diferentes tipos de base de datos, aparecer un mensaje indicando que el reporte
esta usando mas de un driver y hay veces que el reporte no funciona bien.
Tipos de Join
Cuando se linkean dos tablas, se debe considerar los registros que van a devolver. A continuacin se describe un
ejemplo como para entender mejor cada caso:
Nombre de Empleado
Karen
Renee
John
Carl
Denise
Numero de Departamento
8
13
17
4
25
Numero de Departamento
17
25
8
13
32
Salario
32500
37500
85000
24000
125000
Nombre de Departamento
Executive
Mail Room
Human Resources
Finance
Information technology
Existen dos inconsistencias. Por un lado, Denise no tiene un registro en la tabla de Departamentos que coincida
con su numero de departamento, y el departamento de Finanzas no tiene ningn empleado asociado. Se dice que
entre estas dos tablas no hay integridad referencial.
Los DBO se tendran que encargar de asegurar la integridad referencial. Si esto no ocurre igualmente Crystal lo
puede tratar.
Supongamos que quiero hacer un listado de lo que cobra cada empleado agrupado por departamento, para ello,
primero debera linkear las tablas por el campo Numero de Departamento
Como existen varios tipos de Join el resultado del reporte puede ser diferente:
Equal Join: Tambin es conocido como inner join. Incluye los registros de las dos tablas solo cuando los
campos que se joinean coinciden en sus valores, con lo cual, el resultado del mismo sern 4 registros. Crystal
Reports por default utiliza este tipo de join.
Lefter Outer Join: Incluye todos los registros de la tabla de la izquierda, y solo los registros de la tabla de la
derecha que al joinear sean iguales a la tabla de la izquierda. En este caso, como resultado obtendremos 5
registros, pero el de Denise le faltar el nombre del Departamento.
Right Outer Join: Incluye todos los registros de la tabla de la derecha, y solo los registros de la tabla de la
izquierda que al joinear por un campo sean iguales a la tabla derecha. En esta caso, como resultado obtendremos
5 registros, pero el registro de Denise no ser devuelto, pero si el Departamento de Finanzas que no tiene
ningn empleado asociado.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
38
Se pueden modificar los Joins de las tablas solo para las SQL databases, para reportes sobre Pc-Style database
son por default lefter outer join aunque este seleccionada la opcin de equal join.
Sentencias SQL
Crystal Report provee de una herramienta, Crystal SQL Designer, para escribir sentencias SQL, se almacenan
como archivos .qry y despus se pueden utilizar para el desarrollo de los reportes.
La sintaxis de SQL cambia dependiendo la base y si la conexin es nativa o si usa ODBC. Esto permite copiar
Query armados con otras herramientas y reutilizarlos con Crystal. Lo que no se puede hacer obviamente son
Insert, Delete y Update.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
39
Agrupando en el Servidor
Otras de las ventajas que obtenemos al trabajar con SQL Database, es la posibilidad de agrupar en el Servidor y
que este se encargue de las sumarizaciones o de los subtotales.
Para ello, hay que habilitar la opcin en Database / Perform Grouping on Server y cumplir una serie de
requisitos:
a) Al menos debe haber un grupo en el reporte
b) La seccion Detail debe estar oculta, justamente para no mostrar informacin de detalle
c) En el Group Footer o Header solo hay que incluir las sumarizaciones y el campo del grupo, si se incluye
algn campo o frmula el servidor le debe mandar todos los registros.
d) No se puede agrupar en base a frmulas. Para eso usar expresiones SQL
e) Si hay Running Total deben estar basados en campos sumarizados y nunca en detail fields.
f) El reporte no puede contener sumarizaciones de tipo Average o Distinct Count, ni Top/Botton N, ya que
SQL no las soporta.
g) El orden de los grupos debe ser ascendente o descendente. No se puede especificar el orden.
h) Si se agrupa por campos fecha, se debe hacer el grupo por cada dia, y si es por tiempo se debe agrupara
por cada segundo.
Consideraciones de Performance
Como regla general de Reporting, hay que tratar que el servidor sea el encargado de filtrar la informacin, y si
es posible de agruparla, ya que es mas veloz.
Para verificar que esta calculando el servidor y que esta calculando Crystal Reports, hay que observar cual es el
Query generado por Crystal que se enva al Servidor, para ello ir a Database/Show SQL Query.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
40
Si primero instal Crystal Reports 10 en un equipo, no podr instalar Crystal Reports 9 o 9.2 en el
mismo equipo en instalaciones compartidas. Instale primero Crystal Reports 9.x para ejecutar ambas
versiones compartidas.
Antes de ejecutar los paquetes de instalacin para la creacin de informes de Java, compruebe que tiene
instalado Java Runtime Environment (JRE).
La instalacin de los controladores de la base de datos a peticin no funciona con informes basados en
vistas empresariales.
VCL de Delphi para Crystal Reports slo est disponible en el sitio Web Zona de desarrolladores de
Crystal Decisions.
Si instala Crystal Reports 10 en el mismo equipo que Web Component Server (WCS) de Crystal
Enterprise 9, el escritorio Web de Crystal Enterprise que se est ejecutando en este WCS se detendr.
Tendr el mismo problema cuando instale Crystal Reports 9 en el mismo equipo que WCS de Crystal
Enterprise 10.
Una vez que haya desinstalado Crystal Reports 10, aparecer una ficha de "Crystal Reports" en el cuadro
de herramientas de Visual Studio .NET. Puede quitar esta ficha con seguridad.
Puede que el componente de Crystal Reports para .NET no funcione correctamente despus de
desinstalar Crystal Reports 10 de Visual Studio .NET. Para restablecer la funcionalidad, ejecute la
funcin de reparacin en la instalacin de .NET.
Si instala Crystal Reports 10 y ejecuta de nuevo la instalacin de Visual Studio .NET 2002/2003 (VS
.NET 2002/2003) activando la opcin "Crystal Reports para Visual Studio .NET", se producirn
problemas. En el cuadro de herramientas, aparecern los controles tanto de Crystal Reports 10 como de
VS .NET 2002/2003, pero VS .NET 2002/2003 controlar la generacin de cdigo, la publicacin como
servicio Web, etc. Para que Crystal Reports 10 recupere el control de IDE, tendr que volver a ejecutar
la instalacin de CR10 en modo de reparacin. Para actualizarse correctamente a VS .NET 2002/2003
sin Crystal Reports 10, desinstale CR10 y vuelva a ejecutar la instalacin de VS .NET 2002/2003 en
modo de reparacin.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
41
Actualizacin
En esta versin, no se admite la creacin de informes basada en conexiones usando conjuntos de datos
con parmetros SByte (como ADOPlus).
La versin 10 de RAS COM SDK no admite la creacin de un informe basado en un Objeto de datos
Crystal (CDO).
Una nueva utilidad, el Asistente de migracin del repositorio (CrystalRepoWiz.exe), se instalar como
parte de Crystal Enterprise 10. Esta herramienta se instala en el Administrador de vistas empresariales y
se utiliza para migrar el contenido del repositorio de la versin 9 al nuevo formato de la versin 10.
Podr ejecutarla desde el directorio win32_x86, o seleccionar el Asistente para migracin de Crystal
Repository desde el men del programa de Crystal Enterprise 10.
Los grficos de embudo son una nueva funcin de Crystal Reports 10. Si crea un informe en Crystal
Report 10 que incluya un grfico de embudo, puede que no sea posible abrirlo en Crystal Reports 9. Para
solucionar este problema, abra el informe en Crystal Reports 10 y cambie el formato por uno que Crystal
Reports 9 pueda reconocer.
Dado que las vistas empresariales son una nueva funcin de la versin 10, los informes basados en estas
vistas no se pueden abrir con versiones anteriores de Crystal Reports.
En esta nueva versin de Crystal Reports se han agregado nuevos campos especiales. Para su referencia,
estos nuevos campos corresponden con los siguientes campos de la versin 9:
Crystal Reports 10 puede gestionar ciertos tipos de datos de manera diferente en la versin 8.5 o
anteriores. Para garantizar que es compatible con versiones anteriores, la versin 10 gestiona los tipos de
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
42
datos de los informes creados en la versin 8.5 y anteriores de la misma manera que se gestionaban los
tipos en estas versiones.
Como resultado, si cambia la ubicacin de la base de datos de un informe creado en Crystal Reports 8.5
o anterior (usando la opcin de men Establecer ubicacin de base de datos) y los tipos de campos de la
base de datos de la nueva ubicacin se gestionan de forma diferente en la versin 10 y en la versin 8.5,
Crystal Reports 10 gestionar los tipos de datos igual que en la versin 8.5 o anteriores. Entre los
ejemplos de tipos de datos que se gestionan de forma diferente en la versin 10 y en la versin 8.5 se
incluyen:
En la versin 8.5 y anteriores, el tipo entero nativo de Oracle algunas veces se trataba como
doble mientras que en la versin 10 siempre se trata un tipo nativo de Oracle como doble.
En la versin 8.5 y anteriores, el tipo de moneda de Access ODBC se trataba como decimal
mientras que en la versin 10 se trata el tipo de moneda de Access ODBC como moneda.
Notas y limitaciones
Aunque Crystal Reports 10 sea compatible con los valores de parmetros de 64K, no admite las
descripciones de 64K para campos de parmetro.
La opcin de formato Superposicin (situada en la ficha General del cuadro de dilogo Opciones de
grficos) slo est disponible para grficos de barras y columnas.
El carcter '}' es un carcter especial y no se debe utilizar en nombres de bases de datos, frmulas o
campos de parmetro.
Algunas partes de los identificadores de hipervnculos (especialmente, dobles barras diagonales) de las
frmulas de contexto de datos aparecen como texto comentado en el Taller de frmulas.
Cuando utilice un informe OLAP, si el informe contiene parmetros de fila o columna, se deshabilitar
el acceso a la hoja de clculo para evitar que se introduzca en el informe cualquier inconsistencia. Como
resultado, no podr acceder a la hoja de clculo cuando trabaje con un informe OLAP que contenga
cualquier parmetro de fila o columna.
Crystal Repository no est disponible (y no es compatible) con la edicin Standard de Crystal Reports
10 porque Crystal Enterprise no est incluido en dicha versin.
Dado que el cuadro de dilogo Opciones recuerda automticamente la ltima carpeta utilizada, la opcin
Directorio del informe se ha eliminado del cuadro de dilogo Opciones.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
43
Cuando cambia un parmetro de conexin de datos dinmica, debe llamar a VerifyDatabase antes de
cambiar el parmetro. Error al llamar a VerifyDatabase antes de cambiar los resultados del parmetro en
los datos examinados incorrectos.
Las expresiones SQL pueden acceder a los datos de una columna restringida. Cuando restrinja una
columna, actualice tambin cualquier expresin SQL que acceda a los datos de una columna restringida
para asegurarse de que no se muestran estos datos.
En el Asistente del repositorio, al copiar un grupo de objetos/archivos relacionados de una carpeta a otra
(por ejemplo, de la carpeta original a una nueva carpeta), los nuevos objetos/archivos de la nueva
carpeta todava sealan a los objetos/archivos originales de la carpeta original. Como resultado, los
cambios de un archivo/objeto de la nueva carpeta no afectan a otros archivos u objetos de dicha carpeta.
Por ejemplo, si copia una infraestructura de datos, conexin de datos, elemento empresarial y vista
empresarial de la carpeta original a la nueva carpeta, la nueva copia de la vista empresarial seguir
sealando a la infraestructura de datos, conexin de datos y elemento empresarial de la carpeta original.
Como solucin, exporte los archivos a XML.
Cuando trabaje con un informe que contenga conexiones de base de datos dinmicas, los datos del
informe no se actualizan cuando se cambia de una conexin de base de datos a otra.
Debido a problemas con caracteres internacionales, nicamente podr ver los informes realizados con
Safari 1.0 en ingls.
El registro diagnstico crea informes incorrectamente en la versin 5 y la versin 6 crea informes como
la versin 10.2.
En Crystal Reports 8 y 9, puede incrustar las etiquetas de secuencias y otras etiquetas HTML en sus
informes para permitir la creacin de elementos DHTML en el resultado del visor DHTML. Para
mejorar la seguridad, el comportamiento predeterminado de Crystal Reports 10 es convertir el texto
seguro a HTML. Bajo su responsabilidad, puede activar una clave de registro para el comportamiento
incrustado de HTML. Consulte el artculo de la siguiente pgina Web http://www.netsecurity.org/article.php?id=596 para comprender las implicaciones de no codificar el resultado HTML
de Crystal Reports.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
44
Para que la nueva funcin de creacin de informes asimtrica funcione correctamente con grficos y
mapas, se ha agregado una nueva funcin llamada "Diagrama (o mapa) fuera de cuadrcula completa" en
varias ubicaciones de Crystal Reports. Esta funcin no aparece documentada en la Ayuda en pantalla. Si
no selecciona esta opcin, los grficos y mapas nicamente proporcionan un conjunto de filas de una
nica dimensin en cada eje de fila/columna. Por lo tanto, el grfico o mapa no heredar los filtros
asimtricos aplicados en el punto de vista de la cuadrcula.
Es posible que el visor DHTML Java muestre diagramas y mapas como imgenes EMF (formato de
metarchivo) o como imgenes de mapa de bits.
En las siguientes situaciones se mostrarn imgenes EMF:
1. Cuando el visor se ejecuta en un sistema Windows.
2. Cuando el visor se ejecuta en un sistema UNIX con interfaz.
3. El visor se ejecuta en un sistema UNIX sin interfaz en el que est instalado el JDK 1.4 y en el
que el valor de la propiedad del sistema java.awt.headless es TRUE.
En las siguientes situaciones se mostrarn imgenes de mapa de bits:
4. El visor se ejecuta en un sistema UNIX sin interfaz con la versin JDK 1.3 o anterior.
5. El visor se ejecuta en un sistema UNIX sin interfaz en el que est instalado el JDK 1.4 y en el
que el valor de la propiedad del sistema java.awt.headless no est establecido.
6. El visor se ejecuta en un sistema UNIX sin interfaz en el que est instalado el JDK 1.4 y en el
que el valor de la propiedad del sistema java.awt.headless es FALSE.
En lo que respecta a esta nota, se define "sistema UNIX sin interfaz" como un sistema en el que
no est establecida la variable de entorno DISPLAY. Al contrario, un "sistema UNIX con
interfaz" es aquel sistema en el que la variable de entorno DISPLAY est establecida y en el que
est instalado un sistema X. Puede establecer la propiedad del sistema java.awt.headless si aade
la lnea -Djava.awt.headless="true" a la secuencia de comandos de inicio del servidor de
aplicaciones Web. Si la propiedad java.awt.headless se establece directamente en la pgina JSP
se pueden obtener resultados inesperados.
Para actualizar los objetos de comando de Crystal Repository en un entorno de Crystal Enterprise,
asegrese de que las opciones "Comprobar en la primera actualizacin" y "Comprobar procedimiento
almacenado en la primera actualizacin" estn activadas en el informe original. (Haga clic en Opciones
de informe en el men Archivo de Crystal Reports.)
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
45
Impresin y exportacin
Cuando exporta un informe a formato de Microsoft Excel (slo datos), las columnas de la hoja de
clculo no se ajustan automticamente segn el campo seleccionado en la opcin "Ancho de columna
basado en los objetos". Para que las columnas de la hoja de clculo se ajusten automticamente, debe
activar la opcin Mantener la posicin relativa del objeto.
En la versin anterior de Crystal Reports, la exportacin a formato CSV no anidaba los campos en los
contextos de grupo correctamente. En esta versin, cuando exporta a formato CSV, los campos del rea
de detalles se exportan con los campos de los encabezados de grupo que lo preceden y los pies de pgina
del grupo que lo suceden, en un mismo registro.
Cuando exporta un informe OLAP a formato Excel de la versin 9 o anterior, se le pedir que se conecte
al origen de datos OLAP incluso cuando el informe contiene datos guardados.
Internet Explorer no procesa correctamente el texto justificado despus de exportar un informe a formato
HTML. Este es un problema conocido de Internet Explorer.
Cuando exporta un informe a DHTML como pgina nica, los problemas de algunos exploradores
pueden dar lugar a errores de formato. Como solucin, realice la exportacin a DHTML en pginas
separadas.
Cuando se exporta a Word o a cualquier formato de Microsoft Office y se cumplen todas las
condiciones, puede que la exportacin no muestre algunos datos, porque Microsoft Word o Office
intentar editarlo a travs de las Extensiones de FrontPage. Este comportamiento se puede evitar
desactivando la creacin Web en el servidor.
Condiciones:
1. La aplicacin Web de Windows 2003 Server debe tener activada la Autenticacin de Windows
integrada.
2. El usuario est conectado al equipo cliente como usuario con derechos de creacin en el equipo
del servidor Web.
3. El explorador del cliente tiene la seguridad de Windows integrada activada.
4. El equipo cliente tiene instalado Word o la aplicacin de MS Office.
Acceso a datos
Hay nuevos controladores de base de datos en desarrollo para utilizarlos con los productos de la versin
10 de Crystal en Windows y UNIX. Consulte este vnculo para obtener la disponibilidad:
http://www.crystaldecisions.com/ipl/default.asp?destination=updatedfeatures&language=ES&product=c
rystalenterprise&version=10
46
productos de Crystal en Windows y UNIX. Consulte este vnculo para obtener la disponibilidad:
http://www.crystaldecisions.com/ipl/default.asp?destination=updatedfeatures&language=ES&product=c
rystalenterprise&version=10
En la barra de herramientas del Explorador de datos de la ventana Asistente de base de datos, una de las
opciones mostradas es Crear nueva conexin. Cuando se expande, proporciona nuevas opciones de
conexin (por ejemplo, ODBC).
Cuando utilice procedimientos almacenados con un controlador ODBC de Sybase, si el nombre del
procedimiento tiene un signo de subrayado ( _ ), el controlador devuelve datatype = null. Como
solucin, asegrese de que los nombres de procedimiento no contienen caracteres de subrayado.
Puede cambiar el origen de datos de muchos informes a la vez cambiando el DSN del sistema ODBC,
pero Crystal Enterprise 10 gestiona esto de forma diferente con respecto a versiones anteriores. En el
cuadro de dilogo Establecer ubicacin, edite la nueva propiedad de tabla
OverriddenQualifiedTableName. Cuando cargue un informe, si est basado en ODBC y tiene formato
CR 8.5 (o anterior), se crea la propiedad de conexin useDSNProperties y se establece como True. Los
nuevos informes creados en la versin 10 establecern esta propiedad como false de forma
predeterminada. (Este propiedad se guardar con el informe.) Cuando esta propiedad se establece como
True, ODBC utiliza SQLConnect en lugar de SQLDriverConnect. Puede cambiar la propiedad
useDSNProperties en el cuadro de dilogo Establecer ubicacin.
Nota: No puede cambiar el DSN del sistema ODBC si el nombre de la base de datos o nombre
propietario contiene caracteres especiales. Puede encontrar problemas con antiguos controladores y con
el cambio de los nombres de sus procedimientos almacenados.
Los datos devueltos por la consulta de la base de datos que contienen caracteres adicionales (como "
hello ") se truncan para excluir espacios adicionales (" hello " se convierte en "hello"). Como resultado,
las consultas de la base de datos que dependen de estos espacios adicionales devuelven datos
inesperados. Utilice una de las siguientes soluciones:
1. Utilice la funcin Trim(). (donde Trim(lookupField)="hello")
2. Utilice caracteres comodn en la consulta. (donde lookupField="*hello*")
Se pueden producir errores al establecer la ubicacin del origen de datos para trabajar con un informe
basado en una vista empresarial con ms de una tabla (guardando el informe como un informe sin
conexin).
Cuando cree un informe de una vista empresarial, si no puede buscar datos si la vista empresarial
contiene restriccin de fila, agregue un campo al informe y, a continuacin, actualice el informe antes de
buscar datos.
Cuando trabaje con un informe basado en una vista empresarial, si necesita cambiar el parmetro del
repositorio o metadatos, debe establecer el parmetro del repositorio y metadatos antes de obtener los
datos. Si obtiene los datos y, a continuacin, cambia el parmetro del repositorio o metadatos, se seguir
utilizando el objeto del antiguo repositorio.
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
47
Cuando se realiza una consulta a una base de datos de Lotus Notes con una consulta que contiene
combinaciones externas anidadas, se generar el siguiente error: "Error al abrir conjunto de filas". Este
error es debido a que el controlador ODBC de Lotus Notes no admite combinaciones externas anidadas.
Cuando cree un vnculo de combinacin externa izquierda en campos de enunciados SQL con tres o ms
tablas de diferentes orgenes de datos, si no hay coincidencia en el primer registro del vnculo, se
devolver una cadena igual a cero o una cadena vaca despus de este vnculo.
Por ejemplo, si hay un vnculo de 4 tablas: A->>>, donde cada tabla es de un origen de datos diferente y
todos los vnculos son combinaciones externas izquierdas del campo del enunciado SQL de cada tabla.
Si no hay coincidencia en el primer registro entre el vnculo A y B, la tabla C y D devolver una cadena
igual a cero o una cadena vaca en el informe.
Cuando cree un informe usando codificacin Unicode (UTF-8) y caracteres japoneses, el controlador
DB2 informar del error al agregar tablas.
Cuando utilice un vnculo inteligente con el controlador ODBC de Oracle, no aparecer un ndice
basado en una expresin porque el controlador ODBC de Oracle no devuelve ndices de expresiones;
como resultado, el ndice no tendr vnculo inteligente.
Cuando utilice el vnculo inteligente con el controlador nativo de Oracle, no aparecer el ndice basado
en una expresin compleja; como resultado, el ndice no tendr vnculo inteligente. Sin embargo, para
los ndices de expresin que son campos de tabla en orden descendente, el vnculo inteligente por clave
se comportar como se esperaba.
Cuando se conecte a una base de datos Sybase usando el controlador nativo de Sybase
(crdb_p2ssyb10.dll), se generar un error si se ejecuta ms de una instruccin SQL en la misma
conexin de base de datos en el mismo momento. El error se genera porque el controlador nativo de
Sybase no puede gestionar varios procedimientos almacenados en la misma conexin. Como solucin,
utilice un controlador ODBC en lugar de un controlador de Sybase.
Crystal Reports 10 no puede abrir informes basados en Infoviews. Si abre un informe basado en
Infoview en Crystal Reports 10, el informe parecer que se abre correctamente pero no se aplicar la
seguridad correcta. Si la funcin Infoview se utiliza para datos importantes seguros, se recomienda que
limite el acceso o distribucin de dichos informes. Consulte la documentacin de vistas empresariales
para obtener ms informacin sobre nuevas funciones mejoradas de seguridad de datos en Crystal
Enterprise y Crystal Reports 10.
Puede que a veces la direccin de la combinacin no se pueda cambiar (por ejemplo: combinacin
externa izquierda). En algunos escenarios de vinculacin, esto significa que no se podr realizar una
consulta. En este caso, el usuario tendr que cambiar el orden de vinculacin. Se generar el siguiente
error: "Error al abrir conjunto de filas. Error de motor de consulta: No se puede realizar la consulta. Se
detect un ciclo de vnculo ilegal."
=RQD&U\VWDOFRP
&U\VWDO5HSRUWV0DQXDO$YDQ]DGR
48