TaxTrans 中的字段值不正确
如果 TaxTrans 中的字段值不正确,请使用本文中的信息来尝试解决此问题。
值概览
以下列表显示了 TaxTrans、TaxUncommitted 和 TmpTaxWorkTrans 是怎样的相似数据集,其工作方式不同。
- TaxTrans 是数据库中一直保留的最终的已过帐税收交易结果。
- TaxUncommitted 是数据库中持续保留的中间的计算得出的税收结果(如果适用),以后将在过帐中使用。
- TmpTaxWorkTrans 是内存表中临时的计算得出的税收结果(表类型 = InMemory)。
如果找到错误 TaxTrans 列的根本原因,则还会发现错误 TaxUncommitted 或 TmpTaxWorkTrans 列的根本原因,因为三列相互复制。
通常,在计算税款时,将生成 TmpTaxWorkTrans,然后生成 TaxUncommitted(如果适用)。 在税款过帐期间,生成 TaxTrans。
添加中断点
要添加中断点,请完成以下步骤:
在扩展中添加
insert()
update()
扩展和断点,如下所示。TaxTrans
[ExtensionOf(tableStr(TaxTrans))] public final class TaxTrans_Extension { public void insert() { next insert(); } public void update() { next update(); } }
TaxUncommitted
[ExtensionOf(tableStr(TaxUncommitted))] public final class TaxUncommitted_Extension { public void insert() { next insert(); } public void update() { next update(); } }
TmpTaxWorkTrans
[ExtensionOf(tableStr(TmpTaxWorkTrans))] public final class TmpTaxWorkTrans_Extension { public void insert(boolean _ignoreCalculatedSalesTax) { next insert(_ignoreCalculatedSalesTax); } public void update(boolean _ignoreCalculatedSalesTax) { next update(_ignoreCalculatedSalesTax); } }
或者,当未包含 TaxUncommitted 时,可以直接添加断点。
TaxTrans.insert()
,TaxTrans.update()
TmpTaxWorkTrans.insert()
,TmpTaxWorkTrans.update()
重现和调试
设置中断点后,在调试过程中可以看到每个数据持久性变化。 要查找 TaxTrans、TaxUncommitted 或 TmpTaxWorkTrans 列不正确的根本原因,请查看并注意以下各项:
- 列正确的最后一个中断点。
- 列不正确的第一个中断点。
- 在这两个点之间发生了什么。
确定是否存在自定义
如果已完成上一部分中的步骤,但尚未解决问题,请确定是否存在自定义。 如果不存在自定义,请联系 Microsoft 支持部门寻求帮助。