c# - 将字段添加到 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 或从代码事件中调用该字段?
解决方案
您需要添加以下行才能访问 DAC 扩展
ContractExt myext = PXCache<Contract>.GetExtension<ContractExt>(row);
myext.UsrProjectID =...
推荐阅读
- python - 将数据框浮动到字符串 txt 文件
- python - 编写 if-elif-elif-elif-else 的更好方法?
- c# - 根据我的api返回的内容设置我的属性变量并填充动态创建的变量
- visual-studio-code - VSCode Intellisense 在 Jupyter Notebook Extension(MacOS)中不起作用
- python - 在OpenCV python中绘制最大面积轮廓的质心
- sql - 从特定键开始选择记录
- mysql - 对于按主键索引的顺序放置分区键的位置是否有一般规则?
- mysql - 我想在 MySQL 上的 while 条件中添加一个属性
- html - 如何在 HTML 中使用 div 标签
- amazon-redshift - 在 Redshift 中查找下一个最旧的行