Monday, March 26, 2018

Microsoft Dynamics GP is not in "Maintenance Mode"

It seems every couple years I read some doomsday article claiming that Microsoft Dynamics GP is dead or is maintenance mode, or that there's some nefarious strategy being put in place by Microsoft to kill the product somehow.

Now, I will be the first to tell you that the messaging from Microsoft has not always been clear. Why? Well, if you've been in this business for as long as I have been you may have noticed that a) the messenger has changed a few times. First it was Doug Burgum after the acquisition back in 2000, then it was Kirill (Tatarinov), and now, today, we have Scott Guthrie. Changing the messenger, invariably will change the message, and invariable will expose the market to confusion; b) corporate reshuffling aside, Microsoft have also made it very clear that they want to be the absolute leader in the cloud and mobile space. This has forced the company to change its entire culture from top down and shake up the ranks to adapt to this goal.

So what does this have to do with Dynamics GP? My good friend and fellow MVP Mark Brummel has written 2 thought-provoking articles (see All Roads Lead to Sweden with Microsoft Dynamics 365 Business Central and Microsoft Dynamics 365 Business Central ≠ Microsoft Dynamics NAV) in which he forecasts a bleak future for both GP and SL.

In one article he claims, "Great Plains and Solomon are retired and in maintenance mode. Sorry guys. There are extension that can help migrate data from GP and SL into BC".

In the other article he claims, "The Discovery is a poor mans Range Rover. It will still take you anywhere you want. They are not as customizable as Defenders and don’t hold their economic value over a longer period. The Freelander has died a while ago. It had the Land Rover logo but everybody who looked at it knew it wasn’t really one.", in an attempt to associate the Discovery and Freelander with Microsoft Dynamics GP and SL, respectively.

While each and every person is entitled to their own opinions, they are certainly not entitled to their own facts (seem to be a common theme as of late, I may add). Mark is a very respectable professional in the Dynamics community, but he failed to do the ONE thing that is essential when making any such profound claims publicly: provide sources for your claims!

Although Microsoft continues to emphasize Dynamics 365 both Finance and Operations and Business Central as part as its "Cloud first, mobile first" strategy, there's nothing to indicate a desire to sunset the GP and SL products just yet.


I have attended just about every Microsoft Dynamics conference over the past 10 years, maybe except for Convergence and Summit EMEA, and frankly, Microsoft continues to deliver in both its roadmap outline for Dynamics GP and the product depth and capabilities (see The Evolution of the Microsoft Dynamics GP Roadmap). If you read through my article, you will understand that Microsoft's commitment to Dynamics GP has been unmovable. In addition to the roadmap presented in my Evolution article, I am leaving you with the latest nuggets:

While roadmaps may seem to a few like pretty pictures, it's very telling that Microsoft Dynamics GP has seen drastic changes that have given birth to features like: Web Client (Silverlight and HTML5 clients), Multi-tenancy, Identity Management, Workflow, Doc Attach, Azure backups, Named System Database, PowerShell extensions, Service Based Architecture, Business Analyzer, PowerBI integration, OData, All-In-One document viewers, etc. This is just to name a few. Curiously enough, when all this was happening, NAV partners and customers felt left out and felt that Microsoft was favoring GP over all the other products.

Release Cadence

It is also worthwhile letting you know that Microsoft went from a 1 1/2 year release cadence to a 6-month release cadence, and now back to a 1 year cadence. Why? Primarily, you, the customer, could not keep up with the updates. You felt they were too many too quick, overwhelming, and you simply did not have the appetite for 6-month updates, much less the training it required. The only reason this strategy fell through is because updates weren't applied fast enough. The few customers I had, who went through with keeping up with the 6-month rotation saw little to no disruption in their operations and appreciated the new functionality each and every time it was out.

Customization Model

Microsoft Dynamics GP has always boasted THE BEST customization model among all products, so much so, that the Extension model featured in Business Central and Finance and Operations seems like a rehashed concept of the multi-dictionary model, except with .NET at the core. It won't be a surprise if this is really the case since, over half the Microsoft Dynamics GP Development Team has moved on to work on those products.

And speaking of the Dynamics GP Development Team, they will be the first to tell you their work has not stopped. They continue to receive hundreds of requests to supplement product functionality on a daily basis. Prior to the retirement of Microsoft Connect and the introduction of the new Experience platform, there must have been literally thousands of requests. The Experience platform replaces the Connect platform. You can find the Experience platform here.

New Product Features

Well, if you have been paying attention, Dynamics GP has received at the very least 400 features since the advent of Dynamics GP 2013 R2 (yes, I am not going back to GP 10.0). I mentioned a few "Big Rocks" above. So you may ask, "why haven't we seen any major modules being released by Microsoft as of late for GP?" The answer, frankly, is simple: the network of ISVs, plus Microsoft's view on new features to begin with.

Dynamics GP has a network of at least 1000 ISVs, some even say that number is well over 2000, but I am being conservative here. ISVs have always been the bedrock of the Dynamics GP product, delivering all sort of vertical and horizontal solutions that address any number of business challenges. I would even venture to say (no proof on hand) that Dynamics GP has by far the widest network of developers creating integrating solutions, among all the Dynamics products. This network of ISVs delivers time and time again some of the best in class solutions that customers have come to rely on to run their business. Microsoft have left it up to ISVs to continue delivering what the market is asking for.

In turn, Microsoft continues to focus on platform enhancements and extensibility via Microsoft PowerApps and Microsoft Flow to name a few. Yes, it is possible to augment Dynamics GP via PowerApps and Flow. I know so as I've done so myself!

Heck, my fellow MVP Steve Endow will even show you how to use ASP.NET Core to extend the integration capabilities of Dynamics GP.

Microsoft Dynamics GP in the cloud

Our beloved Microsoft Dynamics GP was one of the first products (after NAV) in featuring a Web Client. Web Client opened up the possibilities for delivering Microsoft Dynamics GP so much so that companies like Njevity and RoseASP have incorporated it fully into their business model and have seen it as a way to improve the partner and customer implementation experience. After all, if you don't have to worry about deploying the application and maintaining it up to date, you can focus entirely on implementation and providing great customer service to go along with it.

At a personal level, I have deployed Microsoft Dynamics GP on Azure using the Web Client as the sole method to access the application more times than I care to count and I still continue to receive requests for help in doing this almost on a daily basis.

In summary, Microsoft Dynamics GP is alive and well. Microsoft will continue to deliver strategic enhancements were needed to facilitate the life of ISVs, partners, and customers. There's no "maintenance mode" that we can speak of at this time, or any non-committal statements from Microsoft to Dynamics GP (or Dynamics SL for that matter). None!

Do I believe Microsoft needs to deliver a clear message around Dynamics GP and SL? I do believe so. I've voiced this concern a number of times now (and have provided ideas on how it can be done), but so has the partner community. The truth is, Dynamics GP continues to thrive in a market hungry for mature products that can deliver rich financial and operational functionality. Although Dynamics 365 Business Central and Dynamics 365 for Finance and Operations are cornerstones in the Microsoft cloud ERP strategy, someone has to continue making money and that's not those two products, at least not yet, and certainly not at the speed or point where Microsoft can declare financial victory.

Do I believe Microsoft Dynamics GP and SL will be around forever? Who knows, but for now and until I hear otherwise, I have 5000 customers who rely on my company's products built on top of Microsoft Dynamics GP.

Fellow MVP Belinda Allen, also responds to Mark in her new article The Future of Microsoft Dynamics GP. Please read carefully as Belinda also makes some interesting points.

Until next post,

Mariano Gomez, MVP

Monday, February 26, 2018

Microsoft Dynamics GP: Running System and Company Databases on Azure SQL - Part 3

In Part 2 of this series, I showed the data migration process for the Microsoft Dynamics GP system database. I also provided a few reasons why the Azure SQL platform is not supported. This vlog article will skim through the migration process for the company database and will examine more reasons why Azure SQL is not a supported configuration.

In this video I also examine other topics like the Azure SQL Query Editor which is currently in preview mode, and vertical elastic queries.

Until next post,

Mariano Gomez, MVP

Friday, February 23, 2018

Microsoft Dynamics GP: Running System and Company Databases on Azure SQL - Part 2

In Part 1 of this series, I showed how to create the Azure SQL server and initialize the shell databases needed to move a set of existing Microsoft Dynamics GP on-premise databases.

This video shows the first set of problems you will run into, in order to support Microsoft Dynamics GP on Azure SQL, namely:
  • You cannot deploy CLR assemblies on Azure SQL. Both the Workflow and Document Attach architectures rely on CLR assemblies to facilitate some of the functions they perform. 
  • Some schema objects are blocked from creation on Azure due to references to system objects that are only available to the on-premise version of SQL Server. 
  • Some SQL JOIN operations can create significant performance bottlenecks and would need to be refactored to improve performance.
