Sunday, December 8, 2013

Microsoft Dynamics AX 2012 Build numbers

Microsoft Dynamics AX 2012 Build numbers.




Code to call Ax project reverse engineering tool

Code to call Ax project reverse engineering tool
SysVisioAddIn               sysVisioAddIn   = SysVisioAddIn::construct();

sysVisioAddIn.parmModelType(SysVisioModelType::ERModel);
sysVisioAddIn.parmFile(fileName);
sysVisioAddIn.parmUserSelection(SysVisioUserSelection::SharedProject);
sysVisioAddIn.parmProjectNode(SysTreeNode::getSharedProject().AOTfindChild(projectNode.AOTname()));

sysVisioAddIn.run();

Modules names changes in MS Dynamics AX 2009 Vs. AX 2012

Modules names changes in MS Dynamics AX 2009 Vs. AX 2012





MODULES IN AX 2009



MODULES IN AX 2012

Inventory Management
·       Inventory Management
·       Product Information Management


Accounts Payable
·       Procurement and Sourcing
·       Accounts Payable


Accounts Receivable
·       Sales and Marketing
·       Accounts Receivable



General Ledger
·       General Ledger
·       Budgeting
·       Fixed Assets
·       Compliance and Internal controls

Cost Accounting
·       Cost Accounting

Bank
·       Cash and Bank Management


CRM
·       Moved to Sales and Marketing module

Master Planning
·       Master Planning



Production
·       Production control


Product Builder
·       Moved to Product Information Management






Shop floor Control
This Module is split into three and can be accessed from Home, Human resources and Production Control Modules.
·       Time and Attendance     – Human resources.
·       Clock In and Out – Home
·       Manufacturing execution – Production       control.

Human Resource
·       Human Resources

Questionnaire
·       Moved to Home

Expense Management
·       Travel and Expense


Projects
·       Project Management and Accounting (PSA)

Service
·       Service Management


Basic
·       Organizational Administration

Administration
·       System Administration

Comparison of Layers across AX versions.

Comparison of Layers across AX versions

Microsoft Dynamics Ax Roadmap

Hi guys,

We learn many small things in our daily Ax work. I thought it would be beneficial for all of us if we share them. I am going to start a daily mail on Ax which may contain
Ø  Did you know – News on Ax
Ø  Code snippets
Ø  Trouble shooting
Ø  Other technical stuff

Please spend couple of minutes per day to read the mail and add a point to your Ax learning.

Did you know?

Microsoft Dynamics Ax Roadmap




How to call events on a Dialog in Ax2012

I found a way in which we can override the form  events like modified, lookup, clicked etc. on a Dialog. We used to create event method on a dialog by using  “FieldNumber_1_event”  format. I got a requirement in which I have to show the lookup for service orders on the basis of project id on a dialog. I did it in a following way  instead of  we used to do in Ax2009.

·         Overwrite dialogPostRun method and wrote the following code

public void dialogPostRun(DialogRunbase _dialog)
{
    FormRun formRun;

    super(_dialog);

    formRun = _dialog.dialogForm().formRun();
    formRun.controlMethodOverload(true);
    formRun.controlMethodOverloadObject(this);

    fsCtrlSmmActivityNumber = formRun.design().control(fbsCtrlSmmActivityNumber.id());
    fsCtrlProjCategoryId = formRun.design().control(fbsCtrlProjCategoryId.id());


    _dialog.dialogForm().formRun().controlMethodOverload(false);
    _dialog.dialogForm().formRun().controlMethodOverloadObject(this);

         // 2012-10-02 #18679 pgad: Project adjustments -->
    dialogServiceOrderId.registerOverrideMethod(methodStr(FormStringControl, lookup), methodStr(ProjAdjustmentSplit, serviceOrderLookup), this);

    // 2012-10-02 #18679 pgad: Project adjustments <-- o:p="">
}
·         Here I have registered  event lookup.
·          Created one  static method serviceOrderLookup.


public  void serviceOrderLookup(FormStringControl   _formStringControl)
{
    boolean ret;
    ;

    ret = _formStringControl.modified();

    if (ret)
    {
        this.lookup(); ( this will call the lookup method on a ProjAdjustmentSplit)
    }
}



·         Now  it will call  lookup event automatically. We need not to handle this

AX 2012 Buffer size exceeded

Issue encountered where a query exceeded the Buffer Size. Error reported as Statement too long and AX suggests increasing the size of the buffer in the AOS database configuration​ tab.
The default for this buffer is 24K and most documentation suggests if there is a need to increase the size of this buffer as a result of either a query or select statement that is should only be increased by small increments.
However, there is an alternative method of resolving this and that is to use the forceLiterals attribute/property. To do this on a AX query, set the Literal property of the query from Default to forceLiteral. If the issue arises on a AX X++ select statement then use the keyword forceliterals eg
select forceliterals custtable;
Note

You are advised not to use the forceLiterals keyword in X++ select statements, because it could expose code to an SQL injection security threat.