Los reportes son documentos de salida que resumen la información gestionada por los lanzamientos a partir de consultas realizadas a las principales colecciones de datos. La generación de reportes constituye el paso previo a la obtención de los documentos impresos del programa.
1. Archivos de Reporte
El motor de reportes de CORTE permite la creación de reportes completamente personalizados que pueden cargarse y mostrarse en cualquier momento en el entorno de CORTE. Para ello, las configuraciones de los reportes se guardan permanentemente en archivos de reporte (extensión RCO).
1.1 Logotipo personalizado
Puede configurar un logotipo personalizado y opcionalmente mostrarlo en el encabezamiento de cada página de un reporte en particular.
2. Registros y Campos
La información consultada en los reportes se almacena en registros que se asocian a uno o varios objetos relacionados con un origen de datos del lanzamiento. En general, los campos en los registros contienen las propiedades de dichos objetos. Para los reportes se definen, además, las propiedades especiales Obj y Calculado que permiten, respectivamente, acceder al objeto propietario del campo y definir campos calculados mediante código Prolan. La propiedad Calculado añade un campo adicional al registro recuperado sin asociarse con un objeto en particular. Los registros pueden ordenarse ascendente o descendentemente por el valor de uno o varios campos o agruparse para calcular totales parciales.
3. Vistas
Se definen dos tipos de vista para los reportes:
4. Secciones
Los reportes se definen en tres secciones bien diferenciadas:
El origen de datos de un reporte puede ser una de las colecciones Piezas, Materiales, Cintas, Grupos, Patrones o Ubicaciones del lanzamiento.
6. Relaciones
Los registros recuperados pueden mostrarse en uno o más niveles de profundidad en función de la relaciones existentes entre los objetos necesarios para acceder a un campo en particular. La relación entre dos objetos puede ser de tipo:
La figura siguiente describe las relaciones existentes entre los diferentes objetos del lanzamiento. Las relaciones de tipo master-detalle se indican con un * (asterisco).
Un truco sencillo para determinar si dos objetos mantienen una relación master-detalle es comprobar que el primero contenga una colección del segundo. Nótese que las relaciones anteriores son todas direccionales, es decir, para el motor de reportes solo son válidas en el sentido indicado por las flechas.
En el selector de objetos de la ficha Detalles del Editor de Reportes, muchas relaciones se describen de forma compacta indicando siempre el objeto final pero omitiendo el objeto inicial (obvio por el origen de datos) y algunos otros objetos intermedios. Por ejemplo, el objeto Corte.Polo.Segmento del origen de datos Patrones resume la relación:
Patrón.Corte.Ubicación.Polo.Pieza.Forma.Contorno.Segmento
que contiene 4 niveles de profundidad por las relaciones master-detalle Patrón.Corte, Ubicación.Polo, Forma.Contorno y Contorno.Segmento.
7. Selección de Registros
Puede restringir los registros seleccionados bien aplicando un filtro implícito a los objetos primarios del origen de datos o bien escribiendo código Prolan para el evento de selección.
7.1 Filtros implícitos
El motor de reportes aplica implícitamente los filtros siguientes:
En el origen de datos Patrones los filtros Consumidos y Activos son equivalentes.
8. Alias de Campos
Los nombres originales de los campos pueden aparecer repetidos ya que las propiedades que los originan, en general, se comparten entre diferentes objetos del lanzamiento. Los alias son identificadores que permiten referir los campos unívocamente en las expresiones Prolan del reporte usando la notación [<alias campo>]. Aunque el motor de reportes genera alias automáticamente, es aconsejable definirlos manualmente utilizando identificadores breves o nemotécnicos que expresen bien la función del campo en el reporte.
Ocurre con frecuencia que la información que se desea mostrar en el reporte no puede obtenerse directamente de las propiedades de los objetos sino como resultado de procesar los datos contenidos en ellas. Los campos calculados es el mecanismo que permite generar tal tipo de información.
Para calcular campos debe asociar código Prolan a los detalles correspondientes. Las etiquetas de la sección Resumen también pueden calcularse introduciendo código Prolan en lugar de textos simples. Tanto los campos como las etiquetas tomarán el valor retornado por los programas Prolan asociados.
Véase Prolan para Reportes más adelante en este capítulo.
10. Agrupación
La agrupación de campos provoca que el total de registros recuperados se divida en subconjuntos o categorías caracterizadas por claves únicas que definen conjuntamente los valores de todos los campos en agrupación.
Cuando hay agrupación, se selecciona solamente el primer registro en cada una de las categorías y el resto de los campos no agrupados puede utilizarse para calcular resumenes parciales mediante las llamadas funciones de agregado o dominio. El motor de reportes implementa internamente funciones de dominio para contar, sumar, promediar, obtener el mínimo o máximo y calcular la desviación estándar. Las funciones de dominio pueden aplicarse también al conjunto de todos los registros recuperados para obtener resúmenes totales. En este último caso no es necesaria la agrupación, aunque pudiera aplicarse también.
Utilice la opción Subcampo de los detalles para cambiar la dirección implícita de posicionamiento del campo. El subcampo se posiciona debajo del campo anterior (no a la derecha) en la vista de tipo Tabla y a la derecha (no debajo) del campo anterior en la vista de tipo Lista.
12. Formatos de salida
Los campos pueden mostrarse en cualesquiera de los formatos implícito, medida, o numéricos del lanzamiento o también con un formato de usuario como el aplicado por la función Prolan convdc. De forma independiente puede configurarse la visibilidad del campo y mostrar el valor cero.
12.1 Formatos de salida gráficos
Se definen dos tipos especiales de formato de salida para mostrar gráficos en los reportes: Gráfico de Objeto y Detalle de Patrón. Estos formatos siempre deben asociarse a campos de tipo Objeto, bien recuperados con la propiedad Obj o bien calculados mediante código Prolan. El formato Gráfico de Objeto puede aplicarse a objetos de tipo Pieza, Material, Patrón, Ubicación, Forma, Contorno, Segmento y RefCon. El formato Detalle de Patrón solo puede aplicarse a objetos de tipo Patrón para dibujarlos en el mismo zoom que tiene la hoja Patrones. Los gráficos de objeto se dibujan dentro del área limitada por las dimensiones de la etiqueta de texto asociada al campo.
13. Formato de Impresión
La vista preliminar del reporte muestra etiquetas de texto para todas las componentes visuales configuradas en cada una de las secciones del reporte. Puede modificar el formato de impresión de dichas etiquetas para personalizar sus dimensiones, alineación, tipo y color de letra, color de fondo y marco.
Los diferentes tipos de etiqueta y sus formatos de impresión correspondientes son los siguientes:
13.1 Etiquetas de totales
Estas son etiquetas especiales que contienen los totales calculados en la sección Detalles y se añaden automáticamente a la sección Resumen. Se muestran en la primera fila de dicha sección, inmediatamente debajo de las columna de detalle correspondiente.
13.2 Etiquetas extendidas
Las largos de las etiquetas pueden extenderse en la dirección horizontal para que sus textos se muestren hasta el margen derecho de la página o hasta el borde derecho del item de lista. En los reportes de tipo Tabla puede extenderse solamente el largo de un nombre de campo (si se extienden varios se toma el primero y el resto se ignora) para que el ancho de la columna correspondiente, y junto con ella el ancho de toda la sección, se ajuste automáticamente al ancho del papel.
Los anchos de las etiquetas también pueden extenderse para que el texto crezca automáticamente en la dirección vertical (hacia abajo) o hasta el borde inferior del item de Lista.
El Cliente Prolan para Reportes permite la ejecución sincrónica de programas Prolan en las diferentes etapas del proceso de generación del reporte.
Estos programas pueden utilizarse para:
(/= [Pieza] nada)
donde Pieza es un alias para el campo Obj de la relación Corte.Pieza. Nótese el uso de los corchetes para referir los campos del reporte.
Las variables globales definidas en cualesquiera de los eventos o campos calculados del reporte se mantienen activas durante todo el proceso de generación y, por lo tanto, son válidas y accesibles desde cualquier otro programa Prolan utilizado en el reporte.
15. Acciones
Las acciones que siguen son para ejecutarse dentro del Editor de Reporte.