In the Real World The Art of Report DesignDesigning reports that deliver useful information in a graphically appealing format is a challenge. The challenge becomes acute when you're faced with the prospect of designing a complex report, such as a physician's patient history, that derives its information from multiple related tables. In the case of a patient history, some of the tables contain memo fields with large blocks of formatted text that describe diagnosis and treatment. Specialists often want reports that print from OLE Object fields or linked graphics files, embedded images generated from digital cameras, scanned photographs, or single-frame captures from a video camera. Most physicians also need billing reports that conform to state and federal government agency standards, as well as health insurers' requirements. Fortunately, Access 2003's report engine and graphical Report Design mode can handle just about any report format imaginable. Report generation flexibility is one of the primary reasons that database developers haven't abandoned Access for Visual Basic 6.0 or Visual Basic .NET, which offer a more traditional approach to programming structure and form design than Access. Many developers use Automation to generate custom Access reports from Jet and SQL Server databases managed by Visual Basic 6.0 and .NET programs.
ReportML uses Access-specific tags to specify properties (attributes) of the Access object typically a report or form and inserts property (attribute) values within the tags. An XSLT transform converts the XML document to HTML for presentation in a browser. Unlike report Snapshots, the ReportML-based presentation isn't an exact clone of the reports, because HTML doesn't support the precise formatting capabilities of conventional Access reports. Chapter 23, "Exporting and Importing Data with XML," provides an expanded description of the XML features of Access 2003. Note Access 2002's ReportML became the foundation for Word 2003's WordML and Excel 2003's ExcelML formats. It's impossible for two chapters of reasonable length to cover every feature of the Access report engine in detail. This chapter and its predecessor provide only an introduction to report design and demonstrate the basic elements of reports and subreports. Complete coverage of Access's reporting capabilities, including the use of VBA to respond to report events and set printer properties, would fill a book of 500 pages or more. |