Thumbnail image

Dynamics 365 Saturday - Madrid 2018

Last Saturday Dynamics 365 Saturday - Madrid 2018 took place at the Microsoft offices in Madrid, where we spent the day with the community, sharing knowledge and conversations. It was my first time attending and I will definitely repeat because the experience was really great. I delivered a session about Extensions in X++, which I share below, based on content I had already published in these articles:

Read more
Thumbnail image

Embrace the extensions mindset with Dynamics 365 for Finance and Operations #2 – SysExtension framework

In my previous post Embrace the extensions mindset with Dynamics 365 for Finance and Operations we reflected on some of the patterns we can leverage to create our customizations by using only non-intrusive changes based on a real example: Adding a new Number Sequence to a standard module. In particular, we discussed: Metadata Extensions — to add a new_ Enum Value in a standard Base Enum. Class Extensions — to add a new method to a standard class. Chain-of-Command — to add a block of code to an existing standard class method. Event-Handler subscription — to subscribe our own method to an existing standard delegate provided as an extension point. If you still didn’t read that blog post, please take a moment now. If you already did it (thanks!), let’s continue with another pattern we have to consider: SysExtension Framework (also SysPlugin, that is quite similar).

Read more
Thumbnail image

AX Performance Monitor 101 - Tips and tricks to deal with performance counter files

In my previous blog post, I explained how to setup Performance Monitor (PerfMon) to proactively capture performance data while cleaning old files to keep disk space under control. This is, let’s say, our ideal scenario, but sometimes setup is not that specific and we need to deal with suboptimal files that contains the performance data we need to analyze: We have too many files We have too few files We have some huge file that makes analysis or processing it too slow We have files captured in different languages Let’s have a brief description on how we can deal with some situations by introducing a couple of small but useful tools:

Read more
Thumbnail image

AX Performance Monitor 101 - Setup Perfmon for continuous monitoring with rolling files

Windows Performance Monitor (PerfMon) is likely the most useful tool (together with our DynamicsPerf package) to monitor and diagnose performance problems related with your Microsoft Dynamics AX infrastructure and, in general, for any software running on Windows operating systems. Given its importance, is surprising how many people is not using it properly or, even worst, is not using it at all. I will briefly explain how to setup PerfMon to collect performance counters in all servers for continuous monitoring, creating log files per day, compressing and deleting old files to minimize disk space, along with some tips and tricks during the process:

Read more
Thumbnail image

Embrace the extensions mindset with Dynamics 365 for Finance and Operations

A couple of weeks ago, we launched the last platform update 10 (August 2017) for Dynamics 365 for Finance and Operations, Enterprise Edition and, as in almost every release, there were changes regarding the Application Extensibility Plans. A lot of effort is being invested in the journey to a non-intrusive way to extend the application, and it needs to be understood as a critical change in the way we think about customizations. More information about future plans can be found in the Dynamics Roadmap (Filter - Application: Dynamics 365 for Finance and Operations; Area: Extensibility).

Read more
Thumbnail image

Working with the local development VM in Dynamics 365 for Operations

Warning This article have been translated automatically with Copilot and is still pending manual revision. If you find an error please review the original post in spanish switching language in the top-right selector. I’m not going to write a post about how to set up a local VM for Dynamics 365 for Operations development, because there have already been plenty of since the product launch a few months ago. It’s also clearly explained in the official documentation, so it would just be repeating what’s already been explained a thousand times.

Read more
Thumbnail image

Why you should be using Team Foundation Server for Dynamics AX lifecycle management?

If you already use Team Foundation Server in your Dynamics AX projects, providing all benefits it can give to your teams, or if you are already convinced to use it soon, then this article is not for you. You may not be convinced or, even worst, you may disagree about it to be beneficial to your methodologies and team behaviors. You can try to challenge my points with your project’s circumstances that make TFS unacceptable. That’s fine. I’m only asking you to read the full article first!

Read more

Unit Testing X++ code in Visual Studio (AX 2012)

I’m pretty sure everybody who has tried will agree with me that the Unit Testing framework included in the AX 2012 development environment (aka MorphX) has some limitations. Sometimes such limits become so impacting that makes the framework almost useless when the code you need to test starts growing (let’s discuss design problems in a separate post :)). But I’m not going to talk here about limitations, but about what we actually can do, and one of such things is to use X++ proxy classes to write our unit tests in Visual Studio, and use the native testing framework included here with all its possibilities. Let’s see how it works with an easy example.

Read more
Thumbnail image

Fixing DB synchronization problems in Microsoft Dynamics AX 2012

Sometimes when synchronizing the database in Microsoft Dynamics AX 2012 we get some nonsense error messages. In my example, I’m getting an error stating that it can’t change the data type in a table field. But this field doesn’t exists on this table, same error says that is trying to convert a data field into a field of another table… weird. This is an indicator that we are facing an ID problem with the table and/or the table fields. Unfortunately, we don’t have the proper tools to diagnose and fix this kind of problems, so we need to use dirty tricks like fixing the conflict directly in the database.

Read more
Thumbnail image

Microsoft MVP Global Summit 2015

Back into the real world, I have to write some lines about the event where all MVPs over the world were invited last week in the Microsoft campus at Redmond (Washington), the Microsoft MVP Global Summit 2015. That is, in my own experience, one of the best reasons to try to maintain this amazing award. Once a year gives you the opportunity to enjoy the best Microsoft Dynamics training you can ever get, directly delivered by Program Managers and the development team, and at the same time spent almost a week of community with the rest of MVPs from all countries.

Read more