Acumatica PXUIFieldAttribute SetError 给出错误
Acumatica PXUIFieldAttribute SetError giving error
我正在尝试验证输入到我的 Support Split
table 中的值,为什么我无法获取我的 ItemExtension
?
protected void atcProjectCostCenterTable_CostCenterSplit_FieldVerifying(PXCache cache, PXFieldVerifyingEventArgs e, PXFieldVerifying InvokeBaseHandler)
{
if (InvokeBaseHandler != null)
InvokeBaseHandler(cache, e);
var row = (atcProjectCostCenterTable)e.Row;
if (row.ContractID > 0)
{
decimal? hun = 100;
PX.Objects.CT.ContractExt item = row.GetExtension<PX.Objects.CT.ContractExt>();
if (CostCenterSplit.Select().Count >= 1)
{
if (item.UsrCostCenterSum.Value != hun)
{
PXUIFieldAttribute.SetError<atcProjectCostCenterTable.costCenterSplit>(cache, row, "Support Percentages must equal 100%");
//throw new PXSetPropertyException("Cost Center Percentages must equal 100%", PXErrorLevel.Warning);
}
}
}
}
Nick,请替换
PX.Objects.CT.ContractExt item = row.GetExtension<PX.Objects.CT.ContractExt>();
和
PX.Objects.CT.ContractExt item = Base.Project.Current.GetExtension<PX.Objects.CT.ContractExt>();
或
PX.Objects.CT.ContractExt item = Base.Project.Cache.GetExtension<PX.Objects.CT.ContractExt>(Base.Project.Current);
您当前的代码无法工作,因为 ContractExt 扩展了 Contract DAC,而不是 atcProjectCostCenterTable。由于 PMProject 继承自 Contract,因此为 Contract DAC 定义的 DAC 扩展也可用于 PMProject 实例。
Contract con = Base.Project.Current;
PX.Objects.CT.ContractExt item = con.GetExtension<PX.Objects.CT.ContractExt>();
我正在尝试验证输入到我的 Support Split
table 中的值,为什么我无法获取我的 ItemExtension
?
protected void atcProjectCostCenterTable_CostCenterSplit_FieldVerifying(PXCache cache, PXFieldVerifyingEventArgs e, PXFieldVerifying InvokeBaseHandler)
{
if (InvokeBaseHandler != null)
InvokeBaseHandler(cache, e);
var row = (atcProjectCostCenterTable)e.Row;
if (row.ContractID > 0)
{
decimal? hun = 100;
PX.Objects.CT.ContractExt item = row.GetExtension<PX.Objects.CT.ContractExt>();
if (CostCenterSplit.Select().Count >= 1)
{
if (item.UsrCostCenterSum.Value != hun)
{
PXUIFieldAttribute.SetError<atcProjectCostCenterTable.costCenterSplit>(cache, row, "Support Percentages must equal 100%");
//throw new PXSetPropertyException("Cost Center Percentages must equal 100%", PXErrorLevel.Warning);
}
}
}
}
Nick,请替换
PX.Objects.CT.ContractExt item = row.GetExtension<PX.Objects.CT.ContractExt>();
和
PX.Objects.CT.ContractExt item = Base.Project.Current.GetExtension<PX.Objects.CT.ContractExt>();
或
PX.Objects.CT.ContractExt item = Base.Project.Cache.GetExtension<PX.Objects.CT.ContractExt>(Base.Project.Current);
您当前的代码无法工作,因为 ContractExt 扩展了 Contract DAC,而不是 atcProjectCostCenterTable。由于 PMProject 继承自 Contract,因此为 Contract DAC 定义的 DAC 扩展也可用于 PMProject 实例。
Contract con = Base.Project.Current;
PX.Objects.CT.ContractExt item = con.GetExtension<PX.Objects.CT.ContractExt>();