Projects:GenericTreeReport Technical Documentation
Contents |
Purpose of the Project
The purpose of this document is to describe the Technical Specifications required for a new extension module called Generic Tree Report.
Introduction
This Technical Specification document outlines the implementation of Generic Tree Report feature.
High Level Functional Requirements
This module will provide the following functionalities:
- 1. To create a report that renders the tree/hierarchical view among the records in a specified table.
Technical Implementation
Module Definition
- Name: Generic Tree Report
- Java Package: org.openbravo.module.generictreereport
- Description: This module is intended to provide a report that show the tree/hierarchical representation among the records in a selected table.
- Help/Comment: This module is intended to provide a report that show the tree/hierarchical representation among the records in a selected table.
- Translation Required: checked
- Module Language: English
- License Type=OBPL
- License Text=Licensed under the Openbravo Public License version 1.0. You may obtain a copy of the License at http://www.openbravo.com/legal/license.html or in the legal folder of the Openbravo ERP core distribution.
- Author/Licensor = Openbravo S.L.U
- URL = forge.openbravo.com/projects/generictreereport
- Dependency with: core
- DB Prefix:GTR
High Level Technical Requirements
In order to implement the functionality, the following high level technical requirements are needed.
- 1. Two different windows are to be new developed.
- 1.1 Generic Tree Report Setup window - The following fields are to be added in this window
- 1.2 Generic Tree Report window - The following fields are to be added in this window
- 2. Need to create a new table that holds all the tree reports.
- 3. Need to write a java logic that returns list of trees present in a tablet,
- 4. Based on the result from java servlet code, render the tree output using JRXML. (see the sample report at Tax Tree View Report section)
Application Dictionary Changes
- 1. New window is to be developed to create and store the generic tree reports with appropriate fields (for e.g. Table Name, Primary Id Column, Is Summary Column and Parent ID Column).
- 2. New Process window is to be created to generate the report with the parameter tree_report_id.
- 3. New Table References are to be created to populate the fields (for e.g. Table Name, Primary Id Column, Is Summary Column and Parent ID Column)
- 4. New JRXML file is to be created to render the tree output.
Database Changes
New Table GTR_TREE_REPORT
CREATE TABLE "TAD"."GTR_TREE_REPORT" ( "GTR_TREE_REPORT_ID" VARCHAR2(32 BYTE) NOT NULL ENABLE, "AD_CLIENT_ID" VARCHAR2(32 BYTE) NOT NULL ENABLE, "AD_ORG_ID" VARCHAR2(32 BYTE) NOT NULL ENABLE, "ISACTIVE" CHAR(1 BYTE) DEFAULT 'Y' NOT NULL ENABLE, "CREATED" DATE DEFAULT SYSDATE NOT NULL ENABLE, "CREATEDBY" VARCHAR2(32 BYTE) NOT NULL ENABLE, "UPDATED" DATE DEFAULT SYSDATE NOT NULL ENABLE, "UPDATEDBY" VARCHAR2(32 BYTE) NOT NULL ENABLE, "REPORT_NAME" VARCHAR2(32) NOT NULL ENABLE, "ISSUMMARY_COL_NAME" VARCHAR2(32) NOT NULL ENABLE, "PARENTID_COL_NAME" VARCHAR2(32) NOT NULL ENABLE, "PRIMARYID_COL_NAME" VARCHAR2(32) NOT NULL ENABLE, "AD_TABLE_ID" VARCHAR2(32 BYTE) NOT NULL ENABLE, CONSTRAINT "GTR_TREE_RPT_ISACTIVE_CHK" CHECK (ISACTIVE IN ('Y', 'N')) ENABLE, CONSTRAINT "GTR_TREE_RPT_PK" PRIMARY KEY ("GTR_TREE_REPORT_ID") ENABLE, CONSTRAINT "GTR_TREE_RPT_AD_CLIENT_FK" FOREIGN KEY ("AD_CLIENT_ID") REFERENCES "TAD"."AD_CLIENT" ("AD_CLIENT_ID") ENABLE, CONSTRAINT "GTR_TREE_RPT_ORG_FK" FOREIGN KEY ("AD_ORG_ID") REFERENCES "TAD"."AD_ORG" ("AD_ORG_ID") ENABLE, CONSTRAINT "GTR_TREE_RPT_AD_TABLE_FK" FOREIGN KEY ("AD_TABLE_ID") REFERENCES "TAD"."AD_TABLE" ("AD_TABLE_ID") ENABLE );