Skip to main content

Posts

Showing posts from September, 2014

Filter customers by dimension using security policy [AX 2012]

I will start backward. Show what the result is and then will go into what I did to achieve this. Lets say you want to filter the customer records based on the department dimensions that are assigned to the user logged in. This might include restricting the sales orders too based on those customers. Result Setup Create a new Organization hierarchy with the Security purpose assigned. Edit the hierarchy and add the departments you plan on using. Create a new security role and assigned organizations by specifically granting access to the departments. Technical Now for the technical aspects of this. I used security policies to achieve this result. xds temp table which I have a the code to build (explode) the departments into the temp table. Query which joins the customer table to the dimension tables so we can specifically get the Department dimension Class created a method to retrieve the Department dimension attribute recId New role which is a main driver of the roles

Idea: Data Import Export Framework for importing journals

This is an Idea and not something inside standard. Most people have used Data Import/Export Framework for importing journals. It has been a big help and in this post I will discuss an idea that I think Microsoft should consider to develop. I leverage the DIXF framework for importing a general journal and making it flexible. Below is a screenshot of how simple it looks. I got dialog front end that has been created to run DIXF entities both import from source to staging, then staging to target in one shot.  These are some additional considerations here for this to work: Default journal name  - this can be done by configuring the mapping from source to staging Default journal number – this is something to be done in code Default line number – this is something to be done in code Default currency from the company – this is something to be done in code or configuration. I prefer to do it in code. Default the dimensions – this is something to be done in code Clean up periodic job