<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Supply Chain Management in Dynamics AX</title><subtitle type="html">This blog contains information and feedback on the Supply Chain Management area in Microsoft Dynamics AX</subtitle><id>http://blogs.msdn.com/b/dynamicsaxscm/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/b/dynamicsaxscm/atom.aspx" /><generator uri="http://telligent.com" version="5.6.50428.7875">Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><updated>2012-09-11T14:51:00Z</updated><entry><title>Import Vendor Catalogs – Part 3 (Troubleshooting)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2013/03/07/import-vendor-catalogs-part-3-troubleshooting.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2013/03/07/import-vendor-catalogs-part-3-troubleshooting.aspx</id><published>2013-03-07T13:35:58Z</published><updated>2013-03-07T13:35:58Z</updated><content type="html">&lt;p&gt;It’s seems like it’s time for a new post in the series about importing vendor catalogs in Dynamics AX 2012. The previous couple of blog posts covered &lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/08/29/import-vendor-catalogs-from-setup-to-importing-a-sample-catalog-part-1-setup.aspx"&gt;setup&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/09/import-vendor-catalogs-from-setup-to-importing-a-sample-catalog-part-2-importing-a-sample-catalog.aspx"&gt;importing a sample catalog&lt;/a&gt;. It’s all well and nice but what if something went wrong somewhere along the way of setting up the feature. Below you will find a list of problems that can arise during vendor catalog import setup. And of course the solutions to the problems will be described in detail.&lt;/p&gt;  &lt;h2&gt;Questions and Answers&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;I try to import a Vendor catalog with Dynamics AX. I generate the XSD File but it is really not clear how to populate it.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The XSD file that you can generate from the vendor catalog form provides you with the schema of the CMR file that can be imported. XSD (&lt;a href="http://en.wikipedia.org/wiki/XML_Schema_(W3C)"&gt;XML Schema Definition&lt;/a&gt;) is one of several &lt;a href="http://en.wikipedia.org/wiki/XML_schema"&gt;XML schema languages&lt;/a&gt;. The blog post about &lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/09/import-vendor-catalogs-from-setup-to-importing-a-sample-catalog-part-2-importing-a-sample-catalog.aspx"&gt;importing a sample catalog&lt;/a&gt; contains a detailed list of steps that you need to take to generated a sample CMR file.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;I’d like to see an example of a CMR file with data to import?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;It is important to note that the XSD schema for CMR files depends on the procurement hierarchy that you set up in Dynamics AX so the chances of successfully importing sample CMR files are really-really low because the XSD schema produced from your system will most probably differ from the one that was used to generate the sample file. However it’s always nice to see a sample file just to have an idea of what kind of beast the CMR file is. Below is the XML that a sample file might contain:&lt;/p&gt;  &lt;div id="codeSnippetWrapper" style="margin: 20px 0px 10px; padding: 4px; border: 1px solid silver; width: 97.5%; text-align: left; line-height: 12pt; overflow: auto; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; cursor: text; direction: ltr; max-height: 200px; background-color: rgb(244, 244, 244);"&gt;   &lt;div id="codeSnippet" style="padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;     &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;xml&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;version&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;1.0&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;encoding&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;utf-8&amp;quot;&lt;/span&gt;?&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;VendorCatalog&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;VendorName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;CatImpVend&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;LoadDate&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;1900-01-01T01:01:01+01:00&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;ProductClassification&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;Procurement Category&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;xmlns&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;http://dax.com/vendorcatalog&amp;quot;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;  &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Product&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;xmlns:xsi&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;xsi:type&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;root&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;Delete&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;No&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;ProductCode&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;ProductCode1&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;ProductSearchName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;ProductSearchName1&amp;quot;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;PriceInformation&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;      &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Price&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;Currency&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;USD&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;UnitOfMeasure&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;%&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;Value&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;100&amp;quot;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;      &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Price&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;PriceInformation&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;ProductNameAndDescription&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;      &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;NameAndDescription&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;        &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Description&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;Description1&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Description&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;        &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Name&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;Name1&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Name&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;        &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Language&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;af&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Language&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;      &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;NameAndDescription&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;ProductNameAndDescription&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;ProductAttributes&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;      &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Color&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;Language&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;af&amp;quot;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;Blue&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Color&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;ProductAttributes&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;  &lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;Product&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;VendorCatalog&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;I’m getting the error “Imported schema for namespace ‘http://www.w3.org/XML/1998/namespace’ was not resolved” when trying to generate in Visual Studio a sample CMR file based on the XSD schema.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is a known issue. The workaround is to remove the line below from the XSD file: &lt;/p&gt;

&lt;div id="codeSnippetWrapper" style="margin: 20px 0px 10px; padding: 4px; border: 1px solid silver; width: 97.5%; text-align: left; line-height: 12pt; overflow: auto; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; cursor: text; direction: ltr; max-height: 200px; background-color: rgb(244, 244, 244);"&gt;
  &lt;div id="codeSnippet" style="padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: rgb(244, 244, 244);"&gt;
    &lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;xs:import&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;schemaLocation&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;http://www.w3.org/2001/xml.xsd&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;namespace&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=&amp;quot;http://www.w3.org/XML/1998/namespace&amp;quot;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When I run the AIF job for processing no error is given but the status of the import in the Catalog file history does not change&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The error was most probably logged in the AIF exception log: System administration\Periodic\Application integrationServices and Application Integration Framework\Exceptions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In the AIF exception log there is an error: Could not find schema information for the element 'http://dax.com/vendorcatalog:VendorCatalog'.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Make sure that you set up the inbound port in AIF as in &lt;a href="http://msdn.microsoft.com/en-us/library/hh533450.aspx"&gt;Walkthrough: Configuring an inbound integration port for catalog import [AX 2012]&lt;/a&gt;. Pay special attention to the paragraph about setting up the pipeline component:&lt;/p&gt;

