AX 2012 AIF 出站端口数据策略 - 覆盖必填字段
AX 2012 AIF Outbound port Data Policy - override mandatory fields
我在 AX 2012 R3 CU10。
我需要以 XML 格式导出项目数据。
我已经根据服务操作创建了出站 AIF 端口 EcoResProductService.read
。
在选择数据策略时,AX 不允许我取消选中 /EcoResProduct/Product/Translation/LanguageId
的复选框(变灰),因为这是基础 table.
中的必填字段
这可以通过将其添加到 AxBC class 的 initMandatoryFieldsExemptionList
方法来覆盖。示例 here
所以,我在 \Classes\AxEcoResProductTranslation\initMandatoryFieldsExemptionList
上覆盖了它
protected void initMandatoryFieldsExemptionList()
{
super();
// LanguageId not mandatory
this.setParmMethodAsNotMandatory(methodstr(AxEcoResProductTranslation,parmLanguageId));
}
但是,之后数据策略中的复选框仍然保持灰色。
我尝试过的事情:
- 正向编译修改后的
AxBC
class
- 增量 CIL
- 重新启动 AOS
- AX 客户端配置 > tab:Connection >
button:Refresh配置
当我将我的代码与标准代码(如 AxAssetTable
进行比较时,initMandatoryFieldsExemptionList
已实现并正常工作。
AssetId
在那个数据策略中没有变灰。
有谁知道如何让 AX "see" 我对 LanguageId 的豁免?
您需要让系统更新 AIF 架构 table。您可以通过右键单击服务下 AOT 中的服务并单击 Add-Ins/Register 服务来执行此操作,或者打开表单 AifService 并单击刷新按钮以更新所有服务。
我在 AX 2012 R3 CU10。
我需要以 XML 格式导出项目数据。
我已经根据服务操作创建了出站 AIF 端口 EcoResProductService.read
。
在选择数据策略时,AX 不允许我取消选中 /EcoResProduct/Product/Translation/LanguageId
的复选框(变灰),因为这是基础 table.
中的必填字段
这可以通过将其添加到 AxBC class 的 initMandatoryFieldsExemptionList
方法来覆盖。示例 here
所以,我在 \Classes\AxEcoResProductTranslation\initMandatoryFieldsExemptionList
protected void initMandatoryFieldsExemptionList()
{
super();
// LanguageId not mandatory
this.setParmMethodAsNotMandatory(methodstr(AxEcoResProductTranslation,parmLanguageId));
}
但是,之后数据策略中的复选框仍然保持灰色。
我尝试过的事情:
- 正向编译修改后的
AxBC
class - 增量 CIL
- 重新启动 AOS
- AX 客户端配置 > tab:Connection > button:Refresh配置
当我将我的代码与标准代码(如 AxAssetTable
进行比较时,initMandatoryFieldsExemptionList
已实现并正常工作。
AssetId
在那个数据策略中没有变灰。
有谁知道如何让 AX "see" 我对 LanguageId 的豁免?
您需要让系统更新 AIF 架构 table。您可以通过右键单击服务下 AOT 中的服务并单击 Add-Ins/Register 服务来执行此操作,或者打开表单 AifService 并单击刷新按钮以更新所有服务。