From 98ff0b4bd4c31aa621ebeab72bae8692fd529823 Mon Sep 17 00:00:00 2001 From: sramadev Date: Thu, 7 May 2026 13:10:39 +0530 Subject: [PATCH] feat: @W-22237005@ add generating-custom-report-type skill --- skills/generating-custom-report-type/SKILL.md | 434 ++++++++++++++++++ 1 file changed, 434 insertions(+) create mode 100644 skills/generating-custom-report-type/SKILL.md diff --git a/skills/generating-custom-report-type/SKILL.md b/skills/generating-custom-report-type/SKILL.md new file mode 100644 index 0000000..17048a3 --- /dev/null +++ b/skills/generating-custom-report-type/SKILL.md @@ -0,0 +1,434 @@ +--- +name: generating-custom-report-type +description: "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 NOT trigger for: running, editing, or filtering existing reports; creating report folders, dashboards, or list views; or general reporting questions that don't involve authoring a .reportType-meta.xml file." +--- + +## When to Use This Skill + +Use this skill when you need to: +- Create a Custom Report Type (CRT) so users can build reports that span related objects +- Define which primary and related objects appear in the report builder +- Expose specific fields (including fields via lookup) for a report +- Choose between inner and outer join behavior across object relationships +- Troubleshoot deployment errors related to `.reportType-meta.xml` files + +## Specification + +# Salesforce Custom Report Type Metadata Knowledge + +## 📋 Overview +Custom Report Types (CRTs) define the **data framework** for Salesforce reports. They specify a primary object, up to 3 related objects, the relationship (join) between them, and which fields are available in the report builder. + +## 🎯 Purpose +- Enable reporting across custom objects and custom relationships not covered by standard report types +- Curate a focused set of fields for report builders (including fields reached via lookup) +- Control inner/outer join behavior to include or exclude primary records without related records + +## 🔧 Configuration + +Custom Report Types are stored at: +- `force-app/main/default/reportTypes/.reportType-meta.xml` + +Each CRT is a single file (not nested under an object folder). + +### Key Elements + +| Element | Required | Notes | +|---------|----------|-------| +| `` | Yes | API identifier; must match the file name. Letters, numbers, underscores; must begin with a letter; no spaces; no trailing underscore; no consecutive underscores | +| `