Passer au contenu principal

Guide de l'interface Web beancount.io

L'interface web de beancount.io (propulsée par Fava) fournit une suite complète d'outils pour gérer, interroger et visualiser vos données financières. Ce guide couvre ses principales fonctionnalités, de la saisie de données de base à la personnalisation avancée et au dépannage.

1. Édition et saisie de données

L'éditeur intégré

L'interface inclut un éditeur de texte puissant pour apporter des modifications directement à vos fichiers Beancount. Les principales fonctionnalités incluent :

  • Saisie semi-automatique : Appuyez sur Tab pour compléter les noms de comptes, les bénéficiaires, les tags et les liens.

  • Raccourcis clavier :

    • Ctrl+Espace : Déclencher la saisie semi-automatique.
    • Ctrl+/ : Commenter ou décommenter des lignes.
    • Ctrl+D : Dupliquer la ligne actuelle.
    • Alt+Haut/Bas : Déplacer la ligne actuelle vers le haut ou vers le bas.
  • Placement intelligent du curseur : Utilisez l'option $insert-entry$ dans votre fichier pour placer automatiquement le curseur à l'entrée la plus récente pour un compte spécifique lorsque l'éditeur s'ouvre.

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

Ajout de transactions

Cliquez sur le bouton + (ou appuyez sur n) pour ouvrir le formulaire de transaction.

  • Saisie rapide : Le formulaire suggère des comptes récents et mémorise les montants courants pour les bénéficiaires.

  • Tags/Liens en ligne : Ajoutez des tags et des liens directement dans le champ de narration (par exemple, Déjeuner #food ^reçu-001).

  • Modèles de transaction : Créez des entrées à date future avec un tag #template. Vous pouvez ensuite utiliser le formulaire pour les trouver et les remplir.

    2099-01-01 * "Paiement mensuel du loyer" #template
    Expenses:Housing:Rent 1500.00 USD
    Assets:Checking -1500.00 USD

2. Gestion des documents

Liez efficacement les reçus, les relevés et autres fichiers à vos transactions.

  • Téléchargement par glisser-déposer :

    • Déposez un fichier sur un nom de compte pour le stocker dans le dossier de ce compte.
    • Déposez un fichier sur une transaction dans le journal pour le lier directement.
  • Stockage des documents : Les fichiers sont enregistrés dans le dossier spécifié par la directive $option "documents" "chemin/vers/vos/documents"$ dans votre fichier Beancount.

  • Liaison automatisée : Beancount peut automatiquement découvrir et lier des documents aux transactions. Activez ceci avec les plugins suivants :

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

3. Requêtes et analyses avec BQL

La page Requête vous permet d'exécuter des requêtes en Beancount Query Language (BQL), similaires à l'outil en ligne de commande bean-query.

  • Visualisation : Les résultats de la requête sont automatiquement rendus sous forme de tableaux. Si votre requête renvoie deux colonnes (comme une date/chaîne et un nombre), l'interface générera également un graphique linéaire, à barres ou un treemap.
  • Exportation : Téléchargez tout résultat de requête sous forme de fichier CSV.

Exemples de requêtes pratiques

  • Résumé mensuel des dépenses :

    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;
  • Revenus vs. Dépenses par mois :

    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. Personnalisation et flux de travail

Personnalisation de la vue

Adaptez l'affichage de l'interface avec ces options dans votre fichier Beancount :

  • Visibilité du compte : Contrôlez les comptes qui apparaissent dans la barre latérale.

    option "show-closed-accounts" "false"
    option "show-accounts-with-zero-balance" "false"
    option "collapse-pattern" "Assets:Investments:.*"
  • Indicateurs de mise à jour : Des points colorés à côté des comptes indiquent leur statut (vert si la balance est correcte, rouge si elle a échoué, jaune si aucun contrôle de balance récent). Activez ceci dans la directive open d'un compte :

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

Liens de la barre latérale

Ajoutez des liens personnalisés vers des rapports fréquemment utilisés ou des vues filtrées dans la barre latérale.

2024-01-01 custom "fava-sidebar-link" "Dépenses de ce mois" "/income_statement/?time=month"
2024-01-01 custom "fava-sidebar-link" "Tous les documents" "/journal/?show=document"

Configuration générale

  • Fichiers multiples : Si vous chargez plusieurs fichiers .beancount, vous pouvez basculer entre eux à l'aide du menu déroulant en haut à gauche.
  • Éditeur externe : Configurez l'interface utilisateur pour ouvrir les fichiers directement dans votre éditeur local à l'aide de l'option $use-external-editor$ et d'un gestionnaire d'URL.
  • Langue : Définissez la langue de l'interface avec l'option $language$, ou laissez-la détecter automatiquement à partir de votre navigateur.
  • Exportation : Exportez toute vue de journal filtrée au format Beancount à l'aide du bouton Exporter.

5. Performance et dépannage

Gestion des fichiers volumineux

Pour les grands livres avec des milliers de transactions, améliorez les performances en :

  • Utilisant des inclusions : Divisez votre grand livre en plusieurs fichiers par année ou par mois et utilisez la directive include.

    include "accounts.beancount"
    include "transactions/2023.beancount"
    include "transactions/2024.beancount"
  • Filtrage : Utilisez les options de temps et de filtre pour limiter la quantité de données affichées à la fois.

Problèmes courants et corrections

  • Interface ne se charge pas :

    1. Vérifiez votre fichier pour les erreurs de syntaxe à l'aide de l'outil en ligne de commande bean-check.
    2. Recherchez les messages d'erreur au bas de la page web.
    3. Videz le cache de votre navigateur.
  • Performances lentes :

    1. Réduisez la plage de dates active dans l'interface utilisateur.
    2. Simplifiez les requêtes BQL complexes.
  • Erreurs de configuration : Assurez-vous que les noms d'option et les types de directives personnalisées sont entre guillemets.

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

    ; Incorrect (will cause errors)
    option documents "/path/to/docs"
    custom fava-sidebar-link "Label" "URL"