Back to Skills

platform-custom-report-type-generate

Use this skill when users need to create, generate, or validate Salesforce Custom Report Type metadata. Trigger when users mention custom report types, report types, CRTs, reporting frameworks, cross-object reports, report builder data sources, or ask to expose fields for reporting across related objects. Also use when users mention primary and related objects for reports, inner vs outer joins in reports, report type categories, or encounter deployment errors for .reportType-meta.xml files. Do N

819stars291forksUpdated 8/13/2026

Security Assessment

Safe(96/100)
Security Score96/100

About platform-custom-report-type-generate

The platform-custom-report-type-generate skill provides authoritative knowledge for creating and validating Salesforce Custom Report Type (CRT) metadata — the .reportType-meta.xml files that define the data framework for Salesforce reports. A CRT specifies a primary (base) object, up to three related objects, the join relationships between them, and which fields are exposed to the report builder. The skill solves the problem of hand-authoring these XML files correctly so they deploy cleanly and surface the intended fields.

It documents the full element structure — top-level ReportType children (fullName, label, description, baseObject, category, deployed, join, sections) and the nested sections and columns sub-elements — with a table of which are required, recommended, or conditional. It codifies critical rules: fullName must exactly match the file name when present, and outerJoin controls whether primary records without related records are included (with a prohibition on inner-after-outer join ordering). A troubleshooting reference maps common deployment errors (invalid object/relationship/field names, invalid category values, join-ordering conflicts, base-object-change attempts, and fullName mismatches) to their causes and fixes, and explains workarounds for conflicting join requirements. Worked example .reportType-meta.xml files and a category-values reference support the guidance. The skill targets API version 51.0 and up.

It targets Salesforce admins and platform developers who build cross-object reporting frameworks, especially over custom objects and relationships not covered by standard report types. Typical uses include authoring a new CRT, curating report-builder fields via lookup traversal, choosing inner versus outer joins, and diagnosing why a generated CRT was rejected on deployment. Deployment itself is out of scope — the skill focuses on authoring and validating the XML.

FAQ

What does this skill produce?

Salesforce Custom Report Type metadata — .reportType-meta.xml files — that define a report's data framework: a base object, up to three related objects, their join behavior, and the fields exposed to the report builder.

What is the rule about fullName and the file name?

If the fullName element is present, its value must exactly equal the file name (everything before .reportType-meta.xml) — same characters, casing, and underscores. In source format fullName is technically optional since it is derived from the file name, but the repo convention includes it.

How do inner and outer joins work in a CRT?

Each join block has an outerJoin element: an outer join includes primary records even without related records, while an inner join excludes them. An inner join cannot follow an outer join in the chain; the skill describes workarounds such as all-outer plus report-level filters, flipping the base object, or maintaining two CRTs.

What API version is required?

The skill targets minApiVersion 51.0. External objects as base objects are supported from API 38.0 onward.

Does the skill deploy the report type?

No. It focuses on authoring and validating the XML before hand-off; deployment is explicitly outside its scope. Its troubleshooting reference helps validate the file and diagnose deployment errors, but it does not run the deployment.

All Files

6 files
references/errors-and-troubleshooting.md2.6 KB
View
examples/AccountsWithIndustry.reportType-meta.xml1.0 KB
View
examples/AccountsWithProjects.reportType-meta.xml1.7 KB
View
SKILL.md14.0 KB
View
examples/AccountProjectsWithTasks.reportType-meta.xml1.9 KB
View
references/category-values.md1.3 KB
View

Install platform-custom-report-type-generate

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill