Saltar al contenido principal

Guía de la Interfaz Web de beancount.io

La interfaz web de beancount.io (impulsada por Fava) proporciona un conjunto completo de herramientas para gestionar, consultar y visualizar tus datos financieros. Esta guía cubre sus principales funciones, desde la entrada básica de datos hasta la personalización avanzada y la resolución de problemas.

1. Edición e Introducción de Datos

El Editor Integrado

La interfaz incluye un potente editor de texto para realizar cambios directamente en tus archivos Beancount. Las características clave incluyen:

  • Autocompletado: Pulsa Tab para completar nombres de cuenta, pagadores, etiquetas y enlaces.

  • Atajos de Teclado:

    • Ctrl+Espacio: Activar el autocompletado.
    • Ctrl+/: Comentar o descomentar líneas.
    • Ctrl+D: Duplicar la línea actual.
    • Alt+Arriba/Abajo: Mover la línea actual hacia arriba o hacia abajo.
  • Colocación Inteligente del Cursor: Usa la opción $insert-entry$ en tu archivo para colocar automáticamente el cursor en la entrada más reciente para una cuenta específica cuando se abre el editor.

    option "insert-entry" "Expenses:Food:Dining-Out"

Añadir Transacciones

Haz clic en el botón + (o pulsa n) para abrir el formulario de transacción.

  • Entrada Rápida: El formulario sugiere cuentas recientes y recuerda importes comunes para los pagadores.

  • Etiquetas/Enlaces Inline: Añade etiquetas y enlaces directamente en el campo de narración (p. ej., Almuerzo #comida ^recibo-001).

  • Plantillas de Transacción: Crea entradas con fecha futura con una etiqueta #template. A continuación, puedes utilizar el formulario para encontrarlas y completarlas.

    2099-01-01 * "Pago Mensual del Alquiler" #template
    Expenses:Housing:Rent 1500.00 USD
    Assets:Checking -1500.00 USD

2. Gestión de Documentos

Vincula de forma eficiente recibos, extractos y otros archivos a tus transacciones.

  • Carga mediante Arrastrar y Soltar:

    • Suelta un archivo sobre un nombre de cuenta para guardarlo en la carpeta de esa cuenta.
    • Suelta un archivo sobre una transacción en el diario para vincularlo directamente.
  • Almacenamiento de Documentos: Los archivos se guardan en la carpeta especificada por la directiva $option "documents" "ruta/a/tus/documentos"$ en tu archivo Beancount.

  • Vinculación Automatizada: Beancount puede descubrir y vincular automáticamente documentos a las transacciones. Activa esto con los siguientes plugins:

    plugin "fava.plugins.link_documents"
    plugin "fava.plugins.tag_discovered_documents"

3. Consulta y Análisis con BQL

La página Consulta te permite ejecutar consultas en Beancount Query Language (BQL), de forma similar a la herramienta de línea de comandos bean-query.

  • Visualización: Los resultados de la consulta se representan automáticamente como tablas. Si tu consulta devuelve dos columnas (como una fecha/cadena y un número), la interfaz también generará un gráfico de líneas, barras o treemap.
  • Exportación: Descarga cualquier resultado de consulta como un archivo CSV.

Ejemplos Prácticos de Consultas

  • Resumen de Gastos Mensuales:

    SELECT account, SUM(position) AS total
    FROM postings
    WHERE account ~ '^Expenses' AND date >= 2024-01-01 AND date < 2024-02-01
    GROUP BY account
    ORDER BY total DESC;
  • Ingresos vs. Gastos por Mes:

    SELECT YEAR(date) as year, MONTH(date) as month,
    SUM(IIF(account ~ '^Income', -position, 0)) as income,
    SUM(IIF(account ~ '^Expenses', position, 0)) as expenses
    FROM postings
    GROUP BY year, month
    ORDER BY year, month;

4. Personalización y Flujo de Trabajo

Personalización de la Vista

Adapta la visualización de la interfaz con estas opciones en tu archivo Beancount:

  • Visibilidad de la Cuenta: Controla qué cuentas aparecen en la barra lateral.

    option "show-closed-accounts" "false"
    option "show-accounts-with-zero-balance" "false"
    option "collapse-pattern" "Assets:Investments:.*"
  • Indicadores Actualizados: Los puntos de color junto a las cuentas muestran su estado (verde si el saldo es correcto, rojo si ha fallado, amarillo si no hay una comprobación de saldo reciente). Activa esto en la directiva open de una cuenta:

    2020-01-01 open Assets:Checking   fava-uptodate-indication: "TRUE"

Enlaces de la Barra Lateral

Añade enlaces personalizados a informes de uso frecuente o vistas filtradas en la barra lateral.

2024-01-01 custom "fava-sidebar-link" "Gastos de Este Mes" "/income_statement/?time=month"
2024-01-01 custom "fava-sidebar-link" "Todos los Documentos" "/journal/?show=document"

Configuración General

  • Múltiples Archivos: Si cargas varios archivos .beancount, puedes cambiar entre ellos utilizando el menú desplegable en la parte superior izquierda.
  • Editor Externo: Configura la IU para abrir archivos directamente en tu editor local utilizando la opción $use-external-editor$ y un controlador de URL.
  • Idioma: Establece el idioma de la interfaz con la opción $language$, o deja que se detecte automáticamente desde tu navegador.
  • Exportación: Exporta cualquier vista de diario filtrada en formato Beancount utilizando el botón Exportar.

5. Rendimiento y Resolución de Problemas

Manejo de Archivos Grandes

Para libros mayores con miles de transacciones, mejora el rendimiento mediante:

  • Uso de Inclusiones: Divide tu libro mayor en varios archivos por año o mes y utiliza la directiva include.

    include "accounts.beancount"
    include "transactions/2023.beancount"
    include "transactions/2024.beancount"
  • Filtrado: Utiliza las opciones de tiempo y filtro para limitar la cantidad de datos que se muestran a la vez.

Problemas Comunes y Soluciones

  • La Interfaz No Se Carga:

    1. Comprueba tu archivo en busca de errores de sintaxis utilizando la herramienta de línea de comandos bean-check.
    2. Busca mensajes de error en la parte inferior de la página web.
    3. Borra la caché de tu navegador.
  • Rendimiento Lento:

    1. Reduce el rango de fechas activo en la IU.
    2. Simplifica las consultas BQL complejas.
  • Errores de Configuración: Asegúrate de que los nombres de las opciones y los tipos de directivas personalizadas estén entre comillas.

    ; Correcto
    option "documents" "/path/to/docs"
    custom "fava-sidebar-link" "Label" "URL"

    ; Incorrecto (causará errores)
    option documents "/path/to/docs"
    custom fava-sidebar-link "Label" "URL"