Manual del Generador de Informes
Contenido
- Introducción.
- Configuración.
- Cabecera.
- Pestaña General.
- Pestaña Impresión.
- Pestaña Exportar.
- Filtros de tabla.
- Campos del informe.
- Cabecera.
1. Introducción
Se pretende dar la posibilidad a los clientes y consultores NAV de generar listados sencillos, sin necesidad de tener conocimientos de programación ni limitaciones en cuanto a número de reports contratados en su licencia.
Podemos acceder desde GeneralVF – Configuración general – Configuración de informes y tiene un aspecto similar a la figura que se muestra a continuación.

2. Configuración
El generador de informes está compuesto por tres partes diferenciadas, cada una de las cuales se detalla en los siguientes apartados.
General

Cód. informe: código alfanumérico para identificar el informe.
Título informe: descripción del informe que aparecerá como título en la impresión.
Filtro empresa: filtro de las empresas sobre las que obtendremos los datos, si se deja en blanco se cogerá la empresa actual.
ID tabla: identificador de la tabla principal del informe.
Nombre tabla: descripción de la tabla principal del informe.
ID tabla adicional: identificador de la tabla adicional del informe. Debe tener la misma estructura de campos que la tabla principal y se utilizará, principalmente, con tablas de signo inverso a la tabla principal. Por ejemplo: facturas-abonos, cobros-pagos, etc.
Invertir signo (tabla adicional): sólo tiene sentido para la tabla adicional. Si está marcado se invertirá el signo de las columnas de tipo numérico del informe en los registros de esta tabla.
Ordenación ascendente: si no está marcado la ordenación será descendente.
Agrupar detalle: si está marcado y los registros se agrupan por algún campo, no se mostrará el detalle de la agrupación sino sólo los totales.
Idioma: idioma en el que se imprimirá el informe. Se basa en la tabla Diccionario, por tanto todas las traducciones deben estar dadas de alta y, si no existe registro para un valor, no se hará traducción. Si se deja en blanco no se hará traducción.
Nº copias: número de copias que se imprimirán al lanzar el informe.
Filtros de tabla

ID campo: identificador del campo de la tabla principal que se quiere filtrar.
Nombre campo: nombre del campo a filtrar seleccionado (no editable).
Filtro campo: filtro a aplicar sobre el campo.
Mostrar: si está marcado se mostrará en la cabecera del informe.
Campos del informe

