首页 > 解决方案 > 将默认值从一个网格设置为同一屏幕中的另一个网格

问题描述

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

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;

    }
}

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

标签: acumatica

解决方案


如果需要初始化一个字段 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);

推荐阅读