【问题标题】:Sales order total different with actual total销售订单总额与实际总额不同
【发布时间】:2015-09-10 04:25:00
【问题描述】:

只需要知道在 acumatica ERP 4.2 中遇到销售订单文档问题的任何人,

与总行数相比,标题级别总和是错误的。有什么方法可以重新计算代码中的总数,因为我还无法从 acumatica 中找到修复程序?

【问题讨论】:

  • 您的意思是您从 4.2 切换到更新的版本?你能指出你使用哪种形式吗?
  • 我们还没有切换。我在询问销售订单(分销 > 销售订单 > 销售订单)
  • 我建议重新创建文档或更新数据库中的总值

标签: erp acumatica


【解决方案1】:

如果文档还没有关闭,你可以修改数量或添加/删除行。 如果文档已关闭,除了更改数据库中的数据之外,我看不到任何可能的方法。

【讨论】:

  • 这发生在打开的文档本身中。一旦值出错,即使您添加/删除/更新行也永远不会产生任何好的效果。添加将 (+) 具有现有值的值,依此类推。这意味着如果您从 salesorder 中删除所有行,要么使总计为除零以外的正值或负值
【解决方案2】:

我将我最近的经验添加到这个主题中,希望它可以帮助其他人。 几个月前,我编写了如下所示的代码,以预测它在被 RESTful 服务调用时的需求。它显然是不需要的,更糟糕​​的是,只是写了然后忘记了......

代码来自 SalesOrderEntryExt 图形扩展。 通过删除代码块,解决了 Order Total 翻倍的问题。

这也是一个在发现问题之前退出自定义代码的示例。

    protected void _(Events.RowInserted<SOLine> e, PXRowInserted del)
    {
        // call the base BLC event handler...
        del?.Invoke(e.Cache, e.Args);

        SOLine row = e.Row;

        if (!Base.IsExport) return;

        if (row != null && row.OrderQty > 0m)
        {
            // via RESTful API, raise event
            SOLine copy = Base.Transactions.Cache.CreateCopy(row) as SOLine;
            copy.OrderQty = 0m;
            Base.Transactions.Cache.RaiseRowUpdated(row, copy);
        }
    } 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-24
    • 1970-01-01
    • 2019-08-22
    • 2023-02-05
    相关资源
    最近更新 更多