Claes Norell, Author at Microsoft Dynamics 365 Blog http://approjects.co.za/?big=en-us/dynamics-365/blog Modernizing Business Process with Cloud and AI Thu, 06 Jul 2023 15:41:10 +0000 en-US hourly 1 http://approjects.co.za/?big=en-us/dynamics-365/blog/wp-content/uploads/2018/08/cropped-cropped-microsoft_logo_element.png Claes Norell, Author at Microsoft Dynamics 365 Blog http://approjects.co.za/?big=en-us/dynamics-365/blog 32 32 .cloudblogs .cta-box>.link { font-size: 15px; font-weight: 600; display: inline-block; background: #008272; line-height: 1; text-transform: none; padding: 15px 20px; text-decoration: none; color: white; } .cloudblogs img { height: auto; } .cloudblogs img.alignright { float:right; } .cloudblogs img.alignleft { float:right; } .cloudblogs figcaption { padding: 9px; color: #737373; text-align: left; font-size: 13px; font-size: 1.3rem; } .cloudblogs .cta-box.-center { text-align: center; } .cloudblogs .cta-box.-left { padding: 20px 0; } .cloudblogs .cta-box.-right { padding: 20px 0; text-align:right; } .cloudblogs .cta-box { margin-top: 20px; margin-bottom: 20px; padding: 20px; } .cloudblogs .cta-box.-image { position:relative; } .cloudblogs .cta-box.-image>.link { position: absolute; top: auto; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); bottom: 0; } .cloudblogs table { width: 100%; } .cloudblogs table tr { border-bottom: 1px solid #eee; padding: 8px 0; } ]]> IDMF – Configuration Setting – UpdateMasterSyncTablesPostMetaDataSync http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2018/08/23/idmf-configuration-setting-updatemastersynctablespostmetadatasync/ Thu, 23 Aug 2018 13:39:43 +0000 Consider a scenario where you are using IDMF 2.0, and you find that after each IDMF Metadata sync the Master table list gets refreshed and you then have to manually sort out the list each time by unchecking/checking tables as Master tables. Well, there’s a simple way to change that default behaviour: 1. Update AXDataManagementSchedulerService.exe.config

The post IDMF – Configuration Setting – UpdateMasterSyncTablesPostMetaDataSync appeared first on Microsoft Dynamics 365 Blog.

]]>

Consider a scenario where you are using IDMF 2.0, and you find that after each IDMF Metadata sync the Master table list gets refreshed and you then have to manually sort out the list each time by unchecking/checking tables as Master tables. Well, there’s a simple way to change that default behaviour:

1. Update AXDataManagementSchedulerService.exe.config file and set UpdateMasterSyncTablesPostMetaDataSync = false
2. Restart the IDMF service

The post IDMF – Configuration Setting – UpdateMasterSyncTablesPostMetaDataSync appeared first on Microsoft Dynamics 365 Blog.

]]>
Dynamics 365 for Finance and Operations – What information and data to provide when logging a performance case with Support http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2018/06/20/dynamics-365-for-finance-and-operations-what-information-and-data-to-provide-when-logging-a-performance-case-with-support/ Wed, 20 Jun 2018 16:00:11 +0000 There are several ways to approach troubleshooting performance, and the aim of this blog post is to give Customers and Partners some guidance on what information and data to provide when you need help trying to establish why something is “slow”. QUESTIONS The sorts of questions we would typically ask include the following: 1) What

The post Dynamics 365 for Finance and Operations – What information and data to provide when logging a performance case with Support appeared first on Microsoft Dynamics 365 Blog.

]]>

There are several ways to approach troubleshooting performance, and the aim of this blog post is to give Customers and Partners some guidance on what information and data to provide when you need help trying to establish why something is “slow”.

QUESTIONS

The sorts of questions we would typically ask include the following:

1) What kind of environment is the performance issue occurring on?

This is relevant because the tools and processes vary depending on whether the issue is occurring on PROD, UAT, or DEV. For the purposes of this blog post, I will assume that we are talking about PROD environments.

2) Is the problem happening now or is it a problem that you experienced in the past?

This is obviously important to know from a severity and business impact perspective. For historical issues, we may need to perform a Root Cause Analysis (where applicable) and that process is different to troubleshooting a live performance issue.

3) What information and data to you have already?

