65.9K
CodeProject 正在变化。 阅读更多。
Home

个人理财应用程序

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.38/5 (11投票s)

2007年1月10日

CPOL

4分钟阅读

viewsIcon

90340

downloadIcon

7898

用于跟踪个人财务的实用程序。

Sample Image - maximum width is 600 pixels

引言

用于跟踪金钱、开销、投资等的工具。

背景

财务

金钱在不同的账户之间**转移**。有 3 种类型的账户:

  • **中性账户 (Neutral):** 这种类型的账户存在于您的系统中,您拥有这些账户。

    示例:现金、银行账户、外币现金。

  • **R+ 账户:** 这种类型的账户将资金**注入**您的系统。它们会将资金存入中性账户。

    示例:工资、利息、收入。

  • **R- 账户:** 这种类型的账户将资金**从中**您的系统**中移出** (并且您再也看不到了)。

    示例:超市、账单、杂货、电子产品、汽油、公交、家具……您购买的一切。

事务
  • R+ 转到中性账户 (您赚钱)
  • 中性账户转到中性账户 (您转移资金)
  • 中性账户转到 R- 账户 (您亏钱) **交易示例**
来源: 工资
去向: 银行 A 账户
金额: 3000
您在这里赚钱,资金从 R+ 流入中性账户。
来源: 银行 A 账户
去向: 现金
金额: 3000
您在这里转移资金。您既不亏也不赚。这是 ATM 取款。中性账户转到中性账户。
来源: 现金
去向: 电子产品 (新电视) 金额: 100
您在这里亏钱。资金从中性账户流向 R- 账户。
货币兑换买入
来源: 现金
去向: 购买外币
金额: 1250
您的美元消失了。您亏损了。
来源: 欧元买入
去向: 欧元现金 金额: 1000
您的欧元出现在您的欧元现金账户中。您“赚取”了它们。


货币兑换卖出

来源: 欧元现金
去向: 欧元卖出
金额: 1000
您的欧元消失了。您亏损了。
来源: 卖出外币
去向: 现金
金额: 1250
美元出现在您的现金账户中。您“赚取”了它们。


这两个操作都分两步完成,因为交易的两个账户应具有相同的货币。否则,可能会有很多问题。

使用该实用程序

该工具附带一个示例账户数据库。只需检查它们是否符合您的需求。然后输入交易。第一笔交易应为“A - 初始”到“A”。

在统计中,如果您不输入账户名称,您将获得收入和损失的总和。

提示

  • 按退格键可以删除组合框中选定的账户。您可以使用快捷方式选择账户。
  • 您可以通过 /MIN 参数将此应用程序最小化启动。它应该会进入
    /HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/CURRENTVERSION/RUN.

    创建一个注册表项:"{Path}\CashM.exe /MIN"

  • 要编译成西班牙文,请替换 .rc 文件,使用 languages/spanish。删除 .aps 文件。
  • 安全性:如果您不希望其他人看到您的数据,请将数据库放入带密码的 zip 文件中。使用时解压,完成后再放回 zip 文件。我考虑过加密数据库中的数据,但那样的话,我就无法使用 SQL 了。问题比解决方案还多。
  • 您可以使用 SQLite Database Browser 查看和更改数据库。您还可以针对数据库执行 SQL 查询。
  • 您可以像买卖欧元一样,用股票或投资进行操作。例如,您可以将 MSFT 定义为一种货币,将 3 个账户定义为账户中的欧元示例。(MSFT: MSFT 股票,MSFT 卖出,MSFT 买入,MSFT 初始,所有这些都属于“MSFT”货币)。最后,在现金中,您应该定义“买入股票”、“卖出股票”。货币的“兑换”将是股票的价值。
  • 在输入真实数据之前,先玩一会儿应用程序,这样您就能熟悉它了。
  • 定期备份数据库。
  • 由于 EXE 文件内部包含数据库引擎,并且链接了 MFC,因此可以在任何 Windows 上运行。您可以将 EXE 和数据库放入 zip 文件,上传到网络,并通过互联网连接从任何计算机访问它。
  • “现金校正+”账户用于,例如,您在口袋或街上找到钱。“现金校正-”账户用于您“丢失”现金时,例如,烧毁、丢失硬币等。当我在统计中检查现金总额并且数字不匹配时 (无论出于何种原因),我也使用这些账户。

关注点

我使用了 CodeProject 的大量组件。非常感谢所有写这些组件的人,没有他们我无法构建这个东西。我最初构建了一个 .NET 应用程序来跟踪金钱,但当时 (.NET 2001) .NET 速度很慢,图形也不好。然后我使用了 SQL Server 数据库,最后,一个 Excel 工作表。这比它们所有都好。我发现了像 Monex 等类似的应用程序,但……它们不符合我的需求,并且在某些操作上变得很复杂。我打算改进这个东西,主要是因为我自己在用它。

在构建应用程序的过程中,代码变得有些“奇怪”,以防您决定更改它。我可能会在下一个版本中改进它。此实用程序使用 VC++ 2005 编译,带有一些警告。

英语不是我的母语,所以请原谅其中的任何错误。这是我的第一个 CodeProject 文章。

待办事项清单

  • 打印
  • 代码改进
  • 图形改进
  • 虚拟账户
  • 导入-导出
  • Unicode
  • 帮助
© . All rights reserved.