Acumatica请购单总成本自定义计算
我添加了三个自定义十进制数?请购单主数据(RQ302000)上的字段,需要使用行基总成本/主数据总成本比率将这三个字段的总值按比例分配到每个请购行,并将结果显示为每行的附加成本(也是自定义小数?字段)。 更新这三个新字段时,应触发此计算 我不明白的是:Acumatica请购单总成本自定义计算,acumatica,Acumatica,我添加了三个自定义十进制数?请购单主数据(RQ302000)上的字段,需要使用行基总成本/主数据总成本比率将这三个字段的总值按比例分配到每个请购行,并将结果显示为每行的附加成本(也是自定义小数?字段)。 更新这三个新字段时,应触发此计算 我不明白的是: 1.应修改哪些与此需求相关的事件 2.如果是主字段上的事件,如何从行扩展字段获取值 3.如果是行字段上的事件,如何从主扩展字段获取值 1。“应修改哪些与此需求相关的事件?” 在类似于您的场景中,应该使用RowInserted、RowUpdate和
1.应修改哪些与此需求相关的事件
2.如果是主字段上的事件,如何从行扩展字段获取值
3.如果是行字段上的事件,如何从主扩展字段获取值 1。“应修改哪些与此需求相关的事件?” 在类似于您的场景中,应该使用RowInserted、RowUpdate和RowDeleted处理程序的组合: RowInserted事件处理程序用于实现以下业务逻辑:
- 在一对多关系中插入详细数据记录
- 以多对一关系更新主数据记录
- 以一对一关系插入或更新相关数据记录
- 以多对一关系更新主数据记录
- 在一对多关系中插入或更新详细数据记录
- 以一对一关系更新相关数据记录
- 删除一对多关系中的详细数据记录
- 以多对一关系更新主数据记录
- 删除或更新一对一关系中的相关数据记录
- 将包含修改字段的数据记录的相关字段指定为默认值或更新它们
- 更新以下任何内容:
- 详细数据以一对多关系记录
- 一对一关系中的相关数据记录
- 主数据以多对一关系记录
ContactExt contactExt = curLead.GetExtension<ContactExt>();
foreach(RQRequisitionLine line in Base.Lines.Select())
{
RQRequisitionLineExt lineExt = line.GetExtension<RQRequisitionLineExt>();
}
Base.Document.Current.GetExtension<RQRequisitionExt>();
ContactExt ContactExt=curLead.GetExtension();
ContactExt contactExt = Base.LeadCurrent.Cache.GetExtension<ContactExt>(curLead);
ContactExt ContactExt=Base.LeadCurrent.Cache.GetExtension(curLead);
或
ContactExt ContactExt=Base.Caches[typeof(Contact)].GetExtension(curLead);
ContactExt contactExt = PXCache<Contact>.GetExtension<ContactExt>(curLead);
ContactExt ContactExt=PXCache.GetExtension(curLead);
ContactExt contactExt = curLead.GetExtension<ContactExt>();
foreach(RQRequisitionLine line in Base.Lines.Select())
{
RQRequisitionLineExt lineExt = line.GetExtension<RQRequisitionLineExt>();
}
Base.Document.Current.GetExtension<RQRequisitionExt>();
foreach(RQRequisitionLine在Base.Lines.Select()中)
{
RQRequisitionLineExt lineExt=line.GetExtension();
}
3。“如果是行字段上的事件,如何从主扩展字段获取值”
这是一个简单的方法:上述3种方法相同,这次应用于主文档数据视图的当前属性,例如:
ContactExt contactExt = curLead.GetExtension<ContactExt>();
foreach(RQRequisitionLine line in Base.Lines.Select())
{
RQRequisitionLineExt lineExt = line.GetExtension<RQRequisitionLineExt>();
}
Base.Document.Current.GetExtension<RQRequisitionExt>();
Base.Document.Current.GetExtension();
假设我在主数据字段中使用fieldupdated事件,从line数据字段中获取值,通过特定的公式计算得到预期结果。那么如何将结果放在line数据字段中?将计算值分配给line数据字段,并调用Lines数据视图上的更新方法Base.Lines.Update(line)