FINORA ERP · Tutorial
Crear tu primer reporte
Vas a crear un reporte de ventas por cliente: las órdenes de venta completadas, agrupadas por cliente, con un subtotal por cliente y el total general, filtrables por fecha y por cliente. Al final lo tendrás en el menú, en PDF, en Excel, con una plantilla Excel propia y en CSV.
Lo que necesitas
Sección titulada «Lo que necesitas»- Acceso de lectura y escritura a Analítica › Reportes › Diseñador de reportes.
- Saber qué tablas guardan lo que quieres listar. Aquí:
C_Order(órdenes),C_BPartner(terceros) yC_Currency(monedas).
1. Define el reporte y escribe la consulta
Sección titulada «1. Define el reporte y escribe la consulta»-
Abre Diseñador de reportes (o escribe «Diseñador» en la búsqueda
Alt+G) y pulsa Nuevo. -
Escribe el Código (
VENTAS_CLIENTE: mayúsculas, dígitos y_), el Nombre que verá el usuario y una Categoría para agruparlo en el catálogo, por ejemplo «Ventas». -
En Consulta escribe la sentencia
SELECT. Cada parámetro es un marcador:Nombre, y la consulta siempre filtra por:AD_Client_ID:SELECT bp.Name AS cliente, o.DocumentNo AS orden, o.DateOrdered AS fecha,cur.ISO_Code AS moneda, o.GrandTotal AS totalFROM C_Order oJOIN C_BPartner bp ON bp.C_BPartner_ID = o.C_BPartner_IDJOIN C_Currency cur ON cur.C_Currency_ID = o.C_Currency_IDWHERE o.AD_Client_ID = :AD_Client_IDAND o.IsSOTrx = 'Y' AND o.DocStatus IN ('CO', 'CL')AND (:DateOrdered IS NULL OR o.DateOrdered >= :DateOrdered)AND (:DateOrdered_To IS NULL OR o.DateOrdered::date <= :DateOrdered_To)AND (:C_BPartner_ID IS NULL OR o.C_BPartner_ID = :C_BPartner_ID)ORDER BY bp.Name, o.DateOrdered, o.DocumentNo -
En Agrupar por escribe
cliente: el alias por el que se agrupan las filas. La consulta debe ordenar por él (ORDER BY bp.Name). -
Formatos ya trae
PDF,XLSX,CSV(conXLSXtambién se ofrece el Excel con plantilla). Guardar.
- 1Código único del reporte en tu empresa
- 2La consulta: SELECT con marcadores :Nombre y siempre :AD_Client_ID
- 3Formatos que se ofrecen al ejecutar
- 4Columna que agrupa las filas, con subtotales
2. Declara los parámetros
Sección titulada «2. Declara los parámetros»En la pestaña Parámetros, una fila por marcador, con el mismo nombre que en la consulta (sin los dos puntos):
| Marcador | Etiqueta | Tipo | Detalle |
|---|---|---|---|
DateOrdered | Fecha de la orden | Fecha | Marca Rango: el usuario da «desde» y «hasta», y la consulta recibe :DateOrdered y :DateOrdered_To |
C_BPartner_ID | Cliente | Registro | Tabla C_BPartner. Un parámetro de tipo Registro se llama como la clave de su tabla |
Los marcadores del sistema (:AD_Client_ID, :AD_Org_ID, :AD_User_ID, :AD_Role_ID y :Today) no se declaran.
Si un parámetro es obligatorio, márcalo; si quieres que se proponga solo, escribe su Valor por defecto (por ejemplo
@#Date@ para la fecha de hoy).
3. Detecta las columnas y ajústalas
Sección titulada «3. Detecta las columnas y ajústalas»Los botones del diseñador están en el engranaje de la barra (Proceso, Alt+O).
- Pulsa Detectar columnas. FINORA lee las columnas de la consulta sin traer datos y crea una fila por alias con
su tipo:
fechacomo Fecha ytotalcomo Monto, con totales. Las columnas…_idquedan ocultas. - En la pestaña Columnas ajusta el Encabezado, el Tipo, Totalizar y el Ancho relativo. Desmarca
Visible en
cliente: ya sale como título de cada grupo.
| Tipo | Cómo se imprime |
|---|---|
| Texto | Tal cual, alineado a la izquierda |
| Entero | 1.234 |
| Número | 1.234,5678 (de 2 a 4 decimales) |
| Monto | 1.234,56 |
| Fecha | 31/12/2026 |
| Porcentaje | 15,00 % (el valor ya es un porcentaje) |
4. Prueba con la vista previa y publica
Sección titulada «4. Prueba con la vista previa y publica»- Pulsa Vista previa: se descarga un PDF con las primeras 50 filas y los parámetros en sus valores por defecto. Compara un total con la ventana de Órdenes de venta.
- Si algo no cuadra, corrige la consulta o las columnas y vuelve a la vista previa.
- Pulsa Publicar. FINORA crea el proceso del reporte con sus parámetros, te da acceso y lo pone en el menú Reportes. Si cambias los parámetros más adelante, publica otra vez.
5. Ejecuta el reporte
Sección titulada «5. Ejecuta el reporte»Abre Reportes › Ventas por cliente (o búscalo con Alt+G). Elige las fechas, el cliente si quieres uno solo, el
Formato y pulsa OK: el archivo se descarga.
- 1Un rango: desde y hasta
- 2Un registro: se busca como en cualquier ventana
- 3PDF, Excel, Excel con plantilla o CSV
- 4Opcional: el archivo llega por correo
En CSV salen solo el encabezado y los datos, con ; y coma decimal, listos para otro sistema.
6. Dale tu propia plantilla Excel
Sección titulada «6. Dale tu propia plantilla Excel»- En el diseñador pulsa Generar plantilla base. Se descarga un
.xlsxy queda adjunto en la pestaña Plantillas como plantilla por defecto. - Ábrelo en Excel. Verás los marcadores:
${company.name},${report.name},${report.params}y, en la fila de datos, uno por columna (${orden},${fecha},${total}), más${total.total}en la fila de totales. - Dale el formato de tu empresa: colores, fuentes, logo, columnas nuevas con fórmulas. La fila con los marcadores de columna se repite por cada registro con su estilo; lo que esté debajo de ella baja solo.
- Guarda, vuelve a Plantillas, borra el adjunto viejo y adjunta el nuevo con el clip.
- Ejecuta el reporte con el formato Excel con plantilla.
| Marcador | Se reemplaza por |
|---|---|
${COLUMNA} | El valor de la columna en cada fila (marca la fila de datos) |
${total.COLUMNA} | El total de una columna con Totalizar |
${param.X}, ${report.params} | Un parámetro, o todos los que se usaron |
${report.name}, ${report.generated}, ${report.user}, ${report.rows} | Título, fecha y hora, quién lo generó, filas |
${company.name}, ${company.rif} | Razón social y RIF |
Una celda con un solo marcador recibe el valor como número o fecha, con el formato que le diste en Excel.
Si pides Excel con plantilla a un reporte que no tiene ninguna, recibes el Excel automático y el mensaje Sin plantilla: se usó el Excel automático.
7. Personaliza un reporte del sistema
Sección titulada «7. Personaliza un reporte del sistema»Los reportes que trae un módulo (por ejemplo Nómina — básicos) se ven en el diseñador, pero son de solo lectura. Para cambiarlos:
- Abre el reporte del sistema en el diseñador y pulsa Copiar a mi empresa (engranaje).
- Deja Código nuevo vacío para que tu copia reemplace al original: desde el mismo menú del módulo, la API y cualquier otro lugar se ejecutará tu versión. Escribe un código distinto si prefieres un reporte nuevo al lado del original.
- Cambia lo que necesites en la copia: columnas, encabezados, plantilla o la consulta.
El reporte del sistema no se toca: si borras o desactivas tu copia, vuelve a ejecutarse el original.
8. Envíalo por correo
Sección titulada «8. Envíalo por correo»En el diálogo del reporte escribe una dirección en Enviar a (correo). FINORA genera el archivo, lo descarga y además lo envía como adjunto con el servidor de correo configurado para la empresa.
Si algo sale mal
Sección titulada «Si algo sale mal»| Lo que ves | Qué hacer |
|---|---|
| La consulta debe filtrar por :AD_Client_ID | Agrega WHERE t.AD_Client_ID = :AD_Client_ID |
| La consulta debe ser una sola sentencia | Quita lo que hay después del ; |
| La consulta usa «?» | Usa marcadores :Nombre; para JSON, jsonb_exists en vez de ? |
| Marcadores sin parámetro: :X | Declara X en Parámetros con el mismo nombre |
| El parámetro X no se usa en la consulta | Quítalo o úsalo en la consulta |
| Columnas que la consulta no devuelve | Cambiaste un alias: corrígelo o vuelve a Detectar columnas |
| El reporte supera el máximo de filas | Acota las fechas o sube Máximo de filas |
| El reporte tardó más del tiempo máximo | Acota los parámetros o pide al administrador revisar la consulta |
| debe llamarse C_BPartner_ID (al publicar) | Un parámetro de tipo Registro se llama como la clave de su tabla |
| es un reporte del sistema | Usa Copiar a mi empresa antes de cambiarlo |
Qué sigue
Sección titulada «Qué sigue»- FINORA Reportes: informe técnico: seguridad, API y reportes de los módulos.
- Reportes: visión general.