One of the main tools available to both Customers and Partners is LCS. If you are a Customer then you may find that your Partner is able to provide you with useful insights into a performance issue based on their own analysis of the problem using LCS. If you are a Partner, providing LCS data will help the Microsoft Support Engineer to progress the case quicker.

You may also be able to provide either SESSION INFORMATION for an affected user or an AX TRACE that was captured when the problem was occurring. This kind of data can be used to establish the scenario more quickly, and can lead to faster problem resolution.

4) Can you describe what the issue is and can you provide detailed repro steps?

Finally, one of the most important things to establish is of course what the actual problem is and how it might be reproduced. You can speed up time to resolution by clearly documenting what the issue is and providing detailed information about what the affected users are doing (include screenshots!). I realize that it can sometimes be difficult to get a clear picture from the users of what the actual issue is, but even if the only input they can provide is “everything is slow”, it is useful if you can provide a tangible scenario that illustrates such a wide problem definiton.

e.g.

“It takes 30 seconds to open the All Customers form – CustTableListPage – under ‘Accounts receivable > Customers > All customers’ in company USMF”.

You can add other details that may be relevant,

e.g.

Is the issue always happening or is it intermittent?
Are all users seeing this issue or just some users?
Are you seeing an increase in SQL utilization in LCS when the issue is occurring?
Are you seeing long running queries in LCS when the issue is occurring?
Are you seeing blocking in LCS when the issue is occurring?
Does this issue appear to be related to the location of the user?
Does this issue appear to be related to the browser the user is running?
Does this issue appear to be related to the network the user is on?

DATA COLLECTION

As mentioned above, you can collect SESSION INFORMATION and/or AX TRACES from a system where you are experiencing or you have experienced performance issues.

—————————————————————————————————————

AX TRACING

1. Click on the SETTINGS COG WHEEL in the top right corner then click on Trace

https://docs.microsoft.com/en-us/en-us/dynamics-365/blog/unified-operations/dev-itpro/perf-test/trace-trace-tutorial

NOTE: As usual, keep tracing as short as possible

—————————————————————————————————————

SESSION INFORMATION

1. Click on the FEEDBACK SMILEY in top right corner

NOTE: Do this immediately before you start to reproduce the issue so the timestamp is accurate

2. Copy and paste the SESSION INFORMATION as TEXT into an E-MAIL

e.g.

SESSION INFORMATION
71abe991-64b1-47b8-aef5-?????????????
2018-01-12T12: ?????????????
demo-1-dafb8907-0bde-4866-b803?????????????
{D73B29C0-C336-4DA3-88?????????????}
IIS:DEMO-1

—————————————————————————————————————

FURTHER READING

Please see this blog post for details on troubleshooting using LCS

https://blogs.msdn.microsoft.com/axsa/2018/06/05/how-to-use-environment-monitoring-view-raw-logs/

The post Dynamics 365 for Finance and Operations – What information and data to provide when logging a performance case with Support appeared first on Microsoft Dynamics 365 Blog.

]]>
DIXF on SQL 2014 – Cannot Preview source file – CommunicationException – An error occurred while receiving the HTTP response from DMFServiceHelper.svc http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2018/04/04/dixf-on-sql-2014-cannot-preview-source-file-communicationexception-an-error-occurred-while-receiving-the-http-response-from-dmfservicehelper-svc/ Wed, 04 Apr 2018 15:38:33 +0000 Consider a scenario where you are importing data using DIXF, and you get an error when you try to “Preview source file” and you are running SQL Server 2014 SP2 CU10 or CU11. 1. The error The error you see looks something like this: System.ServiceModel.CommunicationException: An error occurred while receiving the HTTP response to http://servernamehere:7000/DMFService/DMFServiceHelper.svc. This

The post DIXF on SQL 2014 – Cannot Preview source file – CommunicationException – An error occurred while receiving the HTTP response from DMFServiceHelper.svc appeared first on Microsoft Dynamics 365 Blog.

]]>

Consider a scenario where you are importing data using DIXF, and you get an error when you try to “Preview source file” and you are running SQL Server 2014 SP2 CU10 or CU11.

1. The error

The error you see looks something like this:

System.ServiceModel.CommunicationException: An error occurred while receiving the HTTP response to http://servernamehere:7000/DMFService/DMFServiceHelper.svc. This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down).

We also see these sorts of events in the Windows Event Log:

Event 1026 – .NET Runtime – Application: Microsoft.Dynamics.AX.DMF.SSISHelperService.exe – The process was terminated due to an unhandled exception – exception code 1

