Прогнозиране на Бъдещи Транзакции в Beancount
Beancount може да прогнозира бъдещи повтарящи се транзакции, използвайки плъгина fava.plugins.forecast. Това ви позволява да визуализирате бъдещото въздействие на редовни приходи и разходи, като заплати, наем и абонаменти, върху вашите финансови отчети.

Стъпка 1: Активиране на Плъгина за Прогнозиране
Първо, трябва да активирате плъгина, като добавите следния ред в горната част на вашия Beancount счетоводен файл:
plugin "fava.plugins.forecast"
Стъпка 2: Създаване на Транзакция за Прогнозиране
За да прогнозирате повтаряща се транзакция, създайте единичен запис на транзакция, използвайки флага # (вместо * или !) и добавете специален маркер за прогнозиране към описанието.
Основната структура изглежда така:
YYYY-MM-DD # "Описание [ЧЕСТОТА УСЛОВИЯ]"
Account:One 100.00 USD
Account:Two -100.00 USD
Плъгинът за прогнозиране ще използва този запис като шаблон, за да генерира бъдещи транзакции във вашите отчети.
Разбиране на Синтаксиса за Прогнозиране
Маркерът за прогнозиране в описанието следва специфичен формат: [ЧЕСТОТА УСЛОВИЯ].
Честота
Частта ЧЕСТОТА е задължителна и определя колко често се повтаря транзакцията. Тя трябва да бъде изписана с главни букви.
DAILY(ДНЕВНО)WEEKLY(СЕДМИЧНО)MONTHLY(МЕСЕЧНО)QUARTERLY(ТРИМЕСЕЧНО)YEARLY(ГОДИШНО)
Пример: Месечно Плащане на Наем Тази транзакция ще бъде проектирана да се случва на 1-во число на всеки месец, започвайки от януари 2024 г.
2024-01-01 # "Плащане на наем [MONTHLY]"
Expenses:Housing:Rent 2500.00 USD
Assets:Checking -2500.00 USD
Условия (Незадължителни)
Можете да добавите незадължителни УСЛОВИЯ, за да контролирате продължителността и модела на прогнозата.
1. Задаване на Крайна Дата с UNTIL
Използвайте UNTIL YYYY-MM-DD, за да спрете прогнозата на определена дата.
-
Пример: Членство във фитнес, което приключва тази година.
2024-01-15 # "Членство във фитнес [MONTHLY UNTIL 2024-12-31]"
Expenses:Health:Gym 80.00 USD
Assets:Checking -80.00 USD
2. Ограничаване на Повторенията с REPEAT
Използвайте REPEAT n TIMES, за да генерирате транзакцията определен брой пъти.
-
Пример: Заем за кола с 36 оставащи плащания.
2024-01-25 # "Плащане на кола [MONTHLY REPEAT 36 TIMES]"
Expenses:Transportation:CarPayment 450.00 USD
Liabilities:Auto-Loan -450.00 USD
3. Създаване на Неправилни Модели с SKIP
Използвайте SKIP n TIME/TIMES, за да пропуснете интервали. Това е полезно за неща като двуседмични заплати.
-
Пример: Двуседмична заплата (случва се на всеки две седмици).
2024-01-05 # "Двуседмична заплата [WEEKLY SKIP 1 TIME]"
Assets:Checking 3000.00 USD
Income:Salary -3000.00 USD
Практически Пример: Месечен Бюджет
Можете да комбинирате множество прогнози, за да проектирате целия си бюджет, включително различни потоци от приходи и разходи.
plugin "fava.plugins.forecast"
; === ПРИХОДИ ===
2024-01-05 # "Двуседмична заплата [WEEKLY SKIP 1 TIME]"
Assets:Checking 3000.00 USD
Income:Salary -3000.00 USD
; === РАЗХОДИ ===
2024-01-01 # "Наем [MONTHLY]"
Expenses:Housing:Rent 2500.00 USD
Assets:Checking -2500.00 USD
2024-01-01 # "Хранителни продукти [WEEKLY]"
Expenses:Food:Groceries 150.00 USD
Assets:Checking -150.00 USD
2024-01-15 # "Застраховка на автомобил [QUARTERLY REPEAT 4 TIMES]"
Expenses:Insurance:Auto 450.00 USD
Assets:Checking -450.00 USD
След като добавите тези записи, вашите отчети, като например Отчет за приходите и разходите и графиката Нетна печалба, автоматично ще включат прогнозираните данни, което ви дава ясна представа за вашето финансово бъдеще.
Отстраняване на Неизправности и Най-добри Практики
-
Прогнозите Не се Появяват?
- Уверете се, че
plugin "fava.plugins.forecast"е във вашия счетоводен файл. - Използвайте флага
#за транзакцията, а не*. - Проверете за правописни грешки в маркера за честота (напр.
[MONTHLY]вместо[Monthly]или[MONTLY]).
- Уверете се, че
-
Най-добри Практики
- Бъдете Описателни: Използвайте ясни описания, за да знаете за какво е всяка прогноза.
- Преглеждайте Редовно: Актуализирайте своите прогнози (напр. за увеличение на заплатата или промяна на наема), за да ги поддържате точни.
- Използвайте Крайни Условия: За транзакции, които не са постоянни (като заеми или абонаменти), използвайте
UNTILилиREPEAT, за да предотвратите прогнозирането им за неопределено време.