- Home
- Skills
- Venkateshvenki404224
- Frappe Apps Manager
- Frappe Report Generator
frappe-report-generator_skill
7
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill venkateshvenki404224/frappe-apps-manager --skill frappe-report-generator- SKILL.md12.6 KB
Overview
This skill generates custom query reports, script reports, and report-builder definitions for Frappe applications to support data analysis, dashboards, and exports. It provides ready-made patterns for SQL query reports, Python script reports, dynamic columns, charts and summary cards, plus performance and permission guidance. Use it to build production-ready reports with filters, exports, and client-side customization hooks.
How this skill works
The skill outputs report JSON and Python structures compatible with Frappe report conventions: report metadata, filter definitions, column schemas, and execute() implementations. For query reports it returns parameterized SQL and for script reports it returns Python logic that prepares columns, aggregated data, charts and summary cards. It also suggests indexing, caching and permission checks to ensure safe, high-performance reports.
When to use it
- Creating a new report for business analysis or dashboards
- Implementing a query report that needs raw SQL performance
- Writing a script report that requires complex business logic or dynamic columns
- Adding filters, charts, export or summary cards to existing reports
- Optimizing report performance or enforcing report permissions
Best practices
- Use parameterized queries and validate filter inputs to prevent injection
- Filter early in SQL WHERE clauses rather than post-processing in Python
- Add indexes and LIMIT large-result queries to keep response time predictable
- Cache expensive query results for short intervals when appropriate
- Check Frappe permissions before returning data and scope queries to allowed records
- Provide sensible default filters and document report purpose and fields
Example use cases
- Sales Analysis query report: fast SQL aggregations by date range with customer filters
- Top customers script report: use Frappe ORM to aggregate orders and build a bar chart
- Monthly pivot with dynamic columns: generate month columns programmatically
- Operational dashboard cards: total customers, total revenue, avg order value summaries
- Complex join report: include customer metadata and sales order item aggregates
FAQ
Use a query report for large datasets and straight SQL aggregations; choose a script report when you need complex business logic, dynamic columns, charts or ORM convenience.
How do I keep large reports performant?
Add proper DB indexes, limit result sets, push filtering into SQL, and use short-lived caching for expensive aggregations.