Event 1000 – Application Error – Faulting application name: Microsoft.Dynamics.AX.DMF.SSISHelperService.exe, version:6.3.6000.3667 – Faulting module name: KERNELBASE.dll, version: 6.3.9600.18202

2. Cause

There is a SSIS issue in SQL Server 2104 SP2 CU10 for which a fix will ship in SP2 CU12.

3. Possible workarounds

On AX side, the issue will repro only when “Create error file” is enabled in “Data import/export framework parameters“. Thus, as a workaround, users can un-check this option until the SSIS fix has shipped.

Another option is to uninstall the SQL Server CU that is causing the issue and wait for CU12 to ship.

Please implement this in TEST first, before rolling out in PROD, in line with your change management processes.

The post DIXF on SQL 2014 – Cannot Preview source file – CommunicationException – An error occurred while receiving the HTTP response from DMFServiceHelper.svc appeared first on Microsoft Dynamics 365 Blog.

]]>
Dynamics 365 for Finance and Operations – Requesting a ‘Database refresh’ – Enable user access http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2017/08/29/dynamics-365-for-finance-and-operations-requesting-a-database-refresh-enable-user-access/ Tue, 29 Aug 2017 15:14:23 +0000 As I am sure you are already aware, you can now submit requests directly to the Dynamics Service Engineering (DSE) team by using Lifecycle Services (LCS). Submit a request to the Dynamics Service Engineering team https://docs.microsoft.com/en-us/en-us/dynamics-365/blog/unified-operations/dev-itpro/lifecycle-services/submit-request-dynamics-service-engineering-team One of the request types that you can select is the Database refresh, which includes the ability to refresh

The post Dynamics 365 for Finance and Operations – Requesting a ‘Database refresh’ – Enable user access appeared first on Microsoft Dynamics 365 Blog.

]]>

As I am sure you are already aware, you can now submit requests directly to the Dynamics Service Engineering (DSE) team by using Lifecycle Services (LCS).

Submit a request to the Dynamics Service Engineering team
https://docs.microsoft.com/en-us/en-us/dynamics-365/blog/unified-operations/dev-itpro/lifecycle-services/submit-request-dynamics-service-engineering-team

One of the request types that you can select is the Database refresh, which includes the ability to refresh a database from Production to Sandbox.

When you log this type of request on LCS, you will see a list of Terms and Conditions which you should be familiar with so you know what will happen and what you need to do when DSE have completed their actions and the Database refresh is listed as Succeeded.

I am not going to include a screenshot of the current Terms and Conditions here as they may change over time and you should refer to the most up to date information each time you request a Database refresh, but I would like to draw your attention to one particularly important point regarding user access:

// Currently point 2a in the Terms and conditions as of 29th August 2017

All users except the Admin user have been disabled. This process allows the Admin user to delete or obfuscate data before allowing other users back into the system.

In order to provide your users with access to a recently refreshed sandbox environment, you need to enable user access for them.

The post Dynamics 365 for Finance and Operations – Requesting a ‘Database refresh’ – Enable user access appeared first on Microsoft Dynamics 365 Blog.

]]>
Clustered SQL Server instance – Example AX TEST environment configuration concepts and points of interest http://approjects.co.za/?big=en-us/dynamics-365/blog/business-leader/2016/10/03/clustered-sql-server-instance-example-ax-test-environment-configuration-concepts-and-points-of-interest/ Mon, 03 Oct 2016 14:30:29 +0000 Consider a scenario where you are running AX 2012 and your Dynamics AX databases are hosted on a Clustered SQL Server instance. I’ll discuss some concepts and points of interest below which are relevant when running AX 2012 RTM, R2 or R3. The screenshots are from a VM TEST environment with CONTOSO DEMO DATA that is

The post Clustered SQL Server instance – Example AX TEST environment configuration concepts and points of interest appeared first on Microsoft Dynamics 365 Blog.

]]>

Consider a scenario where you are running AX 2012 and your Dynamics AX databases are hosted on a Clustered SQL Server instance. I’ll discuss some concepts and points of interest below which are relevant when running AX 2012 RTM, R2 or R3. The screenshots are from a VM TEST environment with CONTOSO DEMO DATA that is running AX 2012 R3 CU10 on SQL Server 2014.

1. The environment

There are 4 VMs in the TEST environment

