KB 960356
适用于:Microsoft Dynamics GP
简介
分析会计没有"单独"的年度末期结束程序。 如果将 AA 维度设置为创建 BBF 条目,则自动为 AA 维度创建前 (BBF) 项作为 GL 年底收尾过程的一部分。 本文中的步骤将有助于在 GL 年末收尾流程之前检查数据,以检查在 GL 年底收尾过程中可能导致错误的 AA 数据。 本文还介绍了如何设置 AA 维度,以按维度在新的一年创建一个"结转余额"条目(如果需要)。
此外,还列出了如何将历史数据移动到历史记录的步骤,这将解决在 GL 年底收尾过程中可能遇到以下错误消息: (请参阅步骤 3 解决此消息。)
必须运行合并交易,将明细转移到过去数年的历史记录实用工具,重新创建"分析会计余额上移"。
更多信息
在 Microsoft Dynamics GP 中为"总帐"运行年度收尾流程时,它会自动将分析会计事务从 AAG30000 历史表移到 AAG40000 系列表。 (分析会计.) 可以选择在年底过程中要合并的维度。 在分析会计中,在 AAG30000 表中为标记为包括在年底流程的维度创建"余额前移"条目,然后将详细信息移到 AAG40000 系列表中。
解决方法
步骤 1:确定财务报表是否使用 AA 表:
在关闭 GL 或执行本文中的任意步骤之前,请运行通常运行以平衡 GL 试用余额的报表。 根据找到的方法,按照相应的方法操作:
-方法 1 - 如果正确:如果您的财务报告正确且与 GL 匹配,则您可以继续执行本文中的步骤 2-8,这些步骤仍然必须完成,以便您不会在 GL 年度末期结束期间收到任何 AA 错误。
注意:如果使用的报告系统仅在从 GL 公司或其他报告工具) ] 读取您的财务报表时直接从 GL 表 ((例如管理报告器中的旧版提供商)读取,则您可以继续执行步骤 2,因为 AA 数据不会影响您的财务报告。
-方法 2 - 如果不正确:但是,如果财务报告不正确,则很可能是由于使用了 AA 表,并且 AA 数据与 GL 数据不匹配。 若要验证 AA 数据,必须先运行 KB SQL 中提供的 2910626 脚本以及本文中的其余步骤。
注意:Management Reporter 中的数据市场从 AA (GL) 表读取,或者与管理报器一起使用的旧提供程序可能从 AA 公司读取。
方法 2 的步骤:
a.) 首先,运行 KB 脚本2910626 GL 数据验证 AA 数据。
来自管理报告器的报告与 Microsoft Dynamics GP 中的总帐试用余额报表
不匹配
http://support.microsoft.com/help/2910626
b.) 在知识库中完成步骤后2910626返回到此知识库,然后继续执行下面列出的其余步骤。 (请注意,步骤 2 和步骤 4 也在 KB 2910626 中,但我们建议再次仔细检查,因为它们不会返回任何结果(如果已修复此数据)。)
步骤 2:验证重叠年的 AA 数据
运行这些脚本,确保 AAG30000 Open 表中没有与 AAG40000 历史表重叠的年。 每个不同的年份应仅存在于一个表或另一个表中,但不能同时存在于两个表中。
select distinct(YEAR1) from AAG30000
select distinct(YEAR1) from AAG40000
-如果在两个表中发现重叠的年,则建议建立支持事件以寻求帮助。 支持案例收费,因为此问题通常是由于导入记录而创建的。 请注意,如果需要修复数据,这可能需要称为咨询,这是一项计费费用。
步骤 3:验证 AA/GL 之间的打开表/历史表之间的年次:
接下来,请确保 AA 表中的年与 GL 表的未结或收盘年相同。 AAG30000 和 GL20000 打开的表应具有相同的年。 AAG40000 和 GL30000 历史表应包含相同的关闭年。
select distinct(YEAR1) from AAG30000
select distinct(OPENYEAR) from GL20000
select distinct(YEAR1)from AAG40000 order by YEAR1
select distinct(HSTYEAR) from GL30000 order by HSTYEAR
-如果在结束的年份之前在 AAG30000 打开的表中发现年份,则还必须执行下面的步骤将数据移动到历史记录,以及将历史年份数据移动到历史记录。 AAG30000 表应仅包含 GL 中当前打开的年的数据。 如果尝试在 GL 中关闭年份,系统会提示你收到以下消息:
必须运行合并交易,将明细转移到过去数年的历史记录实用工具,重新创建"分析会计余额上移"。
使用上述脚本确定是否需要运行将数据移动到历史记录的步骤,以便可以防止上述消息在 GL 年底结束过程中发生。
将数据移动到历史记录的步骤:
首次在激活了 AA) 的高于 GP 10.0 SP2 或更高版本的 (上关闭 GL 时,系统会提示将 AA 数据移动到历史记录,系统允许关闭 GL 年份。 系统将验证 AA 数据是否位于 AA 表的相应打开/历史系列中,因为 GL 数据位于 GL 中的开放/历史表中。 如果不是这种情况,则会收到一条消息,要求先运行适用于 AA 的"移至历史记录实用工具",然后才能继续进行 GL 年度结束关闭。 (在通过 GP 10.0升级后,此例程只需运行一次,然后就无需再次运行。 它应该是一个一次过程。 此实用工具不会在以后修复 AA 表之间的重复年或损坏的数据。)
请记住,如果在安装版本 10.0 的 SP2 版本低于 SP2 的服务包或升级到 GP 2010 之后,未关闭 GL 年份 (且 AA 激活了) ,则可能会收到一条消息,指出"必须合并交易,将详细信息转移到历史记录实用工具以结束一年"。 代码已添加到结束流程,该流程将 AA 打开表中的年数与公司财政周期设置中的历史年进行比较。 如果 AAG3000X 系列表中存在一个历史年份的 AA 数据,则会收到错误。 请按照以下步骤合并这些年:
1.) 在Microsoft Dynamics GP菜单上,指向"工具",指向"实用工具",指向"财务",指向"分析会计",然后单击"将数据移动到历史记录"。
2.) 最早的 年份默认 为在打开的 AAG3000x 表中找到的系统。 一次只能移动一年。
3.) 选择合适的选项:将事务详细信息转移到历史记录 - 此选项将 AA 详细信息记录从打开移动到历史记录表,
并且不会创建 BBF 条目。 必须确保 AA 表中没有 BBF 条目,否则将无法选择此选项。 此选项只是将记录从 AAG30000 表移动到 AAG40000 表。
将交易和传输详细信息合并到 histor y - 此选项将 AA 明细记录从打开移动到历史记录表,并创建BBF entrie。 但是,必须选中前面提到的选项才能创建 BBF 条目。 此选项将合并已标记为要合并的 (年的所有交易维度代码的余额,) AA 信息转移到历史记录表。
注意 合并余额将结转到新的一年。 BBF 条目是在关闭的年数中创建的。
仅打印传输预览 报表 - 这允许您查看将移动的事务,而无需实际移动数据。 预览报表显示将进行合并的合并。
注意 此选项不会更改数据。
4.) 单击“确定”。
5.) 针对每个"历史"年份重复此过程。 (年份位于 AAG30000 打开的表中,但位于 GL30000 历史记录表中。 需要将具有旧年份的 AA 打开记录移动到 AA 历史记录表,以匹配 GL 历史记录表中的相应记录。)
注意:如果重新运行上述"步骤 3"中的不同年份脚本,应获取不同的年份,以在打开的 AA 和 GL 表与历史 AA 和 GL 表之间匹配。
步骤 4:检查 AA 表的重叠标头 ID
针对公司数据库运行此脚本,查看表之间是否也存在相同的标头 ID:
select * from AAG30000 where aaGLHdrId in (select aagLHDrId from AAG40000)
- 如果发现两个表的标头 ID 重复,建议打开支持事件以寻求帮助。 支持案例收费。 请注意,如果需要修复数据,这可能需要称为咨询,这是一项计费费用。
如果在当前 Dynamics 数据库的顶部还原了较旧的 Dynamics 数据库,并且 Dynamics 数据库中 AAG00102 表中存储的下一个可用数字被重新设置,则会发生此情况。 GP 会继续从这些值递增,即使它们可能已经使用,并且将导致相同的 aaGLHdrID 值被用于不同的 YEAR1 值。
步骤 5:更新 AACOPYSTATUS 值
接下来,检查 AAG40001 表中的 aacopystatus 值是否不正确。 运行此脚本:
select count(*) from AAG40001 where aaCopyStatus<>8
如果上述脚本返回结果,在运行 GL 年度收盘价之前,需要将 aaCopyStatus 更新为"8": ("8"的值是一个末尾收尾流程将接受的值。)
update AAG40001 set aaCopyStatus=8
步骤 6:查看要包含在年底的维度的设置
使用下面的两个步骤打开"公司"选项以在年末收盘价中包含 AA 维度,然后标记要包含在年底收盘价中的单个维度。 这会在 AAG30003 表中产生与 AAG30000/AAG30001/AAG30002 表中的 BBF 条目相同的 aaGLHdrID 条目。 此过程由两个步骤完成,如下所示:
如果尚未关闭"总帐",请执行以下步骤,确保维度已正确标记为包含在关闭过程中:
-
将设置选项标记为在年底结算中包括分析会计,如下所示:
-
在Microsoft Dynamics GP菜单上,指向"工具",指向"设置",指向"公司",指向"分析会计",然后单击"选项"。
-
单击以选中"包括到年度结束日"复选框,然后单击"确定"。
注意 此选项只是为了启用在维度上创建"前向余额"条目的功能。 当"常规账本"关闭时,分析会计数据仍将移到 AAG40000 系列表,而不考虑是否标记此选项。
-
-
单独标记要包括在年底的维度,如下所示:
-
在"卡片"菜单上,指向"财务",指向"分析会计",然后单击"事务维度"。
-
在 "Trx 维度 "列表中,单击要包括在年底收尾流程的维度。
-
在"年度结束结束日"区域中,单击以选中"在年底结存期间合并余额"复选框,然后单击"保存"。
-
对要包括在年底收尾流程的每个维度重复步骤 b 和 c。
-
注意:如果使用 MR,并且未标记上述复选框,则如果未在年底关闭期间创建 AA BBF 维度数据,并且正在报告 AA 数据,则可能会错过期初余额金额。
步骤 7 - 验证 AA 帐户主服务器
在处理年度末日收尾前,验证 AA 帐户主表 (AAG00200) 是否与 GL 帐户主表 (GL00100) 一样是个不错的主意。 如果缺少帐户,则会导致 AA 中的 BBF 条目不正确。 针对公司数据库运行以下脚本,验证 GL 帐户主表、GL 帐户索引主表和 AA 帐户主表的记录数是否相同:
select count(*) from GL00100
select count(*) from GL00105
select count(*) from AAG00200
• 如果 AA 帐户主表的记录数少于 GL00100 表,请使用以下脚本插入缺少的 GL 帐户:
insert into aag00200
ACTINDX, aaAcctClassID,aaChangeDate,aaChangeTime)
select ACTINDX, 0, convert(char(10),getdate(),111), convert(char(12),getdate(),114)
from GL00100 where ACTINDX not in (select ACTINDX from aag00200)
• 如果 AA 帐户主表的记录数多于 GL00100 表,请使用以下脚本删除额外的记录:
Delete AAG00200 where ACTINDX not in (Select ACTINDX from GL00100)
• 如果 GL00105 表不匹配,请参阅
KB 855963,了解如何在 GL00105 (重新创建帐户主索引表) 。
步骤 8 - 仅检查 GP2015/GP2016 (GL/AA 条目的)
在每个版本中,GL Reversing 条目发布到历史年份时一直存在问题,如下所述。 针对公司数据库运行以下脚本。 查看每个版本所说明的任何结果。 如果需要任何帮助,请创建支持案例并参考质量问题。
运行此脚本,查看发布到历史年份的所有 Reversing 条目。
--------------------------------
Select distinct(a.JRNENTRY) from GL20000 a
联接 GL30000 b
on a.JRNENTRY = b.JRNENTRY
where a.SOURCDOC = 'GJ'
和 a.TRXSORCE,例如"GLREV%"
和 b.TRXSORCE,例如"GLTHS%"
----------------------------------
查看下面列出的针对你使用的版本的结果:
Microsoft Dynamics GP 2016 (质量问题 #91834)
比较上面返回的每个 JE# 的 GL 表和 AA 表之间的记录,结果可能会因使用 P&L 帐户以及是事务级还是批级发布而异。 需要手动更新可能是:
-
更新 GL20000 表中的 SEQNUMBR,使"GLREV"条目与 AAG30001 表中的 SEQNUMBR 匹配。 (如果使用 MR,则需要使用 AA 表中的 SEQNUMBR,以便 MR 读取它。)
-
更新 AAG30001 表中的 ACTINDX,使"GLREV"条目与 GL20000 表中的 ACTINDX 匹配。 (AA 表的 冲销分录.)
-
验证 AAG30002 中的记录总数是否等于 JE 的 aaGLHdrID 记录的 AAG30001 中的记录总数。
如果需要帮助,请创建支持案例和参考质量问题 #91834。
更新:GP 2016 (1 月修补程序 16.00.0675) 和 GP 2018 (18.00.0438) 中修复了此问题。
Microsoft Dynamics GP 2015 (质量问题 #88914)
查看上面返回的每个 JE# 的 AA 表。 需要手动更新可能是:
-
验证 AAG30002 中的记录总数是否等于 JE 的 aaGLHdrID 记录的 AAG30001 中的记录总数。
-
查看返回的每个 JE# 的 AAG30000 和 AAG40000 表。 在两个 AAG30000 系列表中查找"GLREV"条目的记录。 "GLREV"条目的 AA 记录应仅位于 AAG30000 表中,因为 冲销分录 位于新年份,不应位于 AAG40000 系列表中。 如果在 AA 上报告,这些重复的记录将导致 MR 报告被过度统计。
如果需要帮助,请创建支持案例和参考质量问题 #88914。
更新:此问题在 GP 2016 RTM 中已修复。
步骤 9 - 仅适用于 GP 2016 的 AA BBF (****已知问题***)
**DYNAMICS GP 2016 用户的重要说明***
**在关闭 Dynamics GP 2016 之前,必须位于 GP 字典 16.00.0675 或更高版本、 (或 AA 字典 16.00.0645 或更高版本) 上,才能转发正确的开始余额**
使用 AA 关闭 GL 年份时,存在已知质量问题 #91502。 如果你有余额为 $0 的任何 GL 帐户并且正在转发 AA 代码,则 AA BBF 不正确。 在 GP 2015 或 GP 2013 中,这不是问题。
Microsoft Dynamics GP 2016 的 12 月修补程序更新 (KB 4056559) 中包括了此问题的修补程序。 即使 12 月版本称为"2017年加拿大工资单年度更新",也应该由需要包含此 AA BBF 修补程序的所有美国客户安装。 对于使用 AA 的所有安装(美国 () 加拿大等),强烈建议在关闭 GL 之前安装本 12 月修补程序更新。
请注意,Dynamics GP 版本 16.00.0641 在 2017 年 11 月发布的美国 Year-End Update (版本/KB 4046341) 与 2017 年加拿大工资单 Year-End 更新 (年 12 月版本/KB 4056559) 之间不会更改。 但是,AA 字典从 16.00.0552 更新到16.00.0645。 ("帮助"|关于 Microsoft Dynamics GP |其他|关于分析会计.) 需要 12 月版本中的 AA 代码才能解决此 AA/BBF 问题。
步骤 10 - 运行测试关闭
在开始 GL 年底收尾流程之前,始终进行当前备份。 建议首先在测试公司中测试 GL 末日收盘价的运行,以确保不会收到任何错误。 GL 年末收尾流程实际创建余额前移日记条目 (BBF 的) ,并移动在"总帐"表和分析会计表中结束的年份的记录。 BBF 条目同时在 GL 和 AA 表中创建。 有关总帐的888003,请参阅知识库中概述的过程。
有关详细信息,请单击以下文章编号,在 Microsoft 知识库中查看文章:
888003 Year-End Dynamics GP 中总帐的结束过程
-----------------------------------------------------------------------------------------------
注意:2019 年 9 月 1 日 AA 的SQL关闭失败
如果使用 GP 18.2 且加载了 SQL 2019 和 AA,则 GL 年度结束将失败,并出现以下消息: (以前的 SQL 版本可以正常工作。 它仅在 2019 SQL失败。 此问题在 2020 年 2 月热修复中已修复。 有关详细信息,请参阅AA YE 博客 。)
"内部错误:已达到表达式服务限制。 请在查询中查找可能复杂的表达式,并尝试简化它们。"
------------------------------------------------------------------------------------------------
步骤 11 - 检查"单位帐户" (GP 2013/GP 2015 - #86400)
如果使用 Microsoft Dynamics GP 2015 或 Microsoft Dynamics GP 2013,并且将"单元帐户"上的复选框标记为 "Year-End关闭期间清除余额",则 AAG30002 表中的记录可能仍有错误的值,并且应为 0.00 以匹配 AAG30001 表。 (Microsoft Dynamics GP 2016.) 中修复了此问题
若要确保 AA 表中的单元帐户余额正确,在运行年底收尾流程后,针对公司数据库运行下面的第一个脚本,以确保单元帐户的 BBF 设置为零(如果已标记为已清除)。 使用第二个脚本更新任何结果。
select b.ACTINDX, c.aaGLHdrID, c.aaGLDistID, c.DEBITAMT, c.CRDTAMNT, c.ORDBTAMT, c.ORCRDAMT
from AAG30002 c inner join AAG30001 b
on b.aaGLHdrID = c.aaGLHdrID and
b.aaGLDistID = c.aaGLDistID
inner join GL00100 d on
b.ACTINDX = d.ACTINDX
where d.Clear_Balance = 1 and b.ACCTTYPE = 2 and b.SOURCDOC = 'BBF'
and (c.DEBITAMT <> 0 or c.CRDTAMNT <> 0 or c.ORDBTAMT <> 0 or c.ORCRDAMT <> 0)
update c set c.DEBITAMT = 0, c.CRDTAMNT = 0, c.ORDBTAMT = 0, c.ORCRDAMT = 0
from AAG30002 c inner join AAG30001 b
on b.aaGLHdrID = c.aaGLHdrID and
b.aaGLDistID = c.aaGLDistID
inner join GL00100 d on
b.ACTINDX = d.ACTINDX
where d.Clear_Balance = 1 and b.ACCTTYPE = 2 and b.SOURCDOC = 'BBF'
and (c.DEBITAMT <> 0 or c.CRDTAMNT <> 0 or c.ORDBTAMT <> 0 or c.ORCRDAMT <> 0)
步骤 12 - 验证余额表报表
建议将管理报告器中的"余额表"报表与 Microsoft Dynamics GP 的"常规账本试用余额"报表进行比较,以验证结结到新年度的帐户余额是否正确。 如果这些余额不匹配,请还原到备份,并联系 Microsoft Dynamics GP 支持部门以打开支持事件,以寻求其他帮助。
MICROSOFT 内部信息
上次更新日期:2021/12/3 - cw
作者:dspecht;由 cwaswick 2013/9/19 重新写入 12/2/2013 - 通过 kenhub/cwaswick 添加了步骤 3。
写入器:lmuelle
技术审阅者:kriszree
编辑器:v-andmck