Sunday, December 8, 2013
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
|
Labels:
Ax2009 Module names,
Ax2012 Module Names,
Modules
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
You are advised not to use the forceLiterals keyword in X++ select statements, because it could expose code to an SQL injection security threat.
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.
Subscribe to:
Posts (Atom)


