acumatica - 无法访问 APTran - Acumatica 中的 UsrsubcontractNbr 字段
问题描述
如何在 rowselected 事件中启用 usrsubcontractNbr:我无法从两个 DAC(ApTran 和 ApTranExt)访问 usrSubcontractNbr
UsrSubcontractNbr 字段在构造功能包中定义。APTran 被转换成 dll。
如何访问该字段?
解决方案
似乎与这篇文章类似的问题:How to access Custom field,which is defined in Construction feature package-Acumatica
从构建安装包中搜索 PX.Objects.CN.dll 会发现:
using PX.Data;
using PX.Objects.AP;
using PX.Objects.CS;
namespace PX.Objects.CN.Subcontracts.AP.CacheExtensions
{
public sealed class ApTranExt : PXCacheExtension<APTran>
{
[PXString(15, IsUnicode = true)]
[PXUIField(DisplayName = "Subcontract Nbr.", Enabled = false, IsReadOnly = true)]
public string UsrSubcontractNbr
{
get
{
if (!(this.get_Base().get_POOrderType() == "RS"))
return (string) null;
return this.get_Base().get_PONbr();
}
}
[PXInt]
[PXUIField(DisplayName = "Subcontract Line", Enabled = false, IsReadOnly = true, Visible = false)]
public int? UsrSubcontractLineNbr
{
get
{
if (!(this.get_Base().get_POOrderType() == "RS"))
return new int?();
return this.get_Base().get_POLineNbr();
}
}
public static bool IsActive()
{
return PXAccess.FeatureInstalled<FeaturesSet.construction>();
}
public ApTranExt()
{
base.\u002Ector();
}
public abstract class usrSubcontractNbr : IBqlField, IBqlOperand
{
}
public abstract class usrSubcontractLineNbr : IBqlField, IBqlOperand
{
}
}
}
要访问该字段,您需要使用PX.Objects.CN.Subcontracts.AP.CacheExtensions.ApTranExt
编辑. 根据评论,如果在使用 rowselected 时遇到问题,请确保将签名与 PXRowSelected 委托一起使用,以便您可以控制何时启用代码以在基本调用之后运行。您可能会遇到在代码之后运行基本调用的问题,这可能会再次禁用该字段。
前任:
protected void APTran_RowSelected(PXCache cache, PXRowSelectedEventArgs e, PXRowSelected del)
{
del?.Invoke(cache, e);
var row = (APTran) e.Row;
if (row == null) return;
PXUIFieldAttribute.SetEnabled<PX.Objects.CN.Subcontracts.AP.CacheExtensions.ApTranExt.usrSubcontractNbr>(
cache, row, true);
}
推荐阅读
- python - bash:Python 导入 - 找不到熊猫的命令
- reactjs - 如何在不重新渲染的情况下更改元素的容器,从而重置状态
- testing - 其他几个跑步者的 testcafe 中的主跑步者?
- php - CakePHP 路由问题
- php - 正则表达式捕获打开和关闭大括号,但不应该
- ruby - 如何将返回值保存为字符串并在另一种方法中使用?
- docker - Docker 映像运行成功但连接超时
- c# - 当我转换为对象时,null GameObject 变为非 null
- python - 如何为熊猫修复“引发 ImportError(“需要假设> = 3.58 运行测试”)”?
- docker - Docker 守护进程(不是容器)无法读取环境变量