A Domain Controller
SQL Node 1
SQL Node 2
An AOS

I’ve installed an AX Client installed on the AOS machine.
I’ve installed SSIS on the AOS machine.
I’ve installed the DIXF Service on the AOS machine.
I’ve configured the SQL Server instance to use the virtual servername AXCL1.

This blog post doesn’t aim to tell you how to set up your environment. I’m just showing you what my VM TEST environment looks like and mentioning some points of interest.

For further details, see the official AX and SQL content on this topic:

SQL Server topology recommendations for availability and performance [AX 2012]
https://technet.microsoft.com/en-gb/library/dd362068.aspx

SQL Server 2014 – Windows Server Failover Clustering (WSFC) with SQL Server
https://msdn.microsoft.com/en-us/library/hh270278(v=sql.120).aspx

2. SSIS

Regardless of where you install and run SSIS, you need to consider what SSIS is going to talk to. When you are running a clustered SQL Server instance, in the most basic form, one SQL Node is Active and one Passive. I want SSIS to talk to the Active SQL Node so I’ve configured SSIS on the AOS to talk to virtual servername , i.e. AXCL1. I’ve done this by editing the MsDtsSrvr.ini.xml file. For more details on this topic, see the link below:

Configuring the Integration Services Service (SSIS Service)
https://msdn.microsoft.com/en-us/library/ms137789.aspx

This is what I see when I run the SQL Server Service Configuration Manager on the AOS:

SqlConfigMgrSSISRunning

This is what my edited MsDtsSrvr.ini.xml file looks like where ServerName has been set to AXCL1. The file is located on the AOS where SSIS has been installed.

MsDtsSrvr.ini.xml.axcl1

3. Microsoft Dynamics AX Server Configuration Utility

When it comes to telling the AOS what SQL Server instance to connect to, I’ve specified the virtual servername AXCL1 there for similar reasons. I want my AOS to be able to connect to the active SQL Node without knowing if that is SQL Node 1 or SQL Node 2.

This is what my configuration Database Connection looks like:

AXServerConfig.axcl1

4. Microsoft Dynamics AX Services on the AOS

As mentioned above, I’m running my AOS and the DIXF Service on the AOS, so this is what I see when I look for Dynamics AX services on the AOS:

AXServices

5. Points of interest – Database Information – Logon server

In earlier kernel builds, you may have noticed that the Logon server value displayed in the Database Information form (SysSqlStatus form) in AX did not return the virtual servername (AXCL1). We have fixed this in more recent kernel builds so you should expect to see something like this if you are on a recent kernel (i.e. the virtual servername AXCL1):

DatabaseInfo.axcl1

6. Points of interest – Which SQL Node is active?

You can run this sort of query in SSMS to establish which SQL Node is active:

--------------------------------------------------------------------------------------------

-- 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.
-- 
-- This source code is freeware and is provided on an "as is" basis without warranties 
-- of any kind,  whether express or implied, including without limitation warranties 
-- that the code is free of defect, fit for a particular purpose or non-infringing.  
-- The entire risk as to the quality and performance of the code is with the end user.

-- 1 -- AX Instance Config

USE Master
GO

SELECT getdate() as myCurrentDateTime, 
@@SERVERNAME as myServerName,
SERVERPROPERTY('IsClustered') as [Clustered],
SERVERPROPERTY('ComputerNamePhysicalNetBIOS') as [ActiveNode], 
os.Cores, df.Files 
FROM 
(SELECT COUNT(*) AS Cores FROM sys.dm_os_schedulers WHERE status = 'VISIBLE ONLINE') AS os, 
(SELECT COUNT(*) AS Files FROM tempdb.sys.database_files WHERE type_desc = 'ROWS') AS df; 
GO

-------------------------------------------------------------------------------------------- 

SQLActiveNode

7. Points of interest – Kernel Version

Running a recent kernel build is as important as ever when you are running Dynamics AX and your databases reside on a clustered SQL Server instance. There are fixes to how AOS deals with temporary tables stored in TempDb, for example, and how AOS detects Batch jobs that may have been running when a failover occurred.

8. Testing

As always, ensure you’ve set up a proper Dynamics AX on a clustered SQL Server instance TEST environment first, and that you are familiar with the impact of your Clustered SQL Server instance failover actions before you perform them in PROD.

