Skip to content

A personal accounting tool based on SQL tables and views. 一款基于SQL表和视图的个人记账软件。

License

Notifications You must be signed in to change notification settings

Goalsum/TataruBook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TataruBook

TataruBook是一款面向个人或家庭的记账软件,它能够记录不限数量的账户中的日常收支和投资交易,支持任意多种货币、股票、基金、期货以及其他由用户定制的资产类型,并能根据原始数据生成多种统计报表,如:指定日期的所有账户资产状况;指定周期内的收支分类统计;指定周期内的整体投资收益、各个品种的投资收益、利息收益等等。

TataruBook拥有以下特点:

  • 灵活、可定制:TataruBook的数据模型不依赖任何特定的货币、资产类型、收支类型,用户可用它记录任何实物资产和虚拟资产。除了常见的现金、股票、基金、期货等资产外,TataruBook甚至可用来记录不动产、数字货币、个人借贷等相关交易,而且所有的资产都能在报表中换算为指定的本位币。这使TataruBook非常适合用于管理个人或家庭的整体资产状况。
  • 数据准确、可靠:TataruBook采用复式记账法,从根源上避免了不同账户间转账时数据不一致的问题,同时还使用了很多校验规则来保证数据的一致性和完整性。TataruBook以事务的形式操作数据,在批量处理时一旦发现错误会立刻回滚,避免因操作失误导致的数据异常。TataruBook允许用户通过视图核查每项报表数据的计算过程,将中间计算过程透明呈现。用户可以从多种角度验证数据的正确性。
  • 开放、可扩展:TataruBook的所有数据和报表都保存在SQLite格式的db文件中。SQLite是世界上使用最为广泛的数据库格式之一,有众多的软件支持这种格式。用户不光可以用TataruBook操作db文件,还可以使用DB Browser for SQLite等其他图形界面软件来查看和编辑自己的数据。用户还可以自己编写SQL查询语句来生成TataruBook中没有的报表,或者编写脚本来批量处理数据(几乎所有主流编程语言都有库能支持操作SQLite数据文件)。TataruBook的所有数据和报表都可以导出成csv文件并用Excel编辑,可方便的在不同软件间进行数据转换和互通。
  • 易用:TataruBook拥有详尽的文档,所有表、视图的字段,所有操作命令在文档中都有解释。文档中还提供了快速入门教程和丰富的例子来帮助新用户学习如何使用TataruBook。TataruBook有一些辅助特性让用户能用更直观的方式录入数据,避免手工在SQLite表中操作数据的繁琐。
  • 高性能:虽然TataruBook是用Python语言编写的,但所有报表都是以SQLite视图的方式实现的,所以主要计算都由SQLite的数据引擎完成。而SQLite引擎是采用C语言编写且经过多年优化的成熟开源软件,性能有充分保证。TataruBook在使用SQL查询语句生成报表时,充分利用窗口函数等特性优化查询步骤,确保所有视图都能以O(n)的时间复杂度完成计算。在个人或家庭的典型数据规模上,用户几乎不会感觉到报表的计算带来的延迟。
  • 隐私安全:TataruBook是免费开源的软件,所有处理都在本地进行,不联网,不需要用户注册账号。所有记账数据及报表都保存在由用户自己控制的db文件中,和TataruBook程序分离。TataruBook只依赖Python语言的标准库和SQLite引擎,而它们都是已被广泛使用的成熟开源软件。因此,用户可充分相信自己的隐私不会被泄露,数据不会被篡改。

TataruBook的文档https://goalsum.github.io/TataruBook/

关于名字Tataru Taru(中文名:塔塔露·塔露、日文名:タタル・タル)是由SQUAR ENIX公司开发的网络游戏《最终幻想14》中的一个拉拉菲尔族女性NPC,拂晓血盟组织的资金管理人。她并不擅长战斗,但是在财务方面天赋卓绝,算账是她的主要兴趣之一。

About

A personal accounting tool based on SQL tables and views. 一款基于SQL表和视图的个人记账软件。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages