Sunday, December 18, 2022

Software project estimate Excel template and example

 This template automates software development project estimation process. It is built on the experience of dozens of successful  projects. Please follow the steps below to obtain full project estimate.

Read more >>>

Friday, November 5, 2021

Convert JSON to Enumeration Online in https://json2enum.com

Recently I had a task to analyze data from existing system exported in long and complex JSON.

I started looking for a simple service to fetch all values from JSON as an enumeration and surprisingly there was none online.

So I came up with simple client-side page https://json2enum.com that does the job. Enjoy.



Thursday, April 28, 2016

Dynamics AX 7 data model vs AX 2012

Hello Axapters,

Last week I spent some time analyzing the differences between AX 7 and AX 2012 R3 CU9 data model, specifically the list of SQL Server tables in both versions.
If you judge by the numbers only the changes are radical: about 740 out of 6250 AX 2012 tables have been deleted or renamed and about 600 tables have been added or renamed in AX 7, not including ~1640 new out of the box staging tables.

Thursday, March 17, 2016

Dynamics AX web server and client


Application tiers in AX 7

For one thing, AX is no more a WinForms application, it is a website. There is no "AOS” as such, my friends. Though still a couple of Windows services run on the server side:
·         Batch management services that “Polls and executes AX batch requests.”
·         DIXF service that “Executes import/export logic for the Microsoft Dynamics AX Data Import/Export Framework”.

Disclaimer: All screenshot are made from RTW development box. Other environments’ settings may differ.



Friday, February 26, 2016

Dynamics AX 7 Codebase Architecture

It is probably the toughest topic for developers to grasp and get used to and the most cardinal change for internal code architecture. The idea as I see it is to make the huge standard codebase modular and loosely coupled and promote AX architects and developers to do the same with their code.

Packages, models and dependencies

In AX 2012 and before the whole application code existed within one namespace split by layers and models. You could call or reference any code in your Dynamics AX instance from any other place. We all know the upsides and downsides of this approach.

Friday, February 19, 2016

What's new in Microsoft Dynamics AX 7

Hello and welcome to my blog, Folks!

So what is new in Microsoft Dynamics AX 7 for developers and technical consultants comparing to all previous versions? We’re witnessing without exaggeration the most radical change in Dynamics AX history inspired by the current technological trends and proposals from other ERP vendors.This release is mainly technical with some important functional changes though.

It is tough to pick out the most important among the numerous changes. Here is my chart of innovations from the technical point of view. I tried try condense the essence of every change into a couple of sentences.
  1.  Web client and server. AX 7 is a website, browser is the client. UI metadata is rendered into HTML5, CSS and JavaScript. No X++ code on the client and no EP, of course. No ActiveX and Managed Hosts either.
  2. .NET integration. X++ and other metadata are stored on disk, compiled into CIL assemblies and executed by the server’s CLR. Development is done in Visual Studio only. Some changes to X++ syntax and model. Support of TFS / VSO integration and automated builds.
  3. Authorization and Office 365 integration. AX 7 users must have Azure Active Directory account in order to access the application and be authorized using OAuth2.
  4. Cloud deployment and ALM. Production environment can only be deployed in Azure and may use SQL Azure as DBMS. Non-production environments can be deployed in Azure or on-premise as pre-set VMs provided by Microsoft. Pricing is subscription-based. ALM done through LCS - a new cloud service with a lot of nice tools and methodologies.
  5.  Codebase architecture. The whole codebase, including standard and custom code will be split into packages that are connected with one-way dependencies. You may reference objects only within the same and dependant packages. A new concept of extension -  a non-intrusive way of customizations together with event-driven approach form a totally new architecture, customization and deployment ways. Package is compiled into a binary Nuget package for deployment.
  6.  Integration, data management and services. AIF gets replaced by various SOAP, REST and JSON services and DIXF that is based on Data entity - a kind of view used for integration throughout the system. More tight two-ways integration with Office.
  7. Task recorder. It is difficult to classify it to any other category. Allows to record, document and playback all user actions from browser. A great tool for automated testing and education.
  8. BI. No more SSAS cubes, instead real-time BI that leverages SQL Server Column Store Index capabilities. Close PowerBI integration. UI-embedded user-adjustable KPIs.
  9. SSRS Reporting, Workflow, Security. Cosmetic changes.
  10. The main deprecated features. EP, RoleCenter, .NET connector, SSAS cubes, Virtual companies, ActiveX and Hosted.NET controls, Production builder and WMSII. Some features are not included into the first release but were not declared deprecated.