Nº línea: identificador de la línea, se genera automáticamente y no es editable.
Tipo línea: las opciones posibles son Campo, Cálculo, Texto fijo, Valor auxiliar, Concatenar, Condición, Interno, Empresa, Función y Update.
ID Campo: sólo es editable si en “Tipo línea” se ha seleccionado “Campo”, al desplegar muestra la lista de todos los campos de la tabla principal para su selección.
Valor columna: depende del valor del campo “Tipo línea”:
Campo: muestra el nombre del campo a modo informativo, no es editable.
Cálculo: al desplegar muestra un asistente para ayudar en la definición del cálculo. Pueden utilizarse:
- Campos numéricos de la tabla principal, al seleccionar uno antepone el carácter # al identificador.
- Líneas del informe anteriores a la actual cuyo resultado es numérico (campos de tipo numérico, cálculos o condiciones), al seleccionar una antepone el carácter @ al identificador.
- Operadores: suma (+), resta (-), multiplicación (*), división (/) y potencia (^).
- Funciones: valor absoluto (ABS), máximo (MAX), mínimo (MIN), redondeo (Round), raíz (SQR), aleatorio (RAND), factorial (FACT), seno (SEN), coseno (COS) y tangente (TAN).
- Constantes matemáticas: PI (3.1416) y E (2.7183).
Texto fijo: texto fijo que mostrará en toda la columna.
Valor auxiliar: permite mostrar campos de una tabla relacionada. Al desplegar aparecerá una asistente para seleccionar el campo de la tabla y la clave que la relaciona con la principal. Si hemos seleccionado tabla adicional en el informe, también deberemos seleccionar la tabla con la que se relaciona, si se deja a 0 se entiende que se relaciona con la misma tabla que la principal. El valor que pondrá en la línea será del estilo
[tabla(|tabla_adicional),campo,clave]. Para el ejemplo de la figura inferior será [23,2,2]. Si el valor es numérico puede utilizarse como parte de un cálculo y si es alfanumérico puede utilizarse dentro de una concatenación.
Concatenar: permite concatenar en una misma columna varios campos de tipo alfanumérico, al desplegar aparece un asistente con dos opciones:
- Listado con todos los campos de tipo Text o Code de la tabla principal. Al seleccionar uno antepone el carácter # al identificador.
- Funciones del sistema que se pueden aplicar sobre textos: CONVERTSTR, CopyStr, DelChr, DELSTR, INCSTR, INSSTR, LOWERCASE, PadStr Y UPPERCASE.
Condición: con esta opción puede acumularse un valor en una columna dependiendo si se cumple una condición sobre un campo. Al desplegar aparecerá una asistente como el de la siguiente figura:
En primer lugar se selecciona el campo y después se introduce el filtro, condición que debe cumplir. “Entonces” es el cálculo que se aplicará sobre la columna cuando se cumpla la condición y “Sino” (opcional) en caso contrario. En el ejemplo, si el campo “Tipo lines” es igual a “4” entonces el valor de la columna es el campo “Valor de Fruta”; . El valor de la columna en la línea de conf. del informe será {7050182;4;#29}. Puede utilizarse dentro de una línea de tipo “Cálculo”.Interno: igual que Cálculo, pero no se tiene en cuenta a la hora de imprimir.
Empresa: pinta el nombre de la empresa del registro obtenido, es especialmente interesante en el caso de que estemos lanzando el listado con información de varias empresas.
Función: al desplegar aparece un listado con todas las funciones que se pueden usar. Estas funciones son internas y deben ser programadas. Admiten parámetros y pueden devolver datos de cualquier tipo. El valor devuelto puede usarse en otra línea para operar (si es de tipo numérico), concatenar, etc.
Update: Solo disponible si en la estructura organizativa está marcado “Programador”. Sirve para poder encadenar varios updates sobre la misma tabla.
Descripción columna: título de la columna, si es un campo por defecto será el nombre de éste en la tabla.
Tamaño: longitud en caracteres de la columna, si es un campo por defecto será la longitud definida para éste en la tabla. Si se deja a 0, la columna ocupará tantos caracteres como el valor máximo, incluyendo el título. El máximo es 50.
Alineación: las opciones posibles son Izquierda, Derecha y Centro (izquierda por defecto).
Clave ordenación: si está marcado indica que el campo pertenece a la clave de ordenación del listado. Se pueden definir hasta 4 campos como clave y el orden entre ellos viene definido por la línea de introducción.
Agrupar: si está marcado indica que queremos agrupar por ese campo, sólo se pueden agrupar campos que pertenezcan a la clave de ordenación y que no sean internos.
Página por grupo: si está marcado indica que por cada grupo habrá un salto de página, lógicamente sólo se pueden marcar los campos agrupados.
No mostrar grupo: si está marcado no se muestran las cabeceras ni los totales del grupo en el listado.
Ocultar: si está marcado indica que la columna no se mostrará en el listado.
Totalizar: si está marcado indica que el campo será totalizado, por cada grupo y al final del listado. Sólo se pueden totalizar los campos de tipo numérico. Para que funcione correctamente los campos totalizados deben situarse en líneas posteriores a los campos agrupados.
No mostrar total: sirve cuando, por ejemplo, se está agrupando el detalle y se quiere mostrar el total del grupo pero no se quiere mostrar el total del listado.
Nº decimales: número de decimales que se mostrarán en el listado para los campos de tipo numérico.
Blanco si cero: si está marcado, no se mostrará en el listado el valor de una columna de tipo numérico si es 0.
Coger caracteres por derecha: en un campo de tipo Text o Code coge los caracteres por la derecha, está especialmente indicado para exportaciones.
Quitar ceros delante: en un campo de tipo numérico quita los ceros por delante, está especialmente indicado para exportaciones.
Filtro valor: su función es similar a un SKIP de los informes de NAV. Aquel registro que no cumpla el filtro del campo no se mostrará. No tiene sentido para los tipos de línea Texto fijo, Interno y Empresa. Puede usarse para comparar dos campos del mismo tipo, haciendo referencia a uno de ellos (siempre debe ser el más posterior) con el símbolo $ seguido del nº de línea.
El siguiente ejemplo sólo mostraría aquellos registros en los que los kilos brutos y los kilos netos sean distintos:
Nº línea Campo Filtro valor
10000 Kilos netos 20000 Kilos brutos <>$10000
El siguiente ejemplo no sería válido porque no se puede evaluar la comparación (en el momento de procesarla) al no haberse calculado todavía la línea 20000.Nº línea Campo Filtro valor
10000 Kilos netos <>$20000 20000 Kilos brutos
*Nota:* se pueden configurar hasta 76 columnas por listado aunque, según los tipos de datos de los campos seleccionados, a la hora de imprimir o visualizar por pantalla puede que no quepan todos. En cambio, si se exporta a fichero, si se copian todos los campos. *Truco:* si, por ejemplo, hemos configurado un listado agrupado y queremos mostrar un contador para saber cuántos registros hay por grupo podemos crear una línea de tipo Cálculo, poniendo un 1 en “Valor columna” y marcando Totalizar. Es una especie de SELECT COUNT.Impresión

Orientación: vertical (por defecto) u horizontal (apaisado).
Tamaño fuente: tamaño de los caracteres a pintar.
Pintar logo: indica si se quiere pintar un logo en el listado, siempre en la parte superior del mismo. Tiene tres opciones: No pintar, Logo empresa (cogerá el configurado en la información de la empresa) y Desde fichero (cogerá el indicado en el campo “Ruta logo”).
Ruta logo: para indicar la ruta donde se encuentra el logo cuando se indica “Pintar logo” desde fichero. Sólo admite archivos de mapas de bits (BMP).
Posición logo: las opciones disponibles son Izquierda (por defecto), Centro y Derecha.
Total listado: continuo (por defecto) o a pie de página.
Separación columnas: caracteres de separación entre las columnas del listado.
Subrayado columna: carácter de subrayado para los títulos de las columnas y totales (por defecto es “-“).
Pintar nº línea: si está marcado, se pintará el nº de línea (entero a partir de 1) delante de cada registro obtenido en el informe.
Pintar total líneas: si está marcado, se pintará el nº total de líneas (registros) al pie del informe.
No pintar nº página: si está marcado no pintará el número de la página.
No pintar fecha: si está marcado no pintará la fecha del listado
Exportar

Exportar: al marcarlo indicamos que queremos exportar el listado a un fichero.
Formato exportación: las opciones disponibles son “Fichero texto” y “Excel”. Si se selecciona la opción “Fichero texto” se generará un fichero en la ruta seleccionada, teniendo en cuenta el limitador y separador de campo. La opción “Excel” genera directamente un fichero en formato XLS que se abrirá automáticamente al finalizar.
Ruta fichero: la ruta donde se guardará el fichero exportado (sólo para formato exportación “Fichero texto”).
Limitador campo: carácter limitador de campo (por defecto ”).
Separador campo: carácter separador de campo (por defecto ;).
Separador al final: si está marcado escribe el carácter separador al final de cada registro (sólo para formato exportación “Fichero texto”).
Título columnas: si está marcado escribe al inicio del fichero una línea con los nombres de los campos, con el mismo formato de separador y limitador que los registros.
Tamaño fijo columna: si está marcado tiene en cuenta los tamaños definidos para cada columna al escribir en el fichero.
Sólo fichero: si está marcado sólo genera el fichero y no imprime el listado.
Abrir fichero exportado: si está marcado, al finalizar la exportación se abrirá automáticamente el fichero con el programa configurado por defecto según la extensión con la que se ha guardado (sólo para formato exportación “Fichero texto”).
Nota: si se guarda el fichero con extensión .csv y con el separador/limitador por defecto, será un archivo entendible por EXCEL y que se podrá abrir directamente.