Acumatica 如何平均细节字段值的总和并将结果放入标题中
我在自定义屏幕的细节/网格部分有一个字段,我希望基本上平均(总和除以行数),然后在标题部分显示该值。我似乎找不到任何关于如何使用PXFormula字段执行此操作的示例。如果我需要使用RowSelected事件(或FieldUpdate事件),那就这样吧,但我希望用PXFormula字段来实现这一点。我是这样做的:Acumatica 如何平均细节字段值的总和并将结果放入标题中,acumatica,Acumatica,我在自定义屏幕的细节/网格部分有一个字段,我希望基本上平均(总和除以行数),然后在标题部分显示该值。我似乎找不到任何关于如何使用PXFormula字段执行此操作的示例。如果我需要使用RowSelected事件(或FieldUpdate事件),那就这样吧,但我希望用PXFormula字段来实现这一点。我是这样做的: protected virtual void xTACProjectMaster_RowPersisting(PXCache sender, PXRowPersistingEv
protected virtual void xTACProjectMaster_RowPersisting(PXCache sender, PXRowPersistingEventArgs e)
{
Decimal? totPctComplete = 0;
int rowCount = 0;
var pj = e.Row as xTACProjectMaster;
if (pj != null)
{
PXResultset<xTACProjectTask> res = PXSelect<xTACProjectTask,
Where<xTACProjectTask.projectID, Equal<Required<xTACProjectTask.projectID>>>>.Select(this, pj.ProjectID);
foreach (PXResult<xTACProjectTask> rec in res)
{
xTACProjectTask pt = rec;
totPctComplete += pt.PctComplete;
rowCount++;
}
if(rowCount > 0)
pj.PctComplete = totPctComplete / rowCount;
}
}
受保护的虚拟空间xTACProjectMaster\u行持久化(PXCache发送方,PXRowPersistingEventArgs e)
{
十进制?totPctComplete=0;
int rowCount=0;
var pj=作为xTACProjectMaster的e行;
如果(pj!=null)
{
PXResultset res=PXSelect.Select(this,pj.ProjectID);
foreach(PXResult rec以res表示)
{
xTACProjectTask pt=rec;
totPctComplete+=pt.pctccomplete;
行计数++;
}
如果(行计数>0)
pj.PctComplete=totPctComplete/rowCount;
}
}
您可以这样做,但需要创建计数运算符。请参见下面链接中的示例