WebReport

Implementation

  • True thin client solution: report design and execution are performed using a web browser, does not require installation or download of any components to client computer
  • Server-side components run on Windows Servers
  • Database-based central repository (report definitions), implemented using Microsoft SQLServer or SQLServer Express
  • Multi-platform design and use: reports may be designed and executed using major web browsers from various operating systems
  • Reports may be optimized for running on mobile devices
  • Side-by-side deployment of multiple instances of Arnica WebReport modules on the same server
  • Scalability by distributing workload against multiple Arnica WebReport modules deployed on multiple servers in a web farm environment
  • Database access account name and password may be pre-configured in design environment and used by multiple reports
  • No deployment required for reports
  • Compatibility with portals, both prompted parameters page and report output may be presented in a portlet on a portal container page

Data Sources

  • Request types:
    • Connect string
    • ODBC data source
    • Adhoc queries
    • Queries against tables and views
    • Queries against stored procedures
    • Data from file
    • Data generated by script
    • Data posted to report as XML
    • Data retrieved via web request (GET)
    • Data retrieved via web request with posted XML (POST)
    • Data retrieved via web request with posted HTML form data (POST)
  • Supported databases:
    • Microsoft SQLServer
    • Oracle
    • MySQL
    • Microsoft Access
    • IBM DB2
    • Microsoft Excel
    • Microsoft Access
    • DBF files
    • XML files (element based)
    • XML files (attribute based)
    • ODBC data source

Activity Logging, Debugging and Tracing

  • Activity logging - successful report execution events, access denied events, failed authentication events, report meta data update events, system failure events and others, with additional data captured per event, such as date and time, user identity, report identity, time taken, browser signature, etc. Activity data is captured in a database repository from multiple report modules and servers for central analysis and monitoring
  • Report module tracing with various levels of detail: SQL query execution, web request results, internal expression evaluation results, call stack information, time taken per trace event, etc.
  • Error logging with configurable output: to error log file, to browser window or to database repository. Error events captured in database repository from multiple report modules and servers may be centrally analyzed, monitored and further distributed via email to support staff.

Filters

  • Intelligent filter implementation: send with the query to data tier, or apply locally in middle-tier against retrieved result set, based on the query type
  • Various filter operator options: =, >, <, =>, <=, <>, NOT, IN, LIKE
  • Filter operator presets for character data: Starts With, Includes 
  • Filters in adhoc queries using evaluatable expressions
  • Record condition script-based filter

Meta Data Repository Multiple Reports Actions

  • Meta data search
  • Mass-updates
  • Multiple report import
  • Multiple report export
  • Database API to access meta data in read and update mode

Templates

  • Separate templates for various atomic parts of the report:
    • Report output page template
    • Report prompt page template
    • Report dialog page template
    • Report help page template
    • Report header and footer content template
    • Data table caption template
    • Column caption template
    • Data group header and footer template
    • Report total footer template
  • Report template, which accumulates templates for all atomic report parts in one entity, may be shared between multiple reports
  • Save report as report template to instantly create reusable entity 

Access Control

  • Zero-programming effort access control via integration with Arnica UnifiedLogon:
    • Identification
    • Authentication
    • Authorization
    • Single sign-on
    • Access to individual users
    • Access to user groups
    • Access to individual reports 
    • Access to report groups
    • Access control events in activity log (for example to monitor access violation events)
  • Programmatic access control by using any .NET authentication and authorization techniques on report initiator ASP.NET page

Data Management

  • Adhoc single column sorting: ascending, descending, by click on column
  • Adhoc single column data grouping: ascending, descending, by click on column
  • Composite sorting by inclusion of multiple columns in sort definition
  • Composite data grouping by inclusion of multiple columns in group definition
  • Present report with no grouping
  • Present report with grouping headers and footers and detailed records within each group
  • Present report with grouping headers and footers only, hiding detailed records

Wizards

  • Create completely functional reports from adhoc query
  • Create report filters and prompted parameters based on existing columns 

