
Explanation:


Box 1: Data contract class
A data contract class defines the parameters for a report that is bound to a report data provider (RDP) class.
You can specify one or more groups of report parameters, the order of the groups, and the order in which the report parameters appear in a print dialog box.
Box 2: Report data provider class
Report data provider class - processes business logic based on parameters and a query, and then returns the tables as a dataset for the report.
Box 3: DataContractAttribute
DataContractAttribute - This attribute is applied to an X++ class and specifies that the class can be used as a data contract (that it should be serialized).
Box 4: DataMemberAttribute
DataMemberAttribute - This attribute is applied to a parm (parameter) method on an X++ data contract class and specifies that the data member should be serialized.
Box 5: SRSReportParameterAttribute
You set the SRSReportParameterAttribute attribute to the data contract you created for the RDP class.
Reference:
https://docs.microsoft.com/en-us/dynamicsax-2012/appuser-itpro/how-to-use-a-report-data-provider-class-in- a-report