[Expand]General Information
[Expand]WinForms Controls
[Collapse]ASP.NET Controls and MVC Extensions
 [Expand]What's Installed
 [Expand]Common Concepts
 [Collapse]ASP.NET WebForms Controls
   Getting Started
  [Expand]Grid View
  [Expand]Tree List
  [Expand]Card View
  [Expand]Chart Control
  [Expand]Pivot Grid
  [Expand]Rich Text Editor
   [Expand]Product Information
    Getting Started
   [Expand]Scheduler Elements
     Scheduling Basics
     Floating Action Button
    [Expand]Data Binding
     Client-Side Functionality
     Callback Commands
      Printing via Reports
      Can Shrink and Can Grow Features
      SmartSync Feature
     Time Zones
     iCalendar Support
     Keyboard Shortcuts
   [Expand]Visual Elements
   [Expand]Design-Time Features
   [Expand]End-User Capabilities
   [Expand]Member Tables
  [Expand]Site Navigation and Layout
  [Expand]HTML Editor
  [Expand]Vertical Grid
  [Expand]Data Editors
  [Expand]Docking and Popups
  [Expand]File Management
  [Expand]Data and Image Navigation
  [Expand]Multi-Use Site Controls
  [Expand]Spell Checker
  [Expand]Query Builder
 [Expand]ASP.NET MVC Extensions
 [Expand]Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Printing via Reports

This document describes a technique of creating an XtraSchedulerReport which can be used to compose a printable document, based on the Scheduler information, or representing one of the Scheduler views.

This approach is aimed at providing extreme flexibility in constructing print styles for the Scheduler data. It utilizes the XtraReports Suite to create a report containing controls specially designed to represent Scheduler entities. This report is an object of the XtraSchedulerReport class, which is a descendant of the XtraReport class, offering many useful features available in XtraReports.

The report retrieves scheduler data via the print adapter. The main purpose of the print adapter is to compose a data set used in the report. In order to filter the Scheduler data, the print adapter provides a set of validation events. There are two print adapter types - the SchedulerStoragePrintAdapter and SchedulerControlPrintAdapter. For example, you can handle the SchedulerPrintAdapter.ValidateAppointments event, to print appointments which meet specific criteria.

The next level of data representation is the report view. It is like the view which exists in the Scheduler, so there are ReportDayView, ReportWeekView and ReportTimelineView components.

The report is a container for report bands with report controls placed inside them. The following picture illustrates the Scheduler Reporting Toolbox.

To render scheduling data, two distinct control sets are implemented. The most important set consists of controls representing time cells with appointments. They are listed below:

The auxiliary controls form the following groups:

These controls should be placed in the DetailBand of the report, and are similar to the XtraReport controls, although they have their own peculiarities. A control is linked to a particular View, and some controls are linked to each other, as well.

The basics of building the XtraScheduler Report is essentially the same as for XtraReports. We suggest that you review the XtraReports documentation, e.g. the Introduction to Banded Reports document, to become familiar with reports, if you haven't already done so.

Instructions for creating a scheduler report are provided in the How to: Print the ASPxScheduler Using a Report Preview (Step-by-Step Guide) document.

The customization features available for the XtraScheduler are implemented for the reports. The Formatting Services affect XtraScheduler Reporting. Advanced customizations are possible via the TimeCellsControlBase.AppointmentViewInfoCustomizing, TimeCellsControlBase.InitAppointmentDisplayText, TimeCellsControlBase.InitAppointmentImages events and the CustomDraw* event series of XtraSchedulerReport controls.

Expanded See Also

Is this topic helpful?​​​​​​​