15 Mar 2016

Report Types

Report Types:

A report type has two key functions:
1.  The report type determines which records are included in a report.  Report filters then determine which records are excluded from the report.
For example, an “Opportunities” report type will include all opportunity records:
However, an “Opportunities with Products” report type will return one line for each opportunity line item (associated product).  If an opportunity has 3 associated products, it will appear as 3 lines within this report.  If an opportunity does not have any associated records, it is omitted from this report.
This explains why the grand total between each report is different.  In this org, there are 33 opportunities, and a total of 15 opportunity line items.
2.  The report type determines which fields can be added to the report.
When is the Report Type Selected?
As the first step of report creation:
Viewing the Report Type on an Existing Report
Customize the report, then the report type is displayed in the top left:
You cannot change the report type after the report is created (you would need to create a new report).
Standard and Custom Report Types
Standard report types are automatically included with standard objects and custom objects where “Allow Reports” is checked.  Standard report types cannot be customized, and automatically include standard and custom fields for each object within the report type.
Custom report types are added by an administrator.  Within a custom report type, you can specify which objects and fields are included in the report.
Custom Report Type Object Selection
When creating a custom report type, pay very close attention to the two options when selecting relationships (Each “A” record [must / may or may not] have at least one “B” record).  The objects and relationships selected determine which records will be included when reports of this type are run.
When to Create Custom Report Types
Generally speaking, unless you need a custom report type, there is no reason to create one.  Standard report types usually meet the majority of an organization’s needs.
That said, here a few common reasons why organizations create custom report types:
1.  Standard report types do not return the required set of records.
For example, I want to run an “Opportunities with Products” report that includes all opportunities (with or without products).  The standard report type will only include opportunities if they have an associated product.  However, I could create a custom report type that used an optional object relationship to meet this need:
2. Standard report types do not include field(s) that you would like on the report.
For example, I want to run an opportunity report that includes the account owner’s manager as one of the fields.  The standard opportunity report type will not allow me to add this field:
However, when I create a custom report type, I can reference this field:
Now, this field is available on the newly created report type
: