Улучшение работы с Beancount с помощью пользовательских ссылок и запросов
Beancount, система бухгалтерского учета по двойной записи, любимая как разработчиками, так и финансовыми энтузиастами, мощна в своей простоте. Но для тех, кто хочет больше контроля и более быстрой навигации внутри Fava, веб-интерфейса Beancount, пользовательские ссылки боковой панели и SQL-запросы могут вывести ваш рабочий процесс на новый уровень.
В этом руководстве мы покажем вам, как:
- Добавлять ссылки быстрого доступа на боковую панель Fava
- Использовать SQL-запросы для расширенной фильтрации и анализа
- Настраивать свой рабочий процесс для ежемесячных обзоров или обнаружения аномалий
Зачем настраивать Fava?
Fava уже является прекрасным интерфейсом для просмотра вашей бухгалтерской книги Beancount, но по мере роста вашего журнала возрастает и потребность в более удобных ярлыках и более умных запросах.
Проблемы, которые это решает:
- Повторяющаяся навигация по временным диапазонам
- Фильтрация транзакций по вложенным счетам
- Более быстрое обнаружение отрицательных остатков или аномалий
✨ Пользовательские ссылки боковой панели
Начнем с улучшения вашего ежедневного рабочего процесса с помощью простых ярлыков боковой панели. Эти ссылки появляются в левой боковой панели Fava и могут напрямую переводить вас к отфильтрованным представлениям, таким как транзакции текущего месяца или доход за прошлый месяц.
Добавьте эти строки в ваш файл Beancount:
2021-01-01 custom "fava-sidebar-link" "Current Month" "/jump?time=month"
2021-01-01 custom "fava-sidebar-link" "Last Month" "/jump?time=month-1"
2021-01-01 custom "fava-sidebar-link" "Clear All" "/jump?account=&time=&filter="
Что они делают:
- Текущий месяц: Открывает представление транзакций, отфильтрованное по текущему месяцу.
- Прошлый месяц: Мгновенно переходит к предыдущему месяцу — отлично подходит для обзоров в конце месяца.
- Очистить все: Сбрасывает фильтры, снова показывая все записи.
Эти ярлыки устраняют ручной ввод времени и делают ваш опыт работы с Fava более плавным и персонализированным.
🔍 Пользовательские SQL-запросы
Для более глубокого анализа SQL-интерфейс Fava невероятно мощный. Вот запрос, который находит все отрицательные остатки на счетах, соответствующих шаблону — идеально подходит для отметки необычных или проблемных транзакций.
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 на Beancount.io.