The post Clustered SQL Server instance – Example AX TEST environment configuration concepts and points of interest appeared first on Microsoft Dynamics 365 Blog.

]]>
EntityStore – AX 2012 R3 – DMFIsInEntityDBPublishAndPublishAll object not initialized http://approjects.co.za/?big=en-us/dynamics-365/blog/business-leader/2016/09/02/entitystore-ax-2012-r3-dmfisinentitydbpublishandpublishall-object-not-initialized/ Fri, 02 Sep 2016 17:11:05 +0000 I’ve seen this error a couple of times in the past month or so, and I’ve also noted that some people have asked about it on the Internet, too. I’ve just finished working on a case with a customer where we were able to reproduce this issue on a VM. We found that patching the

The post EntityStore – AX 2012 R3 – DMFIsInEntityDBPublishAndPublishAll object not initialized appeared first on Microsoft Dynamics 365 Blog.

]]>

I’ve seen this error a couple of times in the past month or so, and I’ve also noted that some people have asked about it on the Internet, too.

Error

I’ve just finished working on a case with a customer where we were able to reproduce this issue on a VM.

We found that patching the kernel components resolved the issue.

If you are experiencing this error when you are trying to publish an entity to a local or remote EntityStore database, I suggest that you patch your kernel components and try again.

You can download the latest kernels from LCS here:

https://lcs.dynamics.com/v2/LatestKernel/

Alternatively, you can check the kernels that are available on this overview page:

https://blogs.msdn.microsoft.com/axsupport/2012/03/29/overview-of-microsoft-dynamics-ax-build-numbers/

Please see this link for further details on kernel patching:

https://blogs.msdn.microsoft.com/axsupport/2014/12/10/faq-microsoft-dynamics-ax-kernel-hotfixes/

The post EntityStore – AX 2012 R3 – DMFIsInEntityDBPublishAndPublishAll object not initialized appeared first on Microsoft Dynamics 365 Blog.

]]>
AlwaysOn – R2 and R3 Kernel Fixes – Handle SQL Server AlwaysOn AG failovers more transparently and gracefully http://approjects.co.za/?big=en-us/dynamics-365/blog/business-leader/2016/06/09/alwayson-r2-and-r3-kernel-fixes-handle-sql-server-alwayson-ag-failovers-more-transparently-and-gracefully/ Thu, 09 Jun 2016 13:18:30 +0000 We’ve recently released some kernel fixes that improve how Microsoft Dynamics AX 2012 R2 and R3 handle SQL Server AlwaysOn AG failovers. The R3 version of this fix is visible on LCS here: LCS | AX 2012 R3 Kernel Fix KB3159596 | Handle SQL Server AlwaysOn AG failovers more transparently and gracefully https://fix.lcs.dynamics.com/Issue/Resolved?kb=3159596 For AX

The post AlwaysOn – R2 and R3 Kernel Fixes – Handle SQL Server AlwaysOn AG failovers more transparently and gracefully appeared first on Microsoft Dynamics 365 Blog.

]]>

We’ve recently released some kernel fixes that improve how Microsoft Dynamics AX 2012 R2 and R3 handle SQL Server AlwaysOn AG failovers.

The R3 version of this fix is visible on LCS here:

LCS | AX 2012 R3 Kernel Fix KB3159596 | Handle SQL Server AlwaysOn AG failovers more transparently and gracefully
https://fix.lcs.dynamics.com/Issue/Resolved?kb=3159596

For AX 2012 R3, you need to be on a kernel that is >= 6.3.3000.3972

For AX 2012 R2, you need to be running a kernel that is >= 6.2.3000.1684

You can download the latest kernels from LCS here:

https://lcs.dynamics.com/v2/LatestKernel/

Alternatively, you can check the kernels that are available on this overview page:

https://blogs.msdn.microsoft.com/axsupport/2012/03/29/overview-of-microsoft-dynamics-ax-build-numbers/

Please see this link for further details on kernel patching:

https://blogs.msdn.microsoft.com/axsupport/2014/12/10/faq-microsoft-dynamics-ax-kernel-hotfixes/

The post AlwaysOn – R2 and R3 Kernel Fixes – Handle SQL Server AlwaysOn AG failovers more transparently and gracefully appeared first on Microsoft Dynamics 365 Blog.

]]>
Compatibility statements – Patching the kernel only is not enough – you have to patch the application http://approjects.co.za/?big=en-us/dynamics-365/blog/business-leader/2016/05/20/compatibility-statements-patching-the-kernel-only-is-not-enough-you-have-to-patch-the-application/ Fri, 20 May 2016 06:42:51 +0000 From time to time we see questions about the compatibility statements and what they mean. The most common question relates to whether they apply to the kernel or the application. A common misconception is that you only need to patch the kernel rather than the application. This is not the case. For example, If the