Aggregate Calculations

  • Aggregate calculation per data group, per column
  • Aggregate calculation for entire report, per column
  • Aggregate calculation types:
    • Maximum
    • Minimum
    • Average
    • Sum
    • Serialization

Prompted Parameter Features

  • Automatic or mandatory prompt page
  • Different styles for prompt and report output pages
  • Custom header and footer content on prompt page
  • Custom labels for prompt page parameters
  • Adjustable sequence of prompted parameters
  • Expression-based initial values for prompted parameters
  • Prompted parameters with mandatory and optional user input
  • Prompted parameter values may be presented as drop-down list of predefined values or set of values retrieved dynamically from real-time SQL query
  • Conditional display for selected prompted parameters

Styles

  • Report uses customizable templates to present its pages; templates may incorporate style solutions as in any other HTML page: using CSS, inline style, attribute-based styles
  • General-purpose default CSS is included with Arnica WebReport; the CSS may be further customized to incorporate any style requirements
  • Shared CSS is referenced by configuration.ini file and is used by all reports
  • Private CSS may be specified per individual report
  • All style descriptions use standard CSS and HTML language techniques 
  • WebReport supports conditional column cell formatting (color, font, background, etc.) based on current data record values
  • HTML printing, with intelligent page breaks, and specification of page range

 Column Hyperlink Feature (Drill Down or Drill Up)

  • Column hyperlink may be enabled by checking property "Hyperlink" at design time
  • Click on hyperlink engages server-side logic, which may be one of following:
    • Execute web request and display content
    • HTTP redirect
    • Display content saved with hyperlink definition
    • Display content from file
    • Execute script and display result or redirect to specified location

Toolbars

  • Arnica WebReport provides standard toolbars and ability to create custom toolbars
  • Toolbars may be displayed above or below report data table, both
  • Custom toolbars may be created and displayed separately on output page and prompt page
  • Custom toolbars may include multiple rows with multiple toolbar items
  • Each toolbar item may be presented as a hyperlink or a button
  • Click on a toolbar item engages server-side logic, which may be one of following:
    • Execute web request and display content
    • HTTP redirect
    • Display content saved with toolbar item definition
    • Display content from file
    • Execute script and display result or redirect to specified location

Batch Actions

  • Batch action execution against selected records
  • Batch action is executed server-side in the data context of each selected record
  • Batch action may be one of following:
    • Web request
    • Script, including database queries
  • Report provides users with client-side tools to select one or many records in the report, including from multiple pages, then select one of the predefined batch actions for execution
  • Report designer may implement multiple batch actions per report

Business Rules

  • Business rule is a set of actions pre-defined by report designer, which may be executed at different stages of report instance life cycle:
    • Before data load
    • After data load
    • Before batch actions
    • After batch actions
  • Business rule may analyze existing data, acquire additional data, and change report execution workflow, including canceling current execution and redirecting to another report 
  • Business rules are server-side actions and may be implemented as:
    • Web request
    • Script, including database queries

Report Customization by End Users

  • Report includes optional features to allow end users to customize report presentation from what was predefined by report designer
  • Possible customization options are:
    • Hide or display columns
    • Change columns position
    • Hide or display prompted parameters (filters)

Export Types

  • By default, report is rendered as HTML output; report data may be exported to following formats:
    • Microsoft Excel (binary legacy format)
    • Microsoft Excel (SpreadsheetML format)
    • PDF (requires additional components)
    • XML (element based)
    • XML (attribute based)
    • Text (CSV format)

Application Programming Interface (API)

  • Arnica WebReport provides a rich set of web services APIs (REST services, GET requests), as well as database APIs to access meta data
  • Web services APIs provide broad compatibility with most of contemporary development tools, platforms and portals
  • In most cases, a link to report is all that is needed to execute and reuse report
  • Use of APIs is needed for advanced functionality to gain access to more granular report functionality

Integrated Help Page

  • Report designer may create help content per report, which describes specific features per report to help users maximize productivity
  • Report-specific help content is merged with help page template, which is part of general report template and may be re-used by different reports
  • End users access help page via dedicated toolbar icon, consistently positioned on different reports