使用obsidian+dataview记账问题

之前有个老哥提出了这个问题,我很感兴趣,自己也去搜索了解了一下,dataview的一些基础入门明白了一点,发现dataview语句能实现的效果非常有限,需要更高阶的dataviewjs语句,但是相关的讲解比较少而且复杂难懂。
我看了几个用obsidian+dataview去记账或是读书笔记的文章,基本都是一本书或是一天作为一个笔记文件然后放在一个文件夹去搜索,然后使用dataview去统计,但有个一问题在于单纯记账不同于读书笔记,有很多东西或是细节需要去记录,我一天或许只有两笔消费单独占用一个笔记文件有些太麻烦了,所以我想要使用一个笔记文件,然后用标题去区分每一天的花销,或是一个笔记记录一年的,如下图所示。

然后就发现了一个问题,dataview可以通过笔记文件的文件名或是关键字去进行罗列,也可以使用标签进行查找罗列,但是好像不能通过标题去进行查找,各位有没有什么办法啊,还是需要使用dataviewjs

如果是按日期记的,你完全可以使用日记插件或者Calendar插件。

一天或许只有两笔消费单独占用一个笔记文件有些太麻烦了

如果是考虑存储大小,这点内容可以说是非常小。

并且使用Calendar插件的话,设置好模板、每天打开启动日记,还有
image
这样直接点击。所有的日记都放在一个文件夹内,其实没有什么麻烦的。

dataview语句能实现的效果非常有限,需要更高阶的dataviewjs语句

dataview能实现基本的功能还是可以的。比如:
image
然后合集:


这是我随便打的,dataview可以利用yaml,标签tag,::。然后将你的数据统计,做统计,画图。

或者简单一点,用memos,打标签。也可以去看看插件MAKE.md,有数据库功能,可以筛选。

期望在一个文件里记录所有数据,且同一类数据用一个名称,那么起码每个数据都应该带上时间戳 (新记录可以考虑用quickAdd写capture,但如果你只是想汇总而不关心数据的时间戳,也可以不用时间戳)。

目前纯obsidian markdown只想到 dataviewjs 的实现。(或者你可以考虑数据放到csv文件,在markdonw里做图表展示。)

简单写个demo试试看

出勤:: 1,2023-05-30
出勤:: 2,2023-05-29
出勤:: 3,2023-05-27
``dataviewjs
dv.paragraph(dv.current()['出勤'].join('\n'))
dv.paragraph(dv.current()['出勤'].map((d) => d[0]).join('\n'))
``

效果
image

第一,我想把每一天都放在一个文件,最主要的原因就是,每天或许只有两笔出入,占用一个文件,我知道文件大小可能1K都不到,而且都放在一个文件夹,但是三年的话就是一千个文件,额,我个人不是很喜欢这种,

第二,dataview我才接触大概了解,可能是看的不太全面,我看就是一些文件的查找罗列,然后以列表或是表格的方式呈现,但是账本这东西一般都要计算,按种类或时间,这个我看好像是需要js的加持

第三就是,已经放弃了。。。最近工作忙,没啥时间研究,还是excel吧,简单方便易上手,就是不太方便查看,手机上查看excle简直是受刑

感谢解答,我会自己试一下,麻烦了

提供日记插件本来是出于自动化的想法,接受不了的话,确实可以参照后面那位提到quickAdd插件写capture。

想要计算账本的话,倒是可以看【自制插件分享】【手账周计划】终于可以把DayPlanner扔掉了,作者做了数据可视化和导出,里面支持一个笔记放一年的。

地址:Obsidian-Techo

excel确实很好用 :rofl:

好的,谢谢,我去看一下

看看我的方案合不合用吧