The post Compatibility statements – Patching the kernel only is not enough – you have to patch the application appeared first on Microsoft Dynamics 365 Blog.

]]>

From time to time we see questions about the compatibility statements and what they mean. The most common question relates to whether they apply to the kernel or the application.

A common misconception is that you only need to patch the kernel rather than the application. This is not the case.

For example, If the compatibility statement says that you have to be on AX 2012 R2 CU7 in order to use SQL Server 2014, it means that you have to run your application at CU7 or higher.

As for the kernel, we generally recommend that you run a recent kernel, so in the AX 2012 R2 CU7 scenario mentioned above, you should be on kernel in the 6.2.3000.nnnn range even if your application is still 6.2.1000.4051.

You can download the latest kernel for your AX version from LCS (link below)

Always download the current version of the AX 2012 System Requirements document (link below) to ensure that you are running your environments in a supported state.

For more details on this topic, see the following:

Overview of Microsoft Dynamics AX build numbers
https://blogs.msdn.microsoft.com/axsupport/2012/03/29/overview-of-microsoft-dynamics-ax-build-numbers/

Microsoft Dynamics AX 2012 System Requirements
http://approjects.co.za/?big=en-gb/download/details.aspx?id=11094

Dynamics AX In-Market Engineering (Tag: Compatibility)
https://blogs.technet.microsoft.com/dynamicsaxse/tag/compatibility/

Dynamics AX In-Market Engineering (Tag: Compatibility Certifications)
https://blogs.technet.microsoft.com/dynamicsaxse/tag/compatibility-certifications/

FAQ: Microsoft Dynamics AX Kernel Hotfixes
https://blogs.msdn.microsoft.com/axsupport/2014/12/10/faq-microsoft-dynamics-ax-kernel-hotfixes/

LCS – Download latest kernel
https://lcs.dynamics.com/v2/LatestKernel

The post Compatibility statements – Patching the kernel only is not enough – you have to patch the application appeared first on Microsoft Dynamics 365 Blog.

]]>
DIXF – Importing data using Excel and ODBC http://approjects.co.za/?big=en-us/dynamics-365/blog/business-leader/2016/04/08/dixf-importing-data-using-excel-and-odbc/ Fri, 08 Apr 2016 14:24:52 +0000 Consider a scenario where you are running AX 2012 R3 and you want to import data from Excel files using ODBC. Having recently worked a case on this topic, I thought I’d share some of the details on how this can be set up. 1. Background The main reason we were looking into this way

The post DIXF – Importing data using Excel and ODBC appeared first on Microsoft Dynamics 365 Blog.

]]>

Consider a scenario where you are running AX 2012 R3 and you want to import data from Excel files using ODBC. Having recently worked a case on this topic, I thought I’d share some of the details on how this can be set up.

1. Background

The main reason we were looking into this way of importing Excel data was that trying to import the data in Batch using Excel files would in some scenarios result in this error:

The version of Microsoft Excel is not supported.-Exception from HRESULT: 0xC020801C

S0

Working with a LCS Repro VM we were able to reproduce the issue, and then establish an alternative approach that I will outline below.

There are lots of ways to import data into Microsoft Dynamics AX and this is only one of them. The best tool for the job and approach will depend on many factors, including the degree of control you have over source data formats (CSV File, Excel File, XML File, AX, ODBC), the frequency of the imports, the complexity of the entities being used, security considerations, etc.

The aim of this blog post is simply to outline one approach which you may be considering.

2. Prepare the environment

In this example, we are working with a very simple 2 column Terms of delivery entity Excel input file.

// 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.
//
// This source code is freeware and is provided on an "as is" basis without warranties of any kind,
// whether express or implied, including without limitation warranties that the code is 
// free of defect, fit for a particular purpose or non-infringing. The entire risk as to the 
// quality and performance of the code is with the end user.

A. Download the 64-bit version of Microsoft Access Database Engine 2010 Redistributable:

http://approjects.co.za/?big=en-us/download/details.aspx?id=13255

B. Copy the installer to a local folder and run the install from command line using the /passive parameter:

