Showing posts with label AOT. Show all posts
Showing posts with label AOT. Show all posts

Wednesday, September 4, 2013

Recent AX issues I came across and resolved

1- Parameter 'AX_RdpPreProcessedId' does not exist on this report
While creating "GL->Reports->Journals->General journal entries that have not been posted " report I received an error message "Parameter 'AX_RdpPreProcessedId' does not exist on this report". First thing that needs to be done to remedy such issues is to re-deploy the report. That worked for me. First to find out the name of report, I opened AOT, and navigated under the Menu to find out the report I was interested in. Usually the menu item name is same as report name.


After finding out the report name, I looked into SSRS Reports/Reports to find my report. I right clicked the report and then clicked Deploy Element - which re-deployed the report to AOS.



2- "Error while setting server report"
Another issue that I came across while creating any report was the following access issue. 

For instance, when I wanted to create the General Ledger/Reports/Base Data/Chart of Accounts report I received this infolog. 
"Error while setting server report parameters. Error message: the permissions granted to user YYY are insufficient for performing the operation. (rsAccessDenied)"

The issue is related to User Access Control (UAC) and accessing SSRS from the same server on which it’s installed. So, if you are logged into a server where UAC is enabled and attempt to access the SSRS url (whether directly through IE or via the AX client), you may receive this issue. In order to resolve the issue the application that accesses this URL should be run with elevated privileges. In order to resolve this for AX client, close it and re-open it by right-clicking the AX client shortcut and running it as administrator. You can configure the AX shortcut to Run as administrator by default by right clicking the properties of that shortcut and selecting the "Run this program as an administrator" checkbox under Compatibility tab.

3- Back dating the effective date of an organization hierarchy
In one of my client's AX 2012 R2 environment  the main organization hierarchy was created effective as of mid 2013. At a later time, they uploaded transactions for year 2012 and ran reports from Management Reporter for these historic transactions. Since the main organization hierarchy was not effective for year 2012, the reports did not run. They asked me to back date the effective date of the organization hierarchy without a need to re-create it. In AOT I found the tables that are related to organization hierarchy which has effective date field and manually changed those dates to 1/1/2012. I changed the effective date in these tables: OMExplodedOrganizationSecurityGraph, OMHierarchyChangeLog, OMHierarchyRelationship. Doing this successfully changed the effective date of the organization hierarchy and enabled the customer to create reports in Management Report for year 2012. However this fix had a very strange side effect. After this change, we realized that all the main accounts and dimension values suspended. And manually un-selecting the suspend checkbox did not help. In AOT I opened the DimensionAttributeValue table that contains all the dimension values. I realized that there is a new field introduced in this table - DimensionStatus. This field does not exist under the table description and did not exist before prior to effective date change of the organization hierarchy. This field was set to "Inactive" for all the values in DimensionAttributeValue table. Changing this field to "Active" resolved our issue.

Tuesday, January 8, 2013

Start Debugging in AX 2012 - for non-developers

In order to start debugging the Dynamics AX code first you need to enable debugging for the current user. You can enable the debugging for the current user by setting the Debug mode to "When Breakpoint" under "File/Tools/Options/Development/Debug" tab.


If you don't know where to start debugging an issue that throws an Infolog message, you can put a breakpoint to Info:add class.This will make the process stop for debugging for every infolog message.


Then in the debugger, when the process stops you can traverse the callstack in order to find the underlying issue.



Where is the user information kept in Dynamics AX?

The name of the table that keeps the user information in Dynamics AX is "UserInfo". But you cannot access this table under "AOT/Data Dictionary/Tables" like any other database tables in AX.

You can reach this table and browse it under "AOT/System Documentation/Tables". 


In order to browse the table right-click and use "Table Browser":