Thursday, March 17, 2011

Axapta: Validate Access to return value from display method - Ax 2009

I was working on a report today and after compiling it I saw that the compiler gave me some Best Practices errors.

Basically the error said : Validate Access to return value from display method.

Well, the compiler is smart enough to remind us that we need to consider if a specific user should have access to the data that you are returning from the function.

In addition, to check if a user has permissions to a specific field, we can use the hasFieldAccess function. There are other functions we can use as well such as hasMenuItemAccess, hasSecurityKeyAccess amd hasTableAccess.

An example is shown below:

//BP Deviation Documented
display vatNumJournal TaxExemptNum()
    if(!hasFieldAccess(tablenum(SalesTable), fieldnum(SalesTable, VatNum)))
        throw error("@SYS57330");

    if (SalesTable.VATNum)
        return SalesTable.VATNum;
        return '';

The BP Deviation Documented comment line just above the function is to tell the compiler we have addressed the issue.

No comments:

Post a Comment

Thank you for your thoughts. Your comment will appear in my blog shortly after review.

Have a great day!