C:\MSFT\AccessDatabaseEngine_x64.exe /passive

S1

C. Backup the registry and rename the key mso.dll in the following location:

Warning: Incorrectly editing the registry may severely damage your system. At the very least, you should back up any valued data on the computer before making changes to the registry.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Common\FilesPaths

S2

D. In Windows, create a 64-bit ODBC data source pointing to the Excel file to be imported:

S3a

E. In AX, create an ODBC source data format using the 64-bit ODBC data source created before:

S3b

F. In AX, create a Processing group using the source data format just created. The query should look like: select * from [worksheet$], for example:

Select * from [S1$]

S5

G. In AX, generate the mapping and test:

S4

3. Run the DIXF Excel file / ODBC source data format import as a Batch

We can now proceed and run the DIXF import using Batch processing:

S6

The Batch job is executing:

S7

The Batch job has ended successfully:

S8

We can verify that the job ran as expected by checking the Execution history, too:

S9

4. Testing

As always, ensure you’ve set up a proper Dynamics AX TEST environment first, and that you are familiar with the impact of your DIXF actions before you perform them in PROD.

The post DIXF – Importing data using Excel and ODBC appeared first on Microsoft Dynamics 365 Blog.

]]>
DIXF – Compare Entities – SQL Server replication tool is not installed http://approjects.co.za/?big=en-us/dynamics-365/blog/business-leader/2016/04/07/dixf-compare-entities-sql-server-replication-tool-is-not-installed/ Thu, 07 Apr 2016 12:17:00 +0000 Consider a scenario where you are running AX 2012 R3 and you want to compare entities between AX companies using DIXF, but you get an error telling you that the SQL Server replication tool is not installed. 1. The DIXF functionality On a CONTOSO Demo Data TEST environment, you can find the functionality by navigating

The post DIXF – Compare Entities – SQL Server replication tool is not installed appeared first on Microsoft Dynamics 365 Blog.

]]>

Consider a scenario where you are running AX 2012 R3 and you want to compare entities between AX companies using DIXF, but you get an error telling you that the SQL Server replication tool is not installed.

1. The DIXF functionality

On a CONTOSO Demo Data TEST environment, you can find the functionality by navigating to:

USMF/Data import export framework/Common

and then clicking on:

Compare entity data between companies

S0

2. The error

The error you may see if you haven’t set up the environment correctly looks like this:

S1

3. Checking if the SQL Server replication tool has been installed

I begin by running some T-SQL on the SQL Server instance to see if the tool has been installed (click on the link below to get a copy of the script I am using)

CheckReplInstalled

When I run the script on an instance where the tool has not been installed, I get this sort of output:

S2

4. Installing the SQL Server Replication instance feature

Having established that the error message does indeed appear to be correct and that we are missing the required SQL Server instance feature, we proceed to install it using the SQL Server installation media.

Note that you may need to do this on several boxes if you are using multiple SQL Servers in your topology.

S3

S4

S5

S6

5. Verifying that DIXF functionality works

When I run the T-SQL script on an instance where the tool has been installed, I get this sort of output:

S7

If I run the DIXF Compare entity data between companies functionality now, it works:

S8

S9

S10

6. Points of interest – Database Compatibility Level

If you have confirmed that you have installed the SQL Server Replication instance feature on your SQL Servers but you still get the error, then please check the Database Compatibility Level on your AX databases and ensure they are all set to the same value.

This information is shown in the T-SQL script output.

For SQL Server 2012 the value would usually be 110, and for SQL Server 2014, it would usually be 120.

-- SQL Server 2012
-- 
-- VERSION              DBNAME                                   COMPATLVL
-- -------------------- ---------------------------------------- ---------
-- 11.00.6523           MicrosoftDynamicsAX                      110
-- 11.00.6523           MicrosoftDynamicsAX_model                110
-- SQL Server 2014
-- 
-- VERSION              DBNAME                                   COMPATLVL
-- -------------------- ---------------------------------------- ---------
-- 12.00.4439           MicrosoftDynamicsAX                      120
-- 12.00.4439           MicrosoftDynamicsAX_model                120

7. Testing

As always, ensure you’ve set up a proper Dynamics AX TEST environment first, and that you are familiar with the impact of your DIXF and SQL FEATURE SETUP actions before you perform them in PROD.

The post DIXF – Compare Entities – SQL Server replication tool is not installed appeared first on Microsoft Dynamics 365 Blog.

]]>