【问题标题】:How To Refresh Weight On Sales Orders In Acumatica?如何在 Acumatica 中刷新销售订单的权重?
【发布时间】:2016-08-18 15:35:43
【问题描述】:

有没有办法刷新 Acumatica 中销售订单的“总计”选项卡中显示的重量?如果您创建销售订单并添加重量为 2KG 的项目并保存,则总计选项卡将正确显示 2KG。但后来我将 Inventory Item 部分的重量更改为 5KG。有没有办法让销售订单更新该重量(除了删除项目并重新添加)?

谢谢, G

【问题讨论】:

  • 据我所知,这是正确的行为。如果您更改库存项目参数,则不应更改已创建的销售订单。

标签: acumatica


【解决方案1】:

重量存储在数据库中的 SO Line 中,并在选择库存项目时自动计算。 Acumatica 会在您更新 InventoryItemID 或 UOM 时自动刷新默认值。

不确定这是不是最好的方法,但我可以建议两种方法:

1) 如果您需要以非编程方式使用它,您可以使用导出方案来更新所有未结/持有订单的 UOM(然后将其改回)。

2) 另一种是自定义方式 - 创建一个将更新 whiigt 的操作。 您可以使用相同的导入场景或 GI 批量操作自动单击此操作。

public class SOOrderEntry_Extension:PXGraphExtension<SOOrderEntry>
  {
    public PXAction<SOOrder> recalculateWeight;
    [PXUIField(DisplayName = "Recalculate Weight", MapEnableRights = PXCacheRights.Update, MapViewRights = PXCacheRights.Update, Visible = false)]
    [PXButton(SpecialType = PXSpecialButtonType.Process)]
    public virtual void RecalculateWeight()
    {
      foreach(SOLine line in Base.Transactions.Select())
      {
        Base.Transactions.Cache.SetDefaultExt<SOLine.unitWeigth>(line);
        Base.Transactions.Update(line);
      }
    }
  }

【讨论】:

  • 感谢 Sergey,将尝试自定义,听起来不错 :)
猜你喜欢
  • 1970-01-01
  • 2015-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多