Abstracted Dynamic Report Definition Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing report definition systems are inflexible due to embedded database connection information and statically defined mapping relationships, leading to invalidation and manual updates when database schema changes occur, which complicates report migration and development dependencies.
Innovation Solution
A computer-implemented method for abstracted dynamic report definition generation that separates report definitions from database-specific properties, using a generalized description to identify resources and dynamically translate implementation details for data retrieval, allowing for runtime mapping and decoupling from physical data sources and report engines.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If report definitions embed database connection information and database schema, then report definitions can be created with specific data source details, but report definitions cannot be moved between different reporting products and must be recreated when database schema changes
Solution Approach 1:
The system segments the report definition into two independent parts: a report definition file containing generalized data descriptions without database-specific properties, and a mapping definition file containing the database-specific mapping relationships. This segmentation allows the report definition to be portable across different reporting products while the mapping can be adapted to specific database schemas.
Solution Approach 2:
The system introduces a mapping definition as an intermediary layer between the report definition and the actual database. The mapping definition contains mapping relationships that connect generalized data descriptions to specific database tables and columns. This intermediary allows report definitions to remain generic and portable while still accessing specific database structures through the mapping layer.
2Reliability
If mapping relationships are statically defined in back-end code, then data retrieval connections are established, but manual updates and service rebuilds are required whenever database schema changes
Solution Approach 1:
The system transforms static mapping relationships defined in back-end code into dynamic mapping definitions stored in machine-readable files. The mapping definitions can be loaded and updated at runtime without requiring service rebuilds. The system dynamically loads mapping definitions from files and uses them to establish data retrieval connections, allowing flexible adaptation to schema changes.
Solution Approach 2:
The system enables self-service updates of mapping relationships by storing mapping definitions in external files that can be modified without requiring core reporting team intervention or service rebuilds. The reporting service automatically loads updated mapping definitions from files, allowing operational teams to adapt to database schema changes independently.
3Reliability
If mapping relationships are statically defined in back-end code, then data retrieval connections are established, but core reporting team dependencies are created when new views need to be exposed
Solution Approach 1:
The mapping definition file serves as an intermediary that decouples the reporting service from direct dependencies on core reporting team code changes. Developers can define new mapping relationships in the mapping definition file without requiring modifications to back-end code or involvement of the core reporting team, enabling independent development of new report views.
Solution Approach 2:
The system creates a universal mapping definition format that can accommodate various data sources and report requirements without requiring custom back-end code for each case. The mapping definition file structure allows different teams to independently define mappings for different data sources and views using the same standardized format.
Data Source
AI summary
A computer implemented method, data processing system, and computer program product for abstracted dynamic report definition generation within an information technology infrastructure. When a request to generate a report is received, report definition associated with the requested report is identified, wherein the report definition comprises a generalized description of desired data in the report without any database-specific properties. The resources which are able to provide the desired data using report instance parameters in the report definition are then identified. Responsive to determining the resources that are able to provide the desired data, the generalized description in the report definition is translated into report content generation engine-specific implementation details and actions. The translated report content generation engine-specific implementation details and actions are executed to obtain the desired data from the resources. A report may then be generated based on the resulting output.


