在 Microsoft Dynamics GP 的“生成工资检查”窗口中选择批时出现错误消息

本文提供了在 Microsoft Dynamics GP 的“生成工资检查”窗口中选择批处理时发生的错误的解决方案。

适用于: Microsoft Dynamics GP
原始 KB 编号: 851664

症状

在 Microsoft Dynamics GP 的“生成工资检查”窗口中选择批时,可能会收到以下错误消息之一:

错误消息 1

错误 - “UPR_Temp_Post2 上的打开操作记录长度不正确”

错误消息 2

错误 - “对表 ddDeposits 执行删除范围操作已导致已知错误 2”

错误消息 3

错误 - “无法标记事务为零的批处理”

错误消息 4

错误 - “其他用户正在执行检查运行”

错误消息 5

错误 - “UPR_Work_Post访问 SQL 数据失败”

错误消息 6

错误 - “员工记录无法停用或删除此员工的工资运行正在进行”

错误消息 7

错误 -“无法计算检查。 发现错误。”

错误消息 8

错误 - “无法取消检查。 检查运行的计算机正在进行中。”

错误消息 9

错误 - “无法编辑标记为要过帐的批”

错误消息 10

错误 - “Batch 标记为要发布,无法编辑。”

此外,以下文件之一可能会出现打开操作错误、获取/更改错误或保存操作错误,以指示工资单批停滞:

  • UPR_WORK_MSTR
  • UPR_WORK_MSTR_Detail
  • UPR_WORK_HDR
  • UPR_WORK_Pay_Type
  • UPR_WORK_Deduction
  • UPR_WORK_Benefit
  • UPR_WORK_State_Tax
  • UPR_WORK_Local税
  • UPR_WORK_Check
  • UPR_WORK_Post
  • UPR_Flat_Tax_Records
  • UPR_Account_Cache

原因

如果工资单工作表尚未清除,则可能会出现此问题。 必须清除工资表才能释放批处理。

解决方案

注意

按照本文中的说明操作之前,请确保拥有数据库的完整备份副本,如果出现问题,可以还原该副本

要解决此问题,请按照下列步骤操作:

步骤 1:删除工资表中的记录

  1. 使用 SQL Server Management Studio (SSMS) 打开 Microsoft SQL Server。

    若要开始SQL Server Management Studio,请选择“开始”,指向“Microsoft SQL Server 2008的所有程序>”,然后选择“SQL Server Management Studio”。

  2. 针对公司数据库运行 delete 语句。

    注意

    脚本中的前两行删除 Dynamics 数据库中的活动文件的内容。 其他行删除公司数据库中的工作文件和活动文件的内容。

    Delete DYNAMICS..UPR10300
    Delete DYNAMICS..UPR10304
    Delete UPR10200
    Delete UPR10201
    Delete UPR10202
    Delete UPR10203
    Delete UPR10204
    Delete UPR10205
    Delete UPR10206
    Delete UPR10207
    Delete UPR10208
    Delete UPR10209
    Delete UPR10213
    Delete UPR19900
    Delete UPR19901
    
  3. 如果使用直接存款,请为直接存款工作表运行此删除语句:

    Delete DD10100 --(Direct Deposit Employee Deposit Work)
    

步骤 2:删除临时文件

若要删除临时文件,请打开 Windows 资源管理器,然后选择临时目录。 临时目录具有以下路径:

C:\Windows\Temporary

在 目录中,删除以 TNT 开头的文件。 然后,删除扩展名为 .tmp 的文件。

选中“链接”将检查表之间的数据链接,以确保数据完整性。 要执行此操作,请执行以下步骤:

  1. 打开“检查链接”窗口。 在 Microsoft Dynamics GP 中,依次选择“ Microsoft Dynamics GP”、“ 维护”和“ 检查链接”。
  2. 在“ 系列 ”列表中,选择“ 工资单”。
  3. 在“ 逻辑表” 列表中,依次选择“ 工资单事务”、“ 插入”和“ 确定”。
  4. 在“报表目标”对话框中,选择相应的检查框,然后选择“确定”。

注意

可以放心地忽略错误日志中出现的错误消息。 检查链接过程正在将批 ID 重新附加到现有事务。

如果批本应是定期批,并且是由检查链接过程重新生成的,则默认情况下,批频率设置为 一次性使用 。 选择“ 事务”,选择“ 工资单”,然后选择“ 批处理”,然后选择重新创建的 Batch ID ,然后查看 Batch 设置。 如果这应该是定期批,请将频率更改为“单一使用”以外的频率

步骤 4:生成检查文件

再次生成 检查 文件。 所有批处理仍位于 检查 文件中。

常见问题:

问题 1:我不想删除整个工资批次并重新启动,是否仍应遵循上述步骤?

A1:是的,工资单批处理中的事务存储在 UPR10302 工资单交易表中,你不会删除上述脚本中的该表,因此不会删除事务。 脚本仅删除批处理标头记录 (UPR10301) ,当你运行 checklinks 时,系统会再次重新创建该批标头记录 (因为它仍然在事务上看到它,因此它会重新创建它。)

问题 2:我发布了新批,它消失了。 它应该是一个重复的批处理。

A2:运行检查链接以重新生成批处理时,默认情况下,它会使用一次使用频率生成该批。 如果批处理频率应该是重复批处理,则应在发布之前对其进行编辑。 如果已发布批处理,则现在为时已晚。 需要手动重新输入批/事务, (从下一个过帐日期开始,) ,并更改未来要使用的新批的频率。