Schema Validation and AIF Services in Dynamics AX

by | Updated November 3, 2020 | Development, Dynamics AX

While attempting to create a Transfer Order with the InventInventoryTransferOrderCreateService you may encounter an error similar to this:

The element ‘InvTransTable’ in namespace ‘http://schemas.microsoft.com/dynamics/2008/01/documents/TransferOrderCreate’ has invalid child element ‘InventLocationIdTransit’ in namespace ‘http://schemas.microsoft.com/dynamics/2008/01/documents/TransferOrderCreate’. List of possible elements expected: ‘InventLocationIdFrom’ in namespace ‘http://schemas.microsoft.com/dynamics/2008/01/documents/TransferOrderCreate’.

The problem appears to be that the ‘InventLocationIdTransit’ field doesn’t belong in the document.  If you load the XML and XSD files Visual Studio you can verify the message is valid.

Schema Validation

Looking at the XSD, you can see that the asdf field is defined, and allowed to be null.

Schema Validation

 

What isn’t so obvious, is that the previous two fields are required. Both ‘InventLocationIdFrom’ and ‘InventLocationIdTo’ must be specified. The Xml document validation engine is working through the XSD from top to bottom. When it encounters the ‘InventLocationIdTransit’ field it knows it missed ‘InventLocationIdFrom’; but fails to tell you that a required field is missing.

The obvious way to fix the issue is to make sure you specify all required values. There may be times however when your business logic can compensate for missing values. For these scenarios, you can modify the schema so that the fields are no longer mandatory. To do this you need to override the AxInternalBase::initMandatoryFieldsExemptionList() method for your object. In this case, the modified class is AxInventTransferTable.

For more information, check out our article on AIF Services.

Related Posts

  • Over on the AX Support site on MSDN, Daniel Durrer has taken the time to keep tabs on the latest builds for Microsoft Dynamics AX 4.0, 2009 and 2012.  I…

  • On July 1, 2013, Microsoft released a Software as a Service (SaaS) platform for Microsoft Dynamics AX that provides a portal and a set of tools to aid in the…

  • I recently came across an issue dealing with project validation in Dynamics AX. Displayed here are a couple setup features in the project management and accounting module and  some tips that might help…

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Upcoming Events

november

05nov11:00 am12:00 pmConfab with Stoneridge - Livestream - Project Oakdale: The NEW Integration of Power Platform into Teams

18nov10:00 am10:30 amThe Modern Manufacturer - Tears and Trauma of MRP

19nov11:00 am12:00 pmConfab with Stoneridge - Livestream - Project Oaktree: NEW Functionality for Dynamics 365 Manufacturing

december

02dec9:00 am12:00 pmOnline Workshop - Dynamics GP Year End Close (Morning Session)

03dec11:00 am12:00 pmConfab with Stoneridge - Livestream: Live Agents, Power Virtual Agents, Omnichannel – Oh My!

03dec1:00 pm4:00 pmOnline Workshop - Dynamics GP Year End Close (Afternoon Session)

09dec10:00 am10:30 amThe Modern Manufacturer - Manufacturing Policy Management

17dec11:00 am12:00 pmConfab with Stoneridge - Livestream - Technology in 2020: A Year in Review

About Stoneridge
Stoneridge Software is a unique Microsoft Gold Partner, with emphasis on partner. With specialties in Microsoft Dynamics 365, Microsoft Dynamics AX, Microsoft Dynamics NAV, Microsoft Dynamics GP and Microsoft Dynamics CRM, we focus on attracting the most knowledgeable experts in the field to our team, and prioritize delivering stellar solutions with maximum impact for your business. At Stoneridge, we are deeply committed to your results. Each engagement is met with a dedicated team, ready to provide thorough, tailored, and expert service. Based in Minnesota, we intentionally “step into your shoes,” wherever you are. We focus on what you care about, and develop trusting, long-term relationships with our clients.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!

X