控制AIF文档服务架构

时间:2015-10-14 22:29:38

标签: schema axapta dynamics-ax-2012 generated aif

在使用向导创建文档服务时,在Dynamics AX 2012 R3 CU8上,系统会为服务中的不同操作生成架构。有没有办法控制生成的内容?

例如,如果我创建一个HcmWorker作为父查询而DirPerson作为孩子只有几个我感兴趣的字段的查询,那么系统会生成一些我不喜欢的模式。比如,我将在下面提到几个:

  1. 它添加了像AxdEntity_DirPerson_DirParty.Name这样的字段,即使我明确没有在查询中包含此字段

  2. 此字段的minOccurs是1,由于它是计算字段,因此无法工作。我更喜欢这个领域不包括在内。如果那是不可能的,至少我想有minOccurs = 0

  3. 为了使问题更加有趣,导入工作者的标准服务(HcmWorkerImportService)对于Name字段具有minOccurs = 0。

    我试图弄清楚如何控制这些值。

1 个答案:

答案 0 :(得分:0)

查看initMandatoryFieldsMap课程中的AxdBase方法,并在HcmWorkerImportService中根据需要覆盖该方法。

  

initMandatoryFieldsMap方法指定哪些字段是必填字段   在文档类发送或接收的XML中。这个方法是   用于指定文档的必填字段而不指定   他们在桌面上。

请参阅:MSDN: Walkthrough: Creating a Service Using the AIF Document Service Wizard"要覆盖initMandatoryFieldsMap方法"

示例:

protected void initMandatoryFieldsMap() 
{ 
    super();   
    this.setParmMethodAsMandatory(classnum(AxdSalesOrder), 
                                  methodstr(AxdBase,parmDocPurpose)); 
}

请参阅:AxdBase.initMandatoryFieldsMap Method