Rapporten
Frappe heeft drie rapporttypes, oplopend in complexiteit.
1. Report Builder
Klik Reports → Report Builder, kies een DocType, selecteer velden en filters, sla op als rapport. Iedereen met toegang kan het draaien en naar CSV/XLSX exporteren.
Sterk: geen code, snel itereren, gebruiksvriendelijk. Beperkt: één DocType, geen joins, geen SQL.
2. Query Report
Voor joins over meerdere DocTypes of berekende kolommen maken ontwikkelaars Query Reports — een Python-functie die kolommen en rijen retourneert, plus een JSON-config. In code gedefinieerd, met apps meegeleverd.
Voorbeeldstructuur:
my_app/my_app/report/sales_summary/
├── sales_summary.json
├── sales_summary.py # def execute(filters): return columns, data
└── sales_summary.js # Filterformulier
Eindgebruikers zien ze in dezelfde Reports-lijst en draaien ze zoals Report Builder-rapporten.
3. Script Report
Vergelijkbaar met Query Report maar flexibeler — u draait willekeurige Python, roept API's aan, doet wat u wilt voor het retourneren van data. Spaarzaam gebruiken; SQL via Query Report is meestal genoeg.
Dashboards
Rapporten zijn op een Dashboard te plaatsen met grafieken (cijferkaarten, bar/line, pie). Dashboards staan op Workspaces en kunnen de landingspagina van een rol zijn.
Plannen
Elk rapport kan zichzelf periodiek mailen: Report → "Send to Users" instellen → frequentie. Bespaart u het wekelijkse handmatige inloggen voor de salesomzet.
Exporteren
Alle rapporten exporteren naar CSV en XLSX vanuit de toolbar. Voor programmatische toegang gebruikt u de API of roept u de onderliggende execute()-functie van een Query Report aan via frappe.get_attr().