320 likes | 466 Views
ProvideX Report Writer. Presented by: Jane Raymond. Presentation Overview. Introduction Designer Enhancements Object-Oriented Interface New User Interfaces The Future. Introduction. ProvideX Report Writer Add-on for designing and generating reports.
E N D
ProvideX Report Writer Presented by: Jane Raymond
Presentation Overview • Introduction • Designer Enhancements • Object-Oriented Interface • New User Interfaces • The Future
Introduction ProvideX Report Writer • Add-on for designing and generating reports. • Creates and manipulates layout of report like a spreadsheet application. • Features: • Data drag & drop • Column/row sizing • Formula definition • Cell formatting • Outputs to printer, PDF, HTML, ProvideX Viewer, Clipboard… • Sorting rules • Data groupings • Data filters • External parameters
Designer Enhancements • Defining the Data • New input sources • Enhanced Sorting and Filtering • Grouping the Data • New group option • Conditional detail groups • Editing the Layout • Cut / Copy / Paste • Report Elements • Hyperlinks • Images
Designer Enhancements • Formatting • Display formats • Background colour • Wordwrap • Conditional Cell Definitions • Report Options • Empty report suppression • PDF Bookmarks • Paginated HTML • Alternating background colours • Custom Output Destination • Report Destinations • ProvideX Viewer, Custom output objects • Saving the Report
Defining the Data • New Input Sources • Support for external databases using Views: • ODBC • Oracle • DB2 • Reports with no input source are supported • Output consists of page header, report summary and page footer. • Defining the Data / Selecting the Input Source
Defining the Data • Expanded Custom Sort Sequence • Define up to 16 segments • Defining the Data / Sort Sequence
Defining the Data • Enhanced Data Filters • Filter sets allow multiple sets of conditions • Defining the Data / Data Filters
Enhanced Data Filters All conditions within a filter set must be true for the set to be true If a filter set is not true, the sets are evaluated in sequence until one is true Option to accept/reject the data if the set is true If no set is true, result is based on the inverse of the last filter set Allows logical OR and NOT processing Defining the Data • Defining the Data / Data Filters
New Group Option Page Reset Reset page number to one whenever group changes Conditional Detail Groups Multiple detail line groups Associated conditions determine which group to use to display a record Grouping the Data • Defining the Data / Data Filters
Editing Features • Cut / Copy / Paste • Contents • Format • Font • Colour • Alignment • Borders • Conditions • Internal only – Does not use Clipboard • Creating the Report Layout / Editing the Layout
Report Elements • Hyperlinks • For HTML output • Creating the Report Layout / Selecting Report Elements
Report Elements • Images • Supported on Windows and WindX systems • Supported on UNIX and Linux systems using *PDF* channel and .jpg images only • Options include resizing and alignment • When combined with a hyperlink in HTML output, becomes a clickable image • Creating the Report Layout / Selecting Report Elements
Cell Formatting • Display Format Masks • Now supports expressions • Background Colours • Word wrap • Wrap text within defined cell dimensions • Creating the Report Layout / Formatting
Conditional Cell Definitions • Alternate cell definition • Includes contents and formatting • Associated condition • Determines which definition is used when displaying the cell Default SalesYTD>=500,000 • Creating the Report Layout / Conditional Cell Definition
Report Options • General • Suppress empty reports • Bookmark PDF output when group changes • Paginate HTML output when specified group changes • ‘Start new page when group changes’ option must be set at group level • Browser-dependent • Report Options / General Options
Report Options • Colours • To set alternating background colours on detail lines • One or two colours • Options • Default – Uses colours defined in %RW_BgColour1$ and %RW_BgColour2$, if set • On – Uses colours set in Options/Colours interface • Off – No alternating background colours • Report Options / Colours
Report Options • Custom Interfaces • For specifying a custom output destination • User-created output object • Default object • *rpt/useroutput or object specified in %RW_UserOUtput$ • Report-specific object • Report Options / Custom Interfaces
Report Destinations • ProvideX Viewer • Output to the Viewer to preview the report • From the Viewer, output can then be sent to the printer or PDF file • Custom Output • Sends output to a user-created object • Uses (in order of precedence): • The Report Options / Custom Interfaces / Custom Output Destination entry. • Object specified in %RW_UserOutput$ • *rpt/useroutput.pvc • Setting the Report Destination
Saving the Report • Report definition no longer must be saved before generating a report • Allows designer to test the report before saving the definition • Multiple-User Detection • If a report is in use, another user can only open the report in the Designer in read-only mode, or use the SaveAs option to save the definition using a different name • Saving the Report Definition
Object-Oriented Interface • New properties, methods and objects to support all the new features AddAlternateCell( ), AddFilterSet( ), BookMarkPDF, CheckFilters( ), FilterSetCount( ), GetBackgroundColor$( ), GetBackgroundColorOption$( ), GetBackgroundColour$( ), GetBackgroundColourOption$( ), GetDestination$( ), GetDestinationFile$( ), GetDestinationOption$( ), GetFilter( ), GetFilterSet( ), GetSystemVariable$( ), GetSystemVariableCount( ), GetSystemVariableDescription$( ),GetSystemVariableDescriptions$( ), GetSystemVariableLength( ), GetSystemVariables$( ), GetUserOutputObject$( ), GroupCount( ),IsOutputNoChannel( ), IsOutputNoPaging( ), IsOutputPrinterCompatible( ), OutputDevice( ), OutputUser( ), OutputViewer( ), PaginateHTML, RemoveAlternateCell( ), RemoveFilterSet( ), SetBackgroundColor( ), SetBackgroundColorOption( ), SetBackgroundColour( ), SetBackgroundColourOption( ), SetHyperlink( ), SetImage( ), SetUserOutputObject( ), SuppressEmpty, UserLogic, etc. • Object-Oriented Interface
User Interfaces • Optional • Must be created according to User Interface Specifications • Two interfaces: • Logic Object Interface • Custom Output Object Interface • Report Writer User Interfaces
User Interfaces Logic Object Interface • Supplies additional generic logic for processing reports • Can be used to set up the execution environment, load variables, specify new system variables, adjust the report format, manipulate data, reset the environment • Used for all reports • *rpt/userlogic.pvc, or object defined in %RW_UserLogic$ • Report Writer User Interfaces / Logic Object Interface
User Interfaces Logic Object Interface • User Interface Specifications • Properties • UserVariableCount • Functions • Initialize( ) • Reset( ) • UpdateReport(Rpt) • UpdateData$(Data$,Iolist$) • GetUserVariable$(idx) • GetUserVariableDescription$(idx) • GetUserVariableLength(idx) • GetUserVariableValue(idx) • Report Writer User Interfaces / Logic Object Interface
User Interfaces Logic Object Interface • Template provided for user logic object *rpt/rptuserlogic.pvc • Report Writer User Interfaces / Logic Object Interface
User Interfaces Custom Output Object Interface • Used to output the data generated by a report definition • Specify Custom Destination • Report-specific • Default • *rpt/useroutput.pvc, or object defined in %RW_UserOutput$ • Set Output Destination to Custom Output • Report Writer User Interfaces / Custom Output Object Interface
User Interfaces Custom Output Object Interface • User Interface Specifications • Properties • MaxLines • NoChannel • NoPaging • PrinterCompatible • Functions • Initialize(Rpt) • GetIolist$(GroupIdx,LineIdx) • TranslateSpecialChars$(Record$) • PrintLine(Line$) • Close() • Destination$ • DestinationOption$ • DestinationFile$ • Report Writer User Interfaces / Custom Output Object Interface
User Interfaces Custom Output Object Interface • Template provided for user output object *rpt/rptoutput.pvc • Report Writer User Interfaces / Custom Output Object Interface
User Interfaces Custom Output Object Interface • Sample custom output object: DEF CLASS “outputpdf” LIKE "*rpt/rptprinter" PROPERTY Destination$="*pdf*" PROPERTY DestinationFile$=%PDFfile$ END DEF • Code to generate report: %PDFfile$="c:\tmp\sample.pdf" r=NEW("*rpt/pvxreport") r'RunReport("MyReport.pvr") DROP OBJECT r SYSTEM_HELP %PDFfile$ • Report Writer User Interfaces / Custom Output Object Interface
The Future… • Unofficially… • Direct access to Views maintenance • Simpler way to process user-created parameter interfaces • Ability to directly associate group functions (i.e. totals, averages, etc.) with formulas • Easy way to select an entire row/column in the Designer • etc.
THANK YOU! End of Presentation