A report type column category is a set of fields that the report type grants access to. For example, an opportunity report has categories like Opportunity Information and Primary Contact. The Opportunity Information category has fields like Amount, Probability, and Close Date.
Get category information about a report by first getting the report metadata:
// Get the report ID List <Report> reportList = [SELECT Id,DeveloperName FROM Report where DeveloperName = 'Q1_Opportunities2']; String reportId = (String)reportList.get(0).get('Id'); // Describe the report Reports.ReportDescribeResult describeResults = Reports.ReportManager.describeReport(reportId); // Get report type metadata Reports.ReportTypeMetadata reportTypeMetadata = describeResults.getReportTypeMetadata(); // Get report type column categories List<Reports.ReportTypeColumnCategory> reportTypeColumnCategories = reportTypeMetadata.getCategories(); System.debug('reportTypeColumnCategories: ' + reportTypeColumnCategories);
The following are methods for ReportTypeColumnCategory. All are instance methods.
public MAP<String,Reports.ReportTypeColumn> getColumns()
Type: Map<String,Reports.ReportTypeColumn>
public String getLabel()
Type: String