Acumatica 反映成品上套件组件的组件

Acumatica 反映成品上套件组件的组件,acumatica,Acumatica,我的业务逻辑是专门化的,因此对于给定类别的库存项目,我们在套件规范中始终有一个默认组件数量为1的单个组件 我们在套件规格中列出了备用原材料零件,默认组件数量为0 我希望在记录中反映组件名称和组件中的一个或多个字段对相关库存商品成品的影响 我可以用PXFormula和Search组合来实现这一点吗?我试图做这种查找,但没有成功;我的原始零件字段得到0。(另外,希望显示组件的InventoryCD,而不是InventoryID。) ***#区域UsrRawPart [PXDBInt()] [PXUI

我的业务逻辑是专门化的,因此对于给定类别的库存项目,我们在套件规范中始终有一个默认组件数量为1的单个组件

我们在套件规格中列出了备用原材料零件,默认组件数量为0

我希望在记录中反映组件名称和组件中的一个或多个字段对相关库存商品成品的影响

我可以用PXFormula和Search组合来实现这一点吗?我试图做这种查找,但没有成功;我的原始零件字段得到0。(另外,希望显示组件的InventoryCD,而不是InventoryID。)

***#区域UsrRawPart
[PXDBInt()]
[PXUIField(DisplayName=“原始零件”,Enabled=false)]
[PXFormula(typeof(Search))]
公共虚拟Int32?UsrRawPart{get;set;}
公共抽象类usrRawPart:IBqlField{}
#端区**
我是否需要创建公式字段以将组件项聚合回成品项


还有其他方法吗?

当附加到未绑定字段时,
PXFormulaAttribute
仅订阅行选择处理程序。对于绑定字段,
PXFormula
Search
运算符一起使用时,不会执行任何操作

您希望框架何时执行您的
Search
语句?如果将记录插入
PXCache
,则
PXDefaultAttribute
会将您带到那里


要显示组件的InventoryCD而不是InventoryID,您应该使用
INVENTORY属性
INVENTORY维度的其他
PXDimensionSelectorAttribute
装饰该字段,并将SubstituteKey设置为
INVENTORY项。inventoryCD

根据与Ruslan的脱机讨论,公式字段不能像这样跨越对象。我将覆盖工具包规范上的Persist方法,并调用业务逻辑控制器对成品库存项进行更新。

谢谢!我希望它在初始插入时执行,并且如果套件规格上数量为1的组件项目发生变化。不确定我是否理解“如果套件规格上数量为1的组件项目发生变化”的意思。。。如果您提供两个屏幕截图来更详细地解释需求,那将非常有帮助。我已经上传了套件规格的屏幕截图(在原始问题描述中),其中包括标准组件(默认数量1)和备用组件(默认数量0)。我希望在成品库存项上动态显示标准组件。
**        #region UsrRawPart
    [PXDBInt()]
    [PXUIField(DisplayName = "Raw Part", Enabled = false)]
    [PXFormula(typeof(Search<INKitSpecStkDet.compInventoryID, Where<INKitSpecStkDet.dfltCompQty, Equal<decimal1>, And<INKitSpecStkDet.kitInventoryID, Equal<Current<InventoryItem.inventoryID>>, And<INKitSpecStkDet.revisionID, Equal<int1>>>>>))]        
    public virtual Int32? UsrRawPart { get; set; }
    public abstract class usrRawPart : IBqlField { }
    #endregion**