This document describes the report programming model for Microsoft Dynamics AX 2012. It provides an overview of key concepts like report data providers, report definition language contracts, and controllers. It also describes common patterns for converting existing reports and sample code for implementing validation, grouping, custom dialog boxes, and other report features.