Добавете метаданни cash-flow-role към open директивата на дадена сметка, за да декларирате как отчетът за паричните потоци класифицира тази сметка. Един ключ, четири стойности. Сметките без тези метаданни запазват стандартната евристика.
2000-01-01 open Assets:US:Brokerage
cash-flow-role: "investing"
2000-01-01 open Assets:US:Marcus:Savings
cash-flow-role: "cash"Ключ и стойности
| Ключ | Къде | Тип на стойността | Приети стойности |
|---|---|---|---|
cash-flow-role | метаданни на open директива | низ | "cash", "operating", "investing", "financing" |
Съвпадението е чувствително към главни и малки букви и е точно. Стойността трябва да бъде низ в кавички. Другите метаданни на същата директива се игнорират от отчета, а този ключ се игнорира от всички други инструменти.
Какво означава всяка стойност
Декларираната роля отговаря на два въпроса едновременно: дали сметката е част от паричните средства, и към кой раздел на дейността принадлежи в противен случай.
"cash"— сметката се присъединява към множеството на паричните средства и еквиваленти. Паричните сметки никога не се появяват като позиции в дейностите. Крайният ред на отчета, нетната промяна в паричните средства и еквиваленти, е равен на сумата от техните промени за периода. Трансферите между две парични сметки се компенсират. Използвайте за сметки, които евристиката по име пропуска, като например паричен пазарен фонд или портфейл със стабилни монети."operating","investing","financing"— сметката не е парична и нейната промяна за периода се появява като ред в съответния раздел на дейността. Декларирането на една от тези стойности върху сметка, която евристиката по име би третирала като парична, като напримерAssets:US:Bank:CD, я премахва от множеството на паричните средства и я класифицира в декларирания раздел.
Декларациите се доверяват повече от счетоводните конвенции. Сметка от капитала, декларирана като "operating", се почита буквално.
Приоритет
Най-високият приоритет печели:
- Метаданните
cash-flow-roleвърхуopenдирективата на сметката. - Вградената стандартна евристика по-долу.
Стандартни класификации
Сметка без декларирана роля се класифицира според корена си, като проверката на името решава дали е парична:
| Корен на сметката | Стандартна дейност |
|---|---|
Income, Expenses | Operating |
Assets (непарични) | Investing |
Liabilities, Equity | Financing |
Активните сметки, чиито имена съдържат Cash, Checking, Savings или Bank, се третират като парични средства и еквиваленти по подразбиране. Декларирана роля отменя проверката по име и в двете посоки.
Невалидни стойности
Неразпозната стойност се третира като липсваща. Печатна грешка като "invsting", стойност, която не е низ, или грешен регистър на буквите връщат към стандартната евристика, а отчетът отбелязва сметката в панела за статус с бележка за неизвестна стойност. Нищо не спира да се визуализира и нищо не се приема мълчаливо.
Промяна на класификация
Класификациите не са обвързани с дати. Отчет за произволен период използва декларациите такива, каквито са към момента. За да промените, редактирайте open директивата; версионният контрол на ledger файла записва какво и кога е променено.
Къде се прилагат декларациите
Един споделен резолвър изчислява крайната роля за всяка сметка, а всеки консуматор я чете от него:
- Отчетът за паричните потоци: раздели на дейностите, множеството на паричните средства и еквиваленти и крайното съгласуване.
- Експорт в CSV, Markdown и печат: същите числа. Бележката за класификация по евристика се появява само за редове, които все още се определят от евристиката.
- Обзорната диаграма на паричните потоци:
"cash"изключва сметката от възлите на потоците, а декларираните дейности се почитат за непарични сметки. Приходите остават източник, а капиталът остава изключен от диаграмата; декларациите не могат да пренасочат тези два корена. - Панелът за статус на сметката: декларирана сметка вече не се показва като некласифициран актив.
Преносимост
Метаданните върху open директиви са основен синтаксис на Beancount. bean-check, Fava и всеки инструмент за v2/v3 го разборват и игнорират неизвестния ключ, така че ledger файлът остава напълно функционален извън Beancount.io. Вижте Синтаксис на Beancount за общия формат на метаданните.
