在同一屏幕中将默认值从一个网格设置为另一个网格

时间:2018-05-29 14:39:45

标签: acumatica

我试过,但是当我选择网格中的任何字段然后说保存时,值会更新。

protected void TSFormulaByProds_DefaultSiteID_FieldSelecting(PXCache cache, PXFieldSelectingEventArgs e)
{
    var row = (TSFormulaByProds)e.Row;          

    TSFormula tSFormula = PXSelect<TSFormula>.Select(this);

    if (tSFormula.DefaultSiteID != null)
    {
        e.ReturnValue = tSFormula.DefaultSiteID;

    }
}

我想在保存之前和从网格中选择第一个字段后更新另一个网格值

1 个答案:

答案 0 :(得分:0)

如果需要初始化字段,FieldDefaulting是适当的事件。

protected void TSFormulaByProds_DefaultSiteID_FieldDefaulting(PXCache cache, PXFieldDefaultingEventArgs e)
{
    e.NewValue = yourValueHere;
}

插入新的DAC行时将执行。

如果您需要从另一个事件重新触发默认逻辑,您可以这样做:

object newValue;
Cache[typeof(TSFormulaByProds)].RaiseFieldDefaulting<TSFormulaByProds.DefaultSiteID>(yourTSFormulaByProdsDACRow, out newValue);