Part 3 of this video will allow you to see how far we got with this experiment.

Until next post,

Mariano Gomez, MVP

Friday, February 16, 2018

Microsoft Dynamics GP: Running System and Company Databases on Azure SQL - Part 1

Hi all,

Before you get too excited, please know that there is no immediate plans for Microsoft to support Dynamics GP on Azure SQL. This vlog is rather an attempt to demystify some Community forum claims to his effect, but rather than simply saying "It doesn't work!", what I want to do is walk through the motions of provisioning the Azure databases, configuring the SQL Server, defining the elastic pool container, migrating the databases, and attempting to run Microsoft Dynamics GP and GP Utilities, while highlighting the current limitations preventing this configuration from working.

For ease of consumption, I have divided this vlog in two parts. Please enjoy part 1. In part 2, we will work on migrating the databases and getting GP connected to them. If nothing else, you would have learned how easy it is to get Azure SQL up and running :)

Until next post,

Mariano Gomez, MVP

Friday, February 9, 2018

How to Manually Replace the Web Client SSL Certificates

I finally managed to get to this video! Every so often I come across Community forum posts requesting instructions on how to replace an expired certificate being used with the Microsoft Dynamics GP web client. The traditional response has always been to uninstall and reinstall the web client after replacing the certificate in IIS (single-machine installation), or to repair the installation (custom install). I frankly find those two processes a bit cumbersome and prone to errors, since system administrators often need to remember steps and entries that they may not even have initiated themselves.

The procedures I outline in this video make use of the netsh command prompt utility to accomplish this and I intend to soon publish a PowerShell script that would automate the entire process altogether. For now, enjoy this video and don't forget to provide your feedback.

Until next post,

Mariano Gomez, MVP

Friday, January 26, 2018

Microsoft Dynamics GP and TLS 1.0

Is not too often that you will hear me saying anything negative about my beloved Microsoft Dynamics GP, but it is quite disheartening, to say the least, to see Microsoft not addressing the industry move away from TLS 1.0 as it relates to Dynamics GP.


TLS or Transport Layer Security protocol provides privacy and data integrity between applications wishing to exchange data. TLS ensures that the connection is private, because it uses symmetric keys to encrypt the data between the parties; the identity of the communicating parties can be authenticated via some public key; and the connection ensures some level of message integrity, because there's a message integrity check via a message authentication code.

As you would expect, TLS 1.0, 1.1, 1.2, 1.3 (draft), etc., are simply, progressive implementations, albeit with substantial differences that in some cases preclude interoperability between versions, of the same protocol. What is key however to this discussion is the age of each. For example, TLS 1.0 has been around since 1999, so suffice to say, that's extremely Mesozoic in technology years.

Acknowledging the security risks faced by companies and business applications still relying on TLS 1.0, the PCI Council voted to end support for TLS 1.0 as June 30, 2016. However, on December 15, 2015, they backtracked and extended the deadline to June 30, 2018.

You can read the full details in this PCI Council blog article:

Date Change for Migrating from SSL and Early TLS

Microsoft Dynamics GP

At this point, it's safe to assume you see the impact this has on Microsoft Dynamics GP, but I will summarize the list of applications that are currently impacted by this:

  • Web Services for Microsoft Dynamics GP
  • Business Portal for Microsoft Dynamics GP (it relies on Web Services)
  • Web Client (both Silverlight and HTML5 clients)
  • Service Based Architecture

Edit: If you disable TLS 1.0 in IIS, for example, none of the above services will be able to authenticate and communicate to Microsoft Dynamics GP. 

This problem even affects the newly minted GP 2018.

See Also

Until next post,

Mariano Gomez, MVP

Saturday, December 9, 2017

Microsoft Dynamics GP 2018 installation - First Look

Hi everyone! Walk through Microsoft Dynamics GP 2018 installation with me and learn the basic installation steps. Know what to expect as you go through the process, including setting up the account framework, defining account framework segments, deploying SQL Server Reporting Services reports during the installation, setting up the sample company, Fabrikam; login in for the first time and setting up your home page profile.

I will be working on other videos around Microsoft Dynamics GP 2018, so all ideas are welcome in the comment section.

Until next post,

Mariano Gomez, MVP