财务日记帐过帐性能

本文提出了对过帐财务日记帐时遇到的性能问题进行排查的建议方法。 这些问题可能是由以下因素引起的:

  • 编号规则设置
  • 每个日记帐的行数
  • 日记帐的批处理
  • 行数限制功能

问题

财务日记帐过帐的速度似乎比您预期的要慢。

分辨率

Microsoft Dynamics 365 Finance 支持行数较多的日记帐。 但是,Finance 模块和日记帐过帐的配置可能会导致财务日记帐过帐的速度似乎比客户预期的速度慢的情况。

编号规则和日记帐性能

编号规则以及其中编号的检索会影响总帐过帐的性能。 具体来说,凭证编号规则本身可能也是一个因素。

在某些国家/地区或行业中,有一项监管要求是分类帐凭证使用连续编号规则。 但在许多司法管辖区,没有对连续凭证编号提出监管要求。

当财务日记帐过帐成为性能瓶颈时,我们建议您使用非连续编号规则并启用凭证编号规则的预分配。

使用非连续编号规则时,您可以在编号规则页面上启用预分配。 您可以指定应从数据库请求多少个编号并将其存储在内存中。 在使用了预分配的所有编号之后,再从数据库请求新编号。

有关编号规则预分配的详细信息,请参阅编号规则概览

以批处理模式运行日记帐过帐

我们建议您通过批处理作业在后台过帐日记帐。 批处理模式下的日记过帐使用 Top-Picking 模式,可以从多方面提高性能:

  • 由于它在后台运行,因此用户可以在处理日记帐时继续执行其他任务。
  • 支持并行处理。
  • 如果将其设置为使用稍后选择的日记帐进行的重复批处理作业并将错误转移到单独的日记帐,便可以减少人工交互的需要。

使用日记帐过帐页面上的以下按钮和字段,设置以批处理模式过帐日记帐:

  • 选择 - 查看或修改用于选择要过帐的日记帐的查询。 关闭查询对话框后,所选记录出现在概览网格,除非选中了稍后选择选项。

  • 后期选择 - 选择本选项可运行查询,在日记帐过帐的批处理作业开始时选择要过帐的日记帐。 如果未选择此选项,所选日记帐将显示在概览网格。

    纸币

    如果您使用重复批处理作业来选择要过帐的日记帐,则选择稍后选择

  • 转移错误 - 选择本选项以启用有效日记帐,以将无法过帐的凭证过帐并移动到新日记帐。 如果未选择此选项,则当任何凭证包含错误时,整个日记帐将无法过帐。

并行运行日记帐过帐

我们建议尽可能并行或多线程执行进程。

下面是一些注意事项:

  • 日记帐的大小
  • 在过帐之前将较大的日记帐拆分成多个较小日记帐的优点
  • 您是否希望系统在过帐时拆分日记帐
  • 凭证的大小

日记帐的大小

例如,一个日记帐有 150,000 行必须过帐。 如果您未配置任何并行选项,并且将各行过帐到一个日记帐中,则日记帐过帐将在单个线程中运行。

如果您手动将日记帐拆分为 15 个日记帐,每个日记帐有 10,000 行,便可以使用批处理手动并行运行日记帐。 手动拆分日记帐可能是一项繁琐的工作。 但在许多情况下,Dynamics 365 Finance 可以自动拆分日记帐。

有关详细信息,请参阅

最大行数

日记帐上的行数限制值可以在批量过帐日记帐时启用并行处理。 行数限制字段定义转移到新日志帐的最小行数。 然后并行处理这些行。

拆分日记帐最适合行数较少的凭证。 不能跨日记帐拆分凭证。 日记帐上的原始日记帐号字段指示被拆分的日记帐。 可以为日记帐名称设置行数限制字段。 然后,该值将默认用于所创建的具有该日记帐名称的所有日记帐。

纸币

在 Dynamics 365 Finance 版本 10.0.36 中,财务日记帐支持自动拆分大型日记帐,每个日记帐的阈值为 1,000 行。 行数超过 1,000 的日记帐将作为批处理作业的一部分过帐,并且拆分为每个日记帐 1,000 行。 有关详细信息,请参阅自动拆分大型财务日记帐

凭证大小

如果您使用行数限制功能,请务必考虑凭证的平均大小。 如果日记帐中的凭证有余额,过帐流程可以确定何时应拆分日记帐。 如果每个凭证中的行数超过行数限制值,则凭证大小将决定哪些日记帐行要进行拆分。

日记帐行 凭证行 行数限制 并行处理 过帐的日记帐数
150,000 ~500 0 1
150,000 ~500 10,000 15
150,000 ~50,000 10,000 3
150,000 150,000 10,000 1

日记帐性能的其他注意事项

其他因素也会影响普通日记帐过帐的性能。 本节介绍您应该考虑的一些其他方面。

数据库日志记录和 SQL 更改跟踪

不建议对高度不稳定的数据库表(即具有大量插入、更新和删除的表)使用 SQL 更改跟踪。 某些财务日记帐表(例如 LedgerJournalTrans)是 Dynamics 365 Finance 中波动性最大的表之一。 此外,某些财务日记帐表被视为工作表,因此不适合进行更改跟踪。 如果在这些实体上启用更改跟踪,可能会创建触发器并影响性能。

有关详细信息,请参阅配置数据库日志记录

由于财务表的波动性,我们建议您关闭 LedgerJournalTrans 及其相关表的表和索引的锁升级。 在生产环境中,如果为此表启用了锁升级,自动检查会尝试禁用锁升级。 但是,这些检查不会在开发或用户验收测试 (UAT) 环境中运行。 如果您遇到性能缓慢的情况,我们建议您验证此设置并禁用锁升级。

税引擎

默认情况下,更新与税相关的字段时,会计算日记帐行上的销售税金额。 尽管此行为可以帮助用户实时查看税额,但是对于行数很多的大型日记帐,也有可能会影响性能。 延迟税金计算功能可以延迟日记帐的税金计算,从而帮助确保最佳性能。 开启此功能时,则仅当用户选择销售税或过帐日记帐时,才会计算税额。

有关详细信息,请参阅为日记帐启用延迟税款计算

Configuration Key

为了确保最佳性能,您应在您的环境中仅启用必要的配置密钥。 例如,如果您不使用预算或公共部门功能,可以为这些场景禁用配置密钥。

有关详细信息,请参阅许可证代码和配置密钥