El siguiente documento establece el estándar de diseño de reportes desarrollados en la herramienta Jasper Studio, para el Área de Planificación Institucional (PPI) de la Universidad Nacional en su versión 1.0.0.
1. Nombre del reporte:
Para establecer el nombre de un reporte, se debe seguir la siguiente nomenclatura y condiciones:
El nombre del reporte debe estar escrito en letras mayúsculas y sin espacios.
La separación de sus componentes debe ser mediante un guión medio (-).
PPI: Establece que el reporte pertenece al «Área de Planificación Institucional».
Ejemplo: R-PPI.
DIMINUTIVOMODULO: representa las sigas del módulo de PPI, al que pertenece el reporte, a saber:
PPE: Planificación Estratégica.
PPO: Planificación Operativa.
IIP: Información e Indicadores de la Planificación.
MCG: Mejoramiento Contínuo de la Gestión.
Ejemplo:
R-PPI-MCG-
SUB:
Este parámetro es opcional y solo debe ser aplicado cuando lo que se esta desarrollando es un subreporte.
Ejemplo:
R-PPI-MCG-SUB-
NOMBREREPORTE:
Debe hacer referencia a la información que esta siendo obtenida dentro del reporte.
Ejemplo: si el reporte obtiene información de los «Planes Operativos», su nombre debería ser: «R-PPI-PPO-PLANOPERATIVO»
Se debe trabajar de ser posible con palabras en singular.
Ejemplo: si la información del reporte es sobre «Evaluaciones operativas», su nombre debería ser: «R-PPI-PPO-EVALUACIONOPERATIVA».
Si el nombre del reporte esta compuesto de varias palabras, estas deben estar concatenadas en una sola palabra, sin espacios, ni guiones.
Ejemplo: si la información del reporte es sobre el «Historial de Modificaciones POA», su nombre dedería ser: «R-PPI-PPO-HISTORIALMODIFICACIONPOA».
Cuando se esta diseñando un subreporte de tamaño variable que va a retornar un valor, este valor debe ser indicado en el nombre del reporte.
Ejemplo: Si se esta diseñando un subreporte que retorna el nombre de un periodo anual, su nombre debería ser: «R-PPI-PPO-SUB-PERIODOANUALNOMBRE-VARIABLE».
VARIABLE:
Este parámetro es opcional y solo debe ser utilizado cuano el reporte que se esta diseñando es un reporte de tipo «Tamaño Variable», se debe representar con la palabra «VARIABLE» para indicarlo.
Normalmente esta condición solo se aplica para subreportes.
Ejemplo: si estamos creando un subreporte de tamaño variable que obtiene el nombre del «Periodo Anual», su nombre debería ser: «R-PPI-PPO-SUB-PERIODOANUALNOMBRE-VARIABLE».
2. Configuración de reporte
En esta seción se explica los pasos necesarios para la configuración del reporte.
2.1. Nombre y descripción del reporte
Para establecer el nombre y descripción del reporte, lo primero que se debe hacer es marcar el nombre del reporte.
Esto nos abre las propiedades del reporte donde le podemos establecer su nombre y descripción
De modo de ejemplo se utilizará la siguiente información
Nombre: R-PPI-MCG-AVANCEPRIORIDADOBJETIVO.
Descripción: Reporte de Grado de Avance de las Prioridades / Objetivos Estratégicos.
2.2. Formato de Página
El siguiente aspecto a configurar es el formato de la paǵina.
Para esto debemos ingresar a la configuración del reporte a la sección «Page Format»
Esto nos abre una ventana donde debemos verificar la siguiente configuración:
Format: LETTER
Width: 792px
Height: 612px
Page Orientation: LandScape
Margins: 20px
Column Width: 752px
3. Configuración de Jasper Studio para Excel
Por defecto Jasper Studio cuando exporta a excel lo hace con un fondo de color blanco.
Para quitar esta opción debemos ingresar a:
Menú-> Window->Preferences
Esto nos abre una ventana de preferencias donde debemos, navegar a la opción de «Exporters->Excel Exporter» y desmarcar la opción de «White Page Background».
Ademas cuando se exporta a excel puede ocurrir que deje espacios en blanco cuando hay un salto de línea, para evitar esto debemos marcar las opciones de:
Remove Empty Space Between Rows
Remove Empty Space Between Columns
4. Definición de sección «Title»
Esta sección debe estar compuesta de campos de tipo «Static Text»:
Y deben contener la siguiente información:
Nombre de Universidad: «Universidad Nacional».
Nombre del Área: «Área de planificación».
Nombre del reporte: «Nombre descriptivo del reporte».
Etapa y Periodo: «Nombre de la etapa de planificación y año de ejecución». Esta información puede ser opcional para casos donde no aplica.
Cada uno de estos textos debe cumplir con el siguiente estándar:
Apariencia:
Position Type: Fix Relative To Top
Size: w: 752px y h: 15px
Strech Type: No Strech
NOTA: Esto hace que cada elemento contenga el ancho total de la página y cuando sea exportado a excel, genere una fila completa.
Borders:
Los bordes deben estar configurados por defecto en 0 (cero).
Static Text:
Text:
Universidad Nacional.
Área de Planificación.
Título del reporte.
Etapa de Planificación.
Alineamiento:
Horizontal: Centrado.
Vertical: Centrado.
Fuente:
DejaVu Sans.
12 px.
Negrita.
4.1. Título «Etapa Planificación»
El título del nombre de la «Etapa de Planificación» es opcional y solo debe ser aplicado cuando la información del reporte pertenezca a una Etapa de Planificación.
Esta sección requiere la utilización de dos subreportes variables y un elemento Text Field para desplegar la información necesaria.
Los subreportes son:
R-PPI-PPO-SUB-ETAPAPLANNOMBRE-VARIABLE.jasper: este subreporte existente dentro de PPI-PPO recibe el Id de la Etapa y retorna el nombre de la etapa.
R-PPI-PPO-SUB-PERIODOANUALNOMBRE-VARIABLE.jasper: este subreporte existente dentro de PPI-PPO recibe el Id del periodo Anual y retorna el año del periodo.
4.1.1. Configuración de los subreportes de Etapa Plan y Periodo Anual:
Los dos subreportes debe contener la siguiente configuración:
Apariencia:
Location: (al tener la misma ubicación se ubicaran uno encima del otro)
Para que estos subreportes puedan funcionar requieren tener como parámetro (Parameter) o campo (Field de la consulta) los valores de la «etapaPlan» y «periodoAnual».
De modo de ejemplo estos valores serán creados como parámetros.
Y debe ser configurados de la siguiente manera:
etapaPlan:
Name: etapaPlan
Class: java.lang.Long
periodoAnual:
Name: periodoAnual
Class: java.lang.Long
Tendiendo el parámetro configurado, debemos indicarle al reporte principal que debe enviarle el id de la «etapaPlan» y «periodoAnual» al subreporte respectivo.
Para esto seleccionamos cada subreporte y vamos a la sección de «Subreport» y ubicamos el botón de «Edit Parameters».
Esto nos abre una ventana donde vamos aplicar la siguiente configuración.
Con esto se ha configurado para que reporte principal envie el parametro que recibió al subreporte.
Ahora con esto debemos configurar que vamos hacer en nuestro reporte con el valor que nos retorna el subreporte, en este caso el nombre de la «etapaPlan» o «periodoAnual».
Para esto debemos crear dos variables:
Variable de «etapaPlan»:
Name: etapaPlan_nombre
Value Class Name: java.lang.String
Calculation: System
Variable de «periodoAnual»:
Name: peridoAnual_nombre
Value Class Name: java.lang.String
Calculation: System
Con esto tenedremos las variables para recibir el nombre de la «etapaPlan» y «periodoAnual».
Ahora debemos indicarle a reporte que el valor de retorno del subreporte sea almacenado en dichas variables.
Para esto seleccionamos el subreporte respectivo y nos ubicamos en la sección «Subreport», en el botón «Edit Return Values»
Esto nos abre una ventana donde debemos darle agregar y configurar la siguiente información:
«etapaPlan»:
From Variable: etapaPlan_nombre (Variable del Subreporte)
To Variable: etapaPlan_nombre (variable del reporte principal)
Calculation Type: No Calculation Function
«periodoAnual»:
From Variable: periodoAnual_nombre (Variable del Subreporte)
To Variable: periodoAnual_nombre (variable del reporte principal)
Calculation Type: No Calculation Function
4.1.2. Configuración del título «Etapa Planificación»
Configuración:
Tipo de elemento: «Text Field»
Apariencia:
Location: (esta posición lo ubica encima de los subreportes)
Ahora es necesario indicar la altura de la sección de «Title».
Si el reporte contiene los 4 títulos debe tener una altura de 60px ya que contamos con 4 título de 15px cada uno.
Si el reporte solo tiene los 3 títulos principales debe tener una altura 45px.
5. Configuración de sección Page Header
En esta sección se debe configurar el valor de cualquier parámetro pasado al reporte que no sean etapaPlan o periodoAnual.
Y además debe contar con una sección que muestre la fecha en que se generó el reporte y una sección de páginación.
5.1. Configuración de fecha:
El campo de la fecha debe contener la siguiente configuración:
Apariencia:
Tipo de elemento: Text Field
Location:
X: 0px
Y: 0 px
Position Type: Fix Relative To Top
Size:
W: 140px
H: 15px
Strech Type: No Strech
Text Field:
Expresión: new java.util.Date()
Evaluation Time: Now
Text Adjust: CutText
Pattern: dd/MM/yyyy
Text Alignment:
Horizontal: Izquierda
Vertical: centrado
Font:
DejaVu Sans
8 px
5.2. Configuración de Páginación:
Para configuración de la páginación vamos a utilizar 2 campos TextField.
El primero muestra el número de página actual.
Y el segundo la cantidad total de páginas.
5.2.1. Página actual
Para configurar la la sección de página actual lo hacemos con la siguiente configuración:
Tipo de Elemento: TextField
Apariencia:
Location:
X: 140 px
Y: 0 px
Position Type: Fix Relative To Top
Size:
W: 576 px
H: 15 px
Strech Type: No Stretch
Text Field:
Expression: «Página «+$V{PAGE_NUMBER}+» de»
Evaluation Time: Now
Text Adjust: CutText
Text Aligment:
Horizontal: derecha
Vertical: centrado
Font:
DejaVu Sans
Size: 8 px
5.2.2. Totalidad de páginas
Para configurar la totalidad de páginas aplicamos la siguiente configuración:
Tipo de campo: TextFiled
Apariencia:
Location:
X: 716 px
Y: 0 px
Size:
W: 36 px
H: 15px
Stretch Type: No Stretch
Text Field:
Expression: » «+$V{PAGE_NUMBER}
Evaluation Time: Report
Text Adjust: CutText
Text Aligment:
Horizontal: izquierda
Vertical: centrado
Font:
DejaVu Sans
Size: 8 px
5.3. Configuración de Parámetros:
Luego de configurar la fecha y páginación en la sección de «Page Header», en esta sección se debe configurar cualquier parámetro adicional «etapaPlan» o «periodoAnual» que sea enviado al reporte.
Y estos deben cumplir el siguiente estándar:
5.3.1. Título del parámetro
Tipo de elemento: Static Text
Formato del texto:
El texto debe establecerse con la primera letra de cada palabra en mayúscula y el resto en letras minúsculas y finalizada con dos puntos (:).
Ejemplo:
Apariencia:
Position Type: Fix Relative To Top
Size ( NOTA: se recomienda que sea del mismo tamaño que la fecha (140 px) pero puede variar dependiendo del contenido del texto, de igual forma se puede modificar el tamaño de la fecha para que tengan la misma medida):
W: 140 px
H: 15 px
Strech Type: No Stretch
Static Text:
Text: nombre del parámetro
Alineación:
Horizontal: izquierda
Vertical: centrado
Fuente:
DejaVu Sans
Size: 8 px
Negrita
5.3.2. Valor del parámetro
Para obtener el valor del parámetro se recomienda encarecidamente se utilice un subreporte de tamaño variable, siguiendo la lógica de agregación de subreportes variables explicados anteriormente.
Además de esto se debe configurar el tamaño de la sección para que consuma el ancho disponible.
Este debe contener la siguiente configuración:
Tipo de Elemento: Text Field
Apariencia:
Position Type: Fix Relative To Top
Size:
H: 15 px
Stretch Type: No Stretch
TextField:
Expresion: Debe contener el valor de la variable. Ejemplo: $V{unidadIntegradora_codigo_nombre}
Evaluation Time: Band
Text Adjust: StretchHeight
Alineación:
Horizontal: izquierda
Vertical: centrado
Font:
DejaVu Sans
Size: 8px
5.3.3. Valor de parámetro de gran tamaño
Cuando el valor de retorno del subreporte puede ser de gran tamaño y no sea capaz de mostrarse en la configuración anterior de 15 px de altura, se debe aplicar la siguiente configuración.
Campo de título:
Tipo de Elemento: StaticText
Position Type: Fix Relative To Top
Stretch Type: ContainerHeight
6. Configuración de sección «Column Header»
En esta sección se deben configurar los títulos de los campos de la consulta
6.1. Títulos de columnas de consulta
Estos campos deben seguir el siguiente estándar:
Tipo de Elemento: Static Text
El texto debe establecerse con la primera letra de cada palabra en mayúscula y el resto en letras minúsculas.
NOTA: Este campo no debe finalizar con dos puntos (:)
Apariencia:
Position Type: Fix Relative To Top
Size:
W: 140 px (recomendado para primera columna, para que sea el mismo tamaño que la fecha, pero puede variar según la necesidad).
H: 15 px
Stretch Type: No Stretch
Borders:
Right: 5px
NOTA: esta configuración es necesaria para que exista siempre una separación entre las columnas.
Static Text:
Text: texto de la columna (el texto debe establecerse con la primera letra de cada palabra en mayúscula y el resto en letras minúsculas y no debe finzalizar con dos puntos)
Text Aligment:
Datos de Texto:
Horizontal: Cuando el valor que va a representar es un texto debe ser alineado horizontalmente a la izquierda.
Vertical: Centrado.
Datos Númericos:
Horizontal: Cuando el valor que va a representar es un número debe ser alineado horizontalmente a la derecha.
Vertical: Centrado.
Font:
DejaVu Sans
Size: 8 px
7. Configuración de sección «Detail»
En esta sección se deben configurar los campos de la consulta para que sean desplegados.