El diseñador de informes cuenta con tres bloques: Script, categoría: bloque en el que se escribe la propia consulta SQL.
Descrito en la sección Trabajo con consultas ; Tablas: bloque en el que se agregan y configuran las columnas del informe.
Descrito en la sección Trabajo con columnas ; Parámetros: bloque en el que se configuran los parámetros variables para ejecutar el informe.
Descrito en la sección Trabajo con parámetros ; En este bloque, el usuario escribe una consulta SQL que cargará datos de las tablas en la base de datos.
Las consultas se escriben en SQL. El usuario debe tener conocimientos básicos de programación SQL para escribir consultas.
SQL a nivel básico puede aprenderse en el menor tiempo posible (hasta 1 día).
Las consultas básicas necesarias para crear informes básicos se describen en la sección Consultas SQL Básicas.
Este bloque de documentación describe las posibles acciones con un bloque de código SQL ya escrito; el trabajo con consultas básicas necesarias para crear informes básicos se describe en la sección Consultas SQL Básicas.
El código de la consulta SQL se ingresa en el bloque "Script, Categoría:": Una vez escrito el código del script, es posible realizar las siguientes operaciones: Ejecutar para verificar: para ejecutar el informe, haga clic en el botón.
Después de presionar el botón, el script comenzará a ejecutarse; puede tardar desde varios segundos hasta minutos, según la complejidad y la cantidad de datos que se estén descargando.
Si el compilador de código detecta un error en el código, lo mostrará en la parte inferior en el bloque rojo: Si no hay errores, aparecerá un mensaje en la parte inferior de la ventana indicando que el informe se está cargando y, al finalizar la carga, se abrirá una ventana con el resultado de la solicitud.
Si la consulta puede mostrar teóricamente más de 10,000 filas, es aconsejable usar los límites TOP 1000 o TOP 10000 después del comando SELECT para verificarla; Detener el informe: si el informe tarda demasiado en cargarse, o simplemente decidió detener la ejecución, esto puede hacerse haciendo clic en .
Este botón se vuelve rojo y activo cuando el informe está en ejecución.
Transferencia de campos seleccionados en SELECT a columnas del informe.
Las columnas siempre se agregan al informe con una solicitud. Para agregar columnas, haga clic en el botón .
Después de hacer clic, el sistema determinará automáticamente las columnas y sus nombres y las agregará al informe: El sistema también mostrará estas columnas en el bloque "Tablas", donde el usuario puede personalizarlas.
La configuración de columnas se describe en la sección "Trabajo con columnas".
El sistema agrega automáticamente todas las columnas. Las innecesarias se eliminan haciendo clic en .
Posteriormente se pueden agregar desde el bloque "Tabla".
Transferencia de los parámetros del informe al campo "Parámetros" para su configuración.
Para transferir parámetros, haga clic en .
Después de hacer clic, el sistema determinará automáticamente cuáles son los parámetros y transferirá sus nombres al campo "Parámetros".
Los parámetros que no han sido migrados se muestran en rojo en el editor de consultas SQL, y los que han sido migrados en verde.
Cada parámetro debe configurarse; cómo configurarlos y en qué formatos pueden estar los parámetros en el código de la consulta SQL se describe en la sección "Trabajo con parámetros".
Todos los campos seleccionados a través de SELECT en la consulta SQL se muestran en dos lugares: encima del constructor y en el bloque "Tablas": El sistema también mostrará estas columnas en el bloque "Tablas", donde el usuario puede personalizarlas.
La configuración de columnas se describe en la sección "Trabajo con columnas".
El sistema agrega automáticamente todas las columnas. Las innecesarias se eliminan haciendo clic en .
Posteriormente se pueden agregar desde el bloque "Tabla".
Transferencia de los parámetros del informe al campo "Parámetros" para su configuración.
Para transferir parámetros, haga clic en .
Después de hacer clic, el sistema determinará automáticamente cuáles son los parámetros y transferirá sus nombres al campo "Parámetros".
Los parámetros que no han sido migrados se muestran en rojo en el editor de consultas SQL, y los que han sido migrados en verde.
Cada parámetro debe configurarse; cómo configurarlos y en qué formatos pueden estar los parámetros en el código de la consulta SQL se describe en la sección "Trabajo con parámetros".
Todos los campos seleccionados a través de SELECT en la consulta SQL se muestran en dos lugares: encima del constructor y en el bloque "Tablas": Inicialmente, todos los campos se agregan automáticamente al informe después de hacer clic en el botón en la ventana de consulta SQL, y se muestran encima del constructor y en el bloque "Tablas".
Después de eliminar cualquier campo, puede volver a agregarlo haciendo clic en el + junto a su nombre en el bloque "Tablas".
El usuario puede cambiar el orden en que se muestran los campos, simplemente arrastrando y soltando sus nombres en el bloque superior.
El usuario también puede cambiar el tamaño de las columnas estirándolas.
La apariencia de las columnas en el bloque superior corresponde completamente a cómo se mostrarán en el informe.
Para cambiar los parámetros de un campo, haga clic en su nombre; después de eso se abrirá una ventana con los siguientes parámetros: Estilo General: edición del estilo general del informe.
El proceso es similar a la edición en cualquier otro editor de texto; Expandir por: este campo se describe en detalle en la sección Expandir Por y Agrupar Por ; Agrupar por: este campo se describe en detalle en la sección Expandir Por y Agrupar Por ; Nombre: el usuario establece el nombre de esta columna en el informe; Clave: indica qué datos extraer en la columna.
Por ejemplo, existe una solicitud: SELECT SKU_ID SKU, STORE_ID TIENDA FROM SALES_SKU Si el usuario coloca el código de campo TIENDA en la configuración de la columna SKU, entonces los datos de la columna TIENDA se mostrarán en la columna SKU del informe.
Pero esto solo es posible si se muestra una columna SKU; si se muestran tanto las columnas SKU como TIENDA, agregar el código de campo no funcionará.
No se puede agregar un código de campo al mismo campo. Tipo de datos: selección del tipo de datos que debe mostrarse en el campo.
Se admiten los siguientes tipos de datos: Texto: para campos de texto, por ejemplo "Nombre del artículo"; Número: para campos numéricos, por ejemplo "Volumen de ventas"; Fecha: para campos con cualquier formato de fecha, por ejemplo "Semana de ventas" o "Fecha de ventas"; Formato: este campo aparece si selecciona el tipo de datos "Número" o "Fecha".
Enlace: permite al usuario agregar un enlace a otra página, dato u otro elemento.
Por ejemplo, existe una solicitud: SELECT SKU_ID SKU, SITE_LINK ENLACE FROM MONITORING La columna SKU muestra códigos de producto y la columna ENLACE muestra enlaces al sitio.
En este caso, si el usuario selecciona un enlace a ENLACE en el campo "Enlace" de la configuración de la columna SKU, entonces en el informe, cuando el usuario haga clic en el número de la columna SKU, se abrirá un enlace de la columna ENLACE.
El enlace solo puede agregarse a otras columnas; Ancho: el usuario puede limitar el ancho posible del campo en el informe.
El valor debe ingresarse en píxeles. Si el ancho es automático, el campo se estirará para ajustarse al texto.
Estilo Celda: edición de un estilo separado para mostrar la información en el informe.
El proceso es similar a la edición en cualquier otro editor de texto; Estos dos campos de configuración de columnas siempre se establecen juntos.
Estos parámetros permiten implementar columnas cruzadas: cuando se muestran múltiples datos de otras columnas en una sola columna.
Por ejemplo, esto permite al usuario mostrar datos sobre las ventas de productos durante varias semanas en una sola línea, sin agregar manualmente una columna separada para cada semana.
Esta funcionalidad se explicará con más detalle en el siguiente ejemplo.
El usuario creó una solicitud para mostrar las ventas de la primera semana durante los últimos 5 años para el artículo seleccionado 56 en todas las tiendas (Tienda 1 y Tienda 2): Como resultado, obtuvo el siguiente informe: Se puede observar que el informe mostró 10 líneas, pero en un formato poco conveniente.
Sería mucho más conveniente si todas las semanas y ventas se mostraran en una línea con el producto; entonces habría solo dos líneas para cada tienda.
En esta forma: Para tales transformaciones, se usa Expandir Por.
Primero, el usuario debe eliminar de la visualización la columna cuyos datos deberán expandirse e insertarse en otra columna.
En este ejemplo, es la columna de semanas: SEMANA SEM.
Por lo tanto, es necesario hacer clic en en la fila superior de columnas junto a la columna SEMANA; El siguiente paso es hacer clic en junto a la columna en la que desea mostrar otra columna.
En nuestro caso, son las columnas de Ventas y Stock; por lo tanto, haga clic en el botón junto a ambas columnas y, después de hacer clic, elija qué columna debe mostrarse dentro: en nuestro caso es SEM (Semana); Después de eso, SEM también se muestra en el campo Expandir Por en la configuración de las columnas correspondientes.
Para Expandir Por, el usuario puede usar cualquier columna que no se muestre en el informe, pero que esté presente en la consulta.
A continuación, el usuario debe configurar en qué columna se agruparán los datos.
En este ejemplo, es necesario que los datos se agrupen por tienda; es decir, en el campo Agrupar Por, seleccione TDA (el nombre de la columna que extrae datos por tiendas en la consulta SQL).
El usuario puede seleccionar Agrupar Por solo para una columna; en otras columnas con Expandir Por, esta selección se actualizará automáticamente.
Una vez completadas todas las configuraciones, el usuario puede hacer clic en y ver cómo se muestran los datos: Los parámetros son valores que el usuario selecciona al ejecutar un informe.
Esto permite al usuario seleccionar únicamente los datos que cumplen con sus criterios.
Los parámetros se transfieren automáticamente desde el código en el editor SQL al bloque "Parámetros" después de hacer clic en el botón .
Una vez que los parámetros aparecen en el bloque "Parámetros", pueden configurarse.
Existen dos tipos de parámetros: :parametro - dichos parámetros pasan un valor específico y deben especificarse en el código como: where variable = :parametro; [lista_parametros] - dichos parámetros pasan un conjunto de valores y deben especificarse en el código como: where variable [lista_parametros]; Por ejemplo, si el usuario necesita pasar el número "5" como parámetro, usa el formato :parametro después del signo de igual.
Como resultado, al iniciar el informe, el parámetro funcionará en el código como: where valor = 5.
Si el usuario necesita transferir un conjunto, por ejemplo (1,3,8), usa el formato [lista_parametros] sin el signo de igual.
Como resultado, al iniciar el informe, el parámetro funcionará en el código como: where valor in (1,3,8).
El usuario puede usar cualquier nombre conveniente para los parámetros; lo importante es usar el formato correcto.
Para configurar un parámetro, haga clic en el nombre del parámetro en el bloque "Parámetros".
Después de hacer clic, se abre una ventana con la siguiente configuración del parámetro: ID: identificador del parámetro; se extrae automáticamente según el campo al que se aplica y no se puede cambiar; Nombre: nombre del parámetro; debe ser igual al nombre del parámetro en el código; Visualización: nombre del parámetro que se mostrará al ejecutar el informe; Tipo: selección del tipo de parámetro; es muy importante especificar el tipo correcto para el funcionamiento correcto del parámetro y evitar errores.
Se admiten los siguientes tipos de parámetros: Texto: el parámetro pasará un valor de texto; solo puede usarse con el formato de parámetro: parametro; Número: el parámetro pasará un valor numérico; solo puede usarse con el formato de parámetro: parametro; Fecha: el parámetro transmitirá la fecha en formato AAAA-MM-DD; solo puede usarse con el formato de parámetro: parametro; Semana: el parámetro transmitirá la fecha en formato de semana ISO, AAAASS; solo puede usarse con el formato de parámetro: parametro; Mes: el parámetro transmitirá la fecha en formato de mes ISO, AAAAMM; solo puede usarse con el formato de parámetro: parametro; Lista: el parámetro pasará un conjunto de valores en cualquier formato.
Se utiliza cuando es necesario pasar más de un valor. Por ejemplo (1, 3, 8) o (tienda, almacen) o (202015, 202025).
Solo puede usarse con el formato de parámetro [lista_parametros]; Selección: el parámetro pasará un conjunto de valores seleccionados mediante una solicitud especial, que se indica en el campo "Consulta".
Solo puede usarse con el formato de parámetro: parametro; Mínimo: valor mínimo del parámetro.
Puede usarse para números, fechas, semanas, meses; Máximo: valor máximo del parámetro.
Puede usarse para números, fechas, semanas, meses; Consulta: se completa únicamente para el formato "Selección".
Para mostrar las consultas posibles, el usuario debe ingresar el texto 'select' en el campo; las consultas disponibles aparecerán automáticamente en una lista.
Al ejecutar el informe, la información extraída de la solicitud se mostrará en una lista desplegable al seleccionar el valor del parámetro.
Las siguientes consultas son compatibles automáticamente (aunque también se pueden crear adicionales): report_select_stores: se usa para seleccionar una tienda de la lista como valor del parámetro; report_select_groups: se usa para seleccionar un grupo de la lista como valor del parámetro; report_select_managers: se usa para seleccionar un gerente de la lista como valor del parámetro; report_select_contracts: se usa para seleccionar un contrato de la lista como valor del parámetro; report_select_suppliers: se usa para seleccionar un proveedor de la lista como valor del parámetro; report_select_whs: se usa para seleccionar un almacén de la lista como valor del parámetro; report_select_fcst: se usa para seleccionar un número de pronóstico de la lista como valor del parámetro; Índice: puede ingresarse solo para parámetros de tipo Fecha, Semana, Mes.
El índice permite al usuario restar o sumar automáticamente un valor al parámetro.
Así, si el usuario establece el parámetro Fecha e Índice en -10, entonces por defecto al ejecutar el informe, el valor de la fecha se mostrará 10 días menos que la fecha predeterminada especificada en el campo "Valor".
Si el campo de valor se deja en blanco, la fecha se restará de la fecha actual; Valor: se ingresa un valor predeterminado que se mostrará al seleccionar opciones antes de ejecutar el informe.
A continuación se presentan variantes de definición de parámetros en consultas SQL para diferentes tipos de datos: where sku_id = :sku_id - se usa para seleccionar un SKU específico por código MySales.
Al ejecutar el informe, se pasa un número de SKU al parámetro.
El tipo de parámetro debe ser "Número"; where sku_id [sku_id_list] - se usa para seleccionar múltiples SKUs por código MySales.
Al ejecutar el informe, se pasa al parámetro un conjunto de números de SKU separados por comas.
El tipo de parámetro debe ser "Lista"; where item_code = :item_code - se usa para seleccionar un SKU específico mediante el código interno.
Al ejecutar el informe, se pasa un código de texto al parámetro.
El tipo de parámetro debe ser "Texto"; where item_code [item_code_list] - se usa para seleccionar varios SKUs por el código interno.
Al ejecutar el informe, se pasa al parámetro un conjunto de códigos de texto SKU separados por comas.
El tipo de parámetro debe ser "Lista"; where ((sku_id = :sku_id) or (:sku_id = 0)) - parámetro complejo; se usa para permitir mostrar todos los SKUs o uno específico.
En este caso, para mostrar todos los SKUs, se coloca el valor 0 para el parámetro al iniciar el informe, o el número de un SKU específico para mostrar uno solo; Los ejemplos anteriores de configuración de parámetros en el código son relevantes para todos los tipos de parámetros y campos.
Para trabajar con el compositor de informes, es muy importante entender la estructura de la base de datos para saber qué datos obtener de qué tablas, cuáles son los nombres de los campos y cómo vincular datos de diferentes tablas.
El usuario puede acceder a la estructura de la base haciendo clic en y eligiendo "Mostrar BD".
Después de seleccionar, se abrirá una ventana en la que se mostrarán todas las tablas y todos los campos en ellas.
En la ventana de la base de datos hay una función de búsqueda que permite al usuario encontrar tablas y columnas.