Customizable Data Reporting Module for SSRS Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The expense calculator application faces issues with reporting timeouts on complex reports with large datasets and is dependent on Windows-based SQL Server Reporting Services (SSRS), which limits its platform agnosticism and visibility into reporting engine workings.

Innovation Solution

A customizable data reporting module is implemented using processors and memories to access SSRS files, extract XML content, migrate report layout and database information into Excel and JSON formats, and generate reports in desired formats like Excel, CSV, or PDF, based on user parameters, utilizing ASPOSE templates and JSON settings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If SSRS is used for reporting, then formatted reports can be produced with user-driven inputs, but the system becomes dependent on Windows platform and requires separate installation from SQL server

Engineering Contradiction:
Improveplatform agnosticismVSAvoidinstallation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the reporting functionality from SSRS by parsing its XML definition files and separating the report generation logic into a standalone module that can operate independently of SSRS and Windows platform, achieving platform agnosticism while maintaining report generation capabilities

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary parsing module that converts SSRS XML definition files into an internal representation, acting as a bridge between the original SSRS format and the new platform-agnostic reporting engine, enabling migration without losing functionality

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If SSRS is used for complex reports with large datasets, then reporting functionality is provided, but reporting timeout issues occur with little visibility into engine workings

Engineering Contradiction:
Improvereport generation speedVSAvoidreporting timeout
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements feedback mechanisms by parsing SSRS definition files to extract execution parameters and dataset information in advance, allowing the system to optimize report generation based on known constraints and provide visibility into the reporting process to prevent timeouts

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by parsing and validating SSRS definition files before report generation, extracting layout information, data sources, and parameters ahead of time, so that when actual report generation occurs, the system already has optimized configurations and can execute faster without timeouts

Inventive Principle:
Principle #10Preliminary action

3Reliability

If SSRS reporting engine is used, then reports can be generated, but there is very little scope to remedy reporting timeout issues and limited visibility into engine workings

Engineering Contradiction:
Improvereport generation reliabilityVSAvoidvisibility into engine workings
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent introduces feedback by parsing SSRS definition files to extract execution parameters, dataset schemas, and layout information, providing visibility into what the report will do before execution and enabling monitoring of actual execution against expected behavior to detect and measure performance characteristics

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary parsing and validation of SSRS definition files to extract all report configuration information in advance, creating a detailed internal representation that serves as both a blueprint for generation and a monitoring mechanism to detect and measure execution characteristics

Inventive Principle:
Principle #10Preliminary action

4Adaptability or versatility

If migration from SSRS is implemented, then platform agnosticism is achieved, but existing reports need to be converted and reconfigured

Engineering Contradiction:
Improveplatform independenceVSAvoidmigration effort
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent extracts critical information from SSRS definition files including layout structure, data source connections, parameter definitions, and formatting instructions, separating these concerns into independent components that can be reused across platforms without requiring manual reconfiguration of each element

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a copy of the SSRS reporting logic in a new format by parsing XML definition files and generating equivalent functionality in the platform-agnostic reporting engine, preserving all report behaviors and formats while eliminating SSRS dependencies

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11409943B1System and method for implementing a customizable data reporting module
Publication Date: 2022.08.09 JPMORGAN CHASE BANK NA
  • US11409943B1 patent drawing
  • US11409943B1 patent drawing
  • US11409943B1 patent drawing

AI summary

Various methods, apparatuses/systems, and media for implementing a customizable data reporting module are disclosed. A database stores an SSRS file as an SSRS.RDL file. A processor, operatively connected to the database via a network, accesses the database or a folder path to obtain the SSRS.RDL file; reads an XML content within the SSRS.RDL file; extracts, in response to reading the XML content, report layout information data of a report and database related information data of the report; implements, in response to extracting, a data migration process to store the report layout information data as an excel file and the database related information data as a JavaScript Object Notation (JSON) file; receives a request from a user to generate a report in accordance with a desired file format; and processes, in response to receiving the request, the excel file and the JSON file and automatically generates a custom report based on the desired file format.