跳到主要内容

通过自定义链接与查询增强您的 Beancount 体验

Beancount,这个深受开发者和财务爱好者喜爱的复式记账系统,以其简洁性而强大。但对于那些想要在 Fava(Beancount 的 Web 界面)中获得更多控制和更快导航的用户来说,自定义侧边栏链接和 SQL 查询可以将您的工作流程提升到一个新的水平。

在本指南中,我们将向您展示如何:

  • 向 Fava 的侧边栏添加快速访问链接
  • 使用 SQL 查询进行高级过滤和分析
  • 自定义您的工作流程以进行每月审查或异常检测

为什么要自定义 Fava?

Fava 已经是一个用于查看 Beancount 账本的精美界面,但随着您的日记账的增长,对更好的快捷方式和更智能的查询的需求也在增长。

这解决了哪些痛点:

  • 重复浏览时间范围
  • 过滤嵌套帐户中的交易
  • 更快地发现负余额或异常情况

✨ 自定义侧边栏链接

让我们从通过简单的侧边栏快捷方式改进您的日常工作流程开始。 这些链接显示在 Fava 的左侧边栏中,可以将您直接带到过滤后的视图,例如本月的交易或上个月的收入。

将以下行添加到您的 Beancount 文件中:

2021-01-01 custom "fava-sidebar-link" "本月" "/jump?time=month"
2021-01-01 custom "fava-sidebar-link" "上月" "/jump?time=month-1"
2021-01-01 custom "fava-sidebar-link" "清除全部" "/jump?account=&time=&filter="

它们的作用:

  • 本月: 打开过滤到当前月份的交易视图。
  • 上月: 立即跳转到上个月——非常适合月末审查。
  • 清除全部: 重置过滤器,再次显示所有条目。

这些快捷方式消除了手动时间输入,并使您的 Fava 体验感觉更加流畅和个性化。

🔍 自定义 SQL 查询

为了更深入的了解,Fava 的 SQL 界面非常强大。 这是一个查询,用于查找与模式匹配的帐户中的所有负余额——非常适合标记不寻常或有问题的交易。

SELECT account, units(sum(position)), sum(position)
WHERE number(units(position)) < 0
AND account ~ '.*:BCM:.*'
AND date >= DATE(2021,12,9)
AND date < DATE(2022,1,9)

细分:

  • account ~ '.*:BCM:.*': 过滤帐户名称中包含 :BCM: 的帐户。
  • number(units(position)) < 0: 标记负余额(例如,超支预算)。
  • 日期过滤器将结果缩小到特定的 1 个月窗口。

使用案例:

  • 发现重复费用或不正确的过账等错误
  • 审计特定供应商或类别
  • 快速提取可操作的预算见解

🛠 专业提示:组合链接 + 查询

虽然 Fava 不允许直接链接到自定义查询,但您可以通过以下方式创建每月审核习惯:

  • 使用“本月”链接开始您的审核
  • 在另一个窗格中打开您保存的查询选项卡
  • 同时审查两者——先过滤,然后深入挖掘

这种组合可帮助您在异常情况失控之前将其捕获,并确保您的账本保持整洁

最后想法

Beancount 在设计上是最小的,但像这样的微小增强带来了巨大的效率提升。 无论您是审查预算、调试奇怪的余额,还是仅仅节省点击次数,自定义链接和 SQL 查询都能为您提供更多功能,减少摩擦。

奖励: 如果您使用的是 Fava 的自定义报告,您甚至可以构建完全适合您的个人理财习惯的完整仪表板。

准备好掌控一切了吗?

从小处开始:添加“本月”链接。 然后建立你自己的查询。 您的未来会感谢您。

想要更多这样的提示吗? 订阅我们的新闻通讯或在 Beancount.io 探索更多 Beancount 食谱。