Description of the article :
Three years ago, the Premier Field Engineer team started the delivery of the Dynamics AX Code Review for Premier customers. It has been quite an interesting journey seeing many customization from different instances. Today I would like to step back and reflect on some of the most common issues.
If you are a senior developer on Dynamics AX, you may wonder how come these issues still exist. This is the reason why I decided to write this article. Developments are now shared among diverse team, sometimes across multiple partners and outsourced to vendors, meaning different skills and processes. Therefore such well known issues still remain in production when customized best practices rules and internal review are not properly defined.
The following list is not exhaustive and is only based on our experience from the field.
Find the complete MSDN post here : http://blogs.msdn.com/b/axinthefield/archive/2014/02/18/top-10-issues-discovered-in-the-dynamics-ax-code-review.aspx
So you need to print some files from Dynamics AX? And it also has to work in batch?
Below are 2 methods that will help you do just that.
Read the following post on Art of Creation
If you are using Ledger* table , you can have the field LedgerDimension (which extends LedgerDimensionAccount).
This field contain multiple information. For example the CustAccount.
To retreive the CustAccount from this field, use this piece of code:
custAccount = DimensionStorage::ledgerDimension2AccountNum(bankCodaAccountStatementLines.LedgerDimension);
You can maybe find this error message when you using a clustered SQL Server.
You cannot create/delete a new model (from AX client or from AxUtil.exe tool) but can still make a listing of all model.
In fact, all writing modification cannot be done.
So if you are in this kind of problem, the first things to make is to check on all nodes of the clustered server if the following port are open (and check also in the client side) :
- Remote Registry: 139
- Remote administration: 445
Check correctly the setting of the firewall !
I’ve hear that this request is often asked.
So there is a little piece of code to block all copy of data in a grid (for all form)
If you want to do this only on one form, you need to overwritte the method taks in the form
For my case, you need to select the method “task” on the class “SysSetupFormRun’ and write this:
if (_p1 == #taskCopy)
form = this.control(this.selectedControl().containerId());
if (form && form.handle() == classNum(FormGridControl))
//warning('Cannot copy on this grid!');
ret = super(_p1);
And for disable the copy on a specific field :
In the code I use this : this.selectedControl().containerId()
The method selectedControl return the fields on which we are, so you need simply use this : (with ItemName as fieldName from SalesTable form)
if (_p1 == #taskCopy)
form = this.selectedControl();
if (form.name() == 'ItemName')
//warning('Cannot copy this field!');
My original post : http://blogs.msdn.com/b/sebastien-petre/archive/2013/02/21/blocking-copy-ctrl-c-on-a-grid.aspx
Some of you would maybe know if AX 2012 is compatible with Office 365.
The answer is yes and no.
Yes you can use Word and Excel if the Office Add’on is installed and the software installed on the machine?
But there is some problems with Outlook. AX 2012 don’t support the TLS encryption which is mandatory when using Outlook.
More informations about Word and Excel here : http://blogs.msdn.com/b/chrisgarty/archive/2012/02/27/can-dynamics-ax-2012-work-with-office-365.aspx
Having object id issues during an installation on MS Ax 2012? Always replace never delete a model :