<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Dynamics AX Training</title>
	<atom:link href="http://www.dynamicsaxtraining.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.dynamicsaxtraining.com</link>
	<description>Axapta Training explains in easy way how and what for different modules are used.</description>
	<lastBuildDate>Mon, 17 Oct 2011 13:40:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Update assembly configuration file on the fly (from code)</title>
		<link>http://www.dynamicsaxtraining.com/knowledge-base-development/update-dll-configuration-file-on-the-fly-from-code</link>
		<comments>http://www.dynamicsaxtraining.com/knowledge-base-development/update-dll-configuration-file-on-the-fly-from-code#comments</comments>
		<pubDate>Mon, 17 Oct 2011 13:39:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Knowledge base (Development)]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=2116</guid>
		<description><![CDATA[The following code could be used to update the DLL configuration file from the code. It could be useful for example when User changes some parameter in Dynamics AX and .NET assemble should use other instance of external application. //_webReferenceName - the name of webReference (AOT\References) //_endPoint - the new address server static void updateAppConfig(str [...]]]></description>
			<content:encoded><![CDATA[<p>The following code could be used to update the DLL configuration file from the code. It could be useful for example when User changes some parameter in Dynamics AX and .NET assemble should use other instance of external application.<br />
<code><br />
//_webReferenceName - the name of webReference (AOT\References)<br />
//_endPoint - the new address<br />
server static void updateAppConfig(str _webReferenceName, str _endPoint)<br />
{<br />
    #define.Ax32Serv('Ax32Serv.config')<br />
    #define.endPointTag('endpoint')<br />
    #define.addressAttribute('address')</p>
<p>    SysReference                                                        sysReference;<br />
    FilePath                                                            serverConfigFile;<br />
    Microsoft.Dynamics.IntegrationFramework.WebService.AppDomainCache   appDomainCache;<br />
    XMLDocument                                                         xmlDocument;<br />
    XMLNodeList                                                         xmlNodeList;<br />
    XmlElement                                                          xmlElement;<br />
    ;</p>
<p>    //Create SysReference object<br />
    new InteropPermission(InteropKind::ClrInterop).assert();<br />
    sysReference = SysReference::newFromReferenceName(_webReferenceName);<br />
    if (sysReference == null)<br />
    {<br />
        throw error(strfmt("Referenct '%1' was not found", _webReferenceName));<br />
    }<br />
    CodeAccessPermission::revertAssert();</p>
<p>    //Configure<br />
    serverConfigFile = xinfo::directory(DirectoryType::Bin) + #Ax32Serv;</p>
<p>    new FileIOPermission(serverConfigFile, SysDataExpImp::readWrite2Mode(ReadWrite::read)).assert();<br />
    xmlDocument = new XMLDocument();<br />
    xmlDocument.load(serverConfigFile);<br />
    xmlNodeList = xmlDocument.getElementsByTagName(#endPointTag);<br />
    xmlElement  = xmlNodeList.nextNode();<br />
    while (xmlElement)<br />
    {<br />
        xmlElement.setAttribute(#addressAttribute, _endPoint);<br />
        xmlElement = xmlNodeList.nextNode();<br />
    }<br />
    CodeAccessPermission::revertAssert();</p>
<p>    //BP Deviation documented<br />
    new FileIOPermission(serverConfigFile, SysDataExpImp::readWrite2Mode(ReadWrite::Write)).assert();<br />
    xmlDocument.save(serverConfigFile);<br />
    CodeAccessPermission::revertAssert();</p>
<p>    //Reset application cashe - update end point adress<br />
    new InteropPermission(InteropKind::ClrInterop).assert();<br />
    appDomainCache = Microsoft.Dynamics.IntegrationFramework.WebService.AppDomainCache::get_Instance();<br />
    if (appDomainCache)<br />
    {<br />
        appDomainCache.Remove('LaserNet');<br />
    }<br />
    CodeAccessPermission::revertAssert();<br />
}<br />
</code></p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fknowledge-base-development%2Fupdate-dll-configuration-file-on-the-fly-from-code';
  addthis_title  = 'Update+assembly+configuration+file+on+the+fly+%28from+code%29';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/knowledge-base-development/update-dll-configuration-file-on-the-fly-from-code/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Get &#8220;available physical&#8221; values for specific item+dimensions per batch</title>
		<link>http://www.dynamicsaxtraining.com/knowledge-base-development/get-available-physical-values-for-specific-itemdimensions-per-batch</link>
		<comments>http://www.dynamicsaxtraining.com/knowledge-base-development/get-available-physical-values-for-specific-itemdimensions-per-batch#comments</comments>
		<pubDate>Mon, 17 Oct 2011 13:15:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Knowledge base (Development)]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=2113</guid>
		<description><![CDATA[Hi! Use the following code to get On-hand values for specific item + dimensions (warehouse, configuration, size and color) per warehouse, location, pallet, batch. Set required ItemId and inventDim (inventDim should contain warehouse, configuration, size and color values). static void availPhysical(Args _args) { InventSum inventSum; InventSumDelta inventSumDelta; InventDim sumInventDim; ItemId itemId = 'ItemId_Here'; InventDim inventDim [...]]]></description>
			<content:encoded><![CDATA[<p>Hi! Use the following code to get On-hand values for specific item + dimensions (warehouse, configuration, size and color) per warehouse, location, pallet, batch.<br />
Set required ItemId and inventDim (inventDim should contain warehouse, configuration, size and color values).<br />
<code>static void availPhysical(Args _args)<br />
{<br />
    InventSum                       inventSum;<br />
    InventSumDelta                  inventSumDelta;<br />
    InventDim                       sumInventDim;<br />
    ItemId                          itemId      = 'ItemId_Here';<br />
    InventDim                       inventDim   = InventDim::find('ItemInventDim_Here');</p>
<p>    WMSLocation                     wmsLocation;</p>
<p>    createdTransactionId            ttsId;<br />
    ;</p>
<p>    while select sum(AvailPhysical)<br />
    from inventSum<br />
    where (inventSum.ItemId == itemId) &#038;&#038;<br />
          (!inventSum.Closed) &#038;&#038; (!inventSum.ClosedQty) &#038;&#038;<br />
          (inventSum.AvailPhysical != 0)</p>
<p>    join sumInventDim<br />
    group by InventLocationId, wMSLocationId, wMSPalletId, InventBatchId<br />
    where (sumInventDim.InventDimId      == inventSum.InventDimId) &#038;&#038;<br />
          (sumInventDim.InventLocationId == inventDim.InventLocationId) &#038;&#038;<br />
          (sumInventDim.configId         == inventDim.configId) &#038;&#038;<br />
          (sumInventDim.InventSizeId     == inventDim.InventSizeId) &#038;&#038;<br />
          (sumInventDim.InventColorId    == inventDim.InventColorId)</p>
<p>    exists join wmsLocation<br />
    where (wmsLocation.InventLocationId == sumInventDim.InventLocationId) &#038;&#038;<br />
          (wmsLocation.wMSLocationId    == sumInventDim.wMSLocationId) &#038;&#038;<br />
          ((wmsLocation.locationType    == WMSLocationType::Buffer) ||<br />
           (wmsLocation.locationType    == WMSLocationType::Pick))<br />
    {<br />
        //do something<br />
        //sumInventDim.InventLocationId,<br />
        //sumInventDim.wMSLocationId,<br />
        //sumInventDim.wMSPalletId,<br />
        //sumInventDim.InventBatchId,<br />
        //inventSum.AvailPhysical,<br />
    }</p>
<p>    if (appl.inventUpdateOnhandGlobal().inventUpdateOnhand().mustAddInventSumDeltaOnhand(itemId))<br />
    {<br />
        ttsId = appl.inventUpdateOnhandGlobal().inventUpdateOnhand().ttsId();</p>
<p>        while select sum(AvailPhysical)<br />
        from inventSumDelta<br />
        where (inventSumDelta.ItemId == itemId) &#038;&#038;<br />
              (inventSumDelta.TTSId == ttsId) &#038;&#038;<br />
              (inventSumDelta.IsAggregated == NoYes::No) &#038;&#038;<br />
              (inventSumDelta.AvailPhysical != 0)</p>
<p>        join sumInventDim<br />
        group by InventLocationId, wMSLocationId, wMSPalletId, InventBatchId<br />
        where (sumInventDim.InventDimId      == inventSumDelta.InventDimId) &#038;&#038;<br />
              (sumInventDim.InventLocationId == inventDim.InventLocationId) &#038;&#038;<br />
              (sumInventDim.configId         == inventDim.configId) &#038;&#038;<br />
              (sumInventDim.InventSizeId     == inventDim.InventSizeId) &#038;&#038;<br />
              (sumInventDim.InventColorId    == inventDim.InventColorId)</p>
<p>        exists join wmsLocation<br />
        where (wmsLocation.InventLocationId == sumInventDim.InventLocationId) &#038;&#038;<br />
              (wmsLocation.wMSLocationId    == sumInventDim.wMSLocationId) &#038;&#038;<br />
              ((wmsLocation.locationType    == WMSLocationType::Buffer) ||<br />
               (wmsLocation.locationType    == WMSLocationType::Pick))</p>
<p>        {<br />
            //do something<br />
            //sumInventDim.InventLocationId,<br />
            //sumInventDim.wMSLocationId,<br />
            //sumInventDim.wMSPalletId,<br />
            //sumInventDim.InventBatchId,<br />
            //inventSumDelta.AvailPhysical,<br />
        }<br />
    }<br />
}</code></p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fknowledge-base-development%2Fget-available-physical-values-for-specific-itemdimensions-per-batch';
  addthis_title  = 'Get+%26%238220%3Bavailable+physical%26%238221%3B+values+for+specific+item%2Bdimensions+per+batch';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/knowledge-base-development/get-available-physical-values-for-specific-itemdimensions-per-batch/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Add form controls without form modification</title>
		<link>http://www.dynamicsaxtraining.com/knowledge-base-development/add-form-controls-without-form-modification</link>
		<comments>http://www.dynamicsaxtraining.com/knowledge-base-development/add-form-controls-without-form-modification#comments</comments>
		<pubDate>Mon, 17 Oct 2011 10:35:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Knowledge base (Development)]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=2110</guid>
		<description><![CDATA[Hi! Sometimes Customer requires that developed solution doesn&#8217;t touch the standard forms, because Customer wants minimize the merge process. If you should add some controls to the form without form modification than this topic could help you. Let&#8217;s assume that CustInvoiceJournal and CustConfirmJournal forms should have new menu button with menu item. Create the static [...]]]></description>
			<content:encoded><![CDATA[<p>Hi! Sometimes Customer requires that developed solution doesn&#8217;t touch the standard forms, because Customer wants minimize the merge process. If you should add some controls to the form without form modification than this topic could help you.</p>
<p>Let&#8217;s assume that <strong>CustInvoiceJournal</strong> and <strong>CustConfirmJournal</strong> forms should have new menu button with menu item.</p>
<ol>
<li>Create the static method:<br />
<code>static void addMenuItems(formRun    _caller)<br />
{<br />
    FormFunctionButtonControl   formFunctionButtonControl;<br />
    FormButtonGroupControl      formButtonGroupControl;<br />
    FormMenuButtonControl       formMenuButtonControl;<br />
    ;</p>
<p>    switch (_caller.name())<br />
    {</p>
<p>        case formstr(CustInvoiceJournal) :<br />
            formButtonGroupControl = _caller.form().design().control(identifierstr(OverviewButtonGroup));<br />
        break;</p>
<p>        case formstr(CustConfirmJournal) :<br />
            formButtonGroupControl = _caller.form().design().control(identifierstr(ButtonGroupOverview));<br />
        break;</p>
<p>        case formstr(CustPackingSlipJournal) :<br />
            formButtonGroupControl = _caller.form().design().control(identifierstr(OverviewButtonGroup));<br />
        break;</p>
<p>    }</p>
<p>    if (formButtonGroupControl)<br />
    {<br />
        // new menu button<br />
        formMenuButtonControl = formButtonGroupControl.addControl(FormControlType::MenuButton, identifierstr(NameOf_MenuButton));<br />
        formMenuButtonControl.text('New menu button');</p>
<p>        //new menu item<br />
        formFunctionButtonControl = FormMenuButtonControl.addControl(FormControlType::MenuFunctionButton, identifierstr(NameOf_MenuItem));<br />
        formFunctionButtonControl.menuItemType(MenuItemType::Display);<br />
        formFunctionButtonControl.menuItemName(MenuItemDisplayStr(CustTable));<br />
    }<br />
}</code>
</li>
<li>Add the following code to the <strong>SysSetupFormRun.init</strong> method:<br />
<code>public void init()<br />
{<br />
    ;</p>
<p>    Class1::addMenuItems(this);//New code</p>
<p>    super();</p>
<p>    SysSecurityFormSetup::loadSecurity(this);<br />
    this.dimensionFieldCtrls();<br />
    this.inventStorageDimFieldCtrls();</p>
<p>    if (this.isWorkflowEnabled())<br />
    {<br />
        workflowControls = SysWorkflowFormControls::construct(this);<br />
        workflowControls.initControls();<br />
    }<br />
}</code><br />
This is all.</li>
</ol>
<p>Sometimes it is required to change form behavior without form modification. Let&#8217;s assume when User clicks the <strong>Preview/Print</strong> button on the <strong>CustInvoiceJournal</strong> form the info message shows.</p>
<ol>
<li> Add the following code the the <strong>SysSetupFormRun.init</strong> method:<br />
<code>public void init()<br />
{<br />
    ;<br />
    super();</p>
<p>    SysSecurityFormSetup::loadSecurity(this);<br />
    this.dimensionFieldCtrls();<br />
    this.inventStorageDimFieldCtrls();</p>
<p>    if (this.isWorkflowEnabled())<br />
    {<br />
        workflowControls = SysWorkflowFormControls::construct(this);<br />
        workflowControls.initControls();<br />
    }</p>
<p>    if (Class1::overload(this))                                         // new code<br />
    {                                                                   // new code<br />
        this.controlMethodOverload(true);                               // new code<br />
        this.controlMethodOverloadObject(new Class1(this));             // new code<br />
    }<br />
}</code></li>
<li>The <strong>Class1</strong> class has the following methods:<br />
<code>void new(FormRun    _caller)<br />
{<br />
    ;<br />
    caller = _caller;<br />
}<br />
public static boolean overload(FormRun  _caller)<br />
{<br />
    ;<br />
    switch (_caller.name())<br />
    {<br />
        case formstr(CustInvoiceJournal):<br />
            return true;<br />
    }</p>
<p>    return false;<br />
}</code><br />
To override method behavior the class method should have the following name: ControlName_methodName(). In our case we override the <strong>clicked</strong>() method of the <strong>SalesInvoiceShow</strong> control:<br />
<code>void SalesInvoiceShow_clicked()<br />
{<br />
    CustInvoiceJour     custInvoiceJour;<br />
    FormDataSource      formDataSource;<br />
    FormButtonControl   buttonControl;<br />
    ;</p>
<p>    formDataSource  = caller.dataSource();<br />
    custInvoiceJour = caller.dataSource().cursor();</p>
<p>    if (custInvoiceJour.InvoiceId != "11111111")<br />
    {<br />
        info("You can't open invoice preview because we override button behaviour");<br />
    }<br />
    else//call super()<br />
    {<br />
        buttonControl   = caller.controlCallingMethod();<br />
        buttonControl.clicked();<br />
    }<br />
}</code><br />
That is all. If we open the <strong>CustInvoiceJournal</strong> and click the <strong>Preview/Print</strong> the info message will be shown. If Invoice id is 11111111 then button will have the standard behaviour (i.e. the Invoice will be shown)</li>
</ol>
<p>All the best <img src='http://www.dynamicsaxtraining.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fknowledge-base-development%2Fadd-form-controls-without-form-modification';
  addthis_title  = 'Add+form+controls+without+form+modification';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/knowledge-base-development/add-form-controls-without-form-modification/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Module logo</title>
		<link>http://www.dynamicsaxtraining.com/knowledge-base-development/module-logo</link>
		<comments>http://www.dynamicsaxtraining.com/knowledge-base-development/module-logo#comments</comments>
		<pubDate>Fri, 14 Oct 2011 15:22:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Knowledge base (Development)]]></category>
		<category><![CDATA[image id]]></category>
		<category><![CDATA[menu logo]]></category>
		<category><![CDATA[module image]]></category>
		<category><![CDATA[resource id]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=2099</guid>
		<description><![CDATA[Hi! I have received the following task: Create new module in Dynamics AX and assign image or logo to this module. Let&#8217;s develop this task. Module is created very easy: Go to the AOT &#62; Menus and create new menu.  For example TestMenu. Add menu item. For example CustTable menu item. Then create new menu [...]]]></description>
			<content:encoded><![CDATA[<p>Hi! I have received the following task: Create new module in Dynamics AX and assign image or logo to this module.</p>
<p>Let&#8217;s develop this task.</p>
<p>Module is created very easy:</p>
<ol>
<li>Go to the <strong>AOT</strong> &gt; <strong>Menus </strong>and create new menu.  For example <em>TestMenu</em>.</li>
<li>Add menu item. For example <em>CustTable</em> menu item.</li>
<li>Then create new menu reference in the <em>MainMenu </em>menu:
<ul>
<li>On the <em>MainMenu</em> menu clicks the right mouse button and select <strong>New</strong> &gt; <strong>Menu reference</strong>. The <strong>Select: Menus</strong> windows opens.</li>
<li>Drag and drop the <em>TestMenu</em> menu from <strong>Select:Menus</strong> window to the <em>MainMenu</em>.</li>
</ul>
</li>
</ol>
<div id="attachment_2100" class="wp-caption alignnone" style="width: 432px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/AOTMenu.png"><img class="size-full wp-image-2100      " title="New menu" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/AOTMenu.png" alt="New menu" width="422" height="651" /></a><p class="wp-caption-text">New menu</p></div>
<p>This is all. The new module have been added. Reopen Dynamics AX application.</p>
<p>The new modules appears without image (to move module on the top position clicks the <strong>Microsoft Dynamics AX</strong> &gt;<strong>View</strong> &gt; <strong>Navigate Pane Options&#8230;</strong>):</p>
<div id="attachment_2101" class="wp-caption alignnone" style="width: 612px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/TestModuleWithoutLogo.png"><img class="size-full wp-image-2101  " title="New module without logo" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/TestModuleWithoutLogo.png" alt="New module without logo" width="602" height="500" /></a><p class="wp-caption-text">New module without logo</p></div>
<p>Adding module logo is not so easy. Select the <em>TestMenu</em> menu in the AOT, click right mouse button and select <strong>Properties</strong>. There are two properties <strong>NoramlImage</strong> and <strong>NormalResource</strong>.</p>
<div id="attachment_2102" class="wp-caption alignnone" style="width: 382px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/MenuProperties.png"><img class="size-full wp-image-2102  " title="Menu properties" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/MenuProperties.png" alt="Menu properties" width="372" height="516" /></a><p class="wp-caption-text">Menu properties</p></div>
<p>In the <strong>NormalImage</strong> property the file path to the logo could be specified. But if we create product for sell then we can not specify the exact file path because each Customer will have own path.</p>
<p>In the <strong>NormalResource</strong> property the image id could be specified. It is suitable for our requirements. Let&#8217;s add image in Dynamics AX:</p>
<ol>
<li>Go to the <strong>AOT</strong> &gt; <strong>Resources</strong>. Click right mouse button and select <strong>Create form file</strong>.</li>
<li>Specify the file path and click <strong>Open</strong>.</li>
</ol>
<p>The new image resource will be created:</p>
<div id="attachment_2103" class="wp-caption alignnone" style="width: 432px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/Resource.png"><img class="size-full wp-image-2103" title="Image resource" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/Resource.png" alt="Image resource" width="422" height="554" /></a><p class="wp-caption-text">Image resource</p></div>
<p>But this resource doesn&#8217;t have the resource id or image id property. Even more in the <strong>NormalResource</strong> property only the resource id of standard image can be specified. Standard image could be review here <strong>AOT</strong> &gt; <strong>Forms</strong> &gt; <strong>SysImageResources</strong>.</p>
<p>Trick: we will use the <strong>NormalImage</strong> property and <strong>Logo_image_png</strong> resource.</p>
<p>Create the following static method:<br />
<code>static client void addImageToModule()<br />
{<br />
    TreeNode    treeNodeMenu;<br />
    ;</p>
<p>    treeNodeMenu = SysDictMenu::newMenuName(menustr(TestMenu)).parmTreeNode();<br />
    if (treeNodeMenu)<br />
    {<br />
        treeNodeMenu.AOTsetProperty(identifierstr(NormalImage), SysResource::getImagePath(resourcestr(Logo_image_png)));<br />
        treeNodeMenu.AOTsave();<br />
    }<br />
}</code></p>
<p>Call this method in the \Classes\Application\startupPost method:<br />
<code><br />
// No SYS code must exist in this method<br />
// If you need the startup command, look in the class SysStartupCmd<br />
void startupPost()<br />
{<br />
    ;<br />
    Class1::addImageToModule();<br />
}<br />
</code><br />
Reopen application.</p>
<div id="attachment_2104" class="wp-caption alignnone" style="width: 620px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/MenuWithLogo.png"><img class="size-full wp-image-2104  " title="Module with logo" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/10/MenuWithLogo.png" alt="Module with logo" width="610" height="500" /></a><p class="wp-caption-text">Module with logo</p></div>
<p>All the best <img src='http://www.dynamicsaxtraining.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
<code><br />
</code></p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fknowledge-base-development%2Fmodule-logo';
  addthis_title  = 'Module+logo';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/image+id' rel='tag' target='_blank'>image id</a>, <a class='technorati-link' href='http://technorati.com/tag/menu+logo' rel='tag' target='_blank'>menu logo</a>, <a class='technorati-link' href='http://technorati.com/tag/module+image' rel='tag' target='_blank'>module image</a>, <a class='technorati-link' href='http://technorati.com/tag/resource+id' rel='tag' target='_blank'>resource id</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/knowledge-base-development/module-logo/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Production life cycle</title>
		<link>http://www.dynamicsaxtraining.com/production_training/production-life-cycle</link>
		<comments>http://www.dynamicsaxtraining.com/production_training/production-life-cycle#comments</comments>
		<pubDate>Fri, 15 Jul 2011 15:23:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Production training]]></category>
		<category><![CDATA[Production end]]></category>
		<category><![CDATA[Production report as finished]]></category>
		<category><![CDATA[Production scheduling]]></category>
		<category><![CDATA[Production start]]></category>
		<category><![CDATA[Productione estimation]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=1940</guid>
		<description><![CDATA[Introduction Hi! In this training lesson, we will learn the main production process steps and their realization in Microsoft Dynamics AX. I have decided to create a new Universal Recorder BOM item that will consist of items from the standard demo data and with a simple route. We will learn the most complex flow of [...]]]></description>
			<content:encoded><![CDATA[<h1>Introduction</h1>
<p>Hi! In this training lesson, we will learn the main production process steps and their realization in Microsoft Dynamics AX.</p>
<p>I have decided to create a new Universal Recorder BOM item that will consist of items from the standard demo data and with a simple route. We will learn the most complex flow of production process that will include the warehouse management (the <a title="Item arrival and registration" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/item-arrival-and-registration" target="_blank">item arrival</a> and <a title="Shipment" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/shipment" target="_blank">shipment</a> flows) and the job management.</p>
<h1>Prerequisite Setup</h1>
<p>In this topic, we will create and check all data that is required to complete a production process. We will do the following:</p>
<ul>
<li>Create a new Universal Recorder BOM item.</li>
<li>Create a new Universal Recorder BOM. BOM will consist of components 1601 and 1602. Check the warehouse management parameters.</li>
<li>Create a simple Universal Recorder route. Check the job management parameters.</li>
<li>Purchase BOM components (1601 and 1602) to make them on-hand in stock.</li>
</ul>
<h2>Creating a New BOM Item</h2>
<p>We have already discussed what a BOM item is and how it can be created in <a title="Bills of Material" href="http://www.dynamicsaxtraining.com/production_training/bills-of-material" target="_blank">this training lesson</a>. Shortly, a BOM item is a regular item whose <strong>Item type</strong> field contains the <em>BOM</em> value.</p>
<p>Let’s create a new Universal Recorder BOM item:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Create a new line with the following parameters:
<ul>
<li>Item number = 0000</li>
<li>Item name = Universal Recorder</li>
<li>Item group = Packaging</li>
<li>Item type = BOM</li>
<li>Inventory model group = FIFO</li>
<li>Dimension group = N-W</li>
</ul>
</li>
</ol>
<div id="attachment_1941" class="wp-caption alignnone" style="width: 630px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/ItemForm.png"><img class="size-full wp-image-1941" title="Item form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/ItemForm.png" alt="Item form" width="620" height="286" /></a><p class="wp-caption-text">Item form</p></div>
<p>To understand what the Item group, Inventory model group, and Dimension group parameters are used for, read the “Item setup” training lessons from the <a title="Trade and Logistics training" href="http://www.dynamicsaxtraining.com/trade-and-logistics-training" target="_blank">Trade and Logistics training</a>.</p>
<h2>Creating a BOM</h2>
<p>A BOM is a receipt of a BOM item (like a cake receipt containing a list of ingredients). In the <a title="Bills of Materials" href="http://www.dynamicsaxtraining.com/production_training/bills-of-material" target="_blank">Bills of Material</a> training lesson, we have already discussed how a BOM is created and set up. In our example, the “receipt” of the Universal Recorder BOM item will include items 1601 and 1602. This is not logical as Universal Recorder contains a lot of different elements (a microchip, a decoder, a sound-recorder head, etc.). But to understand the production process, it does not matter whether a BOM contains all required components. We will assume that only items 1601 and 1602 are required to assembly the Universal Recorder. These items are taken from the standard demo data and already contain the Warehouse management setup.</p>
<p>Let’s create the new Universal Recorder BOM:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Bills of Materials</strong>. The <strong>BOM</strong> form opens.</li>
<li>In the header area, create a new line with the following values:
<ul>
<li>Name = Universal Recorder BOM</li>
<li>Site = 2</li>
</ul>
</li>
<li>Click the <strong>Lines</strong> button. The <strong>BOM line</strong> form opens.</li>
<li>Create a new line with the following values:
<ul>
<li>Item number = 1601</li>
<li>Warehouse = 22</li>
<li>Quantity = 1</li>
</ul>
</li>
<li>Create another line with the following values:
<ul>
<li>Item number = 1602</li>
<li>Warehouse = 22</li>
<li>Quantity = 1</li>
</ul>
</li>
<li>The <strong>BOM line </strong>form will have the following view:
<div id="attachment_1942" class="wp-caption alignnone" style="width: 605px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/BOMLineForm.png"><img class="size-full wp-image-1942" title="BOM line form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/BOMLineForm.png" alt="BOM line form" width="595" height="244" /></a><p class="wp-caption-text">BOM line form</p></div></li>
<li>Close the <strong>BOM line</strong> form.</li>
<li>In the Versions area, create a new line with the following values (assign a BOM item):</li>
<ul>
<li>Item number = 0000 (Universal Recorder)</li>
</ul>
<li>In the Versions area, click the <strong>Approve</strong> button. Select employee 7210, select the <strong>Approve Bill of materials</strong> check box in the <strong>Approve version</strong> form, and then click <strong>OK</strong>.</li>
<li>In the Versions area, click the <strong>Activation</strong> button.</li>
<li>The <strong>BOM</strong>form will have the following view:
<p><div id="attachment_1943" class="wp-caption alignnone" style="width: 619px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/BOMForm.png"><img class="size-full wp-image-1943" title="BOM form " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/BOMForm.png" alt="BOM form" width="609" height="334" /></a><p class="wp-caption-text">BOM form</p></div></li>
</ol>
<p>Let’s analyze the BOM components: items 1601 and 1602. These items must have the setup that uses the Warehouse management features. Note that we will analyze only item 1601, because item 1602 has the same parameters.</p>
<p>First of all, item 1601 must have the Site, Warehouse, Location, and Pallet dimensions active:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms </strong>&gt;<strong> Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Find item 1601 and go to the <strong>General</strong> tab. The item uses the N-WLP dimension group.</li>
<li>Right-click the <strong>Dimension group</strong> field and select the <strong>Go to the Main Table Form</strong> option. The <strong>Inventory dimensions </strong>form opens. Make sure that the Site, Warehouse, Location, and Pallet Id dimensions are active.
<p><div id="attachment_1944" class="wp-caption alignnone" style="width: 621px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/InventoryDimensions.png"><img class="size-full wp-image-1944" title="Inventory dimensions form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/InventoryDimensions.png" alt="Inventory dimensions form" width="611" height="435" /></a><p class="wp-caption-text">Inventory dimensions form</p></div></li>
</ol>
<p>Item 1601 must be set up so that the registration and picking steps are mandatory. The Registration step ensures that a pallet with items is placed in a certain warehouse location. The Picking step ensures that the item is picked from the warehouse location. If, for example, the registration step is not mandatory, then the item can be received in a warehouse when an Invoice is posted without any previous steps.</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms </strong>&gt;<strong> Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Find item 1601 and go to the <strong>General</strong> tab. The item uses the FRP_PICK inventory model group.</li>
<li>Right-click the <strong>Inventory model group</strong> field and select the <strong>Go to the Main Table Form</strong> option. The <strong>Inventory model groups</strong> form opens. Go to the <strong>Setup</strong> tab and make sure that the <strong>Registration requirements</strong>, <strong>Picking requirements</strong>, and <strong>Consolidated picking method</strong>check boxes are selected.
<p><div id="attachment_1945" class="wp-caption alignnone" style="width: 606px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/InventoryModelGroup.png"><img class="size-full wp-image-1945" title="Inventory model groups form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/InventoryModelGroup.png" alt="Inventory model groups form" width="596" height="453" /></a><p class="wp-caption-text">Inventory model groups form</p></div>
<p>&nbsp;</li>
</ol>
<p>The pallet type for item 1601 must be set up so that to receive, store, and issue items and the quantity of an item that can be loaded to the pallet must be specified:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms </strong>&gt;<strong> Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Find item 1601 and go to the <strong>Setup</strong> tab. Make sure that the <strong>Pallet type</strong> and <strong>Pallet quantity </strong>fields are populated.
<div id="attachment_1946" class="wp-caption alignnone" style="width: 608px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/ItemFormSetupTab.png"><img class="size-full wp-image-1946" title="Item form, Setup tab" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/ItemFormSetupTab.png" alt="Item form, Setup tab" width="598" height="368" /></a><p class="wp-caption-text">Item form, Setup tab</p></div></li>
</ol>
<p>And, the last two settings that item 1601 must have are a Store zone and a Picking location. A store zone is used to define locations for storing items during the item arrival and registration process, a picking location is used during the shipment process.</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms </strong>&gt;<strong> Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Find item 1601 and then click the <strong>Setup</strong> &gt; <strong>Warehouse items</strong> menu button. The <strong>Warehouse items</strong> form opens. We will work with warehouse 22; so select the line with warehouse 22 and then go to the <strong>Locations</strong> tab. Make sure that the <strong>Store zone</strong> and <strong>Picking location </strong>fields are populated.
<p><div id="attachment_1947" class="wp-caption alignnone" style="width: 491px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/WarehouseItemsForm.png"><img class="size-full wp-image-1947" title="Warehouse items form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/WarehouseItemsForm.png" alt="Warehouse items form" width="481" height="465" /></a><p class="wp-caption-text">Warehouse items form</p></div></li>
</ol>
<p>We will go through all steps of Production process later in this training. In the <strong>Trade and Logistics training</strong> you can study in detail the <a title="Item arrival and registration" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/item-arrival-and-registration" target="_blank">Item arrival and registration</a> and <a title="Shipment" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/shipment" target="_blank">Shipment</a> processes (how Store zone, Picking location, Pallet type etc. parameters are used).</p>
<h2>Creating a Route</h2>
<p>A route contains operations that must be executed in order to produce a finished good from components. In the <a title="Routes and Operations" href="http://www.dynamicsaxtraining.com/production_training/routes-and-operations" target="_blank">previous training lesson</a>, we have already discussed in detail how a route can be created and set up. In this training lesson, we will create a simple route with one operation. Let’s reuse operations from the standard demo data. Assume that only the “Enclosure Assembly” operation is required to build the Universal Recorder.</p>
<p>Create a simple route:</p>
<ol>
<li>Go to <strong>Production</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Route details</strong>. The <strong>Route</strong> form opens.</li>
<li>In the Header area, create a new line with the following value:
<ul>
<li>Name = Universal Recorder Route</li>
</ul>
</li>
<li>Click the <strong>Route</strong> button. The <strong>Route</strong> form opens.</li>
<li>In the header area, create a new line with the following value (set up an operation):
<ul>
<li>Operation = Assem_Encl (Enclosure Assembly)</li>
</ul>
</li>
<li>In the lines area, create a new line with the following values (set up a work center):
<ul>
<li>Item code = Table</li>
<li>Item relation = 0000 (Universal Recorder)</li>
<li>Site = 2</li>
<li>Work center = 011</li>
</ul>
</li>
<li>The <strong>Route </strong>form will have the following view:
<p><div id="attachment_1949" class="wp-caption alignnone" style="width: 610px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteLine.png"><img class="size-full wp-image-1949" title="Route (operations) form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteLine.png" alt="Route (operations) form" width="600" height="297" /></a><p class="wp-caption-text">Route (operations) form</p></div></li>
<li>Close the <strong>Route</strong> form.</li>
<li>In the Versions area, create a new line with the following values (assign a BOM item):
<ul>
<li>Item number = 0000 (Universal Recorder)</li>
<li>Site = 2</li>
</ul>
</li>
<li>In the Versions area, click the <strong>Approve</strong> button. Select employee 7210, select the <strong>Approve route</strong> check box in the <strong>Approve version</strong> form, and then click <strong>OK</strong>.</li>
<li>Click the <strong>Activation</strong> button.</li>
<li>The <strong>Route </strong>form will have the following view:
<p><div id="attachment_1950" class="wp-caption alignnone" style="width: 637px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteForm.png"><img class="size-full wp-image-1950" title="Route form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteForm.png" alt="Route form" width="627" height="300" /></a><p class="wp-caption-text">Route form</p></div></li>
</ol>
<p>Let’s analyze the parameters that are required for the job management. In the <a title="Routes and Operations" href="http://www.dynamicsaxtraining.com/production_training/routes-and-operations" target="_blank">Route training lesson</a>, we have studied all route and operation parameters in detail.</p>
<p>Each operation can be divided into jobs. During job scheduling, the following jobs can be created for each operation: Queue before, Setup, Process, Transport, and Queue after. To create jobs, the corresponding job time must be specified. We will specify the time only for the Setup and Process job, so that only these jobs will be created.</p>
<ol>
<li>In the <strong>Route</strong> form, click the <strong>Route</strong> button. The <strong>Route</strong> form opens.</li>
<li>In the lines area, click the <strong>Times</strong> tab. Specify the following values: Setup time = 2 hours, Run time = 3 hours. The <strong>Route</strong>form will have the following view:
<p><div id="attachment_1951" class="wp-caption alignnone" style="width: 639px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteSetupTab.png"><img class="size-full wp-image-1951" title="Route form, Times tab" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteSetupTab.png" alt="Route form, Times tab" width="629" height="385" /></a><p class="wp-caption-text">Route form, Times tab</p></div></li>
</ol>
<p>The Route group defines how the operation will be handled in Microsoft Dynamics AX. We can see that the Assem_Encl operation uses route group 10 (see the Figure &#8220;Route (operations) form&#8221;). Let’s analyze what parameters are set up for route group 10:</p>
<ol>
<li>Go to the <strong>Production</strong> &gt; <strong>Setup</strong> &gt; <strong>Routes</strong> &gt; <strong>Route groups</strong>. The <strong>Route group</strong> form opens.</li>
<li>Select route group 10 and then go to the <strong>General</strong> tab. We can see that all check boxes in the <strong>Automatic route consumption </strong>group box are selected. In this case, the route consumption step will be executed automatically. Since we are interested in going through all the production steps, this group is not acceptable.
<p><div id="attachment_1952" class="wp-caption alignnone" style="width: 548px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteGroupForm.png"><img class="size-full wp-image-1952" title="Route group form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteGroupForm.png" alt="Route group form" width="538" height="442" /></a><p class="wp-caption-text">Route group form</p></div></li>
<li>Route group 20 has all mentioned check boxes cleared, so this group is acceptable (make sure yourself).</li>
</ol>
<p>We need to change the route group from 10 to 20 in the <strong>Route</strong> form. Go to <strong>Production</strong> &gt; <strong>Common</strong> <strong>Forms</strong> &gt; <strong>Route</strong> <strong>details</strong> &gt; Find the Universal Recorder Route &gt; Click the <strong>Route</strong> button &gt; Change <strong>Route group </strong>from 10 to 20.</p>
<p><div id="attachment_1953" class="wp-caption alignnone" style="width: 671px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteLineNewGroup.png"><img class="size-full wp-image-1953" title="Route form, Route group 20" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/07/RouteLineNewGroup.png" alt="Route form, Route group 20" width="661" height="363" /></a><p class="wp-caption-text">Route form, Route group 20</p></div>
<p>One more parameter that is required for Warehouse management is work center production location. In the <a title="Work Centers(Resources)" href="http://www.dynamicsaxtraining.com/production_training/work-centersresources" target="_blank">Work center training lesson</a> we have set up the 01-00-0-0 production input location for the 011 work center (see the “Input location” paragraph and set up production location if you omit this step).</p>
<h2>Purchasing BOM Components</h2>
<p>We have already set up all parameters that are required for the production process lifecycle with the warehouse and job management. But, before starting the production of a BOM item, we must have all BOM components in the warehouse (i.e. on-hand). In this topic, we will purchase the BOM components – items 1601 and 1602.</p>
<h1>&#8230;</h1>
<p><a title="Production training" href="http://www.dynamicsaxtraining.com/available-trainings/trade-and-logistics-training"><img class="size-full wp-image-1110 alignright" title="manufacturing-production-operations-jobs1" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/06/manufacturing-production-operations-jobs8.png" alt="Production training" width="150" height="90" /></a></p>
<h1>You are not authorized to see the full training lesson (38 pages are hidden).</h1>
<p><a title="Production training" href="http://www.dynamicsaxtraining.com/available-trainings/trade-and-logistics-training">Download the full PDF version of the Production training for Dynamics AX 2009.</a></p>
<div style="clear:both;"></div>
<h1>&#8230;</h1>
<h1>Summary</h1>
<p>In this training lesson, we have gone through the Production lifecycle with the warehouse and job management.</p>
<p>The main steps of the production lifecycle are:</p>
<ol>
<li>Creating a production order.</li>
<li>Estimation. The cost price is calculated.</li>
<li>Scheduling. The start and end date and time is scheduled.</li>
<li>Release the production order. Pick component items and deliver to a work center.</li>
<li>Start the production order. Post time and components quantity consumed during executing jobs: manually, automatically, in the Shop Floor Control module.</li>
<li>Report as finished. Produced items become available in the warehouse.</li>
<li>End the production order. Financial update. Transfer cost from Shop Floor Control.</li>
</ol>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fproduction_training%2Fproduction-life-cycle';
  addthis_title  = 'Production+life+cycle';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/Production+end' rel='tag' target='_blank'>Production end</a>, <a class='technorati-link' href='http://technorati.com/tag/Production+report+as+finished' rel='tag' target='_blank'>Production report as finished</a>, <a class='technorati-link' href='http://technorati.com/tag/Production+scheduling' rel='tag' target='_blank'>Production scheduling</a>, <a class='technorati-link' href='http://technorati.com/tag/Production+start' rel='tag' target='_blank'>Production start</a>, <a class='technorati-link' href='http://technorati.com/tag/Productione+estimation' rel='tag' target='_blank'>Productione estimation</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/production_training/production-life-cycle/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transfer orders</title>
		<link>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/transfer-orders</link>
		<comments>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/transfer-orders#comments</comments>
		<pubDate>Thu, 03 Mar 2011 12:09:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dynamics AX Trade and Logistics training]]></category>
		<category><![CDATA[Receive transfer order]]></category>
		<category><![CDATA[Ship transfer order]]></category>
		<category><![CDATA[Transfer order]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=1766</guid>
		<description><![CDATA[Introduction Hi there! In this training lesson, we will study how to work with a transfer order in Microsoft Dynamics AX. The transfer order is used for registering in the system the items that must be moved from one warehouse to another and for managing this process. What is the difference between a transfer journal [...]]]></description>
			<content:encoded><![CDATA[<h1>Introduction</h1>
<p>Hi there! In this training lesson, we will study how to work with a transfer order in Microsoft Dynamics AX.</p>
<p>The transfer order is used for registering in the system the items that must be moved from one warehouse to another and for managing this process. What is the difference between a transfer journal and a transfer order? With the help of the <strong>transfer journal</strong>, the Inventory Manager transfers the items from one dimension (warehouse, location, color, etc) to another one <strong>instantaneously</strong> .The <strong>Transfer order</strong> is used for managing the transfer process itself &#8211; that is all steps of transferring an item from one place to another. <strong> </strong> (Transfer journals are located under <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Journals</strong> &gt; <strong>Item</strong> <strong>transaction</strong> &gt; <strong>Transfer</strong>.)</p>
<p>Transfer orders are located under <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Periodic</strong> &gt; <strong>Transfer</strong> <strong>orders</strong>.</p>
<p>We will study the most complex flow when items must be picked and registered in the system (i.e. we will use the Warehouse Management functionality). I will use <a title="Demo data" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/create-new-company-demo-data" target="_blank">this demo data</a>.</p>
<p>Let’s assume that the Inventory Manager wants to move 5 Standard Digital Video Recorder Model 01 (1601) items from warehouse 22 to warehouse 23.</p>
<h1>Prerequisite Step</h1>
<p>We need to have the Standard Digital Video Recorder Model 01 (1601) items on-hand in the warehouse 22.</p>
<p>You can perform all required purchase steps to have it on-hand (i.e. create a purchase order, arrive items, register items , and post a packing slip and an invoice). For more information, you can read <a title="Purchase business process" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/purchase-business-process" target="_blank">this training lesson</a>.</p>
<p>Or, we can add item on-hand with the help of the counting journal:</p>
<ol>
<li>Go to <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Journals</strong> &gt; <strong>Item counting</strong>. The <strong>Inventory journal</strong> form opens.</li>
<li>Click the <strong>Create new</strong> button. The <strong>Inventory dimension</strong> form opens.</li>
<li>Select the <strong>Warehouse</strong> check box and then click <strong>OK</strong>. The <strong>Journal lines</strong> form opens.</li>
<li>Create a line with the following values:
<ul>
<li>Item number = <em>1601</em></li>
<li>Site = <em>2</em></li>
<li>Warehouse = <em>22</em></li>
<li>Location = <em>01-03-01-1</em> (any location)</li>
<li>Pallet = <em>00000125_114</em> (you can create a new pallet and use one)</li>
<li>Quantity = <em>50</em> (the new on-hand quantity)
<div id="attachment_1768" class="wp-caption alignnone" style="width: 548px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/CountingJournalLines.png"><img class="size-full wp-image-1768  " title="Counting journal lines" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/CountingJournalLines.png" alt="Counting journal lines" width="538" height="238" /></a><p class="wp-caption-text">Counting journal lines</p></div></li>
</ul>
</li>
<li>Click the <strong>Post</strong> button.</li>
</ol>
<p>The counting journal has been posted. Let’s check the on-hand inventory for the 1601 item:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Find and select the 1601 item and then click the <strong>On-hand</strong> button. The <strong>On-hand</strong> form opens.
<p><div id="attachment_1769" class="wp-caption alignnone" style="width: 596px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/On-hand.png"><img class="size-full wp-image-1769 " title="On-hand form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/On-hand.png" alt="On-hand form" width="586" height="307" /></a><p class="wp-caption-text">On-hand form</p></div>
<p>Note: to view the warehouse, location, and pallet dimensions, click the <strong>Dimension display</strong> button and then select the corresponding check boxes.</li>
</ol>
<p>We have added the on-hand for the 1601 item in the warehouse 22, so now we can transfer 5 items from the warehouse 22 to the warehouse 23.</p>
<h1>Setup</h1>
<p>Where is the item on-hand recorded when it is<a href="#_msocom_1"></a> half way from the warehouse 22 to the warehouse 23? These warehouses don’t have the on-hand for the transported items.</p>
<p>In Microsoft Dynamics AX, the transit warehouse is available for these purposes. When items are half way from one warehouse to another one, they are recorded to the transit warehouse.</p>
<p>In our case, the warehouse 22 must have the transit warehouse. Let’s check:</p>
<ol>
<li>Go to <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Setup</strong> &gt; <strong>Inventory</strong> <strong>breakdown</strong> &gt; <strong>Warehouses</strong>. The <strong>Warehouses</strong> form opens.</li>
<li>Find the warehouse 22 and then go to the <strong>General</strong> tab.
<div id="attachment_1770" class="wp-caption alignnone" style="width: 563px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/WarehousesForm.png"><img class="size-full wp-image-1770 " title="Warehouses form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/WarehousesForm.png" alt="Warehouses form" width="553" height="492" /></a><p class="wp-caption-text">Warehouses form</p></div>
<p>We can see that the warehouse 22 uses the  warehouse 29 as transit warehouse.</li>
</ol>
<p>Let’s create a transfer order and analyze generated inventory transactions.</p>
<h1>Create Transfer Order</h1>
<p>Now, the Inventory Manager will create the transfer order:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Periodic</strong> &gt; <strong>Transfer orders</strong>. The <strong>Transfer orders</strong> form opens.</li>
<li>The transfer order consists of the header and lines.</li>
<li>Create new line. Fill in the transfer order header with the following values:
<ul>
<li>From warehouse = <em>22</em></li>
<li>To warehouse = <em>23</em></li>
<li>Shipment date = <em>today</em>. The <strong>Available ship and receipt dates</strong> form opens.
<div id="attachment_1771" class="wp-caption alignnone" style="width: 585px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/AvailableShipAndReceiptDatesForm.png"><img class="size-full wp-image-1771 " title="Available ship and receipt dates form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/AvailableShipAndReceiptDatesForm.png" alt="Available ship and receipt dates form" width="575" height="436" /></a><p class="wp-caption-text">Available ship and receipt dates form</p></div>
<p>This is because the transfer order, like a sales order uses the Delivery date control functionality. To get more information about it, read the <a title="Available to promise" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/create-sales-order" target="_blank">Create Sales order</a> article. In this training lesson, we will not use the Delivery date control functionality. Click the <strong>Disable dlv. date control</strong> button in the <strong>Available ship and receipt dates</strong> form.</li>
<li>Receipt date = <em>today</em>.</li>
</ul>
</li>
<li>Create a transfer order line with the following values:
<ul>
<li>Item number = <em>1601</em></li>
<li>Transfer quantity = <em>5</em></li>
</ul>
</li>
<li>The <strong>Transfer orders</strong> form will have the following view:
<div id="attachment_1772" class="wp-caption alignnone" style="width: 618px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/TransferOrderCreated.png"><img class="size-full wp-image-1772           " title="Transfer orders form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/TransferOrderCreated.png" alt="Transfer orders form" width="608" height="309" /></a><p class="wp-caption-text">Transfer orders form</p></div></li>
</ol>
<p>The transfer order has been created. Let’s analyze what inventory transactions have been created. In the <strong>Transfer orders</strong> form, click <strong>Inventory</strong> &gt; <strong>Transactions</strong>. The <strong>Transactions</strong> form opens.</p>
<p><div id="attachment_1773" class="wp-caption alignnone" style="width: 649px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/TransactionsCreated.png"><img class="size-full wp-image-1773    " title="Transactions form. The transfer order has been created." src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/TransactionsCreated.png" alt="Transactions form. The transfer order has been created." width="639" height="214" /></a><p class="wp-caption-text">Transactions form. The transfer order has been created.</p></div>
<p>We can see the following:</p>
<ul>
<li>5 items are ordered in the warehouse 22 for issue, i.e. they will leave the warehouse 22. The issue status is <em>On order.</em></li>
<li>5 items are ordered in the warehouse 29 for receipt, i.e. they will be delivered to the warehouse 29. The receipt status is <em>Ordered</em>.</li>
<li>The same time, 5 items are reserved for issue in the warehouse 29. That is 5 ordered items will leave the warehouse 29 and they can’t be used for other purposes.</li>
<li>5 items are ordered in the warehouse 23 for receipt, i.e. the items will be delivered to the warehouse 23.</li>
</ul>
<p>The following picture illustrates these inventory transactions:</p>
<div id="attachment_1798" class="wp-caption alignnone" style="width: 634px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/InventoryTransactionsDesc1.png"><img class="size-full wp-image-1798          " title="Transfer order has been created" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/InventoryTransactionsDesc1.png" alt="Transfer order has been created" width="624" height="169" /></a><p class="wp-caption-text">Transfer order has been created</p></div>
<h1>Pick Items to Transfer</h1>
<p>The transfer order picking process is similar to the sales order picking process. For more information about picking and shipment processes, read <a title="Shipment process" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/shipment" target="_blank">this training lesson</a>.</p>
<p>The Inventory Manager creates the output orders:</p>
<ol>
<li>In the lines area of the <strong>Transfer order</strong> form, click <strong>Inventory</strong> &gt; <strong>Output</strong> <strong>orders</strong>. The <strong>Create inventory order</strong> form with the item quantity opens. Click <strong>OK</strong>.</li>
<li> The <strong>Output order</strong> form with the created output order opens.
<div id="attachment_1775" class="wp-caption alignnone" style="width: 623px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/OutputOrder.png"><img class="size-full wp-image-1775  " title="Output order form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/OutputOrder.png" alt="Output order form" width="613" height="271" /></a><p class="wp-caption-text">Output order form</p></div></li>
</ol>
<p>The Inventory Manager creates a shipment:</p>
<ol>
<li>Go to <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Common</strong> <strong>Forms</strong> &gt; <strong>Shipments</strong>. The <strong>Shipment</strong> form opens.</li>
<li>Create a new line. The <strong>Create shipment</strong> wizard appears.</li>
<li>Click <strong>Next</strong> on the Welcome page.</li>
<li>Select the 100_all shipment template and then click <strong>Next</strong> on the Identification page.</li>
<li>Click <strong>Next</strong> on the Configuration page.</li>
<li>Make sure that the inventory order is available on the Inventory order page. Click <strong>Next</strong>.</li>
<li>Click <strong>Finish</strong> on the Ready page.</li>
<li>The shipment is created:
<p><div id="attachment_1776" class="wp-caption alignnone" style="width: 590px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/ShipmentCreated.png"><img class="size-full wp-image-1776   " title="Shipment form, the shipment is created" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/ShipmentCreated.png" alt="Shipment form, the shipment is created" width="580" height="308" /></a><p class="wp-caption-text">Shipment form, the shipment is created</p></div></li>
</ol>
<p>The Inventory Manager creates the picking route (picking instruction):</p>
<ol>
<li>In the <strong>Shipment</strong> form, click <strong>Functions</strong> &gt; <strong>Activate</strong>.</li>
<li>The picking route is created. Make sure that the <strong>Pick</strong> field is set to <em>Activated</em>.</li>
</ol>
<p>The Warehouse Worker picks the items and registers this information in the system:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Picking routes</strong>. The <strong>Pick</strong> form opens.</li>
<li>In the <strong>Picking route</strong> field, select the last picking route number.</li>
<li>Click the <strong>Create picking pallet</strong> button. In the <strong>Create picking pallet</strong> form, click <strong>OK</strong>.</li>
<li>The <strong>Pick</strong> form will have the following view:
<p><div id="attachment_1777" class="wp-caption alignnone" style="width: 617px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/PickForm.png"><img class="size-full wp-image-1777 " title="Pick form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/PickForm.png" alt="Pick form" width="607" height="388" /></a><p class="wp-caption-text">Pick form</p></div></li>
<li>Click the <strong>Approve details</strong> button. The <strong>Approve line</strong> form opens.
<p><div id="attachment_1811" class="wp-caption alignnone" style="width: 626px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/ApproveLine.png"><img class="size-full wp-image-1811 " title="Approve line form " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/ApproveLine.png" alt="Approve line form" width="616" height="443" /></a><p class="wp-caption-text">Approve line form</p></div>
<p><strong><span style="color: #ff0000;"> </span></strong></li>
<li>Click the <strong>Pick selected</strong> button. Since all picking route quantity is approved, the <strong>Deliver picked items</strong> form opens.
<div id="attachment_1778" class="wp-caption alignnone" style="width: 588px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/DeliverPickedItems.png"><img class="size-full wp-image-1778 " title="Deliver picked items form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/DeliverPickedItems.png" alt="Deliver picked items form" width="578" height="468" /></a><p class="wp-caption-text">Deliver picked items form</p></div></li>
<li>Click the <strong>Deliver items</strong> button.</li>
</ol>
<p>The items are picked and transported to the outbound location.</p>
<p>If we return to the <strong>Shipment</strong> form, we can see the following results:</p>
<p><div id="attachment_1779" class="wp-caption alignnone" style="width: 644px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/ShipmentStaged.png"><img class="size-full wp-image-1779 " title="Shipment form. The items are transported to the outbound location" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/ShipmentStaged.png" alt="Shipment form. The items are transported to the outbound location" width="634" height="337" /></a><p class="wp-caption-text">Shipment form. The items are transported to the outbound location</p></div>
<p>We can see that the <strong>Pick</strong> field is set to <em>Completed</em> and the shipment status is <em>Staged</em>.</p>
<p>The Warehouse Worker performs the last optional step he or she records in the system that the pallets are loaded into the truck.</p>
<ol>
<li>In the <strong>Shipment</strong> form, click <strong>Shipment staging</strong>. The <strong>Shipment staging</strong> form opens.</li>
<li>Click <strong>Functions</strong> &gt; <strong>Load</strong>. The <strong>Handling</strong> status is changed to <em>Loaded</em>. Note that no inventory transactions are created or updated. Close the form.</li>
<li>In the <strong>Shipment</strong> form, the <strong>Status</strong> field value is changed from the <em>Staged</em> to <em>Loaded</em>.</li>
</ol>
<p>Let’s check the inventory transactions:</p>
<ol>
<li>Go to <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Common</strong> <strong>Forms</strong> &gt; <strong>Item details</strong>. The <strong>Item</strong> form opens.</li>
<li>Find the 1601 item and then click the <strong>Transactions</strong> button. The <strong>Transactions on item</strong> form opens.
<div id="attachment_1780" class="wp-caption alignnone" style="width: 616px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/TransactionsOnItemForm.png"><img class="size-full wp-image-1780    " title="Transactions on item form. Transfer order items have been picked" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/TransactionsOnItemForm.png" alt="Transactions on item form. Transfer order items have been picked" width="606" height="226" /></a><p class="wp-caption-text">Transactions on item form. Transfer order items have been picked</p></div></li>
</ol>
<p>Note that the <strong>Item </strong>form displays all inventory transactions for this item, among them we can see the inventory transactions generated from the counting journal. Don’t take this transaction into account.</p>
<p>We can see the following changes: 5 items are picked from the warehouse 22<em>.</em> The other transactions remain unchanged.</p>
<p>The following picture illustrates these inventory transactions:</p>
<p><div id="attachment_1803" class="wp-caption alignnone" style="width: 633px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/InventoryTransactionsDesc21.png"><img class="size-full wp-image-1803 " title="Items have been picked" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/InventoryTransactionsDesc21.png" alt="Items have been picked" width="623" height="167" /></a><p class="wp-caption-text">Items have been picked</p></div>
<h1>Ship Transfer Order</h1>
<p>The Inventory Manager ships the transfer order. It means that the items have been taken from the warehouse 22 and are half way from the warehouse 22 to the warehouse 23.</p>
<p>Let’s ship the transfer order and analyze inventory transactions:</p>
<h1>&#8230;</h1>
<h1><a title="Trade and Logistics Training" href="http://www.dynamicsaxtraining.com/available-trainings/trade-and-logistics-training"><img class="alignleft size-full wp-image-1366" title="Trade and Logistics Training" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/01/TradeAndLogisticsTrainingS.png" alt="Trade and Logistics Training" width="150" height="113" /></a>You are not authorized to see the full training lesson (8 pages are hidden).</h1>
<p><a title="Trade and Logistics Training" href="http://www.dynamicsaxtraining.com/available-trainings/trade-and-logistics-training">Download the full PDF version of the Trade and Logistics training for Dynamics AX 2009.</a></p>
<div style="clear:both;"></div>
<h1>&#8230;</h1>
<p>The following picture illustrates these inventory transactions:</p>
<div id="attachment_1807" class="wp-caption alignnone" style="width: 632px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/InventoryTransactionsDesc41.png"><img class="size-full wp-image-1807 " title="The items are transferred from one warehouse to another one" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/03/InventoryTransactionsDesc41.png" alt="The items are transferred from one warehouse to another one" width="622" height="167" /></a><p class="wp-caption-text">The items are transferred from one warehouse to another one</p></div>
<p>That is all, the items are transferred from one warehouse to another one.</p>
<h1>Training Lesson Summary</h1>
<p>In this training lesson, we have studied how to set up the transit warehouse and how to work with a transfer order. We also studied the main steps of the transfer flow.</p>
<p>Let’s recall the main steps of the transfer flow, they are as follows:</p>
<ol>
<li>Creating a transfer order</li>
<li>Picking items for the transfer order</li>
<li>Shipping the transfer order</li>
<li>Items arrival and registration  in the destination warehouse</li>
<li>Receiving the transfer order</li>
</ol>
<p>All the best <img src='http://www.dynamicsaxtraining.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fdynamics-ax-trade-and-logistics-training%2Ftransfer-orders';
  addthis_title  = 'Transfer+orders';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/Receive+transfer+order' rel='tag' target='_blank'>Receive transfer order</a>, <a class='technorati-link' href='http://technorati.com/tag/Ship+transfer+order' rel='tag' target='_blank'>Ship transfer order</a>, <a class='technorati-link' href='http://technorati.com/tag/Transfer+order' rel='tag' target='_blank'>Transfer order</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/transfer-orders/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Quality management</title>
		<link>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quality-management</link>
		<comments>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quality-management#comments</comments>
		<pubDate>Fri, 11 Feb 2011 15:54:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dynamics AX Trade and Logistics training]]></category>
		<category><![CDATA[Certificate of analysis]]></category>
		<category><![CDATA[Non conformance]]></category>
		<category><![CDATA[Non conformance tag]]></category>
		<category><![CDATA[Quality associations form]]></category>
		<category><![CDATA[quality order]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=1714</guid>
		<description><![CDATA[Introduction Hi there! In this training lesson, we will study what the Quality order and Nonconformance document are and how to work with them. Let’s begin. As you may have noticed, the name of the current training lesson is Quality Management. Quality management allows the following: Set up quality tests Track items that must be [...]]]></description>
			<content:encoded><![CDATA[<h1>Introduction</h1>
<p>Hi there! In this training lesson, we will study what the Quality order and Nonconformance document are and how to work with them.</p>
<p>Let’s begin. As you may have noticed, the name of the current training lesson is Quality Management. Quality management allows the following:</p>
<ul>
<li>Set up quality tests</li>
<li>Track items that must be quality controlled</li>
</ul>
<p>When an item must be verified, a Quality order is created. A Quality order contains information about an item, the quantity to verify, and test instructions. Quality order does not generate inventory transactions, because all quality tests are performed in one place. But, if the item is destructed during the quality test, an inventory transaction must be generated.</p>
<p>Optionally, if the item does not pass the quality tests, a Non conformance is created. A Non conformance document contains information about non conforming items and allows managing these. A Non conformance can be created not only from a quality order, but also for example, based upon the customer’s complaints against the returned item.</p>
<p>If a Quality order is created automatically as part of the business process (when purchasing, selling, or producing an item), it is not possible to move to the next business process step until the quality order is validated and closed.</p>
<p>The result of the quality verification is the certification of analysis.</p>
<p>In Microsoft Dynamics AX, we can find two terms &#8211; quality control and quality management.</p>
<p>From the Microsoft official documents:</p>
<ul>
<li>“The quality control component is used to set up and manage the quality testing requirements for a company.”</li>
<li>“The quality management component is used to manage non conforming products and items, such as damaged or defective goods, and to track and resolve customer or vendor problems, such as product complaints or performance issues.”</li>
</ul>
<p>Let’s assume that a company resells speakers and the Quality team decides to test these items during the purchase.</p>
<h1>Set Up Initial Data</h1>
<p>To enable the Quality Management functionality in Microsoft Dynamics AX, locate the <strong>Quality management</strong> tab of the <strong>Parameters</strong> form in the <strong>Inventory management</strong> module. (<strong>Inventory</strong> <strong>management</strong> &gt; <strong>Setup</strong> &gt; <strong>Parameters</strong>) and select the <strong>Use quality management</strong> check box.</p>
<div id="attachment_1716" class="wp-caption alignnone" style="width: 600px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Inventory-Parameters.png"><img class="size-full wp-image-1716    " title="Inventory parameters" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Inventory-Parameters.png" alt="Inventory parameters" width="590" height="359" /></a><p class="wp-caption-text">Inventory parameters</p></div>
<p>When the <strong>Use quality management</strong> check box is cleared, the fields related to quality management will not appear in the forms throughout Microsoft Dynamics AX 2009, and quality orders cannot be created.</p>
<h3>Set Up Test Area</h3>
<p>Test area is the name of the places where tests are performed. In Microsoft Dynamics AX 2009, the test area is only used for grouping the instruments. That is because different test areas can contain different sets of instruments. But, this information is not used in the system, only for informative purpose.</p>
<p>The following image provides test areas which are available in my demo data (<strong>Inventory management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality</strong> <strong>control</strong> &gt; <strong>Test</strong> <strong>areas</strong>).</p>
<div id="attachment_1718" class="wp-caption alignnone" style="width: 543px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-areas1.png"><img class="size-full wp-image-1718" title="Test areas form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-areas1.png" alt="Test areas form" width="533" height="442" /></a><p class="wp-caption-text">Test areas form</p></div>
<h3>Set Up Test Instruments</h3>
<p>The instruments that can be used to carry out tests are set up in the <strong>Test instruments</strong> form (<strong>Inventory</strong> <strong>management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality</strong> <strong>control</strong> &gt; <strong>Test</strong> <strong>instruments</strong>).</p>
<p>The following image displays the test instrument available in my demo data.</p>
<div id="attachment_1719" class="wp-caption alignnone" style="width: 565px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-instruments.png"><img class="size-full wp-image-1719 " title="Test instruments form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-instruments.png" alt="Test instruments form" width="555" height="354" /></a><p class="wp-caption-text">Test instruments form</p></div>
<p>On the <strong>General</strong> tab, there is the <strong>Precision</strong> field which is not used in the system. The main purpose of the test instrument is to assign a unit of measure to the quality test.</p>
<p>Change the value in the <strong>Unit</strong> field from <em>Option</em> to <em>Mm</em> (Millimeters).</p>
<h3>Set Up Tests</h3>
<p>Tests are used to determine whether quality processes meet predefined specifications and standards.</p>
<p>A test can be quantitative (with specifications and test results expressed as values for a specified unit of measure) or qualitative (with specifications and test results expressed as user-defined outcomes that reflect pass or fail).</p>
<p>Microsoft Dynamics AX 2009 has the following test result types:</p>
<ul>
<li><em>Fraction</em></li>
<li><em>Integer</em></li>
<li><em>Option</em></li>
</ul>
<p>The first two relate to quantitative tests and the last one relates to qualitative tests.</p>
<p>The tests are set up in the <strong>Tests </strong>form (<strong>Inventory</strong> <strong>management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality</strong> <strong>control</strong> &gt; <strong>Tests</strong>).</p>
<p>The following image displays qualitative test available in my demo data.</p>
<div id="attachment_1720" class="wp-caption alignnone" style="width: 587px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Tests-form.png"><img class="size-full wp-image-1720 " title="Tests form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Tests-form.png" alt="Tests form" width="577" height="309" /></a><p class="wp-caption-text">Tests form</p></div>
<p>Let’s change the Enclosure measuring test type from <em>Option</em> (qualitative test) to <em>Fraction</em> (quantitative test). Click <strong>Functions</strong> &gt; <strong>Change quality test type</strong>. In the form that opens, select the <em>Fraction </em>value in the <strong>New type</strong> field and then click <strong>OK</strong>.</p>
<p>Create a new Sound quality test with the following values:</p>
<ul>
<li>Test = <em>Sound quality</em></li>
<li>Description = <em>Sound quality</em></li>
<li>Type = <em>Option</em></li>
</ul>
<h3>
<div id="attachment_1721" class="wp-caption alignnone" style="width: 587px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Tests.png"><img class="size-full wp-image-1721 " title="Tests form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Tests.png" alt="Tests form" width="577" height="309" /></a><p class="wp-caption-text">Tests form</p></div>
<p>Set Up Test Variables</h3>
<p>In Microsoft Dynamics AX 2009, the qualitative tests use test variables as a test result. Each test variable contains acceptable and unacceptable test results.</p>
<p>Let&#8217;s create a new Sound test variable with two possible outcomes &#8211; No acoustic noise and Acoustic noise. If there is acoustic noise in a speaker, the test result is failed.</p>
<ol>
<li>Open the <strong>Test variables</strong> form (<strong>Inventory management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality</strong> <strong>control</strong> &gt;<strong>Test</strong> <strong>variables</strong>).</li>
<li>Create a new Sound variable.</li>
<li>Click the <strong>Outcomes</strong> button. The <strong>Test variable outcomes</strong> form opens.</li>
<li>Create a new outcome with the following data:
<ul>
<li>Outcome = <em>No acoustic noise</em></li>
<li>Outcome status = <em>Pass</em></li>
</ul>
</li>
<li>Create one more outcome:
<ul>
<li>Outcome = <em>Acoustic noise</em></li>
<li>Outcome status = <em>Failed</em></li>
</ul>
</li>
</ol>
<h3>
<div id="attachment_1722" class="wp-caption alignnone" style="width: 585px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-variables.png"><img class="size-full wp-image-1722  " title="Test variables form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-variables.png" alt="Test variables form" width="575" height="385" /></a><p class="wp-caption-text">Test variables form</p></div>
<p>Set Up Item Sampling</h3>
<p>The quantity of sample items to be tested is set up manually. Go to <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality</strong> <strong>control</strong> &gt; <strong>Item</strong> <strong>sampling</strong>.</p>
<p>In my demo data, I have the item samplings displayed in the following screenshot.</p>
<div id="attachment_1723" class="wp-caption alignnone" style="width: 563px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Item-sampling.png"><img class="size-full wp-image-1723 " title="Item sampling" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Item-sampling.png" alt="Item sampling" width="553" height="398" /></a><p class="wp-caption-text">Item sampling</p></div>
<p>The quantity specified can be either a fixed or a percentage amount.</p>
<h3>Set Up Test Groups</h3>
<p>The test group contains the tests that must be performed for an item, item sampling parameter, and an acceptable quality level parameter. Note that a quality order is created on the basis of the test group.</p>
<p>Let’s create the Acoustic test group:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality control</strong> &gt; <strong>Test groups. </strong>The<strong> Test groups</strong> form opens.</li>
<li>Create a new line with the following parameters:
<ul>
<li>Test group = <em>Acoustic</em></li>
<li>Acceptable quality level = <em>50</em>. This means that 50% of tests must be passed.</li>
<li>Item sampling = “1 %”. This means that we will test only 1% of delivered for testing items.</li>
<li>Destructive test is cleared. It means that after the testing, the item will be returned back to the group of items delivered for testing.</li>
</ul>
</li>
<li>In the bottom grid, we will add tests that will be performed in this test group.</li>
<li>First, a speaker will be measured. Let’s assume that all speakers must be no more or less than 50 mm length. In the bottom grid, create a new line with the following parameters:
<ul>
<li>Sequence = <em>1</em></li>
<li>Test = <em>Enclosure measuring</em></li>
<li>On the <strong>Test</strong> tab, fill in the standard (acceptable) value for this test. Fill in <em>70</em> in the <strong>Standard</strong> field.</li>
<li><span style="text-decoration: underline;">Note</span> that the <strong>Min</strong> field contains the <em>0</em> and the <strong>Max</strong> field contains the <em>140</em> values. This means that all values from 0 to 140 are acceptable. In our case, it is not true. So, fill in 70 in the <strong>Min</strong> and <strong>Max</strong> fields.</li>
<li><span style="text-decoration: underline;">Note</span> that on the <strong>Test</strong> tab, the <strong>Test instrument</strong> field is automatically filled in with the <em>Measuring tape</em> value from the <strong>Test</strong> form. On the <strong>General</strong> tab, the <strong>Certificate of analysis report</strong> field is selected and the <strong>Acceptable quality level</strong> field is set to <em>100</em> by default.</li>
</ul>
</li>
<li>Second, a speaker will be checked for the sound quality. In the bottom grid, create a new line with the following parameters:
<ul>
<li>Sequence = <em>2</em></li>
<li>Test = <em>Sound quality</em></li>
<li>For the qualitative test, a test variable must be set up. Go to the <strong>Test</strong> tab.</li>
<li>Variable = <em>Sound</em></li>
<li>Default outcome = <em>No acoustic noise</em></li>
</ul>
</li>
</ol>
<p>The <strong>Test groups</strong> form will have the following view:</p>
<div id="attachment_1725" class="wp-caption alignnone" style="width: 571px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-groups.png"><img class="size-full wp-image-1725 " title="Test groups form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Test-groups.png" alt="Test groups form" width="561" height="628" /></a><p class="wp-caption-text">Test groups form</p></div>
<h3>Set Up Automatic Quality Order Generation</h3>
<p>Let’s assume that the Company decides to check the quality of purchased speakers from all vendors. The Quality Manager sets up the automatic generation of a quality order during the purchase process. A quality order will be generated after a packing slip is received.</p>
<p>This requirement is set up in the <strong>Quality associations</strong> form as follows:</p>
<ol>
<li>Go to <strong>Inventory management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality control</strong> &gt; <strong>Quality associations</strong>. The <strong>Quality associations</strong> form opens.</li>
<li>Create a new line with the following values:
<ul>
<li>Site = <em>2</em></li>
<li>Reference type = <em>Purchase order</em></li>
<li>Item code = <em>Table</em></li>
<li>Item = <em>1101</em></li>
<li>Account cod = <em>All</em> (all vendors)</li>
<li>Test group = <em>Acoustic</em></li>
<li>Document type = <em>Packing slip</em></li>
<li>Execution = <em>After</em></li>
</ul>
</li>
</ol>
<p>The <strong>Quality associations</strong> form will have the following view:</p>
<div id="attachment_1728" class="wp-caption alignnone" style="width: 578px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-associations.png"><img class="size-full wp-image-1728  " title="Quality associations form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-associations.png" alt="Quality associations form" width="568" height="241" /></a><p class="wp-caption-text">Quality associations form</p></div>
<p>To set up quality association for a group of items, a quality group containing these items must be created.</p>
<p>A quality group is created under <strong>Inventory management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality control</strong> &gt; <strong>Quality groups</strong>. To add a new item, click <strong>Setup</strong> &gt; <strong>Add items</strong> in the <strong>Quality groups</strong> form. You can view the grouped items in the <strong>Item quality groups</strong> form.</p>
<h1>Quality Order</h1>
<p>Now, we will purchase speakers and check whether a quality order is automatically generated.</p>
<p>Create a purchase order with the following values under <strong>Accounts payable</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Purchase order details</strong>:</p>
<ul>
<li>Vendor = <em>1001</em></li>
<li>Item number = <em>1101</em></li>
<li>Site = <em>2</em></li>
<li>Warehouse = <em>21</em></li>
<li>Quantity = <em>400</em></li>
</ul>
<p>Let’s assume that the items were already delivered and now are stored in the warehouse.</p>
<p>To reflect this in the system, the Purchase Manager clicks <strong>Posting</strong> &gt; <strong>Packing slip</strong> in the <strong>Purchase order</strong> form. The <strong>Posting packing slip</strong> form opens. Fill in any value in the <strong>Packing slip</strong> field. Click <strong>OK</strong>.</p>
<p>The packing slip is posted. You can find more information about what a packing slip is in <a title="Packing slip" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/post-the-packing-slip" target="_blank">this training lesson</a>. After the posting, the following Infolog appears:</p>
<div id="attachment_1729" class="wp-caption alignnone" style="width: 366px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Infolog-quality-order.png"><img class="size-full wp-image-1729" title="Infolog" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Infolog-quality-order.png" alt="Infolog" width="356" height="473" /></a><p class="wp-caption-text">Infolog</p></div>
<p>A quality order containing 4 speakers is created (because of the sampling items parameter set on the test group). We can open the quality order by double-clicking on the Infolog line or going to <strong>Inventory</strong> <strong>management</strong> &gt; <strong>Periodic</strong> &gt; <strong>Quality</strong> <strong>management</strong> &gt; <strong>Quality</strong> <strong>orders</strong>.</p>
<div id="attachment_1730" class="wp-caption alignnone" style="width: 577px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order.png"><img class="size-full wp-image-1730 " title="Quality orders form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order.png" alt="Quality orders form" width="567" height="527" /></a><p class="wp-caption-text">Quality orders form</p></div>
<p>We can see that the <strong>Quality orders</strong> form is very similar to the <strong>Test groups</strong> form. The quality order contains only test instructions. Note that when a quality order is created, the verified items are not transferred to a special location in the warehouse. For example, the quality order is created for the purchase order. The Quality Manager prints the quality order and goes to the place where the purchase order items are stored. This is not acceptable for companies with big warehouses. For big warehouses, the <a title="Quarantine management" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quarantine-management" target="_blank">Quarantine management</a> must be used. Received items will be transferred to a quarantine location. Quality orders will be generated based on a quarantine order. And the Quality Manager will check the received items in the quarantine location instead of finding them in the warehouse.</p>
<p>In our case, we assume that the Quality Manager easily finds the received items in the warehouse.</p>
<p>Let’s try to post an invoice for the purchase order. Since the quality order isn’t closed, we expect that an invoice isn’t posted. Let us return to the <strong>Purchase order</strong> form. Note that the <strong>Quality order status</strong> field is filled in. Click <strong>Posting</strong> &gt; <strong>Invoice</strong>. Fill in any invoice number and then click <strong>OK</strong>. The invoice is posted! But from the official documentation we can read that “An infolog can warn that the quality order failed or is not yet closed when performing the next step in the business process.”. But this works only if the quality order is automatically generated before the document (see what we set up in the “Set Up Automatic Quality Order Generation” chapter).</p>
<p>The Quality Manager finds the stored items and starts testing themes. The Quality Manager can write testing results on the paper and then enter these in the system. Unfortunately, in Microsoft Dynamics AX 2009, it is impossible to print a quality order with test instructions for the Quality Manager.</p>
<p>We assume that the Quality Manager receives the following testing results:</p>
<ol>
<li>Enclosure measuring test results:
<ul>
<li>3 speakers have the 70mm length</li>
<li>1 speaker has the 72 mm length</li>
</ul>
</li>
<li>Sound quality:
<ul>
<li>4 speakers do not have acoustic noise</li>
</ul>
</li>
</ol>
<p>The Quality Manager returns to the working place and enters these results in the system:</p>
<ol>
<li>Open the <strong>Quality orders</strong> form (<strong>Inventory</strong> <strong>management</strong> &gt; <strong>Periodic</strong> &gt; <strong>Quality</strong> <strong>management</strong> &gt; <strong>Quality</strong> <strong>orders</strong>) and find the necessary order.</li>
<li>Select the Enclosure measuring test and click <strong>Results</strong> in the lower pane. The <strong>Quality order line results</strong> form opens.</li>
<li>Enter the test result:
<ul>
<li>Result quantity = 3, Test result = 70</li>
<li>Result quantity = 1, Test result = 72</li>
</ul>
<div id="attachment_1731" class="wp-caption alignnone" style="width: 502px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order-line-results.png"><img class="size-full wp-image-1731 " title="The Quality order line results form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order-line-results.png" alt="The Quality order line results form" width="492" height="349" /></a><p class="wp-caption-text">The Quality order line results form</p></div>
<p>Close the form.</li>
<li>Select the Sound quality test and click <strong>Results</strong>. In the <strong>Quality order line results</strong> form, enter the test result:
<ul>
<li>Result quantity = 4, Outcome = No acoustic noise</li>
</ul>
<div id="attachment_1732" class="wp-caption alignnone" style="width: 572px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order-line-results-2.png"><img class="size-full wp-image-1732  " title="The Quality order line results form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order-line-results-2.png" alt="The Quality order line results form" width="562" height="398" /></a><p class="wp-caption-text">The Quality order line results form</p></div>
<p>Close the form.</li>
<li>After entering the test results, the Quality Manager validates the entire quality order according to the acceptable quality level parameter. Click the <strong>Validate</strong> button in the <strong>Quality order</strong> form.</li>
<li>Select employee ID in the <strong>Validate by</strong> field and then click <strong>OK</strong>.</li>
<li>The <strong>Quality orders</strong> form will have the following view:
<div id="attachment_1733" class="wp-caption alignnone" style="width: 577px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order-passed.png"><img class="size-full wp-image-1733 " title="Quality orders form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Quality-order-passed.png" alt="Quality orders form" width="567" height="527" /></a><p class="wp-caption-text">Quality orders form</p></div></li>
</ol>
<p>All tests for the quality order successfully passed and nothing is changed in the inventory and finance areas. So, the main purpose of the quality order is storing test results. In the end, the Quality Manager can create and print a certificate of analysis for a quality order. A certificate of analysis certifies that materials or products are tested and found to comply with redefined specifications or standards (from official manuals).</p>
<p>To create and print the certificate of analysis, the Quality Manager performs the following steps:</p>
<ol>
<li>Click the <strong>Inquires</strong> &gt; <strong>Certificate of analysis</strong> button in the <strong>Quality orders</strong> form. The <strong>Certificate of analysis</strong> form opens.</li>
<li>Create a new line.</li>
<li>Save the record.</li>
<li>Click the <strong>Print</strong> button to print the certificate.</li>
</ol>
<p>In our case, the certificate of analysis will have the following view:</p>
<p><div id="attachment_1734" class="wp-caption alignnone" style="width: 611px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Certificate-of-analysis.png"><img class="size-full wp-image-1734 " title="Certificate of analysis" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Certificate-of-analysis.png" alt="Certificate of analysis" width="601" height="729" /></a><p class="wp-caption-text">Certificate of analysis</p></div>
<p>In the next chapter, we will study how to handle the damaged or defective items that have been found during the testing.</p>
<h1>Non Conformance</h1>
<p>If the Quality Manager finds damaged or defective items, he or she will create a non conformance. A non conformance document describes the products and items that do not comply with the predefined performance or the quality standards and the problem source.</p>
<p>The problem source is defined as a non conformance type (Internal, Customer, Vendor, Service request, Production).</p>
<p>In Microsoft Dynamics AX 2009, the only thing that we can do with the damaged or defective item is printing and attaching a non conformance tag. Any scrap, movement, or returns are not available now. Also, non conformance doesn’t affect the quality order and vise versa. It means that if all tests for the quality order passed, the non conformance can be created.</p>
<p>The Quality Manager wants to print a special label for the damaged item. To do this, he or she performs the following steps:</p>
<ol>
<li>Prerequisite: set up a problem type
<ol>
<li><strong>Inventory management</strong> &gt; <strong>Setup</strong> &gt; <strong>Quality management</strong> &gt; <strong>Problem types</strong>. The <strong>Problem types</strong> form opens.</li>
<li>Create a new line with the following value: Problem type = <em>Size</em>.</li>
<li>Click the <strong>Non conformance types</strong> button. The <strong>Problem/Non conformance types validation</strong> form opens.</li>
<li>Create a new line with the following value: <em>Vendor</em></li>
</ol>
</li>
<li>In the <strong>Quality orders</strong> form, click <strong>Inquiries</strong> &gt; <strong>Non conformances</strong>. The <strong>Non conformance</strong> form opens.</li>
<li>Create a new line with the following values:
<ul>
<li>Problem type = <em>Size</em></li>
<li>Defective = <em>1 </em>
<div id="attachment_1735" class="wp-caption alignnone" style="width: 595px"><em><em><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Non-conformance.png"><img class="size-full wp-image-1735  " title="Non conformance form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Non-conformance.png" alt="Non conformance form" width="585" height="234" /></a></em></em><p class="wp-caption-text">Non conformance form</p></div>
<p><em> </em></li>
</ul>
</li>
<li>Click <strong>Functions</strong> &gt; <strong>Approve non conformance</strong>.</li>
<li>The Quality Manager can add the following information for the approved non conformance:
<ul>
<li>operations with cost amount</li>
<li>diagnostics</li>
</ul>
<p>But this information is not used in the system it is only for the informational purpose.</li>
<li>The Quality Manager closes the non conformance: click the <strong>Functions</strong> &gt; <strong>Close non conformance</strong> button.</li>
<li>Print a special tag for the item: <strong>Print</strong> &gt; <strong>Non conformance tag</strong>. In our case, the non conformance tag will have the following view:
<p><div id="attachment_1736" class="wp-caption alignnone" style="width: 611px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Non-conformance-tag.png"><img class="size-full wp-image-1736 " title="Non conformance tag" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/02/Non-conformance-tag.png" alt="Non conformance tag" width="601" height="403" /></a><p class="wp-caption-text">Non conformance tag</p></div></li>
</ol>
<h1>Training Lesson Summary</h1>
<p>In this training lesson, we have studied the Quality Management functionality:</p>
<ol>
<li>Set up a test group.</li>
<li>Automatically generate the quality order.</li>
<li>Work with a quality order.</li>
<li>Handle the damaged or defective items.</li>
</ol>
<p>The following conclusion has been created:</p>
<ol>
<li>The quality order doesn’t allow going to the next business process step if it is generated before the document.</li>
<li>The quality order doesn’t generate any inventory or general ledger transactions. The quality order stores test results only.</li>
<li>The result of quality verification is printing the certificate of analysis document. It is printed from the quality order.</li>
<li>For damaged or defective items, the non conformances are created. Non conformance doesn’t generate any inventory or general ledger transaction. It only stores the information about damaged or defective items. The only thing that can be done with these items is attaching a non conformance tag to them.</li>
</ol>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fdynamics-ax-trade-and-logistics-training%2Fquality-management';
  addthis_title  = 'Quality+management';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/Certificate+of+analysis' rel='tag' target='_blank'>Certificate of analysis</a>, <a class='technorati-link' href='http://technorati.com/tag/Non+conformance' rel='tag' target='_blank'>Non conformance</a>, <a class='technorati-link' href='http://technorati.com/tag/Non+conformance+tag' rel='tag' target='_blank'>Non conformance tag</a>, <a class='technorati-link' href='http://technorati.com/tag/Quality+associations+form' rel='tag' target='_blank'>Quality associations form</a>, <a class='technorati-link' href='http://technorati.com/tag/quality+order' rel='tag' target='_blank'>quality order</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quality-management/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quarantine management</title>
		<link>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quarantine-management</link>
		<comments>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quarantine-management#comments</comments>
		<pubDate>Tue, 11 Jan 2011 16:10:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dynamics AX Trade and Logistics training]]></category>
		<category><![CDATA[Quarantine management]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=1643</guid>
		<description><![CDATA[Hi! In this training lesson, we will study the Quarantine Management functionality in Microsoft Dynamics AX. Introduction The quarantine management is used to manage items that must be quality controlled (quarantine items). For example, the Fans Company purchases fans and sells them. Customers often return a lot of fans because they don’t work. The Fans [...]]]></description>
			<content:encoded><![CDATA[<p>Hi! In this training lesson, we will study the Quarantine Management functionality in Microsoft Dynamics AX.</p>
<h2>Introduction</h2>
<p>The quarantine management is used to manage items that must be quality controlled (quarantine items). For example, the Fans Company purchases fans and sells them. Customers often return a lot of fans because they don’t work. The Fans Company decides to check the purchased fans. As a result, the company creates a special place in the warehouse. All fans which arrive to the warehouse are transported to this place for quality control. The Quality Manager will randomly pick fans from each case and will check how they work. If a selected fan works, whole case is marked as checked. Then, the checked cases will be transported to the destination location.</p>
<p>Microsoft Dynamics AX uses a quarantine order to control quarantine items. Let’s check how this works in the application.</p>
<h2>Create and Set Up an Item</h2>
<p>We will work with <a title="Demo data" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/create-new-company-demo-data" target="_blank">this demo data</a>. Let’s create the Fan item. We have already studied how to create an item in <a title="Create new item" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/item-setup" target="_blank">this training lesson</a>, so you need to create an item with the following values:</p>
<ol>
<li>Item number = <em>101</em></li>
<li>Item name = <em>Fan</em></li>
<li>Item group = <em>Packaging</em></li>
<li>Inventory model group = <em>FRP_QUAR</em></li>
<li>Dimension group = <em>N-WLP</em></li>
</ol>
<p>There are two groups attached to an item which affect whether an item can be used in quarantine management:</p>
<ol>
<li>Inventory model group. An inventory model group can be accessed from <strong>Inventory Management</strong> &gt; <strong>Setup</strong> &gt; <strong>Inventory</strong> &gt; <strong>Inventory model groups</strong>. The <strong>Quarantine management</strong> check box on the <strong>Setup</strong> tab must be selected. We have set up the FRP_QUAR inventory model group for the Fan item, this group has the following setup:
<div id="attachment_1652" class="wp-caption alignnone" style="width: 533px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/InventoryModelGroup.gif"><img class="size-full wp-image-1652   " title="Inventory model groups form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/InventoryModelGroup.gif" alt="Inventory model groups form" width="523" height="397" /></a><p class="wp-caption-text">Inventory model groups form</p></div></li>
<li>Dimension group. This group determines what parameters are required to store an item. The minimum setup is <em>Site</em> and <em>Warehouse</em>. The <strong>Dimension groups</strong> form can be accessed from <strong>Inventory Management</strong> &gt; <strong>Setup</strong> &gt; <strong>Dimensions</strong> &gt; <strong>Dimensions groups</strong>. We have set up the N-WLP dimension group for the Fan item, this group has the following setup:
<p><div id="attachment_1653" class="wp-caption alignnone" style="width: 588px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/InventoryDimensionsForm.gif"><img class="size-full wp-image-1653   " title="Inventory dimensions form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/InventoryDimensionsForm.gif" alt="Inventory dimensions form" width="578" height="416" /></a><p class="wp-caption-text">Inventory dimensions form</p></div></li>
</ol>
<p>Let’s set up additional parameters for the Fan item. We suppose that:</p>
<ol>
<li>The Fan item will be transported on the 42*42 pallet. In the <strong>Item</strong> form, go to the <strong>Setup</strong> tab &gt; <strong>Warehouse management</strong> field group, and fill in <em>42&#8243;X42&#8243;</em> in the <strong>Pallet type</strong> field. Save the line (CTRL + S).</li>
<li>The default pallet quantity is 12. In the <strong>Warehouse management</strong> field group, find the <strong>Pallet quantity</strong> field and fill in <em>12</em>. Save the line.</li>
<li>There will be three levels of items stored on the pallet, each level containing four pieces.. In the <strong>Warehouse management</strong> field group, find the <strong>Quantity per layer</strong> field and fill in <em>4</em>. Save the line.</li>
<li>We suppose that the purchase price for the Fan item will be 5$. In the <strong>item</strong> form, go to the <strong>Price/Discount</strong> tab &gt; <strong>Base purchase price</strong> field group and fill in <em>5</em> in the <strong>Price</strong> field. Save the line.</li>
<li>The default purchase order quantity will be 100. In the <strong>Item</strong> form, click the <strong>Setup</strong> &gt; <strong>Default order setting</strong> menu button. The <strong>Default order settings</strong> form opens. On the <strong>Purchase order</strong> tab &gt; <strong>Purchase quantity</strong> field group fill in <em>100</em> in the <strong>Standard order quantity</strong> field. Save the line.</li>
</ol>
<h2>Set Up a Warehouse</h2>
<p>In introduction, we have mentioned about a special place in a warehouse where the item will be placed in order to verify its quality (a quarantine place). Let’s understand how we can set up quarantine places in Microsoft Dynamics AX.</p>
<p>If we go to the <strong>Locations</strong> form (<strong>Inventory</strong> <strong>Management</strong> &gt; <strong>Setup</strong> &gt; <strong>Inventory</strong> <strong>breakdown</strong> &gt; <strong>Locations</strong>) and look through the location types we will not find the quarantine type. We can’t set up a separate location as a quarantine one. Microsoft Dynamics AX allows creating only a quarantine warehouse. So, if the company uses one warehouse for storing and controlling the quality of items, the space in the warehouse must be divided into two logical parts – a warehouse and a quarantine warehouse. A quarantine warehouse can have the same types of locations as the general warehouse has (i.e. bulk locations, picking locations, outbound and inbound docks).</p>
<p>Since the company can have several quarantine warehouses, each quarantine warehouse is assigned to a warehouse.</p>
<p>We assume that the Fan company receives fans to the  warehouse 22, and the identification of the quarantine warehouse is 28.</p>
<p>I use the demo data, so  the warehouse 22 already exists, let’s check its setup:</p>
<ol>
<li>Go to <strong>Inventory</strong> <strong>Management</strong> &gt; <strong>Setup</strong> &gt; <strong>Inventory</strong> <strong>breakdown</strong> &gt; <strong>Warehouses</strong>. The <strong>Warehouses</strong> form opens.</li>
<li>Find the  warehouse 22 and go to the <strong>General</strong> tab. Make sure that the <strong>Quarantine warehouse</strong> field is filled in with the value <em>28</em>.</li>
</ol>
<p><div id="attachment_1654" class="wp-caption alignnone" style="width: 563px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/WarehousesForm.gif"><img class="size-full wp-image-1654 " title="Warehouses form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/WarehousesForm.gif" alt="Warehouses form" width="553" height="400" /></a><p class="wp-caption-text">Warehouses form</p></div>
<p>If an item will be received to a warehouse that doesn’t have the quarantine warehouse set up and the item must be quarantine controlled, the receival process will be stopped and an error message will be shown.</p>
<h2>Order Items</h2>
<p>We assume that the Purchase Manager orders 100 Fans from the 1001 the Earth Televisions vendor.</p>
<p>Create a purchase order:</p>
<ol>
<li>Go to the <strong>Accounts Receivable</strong> &gt; <strong>Common Forms</strong> &gt; <strong>Purchase Order Details</strong>. The <strong>Purchase order</strong> form opens.</li>
<li>Create a new line. The <strong>Create purchase order</strong> form opens. Select the 1001 vendor.</li>
<li>In the lines area, create a new line with the following values:
<ul>
<li>Item number = <em>101</em></li>
<li>Site = <em>2</em></li>
<li>Warehouse = <em>22</em></li>
</ul>
</li>
<li>Save the line. Note that the <strong>Quantity</strong> field is automatically filled in with 100 and the <strong>Unit price</strong> field is filled in with the value <em>5</em>.</li>
</ol>
<p>We assume that the vendor packs the items and delivers them to the Fan company the same day. Check that the <strong>Delivery</strong> <strong>date</strong> field contains the current date (displayed in the lower part of the <strong>Purchase order</strong> form).</p>
<p>Let’s check the inventory transactions:</p>
<ol>
<li>Open the <strong>Items</strong> form and find the 101 item.</li>
<li>Click the <strong>Transactions</strong> button. The <strong>Transactions on item</strong> form opens.</li>
<li> Add the Location and Pallet dimension in the form: click the <strong>Inventory</strong> &gt; <strong>Dimensions display</strong> button. In the <strong>Inventory dimensions</strong> form, select the <strong>Location</strong> and <strong>Pallet id</strong> check boxes and click <strong>OK</strong>. The <strong>Transactions on item</strong> form will have the following view:
<div id="attachment_1661" class="wp-caption alignnone" style="width: 633px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/TransactionsOnItemOrdered.gif"><img class="size-full wp-image-1661  " title="Transactions on item form, Ordered" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/TransactionsOnItemOrdered.gif" alt="Transactions on item form, Ordered" width="623" height="280" /></a><p class="wp-caption-text">Transactions on item form, Ordered</p></div></li>
</ol>
<h2>Item Arrival and Registration</h2>
<p>For more information, see the <a title="Item arrival and registration" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/item-arrival-and-registration" target="_blank">Item arrival and registration training lesson</a>.</p>
<p>When the truck with the Fan items arrives to the  warehouse 22, the Purchase Manager starts the arrival and registration process:</p>
<ol>
<li>Go to the <strong>Inventory Management</strong> &gt; <strong>Periodic</strong> &gt; <strong>Arrival overview</strong>. The <strong>Arrival overview</strong> form opens.</li>
<li>Find the created purchase order and select the <strong>Select for arrival</strong> check box.</li>
<li>Click the <strong>Start arrival</strong> button.</li>
<li>The Infolog with the information about the created arrival journal ID will be shown.</li>
<li>Click the <strong>Show</strong> button in the <strong>Infolog</strong> dialog box or go to <strong>Inventory Management</strong> &gt; <strong>Journals</strong> &gt; <strong>Item arrival</strong> &gt; <strong>Item arrival</strong>. The <strong>Location journal</strong> form opens. Find the last journal.</li>
<li> Click the <strong>Lines</strong> button in the <strong>Location journal</strong> form. The <strong>Journal lines</strong> form opens.
<p><div id="attachment_1655" class="wp-caption alignnone" style="width: 633px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/JournalLinesForm.gif"><img class="size-full wp-image-1655   " title="Journal lines form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/JournalLinesForm.gif" alt="Journal lines form" width="623" height="314" /></a><p class="wp-caption-text">Journal lines form</p></div>
<p>We can see that one purchase order line with 100 fans is divided into 9 separate arrival journal lines with 12 fans. This is because we store items on pallets and the default pallet quantity for the Fan item is 12 (<strong>Item</strong> form &gt; <strong>Setup</strong> tab &gt; <strong>Warehouse management</strong> field group &gt; <strong>Pallet quantity</strong> field). Each pallet will be transported to an individual place (location) in the warehouse. The items are received from the truck and placed onto pallets with the help of a Lumper. For more information, see the <a title="Purchase business process" href="http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/purchase-business-process" target="_blank">Purchase business process lesson</a>.</li>
<li>The Purchase Manager examines received pallets and generates pallet numbers for them. Pallet numbers are required because the Fan item uses the N-WLP inventory dimension group (i.e. when fan items are registered in the warehouse, they must be stored on pallets in a specific location). For each journal line, click the <strong>Functions</strong> &gt; <strong>Pallet id</strong> menu button in the <strong>Journal lines</strong> form.</li>
<li> Now, the Purchase Manager creates tasks for the forklift driver to transport pallets from an inbound dock to the destination location. A pallet transport task will be created during the posting process if the <strong>Pallet transport</strong> check box is selected for the journal line. In the <strong>Journal lines</strong> form go to the <strong>General</strong> tab &gt; <strong>Mode of handling</strong> field group and make sure that the <strong>Pallet transport</strong> check box is selected for each journal line. The destination location will be searched during the posting process. The quarantine location will be searched only if the <strong>Quarantine management</strong> check box is selected for the journal line. In the <strong>Journal lines</strong> form, go to the <strong>General</strong> tab &gt; <strong>Mode of handling</strong> field group and make sure that the <strong>Quarantine management</strong> check box is selected for each journal line. Note that the <strong>Pallet transport</strong> check box is selected by default if the item dimension group has the Pallet ID dimension active. Note that the <strong>Quarantine management</strong> check box is selected by default on the journal line if item inventory model group has the <strong>Quarantine management</strong> check box selected.
<div id="attachment_1656" class="wp-caption alignnone" style="width: 608px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/JournalLinesFormGeneralTab.gif"><img class="size-full wp-image-1656   " title="Journal lines form, General tab" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/JournalLinesFormGeneralTab.gif" alt="Journal lines form, General tab" width="598" height="341" /></a><p class="wp-caption-text">Journal lines form, General tab</p></div></li>
<p>The Purchase Manager clicks the <strong>Post</strong> button in the <strong>Journal lines</strong> form.</p>
<li>The “Item 101, dimensions: Warehouse=28, has no picking location in warehouse 28” error message will appear.</li>
</ol>
<p>How is the destination location for the pallet searched? The Microsoft Dynamics AX has several parameters to control the process of destination location searching.</p>
<h1>&#8230;</h1>
<h1><a title="Trade and Logistics Training" href="http://www.dynamicsaxtraining.com/available-trainings/trade-and-logistics-training"><img class="alignleft size-full wp-image-1366" title="Trade and Logistics Training" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/01/TradeAndLogisticsTrainingS.png" alt="Trade and Logistics Training" width="150" height="113" /></a>You are not authorized to see the full training lesson (14 pages are hidden).</h1>
<p><a title="Trade and Logistics Training" href="http://www.dynamicsaxtraining.com/available-trainings/trade-and-logistics-training">Download the full PDF version of the Trade and Logistics training for Dynamics AX 2009.</a></p>
<div style="clear:both;"></div>
<h1>&#8230;</h1>
<p>Let’s check inventory transactions. Open the <strong>Items</strong> form and find the 101 item. Click the <strong>Transactions</strong> button. The <strong>Transactions on item</strong> form opens. Filter the result for the 00000095_114 pallet. The <strong>Transactions on item</strong> form will have the following view:</p>
<p><div id="attachment_1676" class="wp-caption alignnone" style="width: 630px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/TransactionsOnItemRegisteredDestLast.png"><img class="size-full wp-image-1676   " title="Transactions on item form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/TransactionsOnItemRegisteredDestLast.png" alt="Transactions on item form" width="620" height="231" /></a><p class="wp-caption-text">Transactions on item form</p></div>
<p>We can see that</p>
<ul>
<li>The pallet is sold (deducted financially) from the In_01 inbound location.</li>
<li>The pallet is sold (deducted financially) from the 01-01-0-0 quarantine location.</li>
<li>The pallet is purchased (received financially) to the 01-01-01-1 destination location.</li>
</ul>
<p>Also, we can check the on-hand quantity for all mentioned locations:</p>
<ol>
<li>Go to <strong>Inventory Management</strong> &gt; <strong>Setup</strong> &gt; <strong>Inventory breakdown</strong> &gt; <strong>Locations</strong>. The <strong>Locations</strong> form opens.</li>
<li>Find the In_01 location (22 warehouse) and click the <strong>Inquiries</strong> &gt; <strong>On-hand</strong> menu button. The empty <strong>On-hand</strong> form is shown.</li>
<li>Find the 01-01-0-0 location and open the <strong>On-hand</strong> form. The empty <strong>On-hand</strong> form is shown.</li>
<li>Find the 01-01-01-1 location. Open the <strong>On-hand</strong> form. The following form is shown:
<p><div id="attachment_1678" class="wp-caption alignnone" style="width: 604px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/OnHandForm1.png"><img class="size-full wp-image-1678   " title="On-hand form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2011/01/OnHandForm1.png" alt="On-hand form" width="594" height="223" /></a><p class="wp-caption-text">On-hand form</p></div></li>
</ol>
<h2>Training Lesson Summary</h2>
<p>In this training lesson, we go through all steps of receiving quarantine items. The topic studied uses the warehouse management functionality. Note that the number of steps can be decreased if an item doesn’t use the warehouse management (a pallet, location dimensions are inactive).</p>
<p>We have studied the followings:</p>
<ol>
<li>Created a quarantine item.</li>
<li>Set up a quarantine warehouse.</li>
<li>Ordered items.</li>
<li>Received items to the inbound dock.</li>
<li>Transferred items to the quarantine locations.</li>
<li>Used Quarantine management.</li>
<li>Transferred items to the destination locations.</li>
</ol>
<p>All the best <img src='http://www.dynamicsaxtraining.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fdynamics-ax-trade-and-logistics-training%2Fquarantine-management';
  addthis_title  = 'Quarantine+management';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/Quarantine+management' rel='tag' target='_blank'>Quarantine management</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/dynamics-ax-trade-and-logistics-training/quarantine-management/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Currency Setup in Dynamics AX 2009</title>
		<link>http://www.dynamicsaxtraining.com/knowledge-base-application/currency-setup-in-dynamics-ax-2009</link>
		<comments>http://www.dynamicsaxtraining.com/knowledge-base-application/currency-setup-in-dynamics-ax-2009#comments</comments>
		<pubDate>Mon, 20 Dec 2010 14:54:05 +0000</pubDate>
		<dc:creator>Akusman</dc:creator>
				<category><![CDATA[Knowledge base (Application)]]></category>
		<category><![CDATA[Currency Setup]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=1557</guid>
		<description><![CDATA[Good Day! Today we will be looking at Currency Setup in Dynamics AX 2009. Our agenda will be to learn following things: Create currencies in Dynamics AX Currency setup in General Ledger module Setting company default currency Ok, now let’s start. Create currencies in Dynamics AX To create currency go to General Ledger &#62; Setup [...]]]></description>
			<content:encoded><![CDATA[<p>Good Day!</p>
<p>Today we will be looking at Currency Setup in Dynamics AX 2009. Our agenda will be to learn following things:</p>
<ol>
<li>Create currencies in Dynamics AX</li>
<li>Currency setup in General Ledger module</li>
<li>Setting company default currency</li>
</ol>
<p>Ok, now let’s start.</p>
<h2>Create currencies in Dynamics AX</h2>
<p>To create currency go to <strong>General Ledger</strong> &gt; <strong>Setup </strong>&gt; <strong>Exchange Rates</strong>. The <strong>Exchange rates </strong>form opens.</p>
<div id="attachment_1575" class="wp-caption alignnone" style="width: 507px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Exchange-rates.png"><img class="size-full wp-image-1575  " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Exchange-rates.png" alt="Exchange rates form" width="497" height="522" /></a><p class="wp-caption-text">Exchange rates form</p></div>
<p>As you can see in above screen shot we have five tabs on this form. First is the <strong>Overview</strong> tab. In this tab we’ll create new currency. To create new currency press Ctrl + N, in the <strong>Currency</strong><em> </em>field write new currency short name (3 characters limit), in the <strong>Name</strong><em> </em>field write descriptive name for new currency, in the <strong>ISO</strong><em> </em>field select ISO currency code for new currency and in the <strong>Symbol</strong><em> </em>field enter symbol for new currency created.</p>
<p>In the lower pane of the <strong>Exchange rates</strong> form, are the exchange rates for currency. You can define exchange rates for each day. If you want to use one exchange rate leave the <strong>Start date</strong> field blank. AX will automatically use last exchange rate, if multiple exchange rates are available.</p>
<p>Next is the <strong>General</strong> tab which shows same information as in the <strong>Overview</strong> tab except the <strong>Gender</strong> field (Optional if you are not using Spanish check).</p>
<p>Third tab is the <strong>Currency convertor</strong> tab. Enable currency conversion by check mark on the <strong>Conversion</strong> field. Postfix and prefix are character you want to add before and after amount. Enter spaces before and after postfix and prefix fields to separate from amount.</p>
<p>I have created the Pakistan Rupees (PKR) with the following setup:</p>
<div id="attachment_1621" class="wp-caption alignnone" style="width: 578px"><a title="Exchange rates form, Currency converter tab" href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Currency-Exchange-form-Currency-conversion5.png"><img class="size-full wp-image-1621  " title="Exchange rates form, Currency converter tab" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Currency-Exchange-form-Currency-conversion5.png" alt="Exchange rates form, Currency converter tab" width="568" height="211" /></a><p class="wp-caption-text">Exchange rates form, Currency converter tab</p></div>
<p>Now I want to view all my amounts in the PRK currency. To do this click the current currency icon located in the bottom right corner of the status bar.</p>
<div id="attachment_1633" class="wp-caption alignnone" style="width: 624px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Currency-converter.png"><img class="size-full wp-image-1633  " title="Currency converter " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Currency-converter.png" alt="Currency converter " width="614" height="472" /></a><p class="wp-caption-text">Currency converter </p></div>
<p>The <strong>Currency converter</strong> form opens. Double click on the PKR currency.</p>
<p>After doing above setting we will get the following result in the <strong>Chart of Accounts</strong> form.</p>
<div id="attachment_1623" class="wp-caption alignnone" style="width: 615px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Postfix-and-Prefix-change-in-COA-Detail-form1.png"><img class="size-full wp-image-1623     " title="Chart of accounts form" src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/Postfix-and-Prefix-change-in-COA-Detail-form1.png" alt="Chart of accounts form" width="605" height="231" /></a><p class="wp-caption-text">Chart of accounts form</p></div>
<p>The <strong>Posting </strong>tab define Realized loss, Realized profit, Unrealized loss, Unrealized profit general ledger accounts due to currency exchange rate.</p>
<div id="attachment_1580" class="wp-caption alignnone" style="width: 507px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/ExchangeRatesPostingTab.png"><img class="size-full wp-image-1580  " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/ExchangeRatesPostingTab.png" alt="Exchange rates form, Posting tab" width="497" height="522" /></a><p class="wp-caption-text">Exchange rates form, Posting tab</p></div>
<p>These settings depend on your company policies and weather you are using foreign currency for billing and payments. There’s a detail article about <a title="Realized loss, Realized profit, Unrealized loss, Unrealized profit" href="http://www.dynamicsaxtraining.com/knowledge-base-application/realized-loss-realized-profit-unrealized-loss-unrealized-profit-in-dynamics-ax-2009" target="_blank">Realized and Unrealized profit and loss</a>.</p>
<p>Last tab is the <strong>Round-off</strong> tab as the name shows it’s about rounding off currency.</p>
<div id="attachment_1583" class="wp-caption alignnone" style="width: 507px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/ExchangeRatesRoundOffTab.png"><img class="size-full wp-image-1583 " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/ExchangeRatesRoundOffTab.png" alt="Exchange rates form, Round-off tab" width="497" height="522" /></a><p class="wp-caption-text">Exchange rates form, Round-off tab</p></div>
<p>General rounding-off applies to all modules and there are separate settings for <strong>Account Receivable</strong>, <strong>Account Payables</strong> modules and Prices.</p>
<p><span style="text-decoration: underline;">Example</span>: We have amount 6827.28. Below table describe how Round Off and Rounding form works.</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="106" valign="top"><strong>Rounding form</strong></td>
<td width="106" valign="top"><strong>Round off .01</strong></td>
<td width="106" valign="top"><strong>Round off .10</strong></td>
<td width="106" valign="top"><strong>Round off 1.00</strong></td>
<td width="106" valign="top"><strong>Round off 10.00</strong></td>
<td width="106" valign="top"><strong>Round off 100.00</strong></td>
</tr>
<tr>
<td width="106" valign="top"><strong>Normal</strong></td>
<td width="106" valign="top">6827.28</td>
<td width="106" valign="top">6827.20</td>
<td width="106" valign="top">6827.00</td>
<td width="106" valign="top">6830.00</td>
<td width="106" valign="top">6800.00</td>
</tr>
<tr>
<td width="106" valign="top"><strong>Upward</strong></td>
<td width="106" valign="top">6827.28</td>
<td width="106" valign="top">6827.30</td>
<td width="106" valign="top">6828.00</td>
<td width="106" valign="top">6830.00</td>
<td width="106" valign="top">6800.00</td>
</tr>
<tr>
<td width="106" valign="top"><strong>Downward</strong></td>
<td width="106" valign="top">6827.28</td>
<td width="106" valign="top">6827.20</td>
<td width="106" valign="top">6827.00</td>
<td width="106" valign="top">6820.00</td>
<td width="106" valign="top">6800.00</td>
</tr>
</tbody>
</table>
<h2>Currency setup in General Ledger module</h2>
<p>In <strong>General Ledger</strong> module go to <strong>Setup </strong>&gt; <strong>Parameters</strong>. The <strong>General ledger parameters</strong> form<strong> </strong> opens. Go to the <strong>Ledger </strong>tab:</p>
<div id="attachment_1586" class="wp-caption alignnone" style="width: 629px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/GeneralLedgerParameters.png"><img class="size-full wp-image-1586  " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/GeneralLedgerParameters.png" alt="General ledger parameters form" width="619" height="446" /></a><p class="wp-caption-text">General ledger parameters form</p></div>
<p>In the <strong>Express exchange rate</strong> field specify how much of your currency equals to 100 units of foreign currency. The value is used in the <strong>Exchange rates</strong> form.</p>
<p>Example: Enter the 50 in the <strong>Express exchange rate</strong> field. Save parameters. The <strong>Exchange rates</strong> form will have the following values.</p>
<div id="attachment_1605" class="wp-caption alignnone" style="width: 507px"><a href="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/ExchangeRatesNum.png"><img class="size-full wp-image-1605 " src="http://www.dynamicsaxtraining.com/wp-content/uploads/2010/12/ExchangeRatesNum.png" alt="Exchange rates form" width="497" height="522" /></a><p class="wp-caption-text">Exchange rates form</p></div>
<p>The <strong>Maximum penny difference</strong> field contains the maximum difference between debit and credit amount in the voucher. The difference can appear when debit or credit amount is rounded (because debit and credit amount is rounded separately).</p>
<p>The <strong>Maximum penny-rounding in the secondary currency</strong> field contains the maximum difference between debit and credit amount in the voucher if this amount is recorded in the secondary currency.</p>
<h2>Setting up company default currency</h2>
<p>To set company default currency do the following:</p>
<p>Go to the <strong>Basic </strong>&gt; <strong>Setup &gt;</strong> <strong>Company information</strong> &gt; <strong>Other </strong>tab &gt; <strong>Currency </strong>field group &gt; <strong>Currency</strong> field<strong><br />
</strong></p>
<p>You can select any currency you have created in the <strong>Exchange rates</strong> form.</p>
<p><strong> </strong></p>
<p>That’s all for now.</p>
<p>Good Bye!</p>
<p>Written By: <a title="E.R.P Functional Consultant" href="http://pk.linkedin.com/pub/usman-akhwand/7/2a0/190" target="_blank">Akhwand Usman Tufail</a></p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fknowledge-base-application%2Fcurrency-setup-in-dynamics-ax-2009';
  addthis_title  = 'Currency+Setup+in+Dynamics+AX+2009';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/Currency+Setup' rel='tag' target='_blank'>Currency Setup</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/knowledge-base-application/currency-setup-in-dynamics-ax-2009/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Realized loss, Realized profit, Unrealized loss, Unrealized profit</title>
		<link>http://www.dynamicsaxtraining.com/knowledge-base-application/realized-loss-realized-profit-unrealized-loss-unrealized-profit-in-dynamics-ax-2009</link>
		<comments>http://www.dynamicsaxtraining.com/knowledge-base-application/realized-loss-realized-profit-unrealized-loss-unrealized-profit-in-dynamics-ax-2009#comments</comments>
		<pubDate>Tue, 14 Dec 2010 10:46:58 +0000</pubDate>
		<dc:creator>Akusman</dc:creator>
				<category><![CDATA[Knowledge base (Application)]]></category>
		<category><![CDATA[Realized loss]]></category>
		<category><![CDATA[Realized profit]]></category>
		<category><![CDATA[Unrealized loss]]></category>
		<category><![CDATA[Unrealized profit]]></category>

		<guid isPermaLink="false">http://www.dynamicsaxtraining.com/?p=1543</guid>
		<description><![CDATA[Realized profit and unrealized profit are other income in nature. And unrealized loss and realized loss are other expenses in nature. Example: Your company currency is CAD and record a sale on the date you sold goods (take CAD 10 = 1 USD). Sale Date: 01-01-09 Sales in CAD 100 Rate on date, sale is [...]]]></description>
			<content:encoded><![CDATA[<p>Realized profit and unrealized profit are other income in nature. And unrealized loss and realized loss are other expenses in nature.</p>
<p><strong>Example: </strong>Your company currency is CAD and record a sale on the date you sold goods (take CAD 10 = 1 USD).</p>
<p>Sale Date: 01-01-09</p>
<p>Sales in CAD 100</p>
<p>Rate on date, sale is recorded CAD 10 = 1 USD</p>
<p>Sale in USD 10</p>
<p><span style="text-decoration: underline;">Sales Entry will be:</span></p>
<p>DR          Accounts receivable       100</p>
<p>CR                           Sales                                      100</p>
<p>Customer was billed in USD which was on 01-01-09 equals to 10.</p>
<p>On 01-02-09 customer paid for invoice in USD, he paid USD 10. On that day, currency rate was               CAD 11 = 1 USD. This means that we have to record entry of CAD 110 in our books.</p>
<p>In this case we will use Realized Profit a/c and the entry would be:</p>
<p>DR          Cash 110</p>
<p>CR                                           Accounts receivable  100</p>
<p>CR                                           Realized Profit A/C           10</p>
<p>Realized Profit 10 is the gain on currency exchange rate.</p>
<p>Similarly, if exchange rate decreases Realized Loss A/C will be debited.</p>
<p>Unrealized Profit and Loss A/C s are used if company takes provision of change in exchange rate into accounts.</p>
<p>Have a nice day!!</p>
<p>Written By: <a title="E.R.P Functional Consultant" href="http://pk.linkedin.com/pub/usman-akhwand/7/2a0/190" target="_blank">Akhwand Usman Tufail</a></p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.dynamicsaxtraining.com%2Fknowledge-base-application%2Frealized-loss-realized-profit-unrealized-loss-unrealized-profit-in-dynamics-ax-2009';
  addthis_title  = 'Realized+loss%2C+Realized+profit%2C+Unrealized+loss%2C+Unrealized+profit';
  addthis_pub    = '';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

<!-- start wp-tags-to-technorati 1.02 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/Realized+loss' rel='tag' target='_blank'>Realized loss</a>, <a class='technorati-link' href='http://technorati.com/tag/Realized+profit' rel='tag' target='_blank'>Realized profit</a>, <a class='technorati-link' href='http://technorati.com/tag/Unrealized+loss' rel='tag' target='_blank'>Unrealized loss</a>, <a class='technorati-link' href='http://technorati.com/tag/Unrealized+profit' rel='tag' target='_blank'>Unrealized profit</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicsaxtraining.com/knowledge-base-application/realized-loss-realized-profit-unrealized-loss-unrealized-profit-in-dynamics-ax-2009/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

