问题标签 [accounting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2924 浏览

python - 用 Python 做会计的最佳实践

我正在编写一个 web2py 应用程序,该应用程序需要对美元金额求和而不会丢失精度。我意识到我需要为此使用小数,但我发现自己必须将我从数据库中获得的每个数字包装起来:

Decimal(str(myval))

在我疯狂地将它添加到我的所有代码之前,有没有更好的方法?我是 Python 新手,所以我很可能忽略了一些明显的东西。

编辑:我的数据库是 MS SQL Server,我将金额存储在 SQL Servermoney字段中(我相信实现类似于 Decimal,即整数数学,而不是浮点数)。

我通过 web2py 框架(pyodbc用于 SQL Server 连接)连接到数据库。我相信 web2py 对十进制类型有一些支持。例如,我的 web2py 字段定义如下所示:Field('Amount','decimal(19,4)') 但是,当我使用 web2py 的.executesql方法从数据库返回一个值时,它返回的值是 afloat而不是 a Decimal

编辑:这似乎是 FreeTDS 和 MS SQL Server 的问题。正如 Massimo 在评论中所说,web2py 正确支持这一点并返回一个 Decimal (如果可以的话)。事实证明,这只是我的生产环境(Linux)中的一个问题。我正在使用 FreeTDS 驱动程序连接到 MS SQL,它似乎正在将 MS SQL 货币类型转换为 python 浮点数。

我认为 Alex Martelli 的回答指向了正确的方向。有人对 FreeTDS、MS SQL 和 python 有任何经验吗?我认为这可能需要它自己的问题,所以我会移动这个讨论......(这里发布的新问题:FreeTDS translate MS SQL money type to python float, not Decimal

更新:实际上 FreeTDS 中存在一个错误。截至 2010 年 8 月 4 日, 此问题已在 FreeTDS 的 CVS 负责人中修复。

0 投票
1 回答
1001 浏览

php - PHP 会计和交易系统(购买/开源还是构建?)

我正在尝试将会计解决方案集成到我正在开发的网络应用程序中。我需要能够发布经常性交易、一次性交易、发票人员等。

大多数网站是否在内部进行此自定义或与某种类型的会计系统 API 集成。我知道基本上每个人都需要使用商家帐户来处理信用卡,但是存储会计数据以了解何时计费以及计费金额如何呢?

0 投票
8 回答
13187 浏览

java - Java的复式会计库?

哪些复式记账库可用于 Java?

0 投票
1 回答
1296 浏览

excel - 将excel(会计)中的整个列分为2个单独的列(符号+值)

如何在省略格式会计的情况下划分 excel 字段,例如: $ 220 € 140 $ 220 € 140 $ 220 € 140 $ 220 € 140 等等......等等......所以,从一个字段列A,得到2列A(会计符号)和 B(价值)?

0 投票
1 回答
1608 浏览

sql - 在 SQL Server 中计算债务期限

我有三张桌子:

每个都有一个值,称为金额。没有对此数据进行任何分配,我们假设最旧的付款正在支付最旧的费用或调整。每个数量可以是 +ve 或 -ve。

我需要根据当前的债务余额生成一份显示债务年龄的报告,其中余额是所有表格中每个金额的总和。但是,债务的年龄必须是当前债务的年龄。如果一个帐户在 10 月借记,但在 11 月归零,然后在 2 月借记,则债务年龄将为 2 月。需要提供每个未结余额账户的 30、60、90 天明细。

对不起,如果这不清楚,但如果你已经完成了,你就会明白我的意思。任何指针?

0 投票
8 回答
64231 浏览

algorithm - 找出一组数字中的哪些组合加起来等于给定的总数

我的任务是帮助一些会计师解决他们遇到的一个常见问题——给定交易清单和总存款,哪些交易是存款的一部分?例如,假设我有这个数字列表:

而且我知道我的总存款是10.50,我可以很容易地看到它是由8.002.50交易组成的。但是,考虑到一百笔交易和数百万笔存款,它很快就会变得更加困难。

在测试蛮力解决方案(这需要太长时间而不实用)时,我有两个问题:

  1. 对于大约 60 个数字的列表,似乎可以找到十几个或更多组合来构成任何合理的总数。我期待一个组合来满足我的总数,或者可能是几个可能性,但似乎总是有很多组合。有没有描述为什么会这样的数学原理?似乎给定一个中等大小的随机数集合,你可以找到一个多重组合,加起来几乎是你想要的任何总数。

  2. 我为这个问题建立了一个蛮力解决方案,但它显然是 O(n!),并且很快就失去了控制。除了明显的捷径(不包括大于总数本身的数字),有没有办法缩短计算时间?

我当前(超慢)解决方案的详细信息:

明细金额列表从大到小排序,然后递归运行以下流程:

  • 取出列表中的下一项,看看将其添加到您的运行总数中是否会使您的总数与目标相匹配。如果是这样,请将当前链放在一边作为匹配项。如果它没有达到您的目标,请将其添加到您的运行总计中,将其从详细金额列表中删除,然后再次调用此过程

通过这种方式,它可以快速排除较大的数字,将列表缩减为只需要考虑的数字。但是,它仍然是n!和更大的列表似乎永远不会完成,所以我对我可以用来加快速度的任何捷径感兴趣 - 我怀疑即使从列表中删除 1 个数字也会将计算时间缩短一半。

谢谢你的帮助!

0 投票
2 回答
6632 浏览

c# - 会计数据库 - 存储贷方和借方?

当您将事务存储到数据库中时

1)您是否将贷记和借记存储在两个不同列下的同一记录中?(没有正号或负号)

示例 1A

示例 1B

或者

2)您是否存储 1 个值,贷方为正号,借方为负号?

示例 2A

示例 2B

0 投票
2 回答
5636 浏览

c# - 会计数据库 - 存储交易

您制作了一个游戏网站,用户可以在其中购买游戏积分,并将资金存入/存入用户的虚拟帐户以玩一些游戏等......等等。

1

如果你有一个会计师来记录交易,它会像这样记录(可能有点复杂,但你明白了)

2

作为开发者,你真的需要多浪费 2 条记录吗?为什么不直接这样记录……(然后你可能会存储资金来自哪里,状态在同一存款记录下的其他列中)

选项#1 比选项#2 和副签证有什么真正的优势吗?

编辑:修改问题,删除 CR、DR 并替换为符号。

0 投票
1 回答
571 浏览

java - 会计系统,银行模拟器

你知道任何可以免费使用的会计系统模拟器吗?应满足以下要求:

  • 为他们定义账户和货币
  • 处理余额
  • 提供简单的传输功能
  • 保留付款历史,让您搜索
  • 用户账户关系处理
  • 信息的持久存储
  • 与 Java 的连接

您能否推荐任何可以提供此类功能的开源或免费模拟器?这在很多项目中都很常见。

0 投票
2 回答
2040 浏览

django - 在复式记账应用程序中确保平衡交易的最佳方法是什么?

在复式记账法中确保交易始终保持平衡的最佳方式是什么?

我正在 Django 中创建一个复式会计应用程序。我有这些模型:

我想在模型级别强制执行平衡交易,但在正确的地方似乎没有挂钩。例如,Transaction.clean 不起作用,因为首先保存事务,然后由于 Entry.transaction ForeignKey 而添加条目。

我希望余额检查也可以在管理员中工作。目前,我使用 EntryInlineFormSet 和一个干净的方法来检查管理员中的余额,但这在从脚本添加事务时没有帮助。我愿意更改我的模型以使其更容易。