首页 > 解决方案 > 将字段添加到 Acumatica 中的数据访问类

问题描述

Acumatica 非常新,任何解释都将不胜感激。

我通过项目屏幕上的 DAC 添加了一个新字段。创建项目后,该字段将填充自定义项目 ID,该 ID 是一个整数。

这是代码:

namespace PX.Objects.PM
{
  public class ProjectEntry_Extension : PXGraphExtension<ProjectEntry>
  {
    #region Event Handlers
    protected void PMProject_RowInserted(PXCache cache, PXRowInsertedEventArgs e)
    { 
      var row = (PMProject)e.Row;
      row.UsrProjectID = 90000; //Custom Field with value
    }
    #endregion
  }
}

但是在验证项目时,它会返回错误:

\APP_CODE\Caches\ProjectEntry.cs 不包含“UsrProjectID”的定义,并且找不到接受“PX.Objects.PM.PMProject”类型的第一个参数的扩展方法“UsrProjectID”(您是否缺少 using 指令或装配参考?)

检查 DAC 后,我发现新字段已添加到 DAC ContractExt.usrProjectID中,如何将其添加到 PXProject DAC 或从代码事件中调用该字段?

标签: c#acumatica

解决方案


您需要添加以下行才能访问 DAC 扩展

ContractExt myext = PXCache<Contract>.GetExtension<ContractExt>(row);

myext.UsrProjectID =...


推荐阅读