What Are Private Custom Reports?
Private custom reports are reports built specifically for one business, one department, or even one client account, and then shared only with the people who are allowed to see them. Unlike public dashboards or generic exports, private reports are controlled by login permissions, business rules, data filters, and delivery policies.
If those reports are written in DevExpress, you can build professional report layouts, bind them to SQL or API data, export them to PDF and Excel, and give users a secure viewer inside your web application. This works well for finance reports, management packs, customer statements, internal audit reports, inventory reports, and client-specific operational summaries.
How Does a Private Reporting App Work?
A private reporting application usually has four layers: data, reporting logic, security, and delivery.
- Data layer: pulls information from SQL Server, APIs, ERP systems, CRM systems, or uploaded files
- Reporting layer: uses DevExpress reports to format the data into tables, groups, charts, totals, and printable layouts
- Security layer: checks who the user is and which reports, clients, branches, or departments they are allowed to access
- Delivery layer: displays the report in the app or sends it through secure email, scheduled PDF generation, or protected download links
Typical User Flow
In a real application, the flow often looks like this:
- An administrator creates report templates in DevExpress.
- The app stores report definitions and links them to roles or client accounts.
- A user logs in to the application.
- The system checks the user's company, role, branch, or tenant.
- The report screen only shows reports that user is allowed to open.
- The user chooses filters such as date range, customer, branch, or status.
- The app fetches only the allowed data and binds it to the DevExpress report.
- The report is rendered in a secure viewer or exported as PDF, Excel, or CSV.
- The app logs who opened the report, when it was opened, and whether it was exported or emailed.
People Involved in the Reporting Process
Private reporting systems usually involve several people, not just developers.
| Person | Role in the App |
|---|---|
| Business Owner | Defines what information should be visible and who can see it |
| Operations Manager | Uses the reports daily to monitor activity, sales, stock, or workflow performance |
| Finance Manager | Needs restricted access to revenue, cost, margin, and payment reports |
| Client or Partner | May receive only their own reports through a private login or secure link |
| System Administrator | Manages roles, permissions, report scheduling, and access control |
| Software Developer | Builds the application, integrates DevExpress reports, and secures the data flow |
Sample Business Scenario
Assume you run a logistics company with multiple clients. Each client wants to log into a portal and see only their own delivery performance report. Internal managers want a broader report across all clients, while finance staff want invoice and billing summaries. This is a perfect use case for private custom reports in DevExpress.
Example App Modules
- Login and authentication: users sign in with username/password, SSO, or Microsoft login
- Role management: access rules decide which reports appear in the menu
- Report catalogue: shows available reports such as Delivery Summary, Invoice Status, Exception Report, and Monthly KPI Pack
- Filter panel: user selects date range, client account, depot, route, or invoice status
- Report viewer: DevExpress renders the report with charts, grouped tables, totals, and export options
- Scheduler: sends selected reports automatically every day, week, or month
- Audit log: records who viewed or exported each report
Sample Data
Here is sample data for a private delivery performance report.
| Client | Month | Total Deliveries | On Time | Late | Success Rate |
|---|---|---|---|---|---|
| Acme Retail | January | 1240 | 1186 | 54 | 95.6% |
| Acme Retail | February | 1310 | 1264 | 46 | 96.5% |
| BlueWave Foods | January | 890 | 829 | 61 | 93.1% |
| BlueWave Foods | February | 940 | 901 | 39 | 95.9% |
| CityMed Supplies | January | 620 | 611 | 9 | 98.5% |
| CityMed Supplies | February | 670 | 658 | 12 | 98.2% |
This data can feed multiple reports:
- Client report: each client sees only their own rows
- Management report: internal users see all clients with comparisons and rankings
- Operations exception report: only late deliveries and service failures are shown
- Executive summary: totals, trends, and KPI cards for leadership
How the DevExpress Report Is Built
In DevExpress, a private report normally starts with a report class such as `XtraReport`. You define a data source, group rows, add labels, tables, totals, and charts, then render the report in a web viewer.
public class DeliveryPerformanceReport : XtraReport
{
public DeliveryPerformanceReport()
{
Bands.Add(new TopMarginBand());
Bands.Add(new DetailBand());
Bands.Add(new BottomMarginBand());
var title = new XRLabel
{
Text = "Client Delivery Performance Report",
Font = new System.Drawing.Font("Arial", 16, System.Drawing.FontStyle.Bold),
WidthF = 500
};
ReportHeaderBand header = new ReportHeaderBand();
header.Controls.Add(title);
Bands.Add(header);
}
}
The controller usually validates the logged-in user, loads filtered data, and passes that data to the report.
public ActionResult ClientReport(int clientId, DateTime from, DateTime to)
{
var user = GetCurrentUser();
if (!UserCanAccessClient(user, clientId))
{
return new HttpUnauthorizedResult();
}
var data = reportRepository.GetDeliveryPerformance(clientId, from, to);
var report = new DeliveryPerformanceReport();
report.DataSource = data;
return View(report);
}
Private Sharing Options
There are several ways to share private custom reports after they are generated.
- Secure in-app viewer: best when users already log into your application and need live filters
- Scheduled PDF email: useful for monthly board reports, branch summaries, and client statements
- Protected download center: users log in and download archived reports
- Role-based portal: each tenant or department sees a different report library
- Temporary signed links: useful for limited-time sharing with external parties
Security Rules That Matter
If the reports are private, security cannot be an afterthought. The application should protect both the report file and the underlying data.
- Authentication: force users to sign in before opening any report
- Authorization: check report access by role, tenant, client, branch, or department
- Row-level filtering: return only the records the user is allowed to see
- Audit history: store report views, exports, and email deliveries
- Encryption: protect stored files and connections to the database
- Watermarks or disclaimers: mark sensitive exports with username and export date
What the App Looks Like in Practice
A user opens the app and signs in. On the left side, they see a report menu based on permissions. In the center, they have a report viewer and filter panel. If the user is a client, they might see only two reports: Monthly Delivery Summary and Invoice Reconciliation. If the user is an internal manager, they might see twenty reports across all clients and regions. If the user is an admin, they can create schedules, change recipients, and publish new templates.
| Month | Deliveries | On Time | Late | Success |
|---|---|---|---|---|
| January | 1240 | 1186 | 54 | 95.6% |
| February | 1310 | 1264 | 46 | 96.5% |
Scheduling and Distribution Example
Imagine the finance manager wants a monthly billing report emailed on the first day of every month, while each client wants a weekly service-level PDF every Monday at 7:00 AM. A DevExpress-based reporting app can support this by storing schedule rules per report and per recipient group.
| Report | Recipient | Frequency | Format |
|---|---|---|---|
| Monthly Billing Summary | Finance Manager | Monthly | |
| Weekly Delivery SLA | Acme Retail Client Team | Weekly | |
| Late Delivery Exceptions | Operations Manager | Daily | Excel |
| Executive KPI Pack | CEO and Directors | Monthly |
Why Businesses Choose This Approach
- Better control: the business decides exactly who sees what
- Consistent formatting: DevExpress reports look polished and printable
- Reusable templates: one report design can serve many users with different filters
- Safer sharing: data exposure risk is reduced through role and row-level security
- Professional delivery: reports can be viewed live, exported, archived, and distributed automatically
Conclusion
To create and share private custom reports in DevExpress, you usually build a secure web application around the report engine. Users log in, the system applies permissions, the app fetches only approved data, and DevExpress renders the final report in a viewer or export format. The same application can support administrators, managers, finance teams, and clients, each with a different level of access.
If you need a solution like this, I can build private reporting portals, custom DevExpress reports, scheduled report distribution, and secure client-facing reporting systems.