&lt;p&gt;The catalog import service requires a special component that processes CMR documents. To enable this component, follow these steps. &lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;In the &lt;strong&gt;Inbound ports&lt;/strong&gt; form, on the &lt;strong&gt;Processing options&lt;/strong&gt; tab, select the &lt;strong&gt;Preprocess service operation requests&lt;/strong&gt; check box, and then click &lt;strong&gt;Inbound pipelines&lt;/strong&gt;. &lt;/p&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;p&gt;In the &lt;strong&gt;Inbound pipelines&lt;/strong&gt; form, click &lt;strong&gt;Add&lt;/strong&gt;. Then, in the &lt;strong&gt;Class name&lt;/strong&gt; list, select CatVendorXmlTransform. &lt;/p&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;p&gt;In the &lt;strong&gt;Purpose&lt;/strong&gt; field, enter an optional description, such as “Transform vendor XML files,” and then close the &lt;strong&gt;Inbound pipelines&lt;/strong&gt; form. &lt;/p&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;p&gt;Click &lt;strong&gt;Activate&lt;/strong&gt; to deploy the integration port.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;When I'm trying to set the Root folder path in the Vendor catalog import parameters nothing happens when I click the OK button.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The reason is most probably because the user account that is used to run AOS does not have permissions to the folder you chose.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;I hope this information was useful. I would like to make this article into a live blog post. So if you have any problems with setting up vendor catalog import please write to me or post a comment and I will do my best to resolve your problem and post the resolution in this article.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10400270" width="1" height="1"&gt;</content><author><name>Vanya Lebedev</name><uri>http://blogs.msdn.com/ilebedev_4000_outlook.com/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>What's New in Microsoft Dynamics AX 2012 R2 for Product Information Management</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/18/what-s-new-in-microsoft-dynamics-ax-2012-r2-for-product-information-management.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/18/what-s-new-in-microsoft-dynamics-ax-2012-r2-for-product-information-management.aspx</id><published>2012-12-18T11:03:00Z</published><updated>2012-12-18T11:03:00Z</updated><content type="html">&lt;p&gt;This blog post describes some of the enhancements to the Product Information Management (PIM)&lt;br /&gt;area that have been implemented in the R2 release after the launch of Microsoft Dynamics AX 2012 (RTM).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Discovering the small secrets of the Authorized by&lt;br /&gt;company fact box&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Yes, it almost qualifies as an Easter egg! If you resize the Authorized by company fact box in R2,&amp;nbsp;you will find a new column by the end of the grid, and in this column you&amp;rsquo;ll find the item number that identifies the product within its legal entity.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81/5732.blog1.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81/5732.blog1.png" alt="" width="344" height="239" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;This field saves you the hassle of first having to select the company and then the &lt;em&gt;More&lt;/em&gt; link to be able to right-click on the Item number field in order to jump to the details of the product in the specific legal entity. Since these fields are part of a grid, you can of course drag the Item number field closer to the company field and thereby have a smaller FactBox with the direct link.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81/1616.blog2.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81/1616.blog2.png" alt="" width="178" height="219" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This allows you to jump directly to the record and continue the setup process for the product, with the option to use templates.&lt;/p&gt;
&lt;p&gt;And speaking of templates&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;ldquo;Catching&amp;rdquo; the process fields in templates&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;With the addition of the Process Industry (PI) solution, a lot of new functionality and product characteristics have been enabled. A small subset of the fields that were added with the solution brought about some minor issues and especially the question of whether a field was a catch weight item or not has caused some confusion.&lt;br /&gt;These issues have now been resolved in order to unblock the procedure.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Enhancing the product services&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you rely on some of your products to be created via AIF services, you will find a couple of updates to the services.&lt;/p&gt;
&lt;p&gt;Firstly, the PI characteristics have been added to the released product services, allowing you to read and write product definitions.&lt;/p&gt;
&lt;p&gt;Secondly, a much requested field such as the default order type has been added to the released product service. This allows you to indicate whether the product should be purchased or produced or if it should use Kanban.&lt;/p&gt;
&lt;p&gt;And thirdly, the product and product master dimension value services have been updated to offer full CRUD support.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10378980" width="1" height="1"&gt;</content><author><name>Mai-Britt Winther</name><uri>http://blogs.msdn.com/mwinther_4000_messengeruser.com/ProfileUrlRedirect.ashx</uri></author><category term="SCM" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/SCM/" /><category term="Item-Product Data Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Item_2D00_Product+Data+Management/" /><category term="Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+Ax+2012/" /><category term="Product information management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+information+management/" /><category term="Product-item data management services" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product_2D00_item+data+management+services/" /><category term="AX" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/AX/" /><category term="Product template" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+template/" /><category term="Dynamics AX 2012 R2" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+AX+2012+R2/" /></entry><entry><title>Monitor and analyse current and future warehouse space utilization with Dynamics AX 2012 R2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/12/monitor-and-analyse-current-and-future-warehouse-space-utilization-with-dynamics-ax-2012-r2.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/12/monitor-and-analyse-current-and-future-warehouse-space-utilization-with-dynamics-ax-2012-r2.aspx</id><published>2012-12-11T23:37:01Z</published><updated>2012-12-11T23:37:01Z</updated><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;It’s the warehouse managers’ responsibility to make sure that sufficient space is available for all goods that are to be stored in the warehouses that they control. This can be a challenging task. Warehouse space is expensive, and warehouse managers must avoid an excess of free space and on the other hand they must make sure that space is available at the time when goods arrive at the warehouse locations. &lt;/p&gt;  &lt;p&gt;In some industries, a shortage of space at the time when goods arrive at a warehouse location can result in huge financial losses for a company. If, for example, there is not space in a warehouse when a truck load of frozen fish arrives, the warehouse manager cannot just unload the fish on the parking lot outside the buildings. Possible solutions to the problem would be to redirect goods to another warehouse owned by the company, to buy inventory space at the warehouse hotels, or, if there are no other options, to send the goods back. &lt;/p&gt;  &lt;p&gt;All of the solutions mentioned above to the problem of not being able to store goods due to a lack of available warehouse space, will result in added expenses for the warehouse and they might even result in goods not being available for customers or the production. &lt;/p&gt;  &lt;p&gt;What is important for the warehouse manager is to be able to quickly get an overview of the current space utilization in terms of, for example, pallets, volume or weight and to be able to project the future space utilization based on transactions generated by master planning. &lt;/p&gt;  &lt;p&gt;In Dynamics AX 2012 R2, a new report provides a possibility of short and long term operation planning for current and future space utilization of a warehouse. &lt;/p&gt;  &lt;h5&gt;How the space utilization feature can help the warehouse manager&lt;/h5&gt;  &lt;p&gt;As already mentioned, warehouse managers manage the space that is available in the warehouse and they must make sure that the inbound products can be stored in the warehouse. Information about current and forecasted space utilization can enable the warehouse manager to make decisions about where items should be stored. The new report can help the warehouse manager to identify problems with missing space for items that will arrive today or in the future and it can provide insights in transaction details that are related to an excess of unused space. &lt;/p&gt;  &lt;p&gt;To avoid space related issues, the warehouse manager can analyze the amount of capacity that the warehouse or warehouses are currently using and the amount they will use in the future. The warehouse manager can get a detailed overview of the transactions that cause space management issues, and maybe these issues can be avoided by using projections that allow more lead time.&lt;/p&gt;  &lt;p&gt;The space utilization feature in Microsoft Dynamics AX 2012 R2 can display the current capacity of a warehouse and the projected capacity of the future. Capacity can be displayed in pallets (if advanced WMS is used), weight, or volume. Forecasted capacity is based on a master plan and other space utilization settings as defined by the warehouse manager. This will be covered in the sections below.&lt;/p&gt;  &lt;p&gt;The warehouse manager can: &lt;/p&gt;  &lt;p&gt;· Choose a master plan based on the need of a space utilization analysis. &lt;/p&gt;  &lt;p&gt;· Select how many days of future space need to be calculated&lt;/p&gt;  &lt;p&gt;· Specify if either planned or confirmed transactions or both should be included in the report. &lt;/p&gt;  &lt;p&gt;Space utilization is calculated from transactions that are generated by a master plan for the warehouse. The calculation model uses the space utilization situation in the warehouse from before the last MRP run. All of the transactions that are to happen on that warehouse space are calculated no matter if they are planned or confirmed. The result as it would look by the end of the day is shown in percentage vs. maximal space available. The result can be viewed in pallets, volume, or weight provided that this information is set up correctly for all of the products. &lt;/p&gt;  &lt;p&gt;· Check the setting of the products on the &lt;b&gt;Manage inventory&lt;/b&gt; fast tab in the &lt;b&gt;Released product details&lt;/b&gt; form under &lt;b&gt;Product information management&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;Reports provide warning functionality for master data configurations. For example, say that the warehouse space utilization report is viewed in a unit volume and there is a purchase order line with an item that does not have any setup for physical dimensions. In this case a warning will be shown for this instance and for all similar cases. A detailed report will be generated for all of the missing inventory item setups. If items do not have fallback warehouses, this will be included in the report as well. A warning icon on the report indicates to the warehouse manager that calculations might not be precise and that a fallback warehouse or some inventory item setups are missing. &lt;/p&gt;  &lt;h5&gt;How to use the space utilization feature&lt;/h5&gt;  &lt;p&gt;To use the Space utilization feature in Microsoft Dynamics AX 2012 R2, you must complete the following three steps. Also, data from at least one master plan must be created before the report can be generated.&lt;/p&gt;  &lt;p&gt;Master planning &amp;gt; &lt;b&gt;Periodic&lt;/b&gt;&amp;gt; &lt;b&gt;Master scheduling&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/6747.clip_5F00_image002_5F00_679BBAE5.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image002" border="0" alt="clip_image002" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/5658.clip_5F00_image002_5F00_thumb_5F00_1057202F.png" width="478" height="253" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 1&lt;/p&gt;  &lt;p&gt;Configure and run the report:&lt;/p&gt;  &lt;p&gt;1. Configure one or more space utilization setup templates.&lt;/p&gt;  &lt;p&gt;2. Run the &lt;b&gt;Schedule load utilization&lt;/b&gt; periodic job.&lt;/p&gt;  &lt;p&gt;3. Analyze the space utilization information. This can be accomplished in one of two ways:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;1. Run the Warehouse load utilization report from Inventory and warehouse management in Dynamics AX 2012 R2.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;2. View the report in the &lt;b&gt;Space utilization&lt;/b&gt; web part in the &lt;b&gt;Warehouse manager&lt;/b&gt; role center.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;1. Configure one or more space utilization setup templates.&lt;/p&gt;  &lt;p&gt;Click &lt;b&gt;Inventory and warehouse management&lt;/b&gt; &amp;gt; &lt;b&gt;Setup&lt;/b&gt; &amp;gt; &lt;b&gt;Warehouse reports&lt;/b&gt; &amp;gt; &lt;b&gt;Space utilization&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/0044.clip_5F00_image004_5F00_29DEAD5C.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image004" border="0" alt="clip_image004" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7360.clip_5F00_image004_5F00_thumb_5F00_47045566.png" width="617" height="313" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 2&lt;/p&gt;  &lt;p&gt;From the &lt;b&gt;Schedule load utilization&lt;/b&gt; form, you can create any number of space utilization setups and switch between the setups. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Space utilization: &lt;/b&gt;Enter the space utilization ID.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Name:&lt;/b&gt; Enter the space utilization name.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Storage load mode:&lt;/strong&gt; In the Storage load field, you can select Warehouse, Zone or warehouse and Zone. This field is used to determine the output of the report. For example, if you select Warehouse, one line is printed for each warehouse. If you select Zone, one line is printed for each store zone. If you select Warehouse and zone, one line is printed for each warehouse and store zone combination. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Exclude blocked locations:&lt;/b&gt; When this check box is selected, the report will not include capacity for a location that is locked by the inventory blocking feature.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Location type:&lt;/b&gt; Select location types to be used as available allowed space. The information on the Location type FastTab is used when you run the Schedule load utilization periodic job in step 2 below. When the current and forecasted capacity is calculated, only location types that are selected are analyzed. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; The setup only needs to be created once. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;2. Run the &lt;b&gt;Schedule load utilization&lt;/b&gt; periodic job.&lt;/p&gt;  &lt;p&gt;Open Inventory and warehouse management &amp;gt; Periodic &amp;gt; Schedule load utilization.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/2260.clip_5F00_image005_5F00_5D76F3ED.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image005" border="0" alt="clip_image005" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/5707.clip_5F00_image005_5F00_thumb_5F00_348BDEE4.png" width="519" height="296" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 3&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Master plan: &lt;/b&gt;Select the master plan that you want to use for space utilization calculations.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; the warehouse manager can shift to another master plan at any time. This is useful in order to determine how the space utilization will look if the planning team decides to change to another plan. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Number of days: &lt;/b&gt;Enter the number of days that you want to project and analyze warehouse space utilization for in the future. The current report shows space utilization for 10 days in the future. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Space utilization: &lt;/b&gt;Select the space utilization configuration to be used in combination with the number of days and the master plan that is selected in step 1.&lt;/p&gt;  &lt;p&gt;Click &lt;b&gt;OK&lt;/b&gt; to generate data for the report. &lt;/p&gt;  &lt;p&gt;Use the options on the Batch tab to schedule the generation of data for report as a batch process. Normally the batch process is set to run automatically once a day after the master planning has been completed. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;3. Analyze the space utilization information (generated in step 2).&lt;/p&gt;  &lt;p&gt;As mentioned previously, the report can be viewed from the warehouse manager’s role center (out-of-the-box), or from the Dynamics AX client. This description is based on Dynamics AX 2012 R2 client. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Note&lt;/b&gt;: To be able to view the report from the warehouse manager’s role center page, the configuration and generation of data in step 1 and 2 must be completed. &lt;/p&gt;  &lt;p&gt;Complete the following setup to run the report:&lt;/p&gt;  &lt;p&gt;Open &lt;b&gt;Inventory and warehouse management&lt;/b&gt; &amp;gt; &lt;b&gt;Reports&lt;/b&gt; &amp;gt; &lt;b&gt;Analysis&lt;/b&gt; &amp;gt; &lt;b&gt;Warehouse load utilization&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8422.clip_5F00_image006_5F00_79580318.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image006" border="0" alt="clip_image006" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/0160.clip_5F00_image006_5F00_thumb_5F00_3698B7E0.png" width="687" height="291" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 4&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Show by&lt;/b&gt;: Use this field to determine how the rows of the report are displayed. If you select Site, one row is printed for each site. If you select Load unit, the Storage load field on the Space utilization setup template is used to determine how the rows are printed (Warehouse, Zone or Warehouse and Zone). If you select Site, a report will be generated on the site level where each site can contain load units of the types Warehouse, Zones, and Warehouse and zone. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Site:&lt;/b&gt; Select&lt;b&gt; &lt;/b&gt;one or more sites. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Load unit: &lt;/b&gt;When one or more sites and a space utilization setup are selected, load units are displayed for all the sites that are selected under Site. The Load unit field only applies if the Show by field is set to Load unit and the Space utilization setup field is selected. The options in the Load unit field varies based on the option selected in the Storage load field for the current space utilization setup. For example, if storage load is set to Zone, a list of store zones is displayed in the Load unit field.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Load type:&lt;/b&gt; Indicate if the report percentages should be calculated and viewed using pallet, volume or weight. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Space utilization setup:&lt;/b&gt; Select the space utilization setup that should be used for the report.&lt;/p&gt;  &lt;p&gt;Click &lt;b&gt;OK&lt;/b&gt; to run the report.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Example of a generated report&lt;/h5&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7532.clip_5F00_image007_5F00_41E1CC1D.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image007" border="0" alt="clip_image007" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7851.clip_5F00_image007_5F00_thumb_5F00_5E9B4132.png" width="778" height="288" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 5&lt;/p&gt;  &lt;p&gt;In the example above, the report shows what site we are looking at, what load units have been selected, and what load type we are using. &lt;/p&gt;  &lt;p&gt;The report is generate by a load unit combination of warehouse and zones as specified in the selected warehouse space utilization configuration. The combination of warehouse and zones basically means that the warehouse capacity is divided by a unique combination of warehouse and zone. In this example, the warehouse manager can monitor space utilization for each zone and, at the same time, identify the warehouse of the zone. &lt;/p&gt;  &lt;p&gt;If there is an intersection between zones and they share the same location in one warehouse, they will automatically be grouped in one single load unit and capacities for the intersections are not counted twice. In the example, the load unit on warehouse WH1 combines two zones, Z1 and Z2, due to an intersection.&lt;/p&gt;  &lt;p&gt;When looking at the table columns, the column to the far left is the space utilization situation by the end of the current day. The other columns represent the future with increments of one day each. If a load unit exceeds the maximum space available, the color of the cells turns red. This will happen if, when all transactions are conducted on a particular day, the total available space on the load unit is less than what is needed to store the goods by the end of the day.&lt;/p&gt;  &lt;p&gt;Every single table cell can be clicked regardless of the color. The color indicates when and where there is or will be a problem with space utilization. &lt;/p&gt;  &lt;p&gt;When one cell is selected, a new report is shown with a list of all of the transactions that are to be conducted on that day, grouped by regular issues, receipts, and backlog transactions, if any. &lt;/p&gt;  &lt;p&gt;Backlog transactions are transactions that should have been conducted before the current day. Backlog transactions are not displayed for each cell in the report, but if any backlog transactions exist it will be indicated by an icon for the particular load unit. If you then select the icon, a report with list of backlog transactions will be generated. &lt;/p&gt;  &lt;p&gt;Transactions that occupy the largest part of the space are shown on top in the detailed view of the report. This helps the warehouse manager identify transactions that must be accommodated or moved to another date in order to avoid space utilization problems.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Example of a detailed report view&lt;/h5&gt;  &lt;p&gt;Open this view by clicking a cell in the report:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1106.clip_5F00_image008_5F00_743579CF.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image008" border="0" alt="clip_image008" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4645.clip_5F00_image008_5F00_thumb_5F00_00274437.png" width="656" height="498" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 6&lt;/p&gt;  &lt;p&gt;A warning icon is displayed for items that are part of the transactions but which cannot be calculated correctly due to insufficient setup information as presented on Figure 5.&lt;/p&gt;  &lt;p&gt;If you select the warning icon, reports will be generated with information about the setup that must be completed in order to calculate transactions correctly. &lt;/p&gt;  &lt;p&gt;There can be may be many reasons why space utilization calculations cannot be completed correctly for all transactions. &lt;/p&gt;  &lt;p&gt;The yellow warning icons indicate if the numbers of the report can be trusted or not. By selecting a warning icon you can then identify the missing setup, correct the problem, and rerun the report again. &lt;/p&gt;  &lt;p&gt;Warning icons will be shown in the following situations:&lt;/p&gt;  &lt;p&gt;· Warehouse item setup is not correct.&lt;/p&gt;  &lt;p&gt;· Pallet conversion has not been set.&lt;/p&gt;  &lt;p&gt;· The Weight of an item has not been specified.&lt;/p&gt;  &lt;p&gt;· The volume of an item has not been specified. &lt;/p&gt;  &lt;p&gt;· A fallback warehouse has not been specified.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Example of a missing setup report&lt;/h5&gt;  &lt;p&gt;When you select a warning sign, the report representing the Deficiency types in data setup t might look like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4251.image_5F00_095359AB.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3162.image_5F00_thumb_5F00_67878119.png" width="738" height="399" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Figure 7&lt;/p&gt;  &lt;p&gt;From this report it appears that on Warehouse WH3 we have two items missing pallet conversion and two Items missing warehouse item setup.&lt;/p&gt;  &lt;p&gt;These missing setups need to be corrected and after warehouse space utilization report can be selected and warning icon wil not be there anymore, wich means that we can trust calculations and numbers presented in a report.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Demo of the Warehouse space utilization &lt;/p&gt;  &lt;div style="margin: 0px; padding: 0px; float: none; display: inline;" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:294c7cf0-bec0-4ee4-8cb0-c06fcb3b1855" class="wlWriterEditableSmartContent"&gt;&lt;div&gt;&lt;object width="448" height="252"&gt;&lt;param name="movie" value="http://www.youtube.com/v/8FeAaXSgHTI?hl=en&amp;amp;hd=1"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/8FeAaXSgHTI?hl=en&amp;amp;hd=1" type="application/x-shockwave-flash" width="448" height="252"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div style="width:448px;clear:both;font-size:.8em"&gt;Warehouse Space utilization report in Dynamics AX 2012 R2&lt;/div&gt;&lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://www.youtube.com/watch?v=8FeAaXSgHTI&amp;amp;feature=youtu.be"&gt;Warehouse space utilization report on Youtube&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10376634" width="1" height="1"&gt;</content><author><name>Mirza Abdic&amp;#39;</name><uri>http://blogs.msdn.com/mirzaab_4000_live.dk/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>Understanding the product validation process in Dynamics AX 2012</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/06/understanding-the-product-validation-process-in-dynamics-ax-2012.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/06/understanding-the-product-validation-process-in-dynamics-ax-2012.aspx</id><published>2012-12-06T19:09:00Z</published><updated>2012-12-06T19:09:00Z</updated><content type="html">&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4&gt;Introduction&lt;/h4&gt;
&lt;p&gt;Dynamics AX 2012 provides a new feature that allows you to validate the released product setup and ensure data integrity and overall process readiness. This feature is useful for managing master data and we expect it to be widely used by our partners and customers in order to support the product data life cycle processes, engineering change, approval workflows etc.&lt;/p&gt;
&lt;h4&gt;Retrospective look at the previous versions of Dynamics AX&lt;/h4&gt;
&lt;p&gt;Traditionally, the system stores item definition data in one main table (Invent Table). Every time a user creates a new item, a set of mandatory fields must be addressed in order to successfully save the new item definition. This approach looks simple and logical; however, the item definition requires a good overview of all the mandatory settings. Insights into these settings are usually divided between users in multiple departments in an enterprise organization and it usually requires quite a lot of work to coordinate this information. A common approach in order to ensure consistency is to create shared and approved item templates which are strictly controlled and can be re-used across enterprises for the initial item data creation.&lt;/p&gt;
&lt;p&gt;Another inconvenience of requiring users to address all mandatory fields relates to in-flexibility since it makes users working with the system less agile and process driven. Say, for example, that an engineering department wants to create a new product definition in the ERP system. There is an urgent need to send product descriptions to the external vendor for the localization and for the creation of marketing materials for the upcoming sales campaign. However, users cannot simply create items with the settings to control the external vendor relation processes. In this case, ALL settings must be defined which includes setup of financial accounts, inventory tracking, reservation rules etc.&lt;/p&gt;
&lt;p&gt;Item master data setup enables the core business processes within ERP, so it&amp;rsquo;s not a surprise that we see a number of partner customizations in this space. If, for example, a company wants to retire an item, the company must ensure that the item cannot be produced or sold any longer within the organization. At the same time, it should be still possible to handle customer returns based on the existing customer agreements. When the item master data setup changes, one would expect some validation mechanism to ensure that the new item master data state is consistent with the user&amp;rsquo;s expectation. Unfortunately, there is no single centralized place to support such item validation process, so our partners and customers have to introduce such capabilities by themselves.&lt;/p&gt;
&lt;h4&gt;Why are there no any mandatory product master data fields in Dynamics AX 2012?&lt;/h4&gt;
&lt;p&gt;With the introduction of the Product Information Management (PIM) module in Dynamics AX 2012 we get an opportunity to remove some of the above described boundaries and to build a more flexible and process-oriented solution. There are a couple of key differences for users who deal with products compared to the previous versions of Dynamics AX:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;No mandatory fields &lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When you create a new shared product definition, the only property that you must provide is a product number (product ID). Once a new shared product is created, you can continue with the master data setup.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8204.1_5F00_7B521C1F.png"&gt;&lt;img style="margin-right: 0px; margin-left: 0px; display: inline;" title="Create new product" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1832.1_5F00_thumb_5F00_6F502BEB.png" alt="Create new product" width="285" height="299" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Figure 1 Create new product&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When you release a product to the given legal entity you need not set any company-specific properties.&lt;/li&gt;
&lt;li&gt;When you create a new released product from a legal entity, the only property you have to provide is the product number and the item number. Usually those IDs are bound to the automatic number sequence, so you can create a new released product definition with just one click with the mouse.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/6052.2_5F00_3B60621C.png"&gt;&lt;img style="display: inline;" title="Create new released product" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4478.2_5F00_thumb_5F00_7D66D15D.png" alt="Create new released product" width="837" height="427" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Figure 2 Create new released product&lt;/p&gt;
&lt;p&gt;Once you have a basic product or released product definition in place, the system allows you to continue with the various master data setup processes such as to define translation, attach documents and images, sync product data to an external solution via existing &lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2011/07/06/product-item-data-management-services.aspx"&gt;product-item services&lt;/a&gt; etc.&lt;/p&gt;
&lt;h4&gt;When can my product be used for procurement, sales, and production?&lt;/h4&gt;
&lt;p&gt;This is a valid question at this point because if there are no mandatory fields anymore, how do I know when my product can used for procurement, sales, production, quotation &amp;hellip;?&lt;/p&gt;
&lt;p&gt;In order to answer this question let&amp;rsquo;s focus on &lt;strong&gt;process readiness&lt;/strong&gt; and how the system behaves in Dynamics AX 2012.&lt;/p&gt;
&lt;p&gt;There are hundreds if not a thousand different business processes which can be controlled by product master data. The total number of those processes varies from industry to industry and the processes vary a lot based on the end customer business requirements. It&amp;rsquo;s hard, if not impossible, to predict or know in advance which product master data is required in order to enable each unique business process.&lt;/p&gt;
&lt;p&gt;Therefore, in Dynamics AX 2012, every single business process has to, metaphorically speaking, verify all required product master data. In other words, if some master data is not set for a given business process, the system will throw an error and the end user must set the master data before the system can continue.&lt;/p&gt;
&lt;h5&gt;Example&lt;/h5&gt;
&lt;p&gt;A user creates an inventory movement journal. The system tries to retrieve all inventory dimensions that should be tracked for the product. If the setup is not complete, the process will fail since the basic pre-requirements are not fulfilled.&lt;/p&gt;
&lt;h4&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/2248.3_5F00_218EBC9E.png"&gt;&lt;img style="display: inline;" title="Create journal line for product with missing setup" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/2728.3_5F00_thumb_5F00_6C84BE1E.png" alt="Create journal line for product with missing setup" width="850" height="529" border="0" /&gt;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Figure 3 Create journal line for product with missing setup&lt;/p&gt;
&lt;h4&gt;Understanding a product validation feature&lt;/h4&gt;
&lt;p&gt;The new product validation process has been introduced in order to help assess the overall product data readiness for the main business processes.&lt;/p&gt;
&lt;p&gt;As mentioned before, it&amp;rsquo;s impossible to predict what master data will be required for what process in the system. However, we can definitely focus on the setup that is most essential in order to cover key processes in Dynamics AX 2012.&lt;/p&gt;
&lt;p&gt;The product master data validation logic can be triggered from released product list pages and released product details forms. The functionality will verify that the &lt;strong&gt;following essential fields&lt;/strong&gt; are specified for the released product:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Product storage dimension group&lt;/li&gt;
&lt;li&gt;Product tracking dimension group&lt;/li&gt;
&lt;li&gt;Model group&lt;/li&gt;
&lt;li&gt;Item group&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In addition to the previous fields list, the following essential fields have been added to the validation logic to cover the Process Industry for Dynamics AX 2012 Feature Pack:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Catch weight unit setup for the catch weight enabled products&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All these settings can be set on the released product list page which prevents the need to navigate across different places and modules in the system. Users can then leverage one single form to complete all the setup that is required.&lt;/p&gt;
&lt;h4&gt;When, why and how to run a product validation&lt;/h4&gt;
&lt;p&gt;We strongly recommend to always validate the product data setup to ensure overall process readiness. This process helps to prevent last minute issues for end users.&lt;/p&gt;
&lt;h5&gt;Example&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;A product manager releases all product data to a legal entity.&lt;/li&gt;
&lt;li&gt;The product manager uses product templates to address the main field values and to execute the validation logic.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can run validation logic for one or for multiple products and you can apply a product template for multiple products at the same time.&lt;/p&gt;
&lt;h4&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4382.5_5F00_625323B1.png"&gt;&lt;img style="display: inline;" title="Run a product validation function for multiple products" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8203.5_5F00_thumb_5F00_48EDB128.png" alt="Run a product validation function for multiple products" width="820" height="361" border="0" /&gt;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Figure 4 Run a product validation function for multiple products&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Tip: Read more about how to use product templates: &lt;/em&gt;&lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/22/using-product-templates-in-dynamics-ax-2012.aspx"&gt;&lt;em&gt;previous blog post&lt;/em&gt;&lt;/a&gt;&lt;em&gt; &lt;/em&gt;&lt;/p&gt;
&lt;h4&gt;How to customize the product validation process&lt;/h4&gt;
&lt;p&gt;The EcoResProductValidationService class holds all the product validation logic. The class gets the number of released product references as an input, runs the validation logic, and reports all validation errors in a standard infolog message.&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="margin: 20px 0px 10px; padding: 4px; border: 1px solid silver; width: 97.5%; text-align: left; line-height: 12pt; overflow: auto; font-family: 'Courier New', courier, monospace; font-size: 8pt; cursor: text; direction: ltr; max-height: 200px; background-color: #f4f4f4;"&gt;
&lt;div id="codeSnippet" style="padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum1" style="color: #606060;"&gt; 1:&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; runValidationForReleasedProducts(Args _args)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum2" style="color: #606060;"&gt; 2:&lt;/span&gt; {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum3" style="color: #606060;"&gt; 3:&lt;/span&gt;     container                           packedProductsPerCompanyInfo;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum4" style="color: #606060;"&gt; 4:&lt;/span&gt;     InventTable                         inventTable;    &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum5" style="color: #606060;"&gt; 5:&lt;/span&gt;     EcoResProductValidatonDataContract  dataContract = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; EcoResProductValidatonDataContract();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum6" style="color: #606060;"&gt; 6:&lt;/span&gt;     EcoResProductValidatonService       service = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; EcoResProductValidatonService();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum7" style="color: #606060;"&gt; 7:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum8" style="color: #606060;"&gt; 8:&lt;/span&gt;     &lt;span style="color: #008000;"&gt;// Find all released product with the itemId pattern like 'production*'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum9" style="color: #606060;"&gt; 9:&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;while&lt;/span&gt; select itemId from inventTable&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum10" style="color: #606060;"&gt; 10:&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;where&lt;/span&gt; inventTable.ItemId like &lt;span style="color: #006080;"&gt;'production*'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum11" style="color: #606060;"&gt; 11:&lt;/span&gt;     {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum12" style="color: #606060;"&gt; 12:&lt;/span&gt;         packedProductsPerCompanyInfo += [[inventTable.ItemId]];&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum13" style="color: #606060;"&gt; 13:&lt;/span&gt;     }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum14" style="color: #606060;"&gt; 14:&lt;/span&gt;         &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum15" style="color: #606060;"&gt; 15:&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (conLen(packedProductsPerCompanyInfo) &amp;gt; 0)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum16" style="color: #606060;"&gt; 16:&lt;/span&gt;     {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum17" style="color: #606060;"&gt; 17:&lt;/span&gt;         &lt;span style="color: #008000;"&gt;// Create service operation data contract class and pass all released product references&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum18" style="color: #606060;"&gt; 18:&lt;/span&gt;         dataContract = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; EcoResProductValidatonDataContract();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum19" style="color: #606060;"&gt; 19:&lt;/span&gt;         dataContract.packedProductsPerCompanyData(SysOperationHelper::base64Encode(packedProductsPerCompanyInfo));&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum20" style="color: #606060;"&gt; 20:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum21" style="color: #606060;"&gt; 21:&lt;/span&gt;         &lt;span style="color: #008000;"&gt;// Run validation logic&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum22" style="color: #606060;"&gt; 22:&lt;/span&gt;         service.validateProducts(dataContract);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum23" style="color: #606060;"&gt; 23:&lt;/span&gt;     }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum24" style="color: #606060;"&gt; 24:&lt;/span&gt; }&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Assume that we need to make sure that all items are produced with a production order for the current manufacturing company. The existing EcoResProductValidator can easily be extended to accommodate such a validation check:&lt;/p&gt;
&lt;h4&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/0268.6_5F00_012EB8F2.png"&gt;&lt;img style="display: inline;" title="6" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1643.6_5F00_thumb_5F00_658CBDAC.png" alt="6" width="861" height="333" border="0" /&gt;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Figure 5 Customization example&lt;/p&gt;
&lt;h4&gt;Summary&lt;/h4&gt;
&lt;p&gt;Managing product master data can be a complex and challenging task. We hope that the product information management features in Dynamics AX 2012 can help your organization to deal with some of these challenges. The product validation process is there for you, so please learn how to use it and enhance it if you need to.&lt;/p&gt;
&lt;p&gt;Thanks for reading.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10375341" width="1" height="1"&gt;</content><author><name>Ievgenii Korovin</name><uri>http://blogs.msdn.com/axscmblg/ProfileUrlRedirect.ashx</uri></author><category term="Microsoft Dynamics AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Microsoft+Dynamics+AX+2012/" /><category term="Item-Product Data Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Item_2D00_Product+Data+Management/" /><category term="Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+Ax+2012/" /><category term="What's new in Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/What_2700_s+new+in+Dynamics+Ax+2012/" /><category term="Product information management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+information+management/" /><category term="Product-item data management services" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product_2D00_item+data+management+services/" /><category term="Product Number" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+Number/" /><category term="AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/AX+2012/" /><category term="product release process" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/product+release+process/" /><category term="Dynamics AX 2012 R2" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+AX+2012+R2/" /><category term="product validation" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/product+validation/" /></entry><entry><title>Relocation transports – a new pallet transport type in Microsoft Dynamics AX 2012 R2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/04/relocation-transports-a-new-pallet-transport-type-in-microsoft-dynamics-ax-2012-r2.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/12/04/relocation-transports-a-new-pallet-transport-type-in-microsoft-dynamics-ax-2012-r2.aspx</id><published>2012-12-04T10:23:54Z</published><updated>2012-12-04T10:23:54Z</updated><content type="html">&lt;p&gt;&lt;b&gt;By Bibi Christensen, Per Lykke Lynnerup &amp;amp; Lennart Conrad&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Introduction the Relocation Transport&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;A new type of pallet transports called Relocation transport has been introduced in Microsoft Dynamics AX 2012 R2.&lt;/p&gt;  &lt;p&gt;The new pallet transport type can be used to move items on a pallet from one warehouse location to another warehouse location even when you have transactions that are physically reserved against the quantity on the pallet. With this added functionality the common warehouse activity of moving pallets between locations is supported more efficiently.&lt;/p&gt;  &lt;p&gt;When the transport is created, two sets of inventory transactions are created:&lt;/p&gt;  &lt;p&gt;- Issue transactions with the issue status Reserved physical that will reserve items on the pallet at the from-location.&lt;/p&gt;  &lt;p&gt;- Receipt transactions with the receipt status Ordered on the to-location.&lt;/p&gt;  &lt;p&gt;When the transport is created, existing transactions that are Reserved physical on the pallet at the from-location will be updated to Reserved ordered on the to-location. If there are any transactions that are Reserved physical and fixed against the from-warehouse or from-location, and any of these are changed, the transport cannot be created. &lt;/p&gt;  &lt;p&gt;If there are any transactions with the pallet id that have status Arrived the transport is not created. This is typically the case if a transport already exists for the pallet.&lt;/p&gt;  &lt;p&gt;Transactions with the pallet id that have an issue status of Quotation Issue, On order, Reserved ordered or a receipt status of Ordered are not updated. In this case the from-location and pallet remains the same on these transactions. &lt;/p&gt;  &lt;p&gt;Once the transport is completed Reserved ordered transactions on the to-location will be updated to Reserved physical.&lt;/p&gt;  &lt;h4&gt;How to set up and use the new transport type&lt;/h4&gt;  &lt;p&gt;The new transport type is set up the same way as the existing transports.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1222.clip_5F00_image001_5F00_122B2B52.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image001" border="0" alt="clip_image001" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7585.clip_5F00_image001_5F00_thumb_5F00_77EAC22D.png" width="552" height="235" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In the &lt;b&gt;Inventory and warehouse management parameters&lt;/b&gt; form you can set up the priorities for pallet transports.&lt;/p&gt;  &lt;p&gt;· Click &lt;b&gt;Inventory and warehouse management&lt;/b&gt; &amp;gt; &lt;b&gt;Setup&lt;/b&gt; to open the &lt;b&gt;Inventory and warehouse management&lt;/b&gt; form.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4861.clip_5F00_image003_5F00_7DC565C6.jpg"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image003" border="0" alt="clip_image003" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/0652.clip_5F00_image003_5F00_thumb_5F00_157C9D2D.jpg" width="669" height="180" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In the &lt;b&gt;Forklift&lt;/b&gt; form you can specify the forklifts that should handle the relocation transports.&lt;/p&gt;  &lt;p&gt;· Click &lt;b&gt;Inventory and warehouse management&lt;/b&gt; &amp;gt; &lt;b&gt;Setup&lt;/b&gt; &amp;gt; &lt;b&gt;Inventory equipment&lt;/b&gt; &amp;gt; &lt;b&gt;Forklift&lt;/b&gt; to open the &lt;b&gt;Forklift&lt;/b&gt; form.&lt;/p&gt;  &lt;p&gt;When you move a pallet, you can create the relocation transport. &lt;/p&gt;  &lt;p&gt;A check box is added to the &lt;b&gt;Move pallet&lt;/b&gt; form and when the checkbox is selected, a relocation pallet transport will be created.&lt;/p&gt;  &lt;p&gt;· Click &lt;b&gt;Inventory and warehouse management&lt;/b&gt; &amp;gt; &lt;b&gt;Setup&lt;/b&gt; &amp;gt; &lt;b&gt;Inventory equipment&lt;/b&gt; &amp;gt; &lt;b&gt;Pallets&lt;/b&gt; &amp;gt; &lt;b&gt;Functions&lt;/b&gt; &amp;gt; &lt;b&gt;Move pallet&lt;/b&gt; to open the &lt;b&gt;Move pallet&lt;/b&gt; form.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3441.clip_5F00_image004_5F00_0D18C7D6.png"&gt;&lt;img style="display: inline; background-image: none;" title="clip_image004" border="0" alt="clip_image004" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4530.clip_5F00_image004_5F00_thumb_5F00_40748B32.png" width="666" height="401" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;New code APIs and thebackporting of feature to the previous releases &lt;/h4&gt;  &lt;p&gt;The API to create a relocation transport from code is quite simple; You basically just call one line of code:&lt;/p&gt;  &lt;p align="center"&gt;&lt;font size="2" face="Arial"&gt;WMSTransport::createRelocationTransport(wmsPalletToMove,newWMSLocation);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;It has also been decided to port this new functionality to Microsoft Dynamics AX 2012 and it will be available as part of AX 2012 RU5 and with KB2770782. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10374386" width="1" height="1"&gt;</content><author><name>Lennart Conrad</name><uri>http://blogs.msdn.com/lennartc_4000_live.com/ProfileUrlRedirect.ashx</uri></author><category term="Warehouse Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Warehouse+Management/" /><category term="WMS" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/WMS/" /><category term="pallet" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/pallet/" /><category term="What's new in Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/What_2700_s+new+in+Dynamics+Ax+2012/" /><category term="relocation transport" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/relocation+transport/" /><category term="Dynamics AX 2012 R2" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+AX+2012+R2/" /><category term="pallet transport" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/pallet+transport/" /></entry><entry><title>What’s New for Microsoft Dynamics AX 2012 R2 for WMS</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/11/30/what-s-new-for-microsoft-dynamics-ax-2012-r2-for-wms.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/11/30/what-s-new-for-microsoft-dynamics-ax-2012-r2-for-wms.aspx</id><published>2012-11-30T12:16:00Z</published><updated>2012-11-30T12:16:00Z</updated><content type="html">&lt;p&gt;This blog post describes some of the enhancements to the Warehouse management (WMS) functionality that have been implemented in the R2 release after the launch of Microsoft Dynamics AX 2012 (RTM).&lt;/p&gt;
&lt;h4&gt;Shipment list report printed in a batch job at shipment update&lt;/h4&gt;
&lt;p&gt;By using outbound rules for a shipment and by setting up automatic printing of the shipment list you can have the shipment list report sent to a batch job.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/5148.image_5F00_2C80542B.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/0456.image_5F00_thumb_5F00_498902F3.png" alt="image" width="952" height="135" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Make sure you assign a printer setting that uses a paper printer for the batch job printing.&lt;/p&gt;
&lt;p&gt;You can define the printer setup from &lt;strong&gt;Inventory and warehouse management&lt;/strong&gt; &amp;gt; &lt;strong&gt;Shipments&lt;/strong&gt; &amp;gt; &lt;strong&gt;Printer setup&lt;/strong&gt; &amp;gt; &lt;strong&gt;Shipment list&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/6523.image_5F00_1FA88EBE.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8764.image_5F00_thumb_5F00_2AD4A9B9.png" alt="image" width="868" height="152" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;New uses of the location type Picking location&lt;/h4&gt;
&lt;p&gt;The location type Picking location can now be used as part of the item arrival process and for pallet movements.&lt;/p&gt;
&lt;p&gt;&amp;middot; &lt;strong&gt;Item arrival: &lt;/strong&gt; Locations of the type Picking location are now available in the registration process and you can apply a picking location on a journal line in an item arrival journal even if the inventory item&amp;rsquo;s warehouse item setting does not use a picking location.&lt;/p&gt;
&lt;p&gt;&amp;middot; &lt;strong&gt;Pallet movements&lt;/strong&gt;: When you use the Move pallet functionality, you can now select a location type of Picking location even though the location is not an item picking location.&lt;/p&gt;
&lt;h4&gt;Relocation pallet transport&lt;/h4&gt;
&lt;p&gt;In AX 2012 R2 you can create a relocation pallet transport and then assign the actual pallet transport processing to a warehouse worker.&lt;/p&gt;
&lt;p&gt;You can access the new functionality from the &lt;strong&gt;Move pallet&lt;/strong&gt; menu item via &lt;strong&gt;Inventory and warehouse management&lt;/strong&gt; &amp;gt; &lt;strong&gt;Setup&lt;/strong&gt; &amp;gt; &lt;strong&gt;Inventory equipment&lt;/strong&gt; &amp;gt; &lt;strong&gt;Pallets&lt;/strong&gt; &amp;gt; &lt;strong&gt;Functions&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3652.image_5F00_3A0B1286.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1805.image_5F00_thumb_5F00_6E41CC7D.png" alt="image" width="605" height="420" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can then process the pallet transport from &lt;strong&gt;Inventory and warehouse management&lt;/strong&gt; &amp;gt; &lt;strong&gt;Common&lt;/strong&gt; &amp;gt; &lt;strong&gt;Pallet transports&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/0334.image_5F00_7901B483.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4201.image_5F00_thumb_5F00_2A237FD5.png" alt="image" width="750" height="247" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5&gt;Detailed blog post on the relocation transport&lt;/h5&gt;
&lt;p&gt;A detailed blog post about the implementation of the relocation pallet transport will follow.&lt;/p&gt;
&lt;h4&gt;Shipment template enhancements for joint shipping&lt;/h4&gt;
&lt;p&gt;An option called &lt;strong&gt;Grouping inventory reference&lt;/strong&gt; has been added to the &lt;strong&gt;Joint shipping&lt;/strong&gt; field in the &lt;strong&gt;Shipment templates&lt;/strong&gt; form.&lt;/p&gt;
&lt;p&gt;You can access the &lt;strong&gt;Shipment templates&lt;/strong&gt; form from &lt;strong&gt;Inventory and warehouse management&lt;/strong&gt; &amp;gt; &lt;strong&gt;Setup&lt;/strong&gt; &amp;gt; &lt;strong&gt;Distribution&lt;/strong&gt; &amp;gt; &lt;strong&gt;Shipment templates&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When the &lt;strong&gt;Grouping inventory reference&lt;/strong&gt; option is selected, output orders for withdrawal of kanbans are grouped based on the ID of the parent manufacturing kanban. If you use this option with output orders that do not reference kanbans, the grouping reference is the same as the reference for the output order.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8322.image_5F00_1E905347.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4113.image_5F00_thumb_5F00_48FF1515.png" alt="image" width="836" height="354" border="0" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10372179" width="1" height="1"&gt;</content><author><name>Per Lykke Lynnerup</name><uri>http://blogs.msdn.com/perlynnerup_4000_outlook.com/ProfileUrlRedirect.ashx</uri></author><category term="Shipment" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Shipment/" /><category term="Picking" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Picking/" /><category term="Shipment Template" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Shipment+Template/" /><category term="Warehouse Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Warehouse+Management/" /><category term="WMS" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/WMS/" /><category term="pallet" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/pallet/" /><category term="Microsoft Dynamics AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Microsoft+Dynamics+AX+2012/" /><category term="Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+Ax+2012/" /><category term="What's new in Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/What_2700_s+new+in+Dynamics+Ax+2012/" /><category term="AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/AX+2012/" /></entry><entry><title>Troubleshooting the product release process</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/10/05/troubleshooting-the-product-release-process.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/10/05/troubleshooting-the-product-release-process.aspx</id><published>2012-10-05T11:58:00Z</published><updated>2012-10-05T11:58:00Z</updated><content type="html">&lt;p&gt;The product release process is part of the product setup in Dynamics AX 2012. Every single product must be released to a legal entity before the system allows you to procure, sell, or produce it.&lt;/p&gt;
&lt;p&gt;For more details, about how to release products, product masters and product variants, see: &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/hh208544.aspx"&gt;Release products&lt;/a&gt;.&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;In some cases, the product release process can fail to release products due to inconsistencies or missing setup. In this post, we will take a look at system capabilities that allow you to troubleshoot the product release process and take action to resolve any issues.&lt;/p&gt;
&lt;h4&gt;Quick overview of the product release process&lt;/h4&gt;
&lt;p&gt;The product release process allows you to release multiple products and product variants or, in other words, make multiple products available in various legal entities. This action can be executed from various list pages and detail forms.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3482.image_5F00_49A69CBD.png"&gt;&lt;img width="860" height="478" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3173.image_5F00_thumb_5F00_68EBD441.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you work with a small number of products, it&amp;rsquo;s a very quick process to release them to a single legal entity. But in the case of, for example, a new site deployment, it can be a time consuming task to release all products to the new legal entity.&lt;/p&gt;
&lt;p&gt;For this scenario, we recommend using a server batch job to execute the product release process in order to avoid extra load on the system during work hours. If issues arise during a batch job execution, the release session concept in Dynamics AX 2012 will help provide you with information about any issues or conflicts. Based on the system reports you can then resolve the issues or conflicts that occurred during the batch job execution.&lt;/p&gt;
&lt;h4&gt;The release session concept and the release process&lt;/h4&gt;
&lt;p&gt;The release session is a database persisted object which groups all products that should be released to legal entities. The release session object is automatically created behind the scene when you request to release one or more products.&lt;/p&gt;
&lt;p&gt;If all products have been successfully released without any issues, the release session is automatically deleted and no further actions are required for the release product request. However, if issues occurred during the release process, then the release session will remain open with all the individual products that failed during the process. This allows you to troubleshoot the release process, fix the issues and repeat the action without having to select all products and legal entities one more time.&lt;/p&gt;
&lt;h5&gt;Example&lt;/h5&gt;
&lt;p&gt;Assume that a product manager must release a new collection of products to a new legal entity. When he executes the release process, various errors are reported by the system. The product manager can now navigate to the most recent release session, troubleshoot the issues and repeat the entire release action from there.&lt;/p&gt;
&lt;h4&gt;Open product releases list page&lt;/h4&gt;
&lt;p&gt;All open release sessions can be found under Product Information Management -&amp;gt; Periodic -&amp;gt; Open product releases list page. This list page contains all release sessions where something went wrong. You can filter all sessions by the user ID and release session time stamp to see all the products and product variants that the system could not release to the legal entity.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8284.image_5F00_6CFB4375.png"&gt;&lt;img width="868" height="436" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3173.image_5F00_thumb_5F00_30D2087E.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can click the &lt;b&gt;View Infolog&lt;/b&gt; button to view details about the issues with the specific product or product variant. This is a great way to figure out what went wrong and why.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s take a look at some issues that commonly occur during the product release process:&lt;/p&gt;
&lt;p&gt;&amp;middot; The product already exists in a legal entity.&lt;/p&gt;
&lt;p&gt;o This can happen if you release a product for the first time by mistake and then release the product again after having made changes to it. This action will create a conflict and one way to solve the conflict would be to delete the released product from the legal entity, go back to your product definition, make the required changes, and then release the product again.&lt;/p&gt;
&lt;p&gt;&amp;middot; A different product already exists with the specified item ID.&lt;/p&gt;
&lt;p&gt;o This might happen due to an issue with the number sequence for the item number or because the item number has been defaulted from the product number and by coincidence, another released product exists with the same item number. To solve this issue, you must use another number sequence or rename a product with a different product number value. For more information about the product and item numbers, read this blog post: &lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/02/13/product-number-and-item-number-in-dynamics-ax-2012.aspx"&gt;Product Number and Item Number in Dynamics AX 2012&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;middot; The product variant could not be released&lt;/p&gt;
&lt;p&gt;o This usually happens when the inventory dimensions (InventDim) number sequence setup is missing in the legal entity. Make sure that the number sequence is properly set up. For more information, see &lt;a href="http://technet.microsoft.com/en-us/library/hh242127.aspx"&gt;Set up number sequences&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When you have investigated and resolved all issues, you can repeat the release action by clicking the &lt;b&gt;Release product&lt;/b&gt; button. For more information about the Open Product Releases List Page, see: &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/hh209696.aspx"&gt;Open product releases (form)&lt;/a&gt;.&lt;/p&gt;
&lt;h4&gt;Working with the release session from the code&lt;/h4&gt;
&lt;p&gt;If you have access to the code, you can also release a series of products without using the user interface. The following code example demonstrates how the release session can be created and how it should be used for release purposes:&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="margin: 20px 0px 10px; padding: 4px; border: 1px solid silver; width: 97.5%; text-align: left; line-height: 12pt; overflow: auto; font-family: 'Courier New', courier, monospace; font-size: 8pt; cursor: text; direction: ltr; max-height: 200px; background-color: #f4f4f4;"&gt;
&lt;div id="codeSnippet" style="padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum1" style="color: #606060;"&gt; 1:&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; releaseProductToCurrentLegalEntity(Args _args)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum2" style="color: #606060;"&gt; 2:&lt;/span&gt; {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum3" style="color: #606060;"&gt; 3:&lt;/span&gt;     EcoResProductReleaseSessionManager  productReleaseSessionManager;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum4" style="color: #606060;"&gt; 4:&lt;/span&gt;     EcoResProduct                       product;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum5" style="color: #606060;"&gt; 5:&lt;/span&gt;     CompanyInfo                         companyInfo;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum6" style="color: #606060;"&gt; 6:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum7" style="color: #606060;"&gt; 7:&lt;/span&gt;     companyInfo = CompanyInfo::findDataArea(curext());&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum8" style="color: #606060;"&gt; 8:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum9" style="color: #606060;"&gt; 9:&lt;/span&gt;     product = EcoResProduct::findByDisplayProductNumber(&lt;span style="color: #006080;"&gt;'myProduct'&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum10" style="color: #606060;"&gt; 10:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum11" style="color: #606060;"&gt; 11:&lt;/span&gt;     ttsBegin;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum12" style="color: #606060;"&gt; 12:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum13" style="color: #606060;"&gt; 13:&lt;/span&gt;     &lt;span style="color: #008000;"&gt;// Create a new release session&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum14" style="color: #606060;"&gt; 14:&lt;/span&gt;     productReleaseSessionManager = EcoResProductReleaseSessionManager::newReleaseSession();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum15" style="color: #606060;"&gt; 15:&lt;/span&gt;    &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum16" style="color: #606060;"&gt; 16:&lt;/span&gt;     &lt;span style="color: #008000;"&gt;// Add a product to the release session&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum17" style="color: #606060;"&gt; 17:&lt;/span&gt;     productReleaseSessionManager.addProduct(product.RecId);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum18" style="color: #606060;"&gt; 18:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum19" style="color: #606060;"&gt; 19:&lt;/span&gt;     &lt;span style="color: #008000;"&gt;// Add a legal entity where tne product should be released to &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum20" style="color: #606060;"&gt; 20:&lt;/span&gt;     productReleaseSessionManager.addLegalEntityForAllProducts(companyInfo.RecId);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum21" style="color: #606060;"&gt; 21:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum22" style="color: #606060;"&gt; 22:&lt;/span&gt;     &lt;span style="color: #008000;"&gt;// Release all products within the current session to the specified legal entity&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum23" style="color: #606060;"&gt; 23:&lt;/span&gt;     productReleaseSessionManager.execute();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum24" style="color: #606060;"&gt; 24:&lt;/span&gt;     &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: white;"&gt;&lt;span id="lnum25" style="color: #606060;"&gt; 25:&lt;/span&gt;     ttsCommit;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: 'Courier New', courier, monospace; font-size: 8pt; direction: ltr; background-color: #f4f4f4;"&gt;&lt;span id="lnum26" style="color: #606060;"&gt; 26:&lt;/span&gt; }&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Another approach would be to use the existing Product-Item data management services. For more information, read this blog post: &lt;a href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2011/07/06/product-item-data-management-services.aspx"&gt;Product-item data management services&lt;/a&gt;.&lt;/p&gt;
&lt;h4&gt;Summary&lt;/h4&gt;
&lt;p&gt;The product release process is an important concept in Dynamics AX 2012. We hope that the tools and functionality of the system sufficiently and effectively support your business process. Please leave any feedback or suggestions here or provide the information via our AX SCM requirements group: &lt;a href="http://www.linkedin.com/groups?home=&amp;amp;gid=4518636&amp;amp;trk=anet_ug_hm"&gt;AX SCM requirements&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Thank you for reading this!&lt;/p&gt;
&lt;p&gt;Evgenij Korovin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10356508" width="1" height="1"&gt;</content><author><name>Ievgenii Korovin</name><uri>http://blogs.msdn.com/axscmblg/ProfileUrlRedirect.ashx</uri></author><category term="Microsoft Dynamics AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Microsoft+Dynamics+AX+2012/" /><category term="Item-Product Data Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Item_2D00_Product+Data+Management/" /><category term="Stocked products" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Stocked+products/" /><category term="Product information management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+information+management/" /><category term="Product-item data management services" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product_2D00_item+data+management+services/" /><category term="Product Number" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+Number/" /><category term="Item Number" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Item+Number/" /><category term="product release process" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/product+release+process/" /><category term="troubleshooting" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/troubleshooting/" /><category term="Open product releases list page" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Open+product+releases+list+page/" /></entry><entry><title>Inventory blocking</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/28/inventory-blocking.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/28/inventory-blocking.aspx</id><published>2012-09-28T07:49:53Z</published><updated>2012-09-28T07:49:53Z</updated><content type="html">&lt;h3&gt;&lt;a name="_Toc304456474"&gt;Overview&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;The possibility to prevent items currently in your warehouse from being used in standard processes has often been requested. In previous versions of Dynamics AX this was primarily possible with the quarantine order functionality. However quarantine orders require items to be (logically) moved to a separate quarantine warehouse.&lt;/p&gt;  &lt;p&gt;So the new blocking functionality is designed to allow items to be blocked at their current location.&lt;/p&gt;  &lt;p&gt;The first requirement is to be able to block some of the current on-hand. During the analysis for the new functionality it was discovered that in addition there is also a need to block some incoming goods until quality inspection is complete.&lt;/p&gt;  &lt;p&gt;The second requirement is that the current on-hand is always correct – both from a quantity point of view and from a value point of view.&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;&lt;a name="_Toc304456474"&gt;The ideas behind it all&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;For most types of issue transactions – like sales orders – it is possible to point out specific on hand and use the physical reservation to reserve/block current on-hand for the specified transaction. To ensure that items on-hand are blocked we create a set of issue transactions and use the same physical reservation mechanism. This set is identified by a unique InventTransId value. &lt;/p&gt;  &lt;p&gt;To ensure that the expected on-hand is always correct we create a set of expected receipt transactions. The date when the items are expected to be released back to inventory can be modified by the user. This ensures that master planning can correctly considers items currently blocked.    &lt;br /&gt;The set of expected receipt transactions is identified by another unique InventTransId value. &lt;/p&gt;  &lt;p&gt;We have defined a new reference type for the inventory transactions related to blocking called “Inventory blocking”.&lt;/p&gt;  &lt;p&gt;This screen shot shows the transactions for a blocking entity where a single piece is being blocked&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7776.image_5F00_59725CBC.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3755.image_5F00_thumb_5F00_2208378F.png" width="835" height="326" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The corresponding on-hand form in a scenario where 1000 pieces are on hand is shown below&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7571.image_5F00_43CFFC21.png"&gt;&lt;img style="display: inline; background-image: none;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/2804.image_5F00_thumb_5F00_7291A0C4.png" width="832" height="487" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The inventory blocking functionality intentionally doesn’t have any scrap functionality – or other means of deducting some of the blocked on-hand. If you want to allow for such functionality you need to combine the blocking functionality with other processes for issuing items.&lt;/p&gt;  &lt;p&gt;As the inventory blocking functionality never consumes or moves any on-hand there is no need to ever pick, pack or invoice any of the issue transactions (which would also require updating of the receipt transactions). When the items are no longer to be blocked the quantity is simply reduced or the entire blocking entity is deleted along with all the transactions associated.&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;&lt;a name="_Toc304456478"&gt;Manual inventory blocking&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;Manual inventory blocking – as opposed to quality order blocking – is the process where a user directly creates a new inventory blocking entity and specifies quantity and inventory dimensions.    &lt;br /&gt;The form for maintaining inventory blockings can be found in the “Periodic” section under “Inventory and warehouse management”.&lt;/p&gt;  &lt;p&gt;When saving the new inventory blocking entity inventory transactions are automatically created which makes the physical reservation and represent the release back to inventory.&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;&lt;a name="_Toc304456479"&gt;Quality order blocking&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;A quality order can be created either manually or automatically as part of the receipts process. For both cases an inventory blocking entity is automatically created – just as for a manual inventory blocking entity. However as the received items may be part of a linked chain (marked) of transactions the blocking transactions are inserted into this chain upon creation and the original chain is recreated again upon release from blocking.&lt;/p&gt;    &lt;p align="right"&gt;&lt;em&gt;Author: Kim Moerup&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10354036" width="1" height="1"&gt;</content><author><name>Volodymyr Giginiak</name><uri>http://blogs.msdn.com/gigz_4000_live.com/ProfileUrlRedirect.ashx</uri></author><category term="QMS" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/QMS/" /><category term="Quality Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Quality+Management/" /><category term="Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Dynamics+Ax+2012/" /><category term="Quality order blocking" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Quality+order+blocking/" /><category term="Manual inventory blocking" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Manual+inventory+blocking/" /><category term="Inventory Blocking" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Inventory+Blocking/" /></entry><entry><title>Using product templates in Dynamics AX 2012</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/22/using-product-templates-in-dynamics-ax-2012.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/22/using-product-templates-in-dynamics-ax-2012.aspx</id><published>2012-09-22T20:21:00Z</published><updated>2012-09-22T20:21:00Z</updated><content type="html">&lt;h4&gt;Introduction&lt;/h4&gt;
&lt;p&gt;Dynamics AX 2012 provides a new feature that allows you to create and apply product templates to speed up the product creation process. We believe that this is one out of hundreds of small hidden features that will delight our partners and make our end customers more efficient.&lt;/p&gt;
&lt;h4&gt;Item record templates in the previous version of Dynamics AX&lt;/h4&gt;
&lt;p&gt;Traditionally, the Record Templates functionality plays an important role in the user experience during a creation process of key master data entities such as items, customers, and vendors. The system allows you to create a copy of any record in the grid and use it to create a new entity of the same type. This approach helps to ensure data consistency and to establish enterprise process control.&lt;/p&gt;
&lt;p&gt;If, for example, you want to create a new engineering component, you can apply a predefined and approved item template that contains data which has been carefully gathered across different departments such as account setup, reservation rules, and dimensions tracking.&lt;/p&gt;
&lt;h4&gt;Understanding the product templates in Dynamics AX 2012&lt;/h4&gt;
&lt;p&gt;In Dynamics AX 2012, there is a rich and normalized data model behind key entities such as products and released products. This means that when you create a product, multiple tables get updated behind the scene. Using a template will help you create uniform product master data in a more intelligent manner.&lt;/p&gt;
&lt;p&gt;The product template feature in Dynamics AX 2012 takes into account the new data model by extending an old limitation where the template was only associated with one record in one table. Now, the template can build records from multiple tables and records.&lt;/p&gt;
&lt;h4&gt;Create product templates in Dynamics AX 2012&lt;/h4&gt;
&lt;p&gt;To create a new product template, navigate to the Released Product Details Form -&amp;gt; Action Pane -&amp;gt; Template menu. Here you can create a snapshot of the current product entity and save it as a shared product template or as a personal product template.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/6232.image_5F00_59949B0F.png"&gt;&lt;img width="872" height="514" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1512.image_5F00_thumb_5F00_1888AC5C.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h4&gt;Work with the shared product templates&lt;/h4&gt;
&lt;p&gt;You find the shared product templates under Home -&amp;gt; Area Page -&amp;gt; Setup -&amp;gt; Record Templates.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/2677.image_5F00_19832CEA.png"&gt;&lt;img width="873" height="595" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/2555.image_5F00_thumb_5F00_66B5B726.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can edit a shared product template at any time. This means that if, for example, you want to use a different counting group for a given predefined product template, then you do not need to create a new product template. You can just update the existing template.&lt;/p&gt;
&lt;p&gt;Also, the system allows you to modify the shared product template from the Product details form. This makes it easy to identify all the fields that you want to change.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8883.image_5F00_75EEB0A4.png"&gt;&lt;img width="876" height="527" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3683.image_5F00_thumb_5F00_4DDE9236.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Apply product templates&lt;/h4&gt;
&lt;h5&gt;Product creation form&lt;/h5&gt;
&lt;p&gt;You can select a product template when you create a new released product. Key fields in the product structure are populated by the template.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/1373.image_5F00_36497574.png"&gt;&lt;img width="731" height="444" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/7446.image_5F00_thumb_5F00_07F28078.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Once you have selected a product template, you can click &lt;b&gt;Show more fields&lt;/b&gt; in order to view the important field content that has been provided by the template. You can overwrite template values which are displayed on the form.&lt;/p&gt;
&lt;p&gt;Please note, that you can view only the most essential fields in this dialog. Rest fields from the template will be automatically applied during the product creation.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/3733.image_5F00_04E02283.png"&gt;&lt;img width="877" height="757" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8015.image_5F00_thumb_5F00_467CEF80.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5&gt;Released Product Details form&lt;/h5&gt;
&lt;p&gt;You can apply and try to re-apply a template from the Released product details form. Every time you apply a template, the system tries to update the various fields of the released product entity.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/8737.image_5F00_02CAD5CD.png"&gt;&lt;img width="846" height="151" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/6746.image_5F00_thumb_5F00_3F84EF0E.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you have applied a wrong template by mistake during product creation you can easily re-apply the proper template to the same product, rather than delete and create a new product. However, the system runs regular validation logic for all updated fields so if a released product is already in use, any attempt to re-apply the template will fail if the product contains data that don&amp;rsquo;t match the template.&lt;/p&gt;
&lt;p&gt;Assume that you have a stocked product with transactions. You try to apply a new version of the template to the product. However, on the template, the Stocked Product policy is not selected which means that products based on the template are non-stocked. In this case, the system will fail during the apply template action. This is because a stocked product with existing inventory transactions cannot be converted to a non-stocked product.&lt;/p&gt;
&lt;h4&gt;Apply a product template to multiple products in one go&lt;/h4&gt;
&lt;p&gt;When you release a bulk of products in a legal entity, you can apply a template all the products in one go rather than one by one. From the main Release product list page, you select the products where you want to add the template and click &lt;b&gt;Apply template&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/5657.image_5F00_230D1E90.png"&gt;&lt;img width="856" height="395" title="image" style="display: inline;" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-81-metablogapi/4555.image_5F00_thumb_5F00_69206C54.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Product templates in Dynamics AX 2012 Feature Pack&lt;/h4&gt;
&lt;p&gt;As you probably know, the recent feature pack contains new, exiting capabilities within retail and process manufacturing industries. And as you might expect, the product template functionality has been extended to accommodate key product data for those industries as well. You can, for example, create and re-use a template that stores retail-specific released product data.&lt;/p&gt;
&lt;h4&gt;Summary and some thoughts for the next releases&lt;/h4&gt;
&lt;p&gt;The product master data creation process is an essential part of any ERP product. Going forward we will do our best to make sure that the system offers more intelligent ways to simplify and streamline the product data creation and maintenance processes.&lt;/p&gt;
&lt;p&gt;Please let us know if you have any specific suggestions on how we can improve the product in this area. We encourage you to join the &lt;a href="http://www.linkedin.com/groups?home=&amp;amp;gid=4518636&amp;amp;trk=anet_ug_hm"&gt;AX SCM requirements&lt;/a&gt; LinkedIn group to either let us know what requirements you see in the field or to answer polls that we setup to gather feedback or by setting up your polls/discussions.This is a great way for you to influence the product direction.&lt;/p&gt;
&lt;p&gt;Thanks for reading!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dk.linkedin.com/in/ievgeniikorovin"&gt;Evgenij Korovin&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10352363" width="1" height="1"&gt;</content><author><name>Ievgenii Korovin</name><uri>http://blogs.msdn.com/axscmblg/ProfileUrlRedirect.ashx</uri></author><category term="Setup" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Setup/" /><category term="Set up items for warehouse management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Set+up+items+for+warehouse+management/" /><category term="Microsoft Dynamics AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Microsoft+Dynamics+AX+2012/" /><category term="Item-Product Data Management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Item_2D00_Product+Data+Management/" /><category term="What's new in Dynamics Ax 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/What_2700_s+new+in+Dynamics+Ax+2012/" /><category term="Product information management" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+information+management/" /><category term="Product-item data management services" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product_2D00_item+data+management+services/" /><category term="Product Number" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+Number/" /><category term="record template" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/record+template/" /><category term="Product template" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Product+template/" /><category term="apply product template" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/apply+product+template/" /></entry><entry><title>Avoid index length issues with InventDim</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/11/avoid-index-length-issues-with-inventdim.aspx" /><id>http://blogs.msdn.com/b/dynamicsaxscm/archive/2012/09/11/avoid-index-length-issues-with-inventdim.aspx</id><published>2012-09-11T12:51:00Z</published><updated>2012-09-11T12:51:00Z</updated><content type="html">&lt;p&gt;In Microsoft Dynamics AX we use indexes to ensure uniqueness. &lt;br /&gt;An example of this is the &lt;i&gt;DimIdx &lt;/i&gt;index in &lt;i&gt;InventDim&lt;/i&gt;, where all dimension fields are included to ensure that only a single record exists for a given set of dimensions.&lt;/p&gt;
&lt;p&gt;However, the SQL Server has a limitation of 16 fields in an index. &lt;br /&gt;With the first versions of &lt;i&gt;InventDim&lt;/i&gt; (which was introduced in Axapta 2.0) this was rarely a problem since only a few dimensions where shipped out-of-the-box. &lt;br /&gt;So partners and customers could still add more dimensions. Over time, numerous dimensions have been added in the standard version and in country specific solutions. &lt;br /&gt;As a result, we are now very close to the 16 field limit. With the Dynamics AX2012 Feature Pack and Russian functionality installed we have 14 fields in the index and more to come in future releases.&lt;/p&gt;
&lt;p&gt;We have received an increasing amount of questions about how to get around this issue so we have implemented a solution which allows you to add custom inventory dimensions and still have the uniqueness validated and enforced.&lt;/p&gt;
&lt;p&gt;In our investigation of possible solutions we have tried to find a balance between simplicity, maintainability, and performance. &lt;br /&gt;What we found to be the best solution can be described as follows:&lt;br /&gt;&lt;br /&gt;- Introduce a new field based on the &lt;i&gt;Sha1HashCode &lt;/i&gt;data type.&lt;br /&gt;- Remove some of the least used dimensions from the &lt;i&gt;DimIdx&lt;/i&gt; index and add the new field instead. The removed fields must be hashed in the new field during the insertion.&lt;br /&gt;- Calculate the hash and use it in the &lt;i&gt;findDim &lt;/i&gt;method when looking for an existing dimension.&lt;br /&gt;- Create a new &lt;i&gt;InventDimIdAllDimensions &lt;/i&gt;field in the &lt;i&gt;InventSumDeltaDim&lt;/i&gt; table (I guess the name says what it contains) and replace all the dimension fields in the &lt;i&gt;TTSItemCheckDimIdx&lt;/i&gt; index with this new field.&lt;/p&gt;
&lt;p&gt;This solution will be available in an upcoming release of Microsoft Dynamics AX so if you cannot wait for this release, feel free to be inspired by our findings &amp;ndash; hopefully it will also make it easier for you to upgrade your data.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10348173" width="1" height="1"&gt;</content><author><name>Kim Moerup</name><uri>http://blogs.msdn.com/kim_5F00_moerup_4000_hotmail.com/ProfileUrlRedirect.ashx</uri></author><category term="Microsoft Dynamics AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/Microsoft+Dynamics+AX+2012/" /><category term="AX 2012" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/AX+2012/" /><category term="InventDim index Dynamics AX" scheme="http://blogs.msdn.com/b/dynamicsaxscm/archive/tags/InventDim+index+Dynamics+AX/" /></entry></feed>