Linux 财务程序评测
随着 Linux 逐渐应用于越来越多的计算机,对更广泛应用程序的需求也在增加。一个普遍的需求是类似于 Quicken 的财务管理程序。Linux 上有几款可用的财务程序,我在本文中介绍其中一些。涵盖的程序包括 cbb、QHacc、GnuCash、Moneydance 和 gAcc。
所有这些程序都可以跟踪基本的财务信息,例如支票和储蓄账户。几乎所有程序都提供某种类型的报告和图表功能。它们中的大多数可以导入以 QIF 格式保存的文件,但成功程度各不相同。
这些程序中的大多数尚未达到 1.0 版本,并且缺少一些功能和润色。作者们正忙于改进它们并添加功能,因此,虽然没有完全替代 Quicken 或 Money 的程序,但您可能会发现其中一个程序适合您。
我为本文安装了 cbb 0.8.1 版本。它完全使用 Tcl/Tk 和 Perl 编写,只需键入 make install 即可完成安装。cbb 不包含编译代码,因此它应该可以在大多数 Linux 系统上运行。
cbb 将账户信息保存在单独的文件中,每个账户对应一个 .cbb 文件。屏幕底部显示账户列表及其当前余额,当您选择账户时,会显示该账户的条目(见图 1)。
在 cbb 中输入交易非常简单。交易字段位于账簿和账户列表之间。您输入交易的详细信息,例如日期、金额和类别,然后按 ENTER 键或单击“接受”按钮将其添加到账簿中。cbb 允许您通过“+”和“-”键轻松更改当前支票号码,并为收款人和类别字段包含制表符补全功能。
通过使用键盘快捷键、制表符在所有字段之间切换以及只需按 ENTER 键即可接受交易的功能,数据输入变得更加简单。如果您输入大量交易,您会发现这些功能非常有用。
虽然您可以使用类别对交易进行分组,但 cbb 不允许您指定类别是费用还是收入,并且您无法创建子类别。子类别的解决方法是使用命名约定,例如 Utilities、Utilities-electric 和 Utilities-gas。cbb 可以在编辑交易时显示类别列表,以便您可以选择所需的类别。
cbb 提供以下报告:交易、按类别的交易列表、未清算的交易、遗失的支票、按类别的平均每月支出以及按收款人列出的交易。可用的图表显示运行余额、按类别的变动、按类别的支出、支出饼图和按描述的类别饼图。您可以为报告和图表指定开始和结束日期,并选择要包含的账户。
账户对账通过单击“余额”按钮完成。但是,在执行此操作之前,您必须输入任何利息或服务费。当余额窗口显示时,输入银行对账单的期初和期末余额,然后开始清算交易。如果您注意到错误,可以在不关闭对账窗口的情况下在账簿中修复它。
cbb 允许您导入 QIF 文件,以便您可以使用现有数据。不幸的是,导入功能在我用 Quicken 99 创建的 QIF 文件上无法正常工作。虽然我确实获得了交易,但它们没有日期,并且在导入后我无法编辑它们。我的账簿开头也有一些行包含 cbb 显然无法从 QIF 文件中解码的数据。
cbb 是一个用于跟踪支票和储蓄账户的好程序。它允许您使用键盘快捷键快速轻松地输入交易。报告和图表提供了有用的信息,并且易于安装是一个真正的优势。
Moneydance 是一个用 Java 编写的共享软件程序。在本文评测的所有程序中,它的外观最像 Quicken(见图 2),并且在导入我的 QIF 文件方面做得最好。我使用的是 Moneydance 2.0.4。
安装 Moneydance 非常容易:只需解压缩 tar 包并修改 Moneydance 文件,使其指向所需的 .jar 文件。然后,将其放在您的路径中可以找到的位置(例如,/usr/local/bin),您就可以开始了。如果您使用的是较旧的 Linux 发行版,您可能需要升级您的 Java 环境。
Moneydance 中的每笔交易都必须包含一个源账户和一个目标账户。这称为复式记账。每种类型的收入(例如,工资)和支出(例如,抵押贷款、燃料、信用卡)都会出现在会计科目表中,并且所有交易实际上都是账户之间的转移。例如,当您支付电费时,您将资金从您的支票账户转移到您的 Utilities:Electric 账户。
Moneydance 提供了一个有用的自动完成功能,可以完成收款人姓名并显示您之前为该收款人输入的金额和账户。使用 TAB 键可以轻松地在账簿字段之间导航。输入支票号码时,您可以键入号码或使用鼠标选择“下一个支票#”或“打印”等操作。完成交易后,按 CTRL-R 或单击“记录”按钮将其保存到账簿中。如果您必须输入许多交易,您可能会发现使用鼠标输入支票号码加上两个键或鼠标来记录每笔交易有点乏味。
账户对账通过从“操作”菜单中选择“对账”来完成。您可以从对账窗口中添加、编辑和删除交易。
Moneydance 提供报告和图表。有关于交易、账户余额、收入和支出的报告。您可以通过选择开始和结束日期、特定账户以及小计方法来自定义报告。打印的报告看起来清晰,并且在页面顶部包含标题和日期范围。您可以绘制以下信息的图表:收入、支出、收入和支出以及账户余额。由于某些原因,我无法在我的系统上打印图表。
您可以从 Moneydance 打印支票,方法是为支票号码选择“打印”,然后从“操作”菜单中选择“打印支票”。Moneydance 支持标准支票和带有存根的支票,并允许您打印测试支票以校准您的系统。
另一个不错的功能是搜索交易的能力。从“操作”菜单中选择“查找交易”或按 CTRL-F 会打开“查找”窗口。您可以搜索特定的收款人/描述、备注或支票#。选择“再次查找”或按 CTRL-G 可以找到下一个匹配的交易。
如果您习惯了 Quicken,您会发现 Moneydance 非常容易使用。我发现的唯一问题是小问题。帮助文件没有提供太多信息,但它确实涵盖了基本账户编辑和复式记账。在我的机器上,Moneydance 运行有些缓慢,但我认为这是因为我在一台慢速 Pentium 上运行较旧版本的 Java。
下一个程序是 QHacc 0.4.3 版本。(注意:QHacc 的作者发布了 0.5 版本,但为时已晚,我无法将其包含在本文中。)该程序需要 QT 工具包才能工作,我发现它的安装过程非常简单。我从源代码编译了 QT 工具包并按照说明安装了它,然后我编译并安装了 QHacc,没有发生任何意外。
QHacc 提供了一个简单的双窗格布局。左窗格包含账户和余额列表,右窗格包含所选账户的账簿(见图 3)。
交易输入与其他程序略有不同。在账簿中选择“新建”会弹出一个交易窗口,您可以在其中输入支票号码、日期、收款人、金额和备注。QHacc 插入下一个可用的支票号码,并为收款人提供自动完成功能。通过按 ENTER 键将交易输入到账簿中,而按 ESC 键则取消交易。提款必须以减号开头,因为 QHacc 不提供单独的贷方和借方文本框。
QHacc 还提供了一种记忆交易的机制。输入您要记忆的交易后,右键单击账簿中的交易,然后从弹出菜单中选择“记忆”。要插入记忆的交易,请右键单击账簿中的空白行,转到弹出菜单中的记忆项,然后选择您要插入的交易。
QHacc 可以设置为单式或复式记账。如果您想使用类别来跟踪您的交易,则必须使用复式记账。您还必须使用复式记账来在账户之间转移资金时自动更新账户余额,否则您必须在两个账户中都输入转移。如果您选择使用复式记账,您还可以将交易拆分到多个账户中。
QHacc 提供了一个简单的图表功能,可以按周显示交易的净总额。根据随附的 TODO 文档,未来将添加更多图表。
账户对账与其他程序相同。请记住在使用前输入任何利息支付或服务费。输入银行对账单的期初和期末余额,然后选择要清算的条目。
在 0.4.3 版本中,QHacc 是我查看的程序中最年轻的。我确实发现了一个问题。如果我输入 00 作为年份,它会使用 1900 年。此外,QHacc 不提供导入 QIF 文件的功能。
GnuCash 是目前正在开发的最雄心勃勃的财务程序。它提供最多种类的账户类型、子账户和股票价格检索。该程序是最难编译和运行的,因为它依赖于相当多的其他程序、库和 Perl 模块。我查看了稳定版本 (1.2.5) 和当前开发版本 (1.3.6)。
在尝试使用这些版本中的任何一个之前,请仔细阅读文档以确定您需要哪些额外的程序、库和 Perl 模块。1.2.5 版本需要 Motif 或 LessTif,而 1.3.6 版本使用 GNOME 和 GTK。与在 SuSE 6.1 系统上相比,我在 Red Hat 6.1 系统上安装它们更顺利。
GnuCash 提供的界面与我测试的其他程序略有不同。它的主窗口显示包含余额的账户列表,并且为每个账户打开一个新的账簿窗口。这允许您同时查看和编辑多个账户(见图 4)。
GnuCash 提供比其他程序更多的账户类型(见图 5)。账户可以标识为银行账户、现金、资产、信用卡、股票、负债、共同基金、货币、收入、支出或权益。账户可以是其他账户的子账户,允许您创建资金组合。账簿窗口会根据您正在使用的账户类型略有变化。
账簿窗口允许您选择显示单行或多行条目,并允许您按日期、支票号码、交易金额、备注或描述对交易进行排序。不幸的是,它们在您关闭后不会记住您的显示选择。
在 1.2.5 版本中,键盘输入还有些不足之处。虽然您可以使用 TAB 键在字段之间移动,但在单行模式下,您无法制表符移动到付款或存款字段,因为焦点会从账户字段跳转到“记录”按钮。1.3.6 版本将命令按钮放在账簿上方,修复了制表符移动功能,并在您按 ENTER 键时接受交易。这两个版本都不会在账簿窗口中自动递增支票号码。
我在从 Quicken 99 导入 QIF 文件时遇到了一些问题。GnuCash 1.2.5 版本读取了我的 Quicken 文件,并在创建我的会计科目表方面做得很好,但是 QIF 文件中的所有账簿条目的日期都是 1969 年 12 月 31 日。1.3.6 版本甚至无法读取我的 QIF 文件,并显示消息“位置 1 中的参数错误”而退出。
GnuCash 提供报告,但目前不提供图表。1.2.5 版本中包含的报告是资产负债表、损益表和投资组合估值。1.3.6 版本提供这些报告以及其他报告,例如预算报告,但目前无法从 GnuCash 内部创建预算。
虽然 GnuCash 肯定是该组中最雄心勃勃的程序,但它也是最难安装的。文档确实说明了 GnuCash 需要哪些程序和库,并且与 SuSE 6.1 系统相比,我在 Red Hat 6.1 系统上安装 GnuCash 更顺利。对如此多外部程序的依赖以及导入 QIF 文件的困难是 GnuCash 的主要问题。
我查看的最后一个程序是 gAcc 0.7.1 版本。gAcc 需要安装 GTK+ 工具包,版本 1.2.2 或更高版本。我发现编译源代码并安装此程序相对容易,但我确实必须手动复制一些文件才能运行它。
gAcc 的布局与 GnuCash 类似,具有主账户列表(见图 6)和单独的账簿窗口,但您一次只能处理一个账户。gAcc 来自欧洲,与其他我测试的程序相比,它对欧洲日期和货币提供更好的支持。您可以从“首选项”对话框中设置这些选项。
在 gAcc 中输入和编辑交易不像在其他程序中那样用户友好。没有用于添加新条目的键盘快捷键,也没有用于收款人的自动完成功能。类别、操作和账户可以从下拉列表中获得,因此您无需记住它们。交易输入的一个怪癖是您必须删除金额文本框中的“$”,否则无论您输入什么,$0 都会显示在账簿中。
gAcc 仅处理支票和储蓄账户。您可以创建类别来跟踪您的交易。目前,它不提供任何报告或图表,但这些功能在 TODO 文件中列出,将在以后的版本中添加。也没有导入 QIF 文件的功能。
我最初尝试了 0.7 版本,并在源代码 tar 文件和首选项对话框中遇到了一些问题。我给作者发送了一条消息,并收到了他们的及时回复。此后不久,0.7.1 版本发布,问题得到修复。这是一次非常愉快的经历,也是对作者的致敬。
我发现 cbb 是一个非常简单的程序,易于安装和使用,但它仅限于简单的财务。Moneydance 在外观上最像 Quicken,并且在读取我的 QIF 文件方面也做得最好,但它在我的系统上运行缓慢。QHacc 提供了在没有太多开销的情况下处理支票和储蓄账户的能力。GnuCash 是最难安装的,但支持最多种类的账户。gAcc 本地处理欧洲日期和货币符号,但也可以设置为美国符号。
目前 Linux 上肯定不乏可用的财务程序。如果您的财务状况简单并且不介意手动输入数据,那么这些软件包中的一个应该适合您。如果您的财务需求很复杂,或者您想摆脱现有的 Quicken 系统,那么您将面临更困难的选择。目前,还没有完全替代 Quicken 的 Linux 程序,但我相信这只是暂时的,因为这些程序将继续成熟和改进。
Ralph Krause (rkrause@netperson.net) 居住在密歇根州东南部,并将他的时间分配在计算机、阅读和照顾四只狗之间。他使用 Linux 已超过一年。