<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Dynamics AX Czech Support Team</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/czdaxsup/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/czdaxsup/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 03:20:35 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>How to change EDT and propagate this to AIF XML Schema (XSD).</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/how-to-change-edt-and-propagate-this-to-aif-xml-schema-xsd</link>
      <pubDate>Thu, 30 Dec 2010 07:11:39 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2010/12/30/how-to-change-edt-and-propagate-this-to-aif-xml-schema-xsd/</guid>
      <description><![CDATA[Sometimes you have to change parameter of Extended data type which are also used by AIF. For example...]]></description>
      <content:encoded><![CDATA[<p>Sometimes you have to change parameter of Extended data type which are also used by AIF. For example number of decimal digits etc. When you change this settings just in Dynamics AX AOT and save it, still you will have old values in generated XSD, that means any inbound message will be validated against old EDT settings.</p>  <p>In that case you have to perform following steps:</p>  <ol>   <li>Change EDT properties</li>    <li>Clear row of table AifSchemaStore for service which is using that EDT (for example AxdSalesOrder)</li>    <li>Clear row (ex. SalesOrder) in table AidDocumentSchemaTable</li>    <li>Clean AIF Service folder (if you have it – Web Service)</li>    <li>Click Generate in AIF Services</li>    <li>Browse Endpoints Data Action policy enable/disable something of mentioned service</li>    <li>View Schema in Endpoint for service operation (ex. SalesSalesOrderService.create)</li> </ol>  <p><em>Karel F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>How to delete orphaned data remained from deleted company?</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/how-to-delete-orphaned-data-remained-from-deleted-company</link>
      <pubDate>Thu, 09 Dec 2010 03:44:56 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2010/12/09/how-to-delete-orphaned-data-remained-from-deleted-company/</guid>
      <description><![CDATA[In AX 2009 it may happen that you delete a company but data related to this company remain in the...]]></description>
      <content:encoded><![CDATA[<p>In AX 2009 it may happen that you delete a company but data related to this company remain in the database. You can use this script to delete this data:</p>  <pre><code><span class="sql1-comment">/*
 * Code Sample Disclaimer:
 * Microsoft provides programming examples for illustration only, 
 * without warranty either expressed or implied, including, but not limited to, 
 * the implied warranties of merchantability or fitness for a particular purpose. 
 * This mail message assumes that you are familiar with the programming  
 * language that is being demonstrated and the tools that are used to create and debug procedures.
 */
</span>
<span class="sql1-reservedword">DECLARE</span> @_tableName <span class="sql1-datatype">nvarchar</span>(40)
<span class="sql1-reservedword">DECLARE</span> @_companyId <span class="sql1-datatype">nvarchar</span>(4)

<span class="sql1-reservedword">SET</span> @_companyId = <span class="sql1-string">N'&lt;company_id&gt;'</span>;  <span class="sql1-comment">-- replace &lt;company_id&gt; with required company</span> 

<span class="sql1-reservedword">DECLARE</span> curSqlDictionary <span class="sql1-reservedword">CURSOR FOR</span>
<span class="sql1-reservedword">SELECT</span> A.SQLNAME
<span class="sql1-reservedword">FROM</span> SQLDICTIONARY A
<span class="sql1-reservedword">INNER JOIN</span> SQLDICTIONARY X <span class="sql1-reservedword">ON</span> X.TABLEID = A.TABLEID <span class="sql1-reservedword">AND</span> X.FIELDID = <span class="sql1-number">61448</span>
<span class="sql1-reservedword">WHERE</span> A.FIELDID = <span class="sql1-number">0</span>
	<span class="sql1-reservedword">AND</span> A.FLAGS = <span class="sql1-number">0</span>

<span class="sql1-reservedword">OPEN</span> curSqlDictionary

<span class="sql1-reservedword">FETCH NEXT FROM</span> curSqlDictionary <span class="sql1-reservedword">INTO</span> @_tableName

<span class="sql1-reservedword">WHILE @@FETCH_STATUS</span> = <span class="sql1-number">0</span>
<span class="sql1-reservedword">BEGIN</span>
	<span class="sql1-reservedword">DECLARE</span> @_sql <span class="sql1-datatype">nvarchar</span>(4000)
	<span class="sql1-reservedword">SET</span> @_sql = <span class="sql1-string">N'DELETE FROM '</span> + <span class="sql1-reservedword">QUOTENAME</span>(@_tableName) + <span class="sql1-string">N' WHERE DATAAREAID = @_dataAreaId'</span>
	
	<span class="sql1-reservedword">EXEC</span> sp_executesql @_sql, <span class="sql1-string">N'@_dataAreaId nvarchar(4)'</span>, @_dataAreaId = @_companyId  
	
	<span class="sql1-reservedword">FETCH NEXT FROM</span> curSqlDictionary <span class="sql1-reservedword">INTO</span> @_tableName
<span class="sql1-reservedword">END</span>

<span class="sql1-reservedword">CLOSE</span> curSqlDictionary
<span class="sql1-reservedword">DEALLOCATE</span> curSqlDictionary
</code></pre>

<p><em>Martin F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>AX application files, locked by another process.</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/ax-application-files-locked-by-another-process</link>
      <pubDate>Thu, 13 May 2010 06:21:49 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2010/05/13/ax-application-files-locked-by-another-process/</guid>
      <description><![CDATA[We have seen issues where the AX application files gets locked by others then the AOS process. This...]]></description>
      <content:encoded><![CDATA[<p>We have seen issues where the AX application files gets locked by others then the AOS process. This will cause the production&#160; to stop, until the lock is removed. A typical application which causes the error is the Antivirus Software. Excluding the application folder should solve the issue.</p>  <p>In case it is something else, or you want to monitor other files, you can use the following procedure. </p>  <p>An typical error message which will pop up looks like this:</p>  <p><font color="#ff0000">Error [Pathname]</font></p>  <p><font color="#ff0000">Error Code 33 = The process cannot access the file because another process has locked a portion of the file.</font></p>  <p>After you confirm with “yes” to retry the access to the file, everything runs fine again.</p>  <p>&#160;</p>  <p>To avoid this Situation, there is a well known tool which helps also in this situation, to find out what process causes the lock.</p>  <p>Please download the Process Monitor Tool from here:</p>  <p><a title="https://technet.microsoft.com/en-us/sysinternals/bb896645.aspx" href="https://technet.microsoft.com/en-us/sysinternals/bb896645.aspx">https://technet.microsoft.com/en-us/sysinternals/bb896645.aspx</a></p>  <p>Configure the Process Monitor as follows and it will log every access to the application files, from a non AOS process. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/AXapplicationfileslockedbyanotherproces_D44B/clip_image002_2.jpg" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/AXapplicationfileslockedbyanotherproces_D44B/clip_image002_2.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image002" border="0" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/AXapplicationfileslockedbyanotherproces_D44B/clip_image002_thumb.jpg" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/AXapplicationfileslockedbyanotherproces_D44B/clip_image002_thumb.jpg" width="453" height="195" /></a></p>  <p>&#160;</p>  <p>You will need to configure two filters:</p>  <p>Please go to Filter -&gt; Filter… add the following filters:</p>  <p>1. Path ends with .aod include</p>  <p>2. Process Name is AX32Serv.exe Exclude</p>  <p>Please check the following option:&#160; Filter –&gt; Drop Filtered Events.</p>  <p>Otherwise the log file can get really big, when process monitor runs for longer period of time.</p>  <p>&#160;</p>  <p><em>Martin Ch.</em></p>]]></content:encoded>
    </item>
    <item>
      <title>Database log error on AX 2009 with SQL Server 2008</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/database-log-error-on-ax-2009-with-sql-server-2008</link>
      <pubDate>Wed, 25 Nov 2009 04:39:00 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/11/25/database-log-error-on-ax-2009-with-sql-server-2008/</guid>
      <description><![CDATA[On a database that is upgraded from AX 4.0 to AX 2009 running on SQL 2008 you may get following...]]></description>
      <content:encoded><![CDATA[<P>On a database that is upgraded from AX 4.0 to AX 2009 running on SQL 2008 you may get following error while using database log:</P>
<P>The target table 'SYSDATABASELOG' of the DML statement cannot have any enabled triggers if the statement contains an OUTPUT clause without INTO clause.. The SQL statement was: </P>
<P><FONT color=#ff0000>INSERT INTO SYSDATABASELOG (DATA,USERNAME,DESCRIPTION,LOGTYPE,TABLE_,LOGRECID,CREATEDBY,CREATEDTRANSACTIONID, DATAAREAID,RECVERSION,RECID) OUTPUT INSERTED.CREATEDDATETIME VALUES (?,?,?,?,?,?,?,?,?,?,?)</FONT></P>
<P>To solve this issue you need to drop the <STRONG><EM>onSYSDATABASELOGinsert</EM></STRONG> trigger by executing this statement in SQL Server Management Studio:</P>
<P mce_keep="true">&nbsp;</P><PRE><CODE><SPAN style="FONT: 10pt courier new"><SPAN class=sql1-reservedword>USE</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-symbol>&lt;ax_database_name&gt;;
GO

</SPAN><SPAN class=sql1-reservedword>DROP</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>TRIGGER</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-delimitedidentifier>[onSYSDATABASELOGinsert];
GO</SPAN></SPAN></CODE></PRE>
<P>You may also need to modify the default constraint for CreatedDateTime field to replace the default value ‘1900-01-01 00:00:00.000’ coming from AX 4.0 with ‘dateadd(millisecond, -datepart(millisecond,getutcdate()),getutcdate())’. To do this you can execute following code:</P>
<P mce_keep="true">&nbsp;</P><PRE><CODE><SPAN style="FONT: 10pt courier new"><SPAN class=sql1-reservedword>ALTER</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>TABLE</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-identifier>dbo.SYSDATABASELOG
</SPAN><SPAN class=sql1-space>	</SPAN><SPAN class=sql1-reservedword>DROP</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>CONSTRAINT</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-symbol>&lt;constraint_name&gt;
GO
</SPAN><SPAN class=sql1-reservedword>ALTER</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>TABLE</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-identifier>dbo.SYSDATABASELOG</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>ADD</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>CONSTRAINT
</SPAN><SPAN class=sql1-space>	</SPAN><SPAN class=sql1-symbol>&lt;constraint_name&gt;</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>DEFAULT</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-function>dateadd</SPAN><SPAN class=sql1-symbol>(millisecond,</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-symbol>-</SPAN><SPAN class=sql1-function>datepart</SPAN><SPAN class=sql1-symbol>(millisecond,getutcdate()),getutcdate())</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-reservedword>FOR</SPAN><SPAN class=sql1-space> </SPAN><SPAN class=sql1-identifier>CREATEDDATETIME</SPAN>
GO</CODE></PRE>
<P><EM><FONT face=Verdana>Martin F</FONT></EM></P></SPAN></SPAN>]]></content:encoded>
    </item>
    <item>
      <title>How to move Demand Planner database to another server</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/how-to-move-demand-planner-database-to-another-server</link>
      <pubDate>Thu, 15 Oct 2009 04:36:48 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/10/15/how-to-move-demand-planner-database-to-another-server/</guid>
      <description><![CDATA[Sometimes you need to move your existing Demand Planner database to another server. If you do this...]]></description>
      <content:encoded><![CDATA[<p>Sometimes you need to move your existing Demand Planner database to another server. If you do this just using backup/restore, you will run into the issue while synchronizing the Demand Planner. The error you get is:</p>  <p><font color="#ff0000">Could not find ‘server name’ in sys.sysservers</font></p>  <p>This is because Demand Planner uses fully qualified object names in some stored procedures and functions, what results in original server name to be used. </p>  <p>Follow these steps to change the server name in existing functions and stored procedures:</p>  <p>1. Open SQL Server Management Studio and expand Databases</p>  <p align="left">2. Right-click the Demand Planner database and select Tasks –&gt; Generate Scripts    <br />    <br /><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_2.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_2.png" target="_blank"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb.png" width="244" height="203" /></a> </p>  <p>3. Click <strong>Next </strong>on the welcome screen</p>  <p>4. Select the Demand Planner database on Select Database screen and click <strong>Next</strong>.     <br /><strong><font color="#ff0000">Do not check the “Script all objects in the selected database” check box!</font></strong></p>  <p>5. On the Choose Screen Options screen change value for <strong>Script Drop</strong> to <strong>True</strong> and click <strong>Next</strong>     <br />    <br /><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_6.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_6.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb_2.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb_2.png" width="196" height="244" /></a> </p>  <p>6. On the Select Object Types screen select <strong>Stored procedures</strong>, <strong>Functions</strong> and <strong>Views</strong> and click <strong>Next</strong></p>  <p>7. On the Choose Stored Procedures screen click <strong>Select All</strong> and then <strong>Next</strong>. Repeat this also to select all functions and views</p>  <p>8. On the Output Option screen keep the default selection and click <strong>Finish      <br />      <br /><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_10.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_10.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb_4.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb_4.png" width="196" height="244" /></a> </strong></p>  <p>9. On the summary page click <strong>Finish</strong></p>  <p>10. In the query window press <strong>CTRL+H</strong> to open Find and replace window and type name of the original server into <strong>Find what</strong> field and name of the new server into <strong>Replace with</strong> field and click <strong>Replace All</strong>.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_14.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_14.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/BlogFileStorage/blogs_msdn/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb_6.png" original-url="https://blogs.msdn.com/blogfiles/czdaxsup/WindowsLiveWriter/HowtomoveDemandPlannerdatabasetoanothers_BF4A/image_thumb_6.png" width="244" height="190" /></a> </p>  <p>11. Press <strong>F5</strong> to execute the script when all occurrences are replaced.</p>  <p>Now you should be able to synchronize Demand Planner.</p>  <p><em>Martin F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>Conflict error when list of fields is used in select during update transaction</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/conflict-error-when-list-of-fields-is-used-in-select-during-update-transaction</link>
      <pubDate>Wed, 14 Oct 2009 01:32:23 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/10/14/conflict-error-when-list-of-fields-is-used-in-select-during-update-transaction/</guid>
      <description><![CDATA[If you use this code, you will get an error on the line 29. The error message is following:  Cannot...]]></description>
      <content:encoded><![CDATA[<p>If you use this code, you will get an error on the line 29. The error message is following:</p>  <p><font color="#ff0000">Cannot edit a record in Table1 (Table1).      <br />An update conflict occurred due to another user process deleting the record or changing one or more fields in the record.</font></p>  <pre><code> 1: static void updateTable1(Args _args)
 2: {
 3:    Table1 tbl;
 4:    ;
 5:
 6:    ttsbegin;
 7:    select firstonly forupdate tbl;
 8:
 9:    if (tbl.RecId)
10:    {
11:        tbl.InfoText = &quot;Reset&quot;;
12:        tbl.update();
13:    }
14:    else
15:    {
16:        tbl.InfoText = &quot;Reset&quot;;
17:        tbl.IntField = 1;
18:        tbl.insert();
19:    }
20:    ttscommit;
21:
22:    tbl.clear();
23:
24:    select firstonly RecId, InfoText from tbl;
25:
26:    ttsbegin;
27:    tbl.selectForUpdate(true);
28:    tbl.InfoText = &quot;Table1 - field select&quot;;
29:    tbl.update();
30:    ttscommit;
31: }</code></pre>

<p>The reason for this is that each time the table is updated the field RecVersion is updated with a random number that is saved by kernel. That why when you try to update the record, kernel cannot update record partly, what results in update conflict. </p>

<p>There are two ways to avoid this issue:</p>

<p>1. Add RecVersion field into the selection </p>

<pre><code>24:    select firstonly RecId, InfoText, RecVersion from tbl;</code></pre>

<p></p>

<p>2. Use <strong>selectforupdate</strong> keyword </p>

<pre><code>24:    select firstonly forupdate RecId, InfoText from tbl;</code></pre>

<p></p>

<p><em></em></p>

<p><em>Martin F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>Error while calling Win API function on x64</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/error-while-calling-win-api-function-on-x64</link>
      <pubDate>Mon, 12 Oct 2009 23:47:36 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/10/12/error-while-calling-win-api-function-on-x64/</guid>
      <description><![CDATA[When you are calling Win API function (or function from a native DLL) on x64 you get this error:  An...]]></description>
      <content:encoded><![CDATA[<p>When you are calling Win API function (or function from a native DLL) on x64 you get this error:</p>  <p><font color="#ff0000">An exception occurred when calling <em>Function</em> in <em>Library name</em> DLL library</font></p>  <p>This happens only if the code calling the DLL function is running on server. The reason for this is that the DLLFunction class <strong>is not supported</strong> on x64.</p>  <p><em>Martin F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>Rename object in TFS</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/rename-object-in-tfs</link>
      <pubDate>Thu, 10 Sep 2009 09:23:26 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/09/10/rename-object-in-tfs/</guid>
      <description><![CDATA[You can get this error message while renaming object that is checked out from TFS.  Unable to import...]]></description>
      <content:encoded><![CDATA[<p>You can get this error message while renaming object that is checked out from TFS.</p>  <p><font color="#ff0000">Unable to import     <br />Trying to import Table MFATable_test1 with ID 50003      <br />ID already held by Table MFATable1      <br /></font></p>  <p>To rename the object you need to follow these steps:</p>  <ul>   <li>Right click the object in AOT and select <em>Rename</em> (without checking out the object)</li>    <li>Type a new name of the object. New object with the new name will be created</li>    <li>Select Tools –&gt; Development tools –&gt; Version control in AX menu and click Pending objects</li>    <li>Check in both objects</li> </ul>  <p>To update all objects that reference the renamed object, you need to check out all objects that refer to the object you want to rename. When you rename an object, two copies of the object are created: one with the old name and one with the new name. When you check in these objects (for delete and add, respectively), the system integrates both objects to maintain the history.</p>  <p><em>Martin F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>AX 2009 .NET Business Connector fails while creating instance of XmlDocument</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/ax-2009-net-business-connector-fails-while-creating-instance-of-xmldocument</link>
      <pubDate>Wed, 09 Sep 2009 07:33:59 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/09/09/ax-2009-net-business-connector-fails-while-creating-instance-of-xmldocument/</guid>
      <description><![CDATA[RTM version (5.0.593.0) of .NET Business Connect fails with following exception while creating...]]></description>
      <content:encoded><![CDATA[<p>RTM version (5.0.593.0) of .NET Business Connect fails with following exception while creating instance of XmlDocument class in X++ code. </p>  <p><font color="#ff0000">System.Runtime.InteropServices.SEHException: External component has thrown an exception.     <br />at AxCore_CallStatic(Char* , Char* , tagVARIANT* , Int32 , tagVARIANT* )      <br />at Microsoft.Dynamics.BusinessConnectorNet.Axapta.CallStaticClassMethod(String className, String methodName, Object[] paramList)      <br />at Microsoft.Dynamics.BusinessConnectorNet.Axapta.CallStaticClassMethod(String className, String methodName)      <br />at BusinessLogic.DocumentationManager.GetXml() in D:\Development\AX\BC.NET Sample Test\BusinessLogic\DocumentationManager.cs:line 13      <br />at ConsoleTest.Program.Main() in D:\Development\AX\BC.NET Sample Test\Console Test\Program.cs:line 15</font></p>  <p>To avoid this issue you need to install <a href="https://mbs.microsoft.com/partnersource/support/selfsupport/servicepacks/dynamicsax2009sp1.htm?printpage=false" target="_blank">SP1 for AX 2009</a> (you need to have access to <a href="https://mbs.microsoft.com/partnersource" target="_blank">Partnersource</a>).</p>  <p><em>Martin F</em></p>]]></content:encoded>
    </item>
    <item>
      <title>HOWTO: Print Word document from X++</title>
      <link>https://docs.microsoft.com/archive/blogs/czdaxsup/howto-print-word-document-from-x</link>
      <pubDate>Tue, 08 Sep 2009 04:42:00 GMT</pubDate>
      <dc:creator><![CDATA[Martin Falta]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/czdaxsup/2009/09/08/howto-print-word-document-from-x/</guid>
      <description><![CDATA[You might need to print Word document directly from X++. Here’s a short sample how to do this:{...]]></description>
      <content:encoded><![CDATA[<P>You might need to print Word document directly from X++. Here’s a short sample how to do this:</P><PRE><CODE>{
    str     document = "C:\\test.doc";
    COM     wordApplication;
    COM     wordDocuments;
    COM     wordDoc;
    ;

    // Create instance of Word application
    wordApplication = new COM("Word.Application");

    // Get documents property
    wordDocuments = wordApplication.Documents();

    // Open document
    wordDoc = wordDocuments.Open(document);

    // Activate the document - this is necessary to print it
    wordDoc.Activate();

    // Print the document
    wordDoc.PrintOut();

    // Close document
    wordDoc.Close();

    // Close Word application
    wordApplication.Quit();
}</CODE></PRE>
<P><EM>Martin F</EM></P>]]></content:encoded>
    </item>
  </channel>
</rss>