When checking my Ax code, I always use best practice checks. Most of the time I perform this during the last 10 minutes of the day. I do not use compiler level 4 but I have to admit this has some issues.
Most of these issues make sense, but some of them are contradictory or cannot be solved because the core AX framework is programmed the wrong way.
My preference is to start with these settings.
From this point it is up to you what checks can be skipped. Skipping means not to comply with http://www.microsoft.com/dynamics/en/gulf/partners-certified.aspx
But, in case you do not wish to follow this direction, I could give some tips so the imported checks stay on
– AXBc Fields on tables: You can ignore this unless you are using the fields in AIF.
– XML documentation: I know this is a lot of work but did you know that the remark section is optional? See http://msdn.microsoft.com/en-us/library/cc593549.aspx
– “Customizing this class may cause problems with future upgrades to the software.” warning
/// This is a framework class. Customizing this class may cause problems with future upgrades to the software.
Ok, so far so good, now it is time for the freak show:
– The Construct method must only instantiate the class. Consider using a static new pattern instead.
At the end I am still not happy with it: there are other checks such as broken relations, editable primary indexes, obsolete code and missing labels (this can happen when you use TFS, check in the EDT first and next check in the label, the label on the EDT is not corrected).