Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
The JDBC Datalist Database Binder (Report) is a Datalist Binder that enables data aggregation and data pivoting using SQL queries.
Lets understand little bit about data aggregation and data pivoting.
Pivoting
Pivoting refers to the process of transforming rows into columns or, more generally, reorganizing data from a long format to a wide format. It is typically used when you have data that needs to be presented in a different structure. For example, if you have a table with dates, categories, and values, and you want to turn the categories into columns, you would pivot the data.
Please refer to https://learn.microsoft.com/en-us/sql/t-sql/queries/from-using-pivot-and-unpivot?view=sql-server-ver16 to read more on pivoting.
Aggregating
Aggregating involves performing a calculation on a set of values to return a single summary value. Common aggregate functions in MySQL include SUM, COUNT, AVG, MAX, and MIN. Aggregates are used to summarize or extract information from a dataset, such as finding the total, average, or maximum value in a column. Aggregates are typically used in conjunction with the GROUP BY clause to perform calculations on groups of rows based on a common attribute.
Please refer to https://www.simplilearn.com/tutorials/sql-tutorial/sql-aggregate-functions to read more on the aggregation.
Plugin Available in the Bundle:
JDBC Datalist Database Binder (Report)
This plugin bundle is compatible with Joget DX 8.
a
fd
Figure 1: Configure JDBC Datalist Database Binder (Report)
Name | Description |
---|---|
Datasource |
By selecting Default Datasource, the database your Joget is currently using will be selected. |
Custom JDBC Driver | Custom JDBC Driver. This field is required when Custom Datasource is selected in Datasource above. Example: |
Custom JDBC URL | Custom JDBC URL. This field is required when Custom Datasource is selected in Datasource above. Example: |
Custom JDBC Username | Custom JDBC Username. This field is required when Custom Datasource is selected in Datasource above. |
Custom JDBC Password | Custom JDBC Password. This field is required when Custom Datasource is selected in Datasource above. Test the connection parameters Click on the "Test Connection" button at the bottom of the page to quickly test out your configurations. |
SQL SELECT Query * | The SQL query specific to your database type (MySQL, MSSQL, Oracle, etc.). Use question mark ? in your query to represent the primary key or foreign key. Example SELECT * FROM app_fd_table WHERE id = ? If a column name contains reserved keywords, do ensure it is encapsulated properly. For example for MySQL, if the column identifier itself contains a dot symbol ( . ), it should be encapsulated like this: SELECT `myAppName.myColumn` FROM app_fd_myTable; Table & Column Naming
This is the query to fetch all columns. E.g.: SELECT * FROM dir_user |
SQL Select Query (Data) * | This is the aggregated query to group and summarize data from the database. E.g.: SELECT locale, active, COUNT(active) as `count` FROM #data# GROUP BY active, locale |
Primary Key * | Primary key to uniquely identify each row of the table. |
Pivot Data | If checked, Pivot Column Name, Pivot Value Column Name, and Value to Fill Up Empty Cell will be shown. |
Pivot Column Name * | Refers to selecting the field or column in your dataset that you want to use as a basis for creating columns or headers in the pivot table. Multiple columns supported. Separate multiple columns using semicolon. (e.g. year;customer) |
Pivot Value Column Name * | Refers to the field or column in your dataset that contains the data you want to summarize or aggregate in your pivot table. Multiple columns supported. Separate multiple columns using semicolon. (e.g. outstanding;paid) |
Value to Fill Up Empty Cell | The value to fill up if there is an empty cell. E.g. 0.00 |
1. Create a datalist and attach this plugin as source of data at "Select Data Store".
Figure 2: List Builder Select Data Store
2. Fill in the plugin configurations as shown in Figure 1.
3. If everything is filled appropriately, you can preview the pivot table.
Figure 3: List Builder Preview
4. Create an UI using UI Builder. You can pair this plugin with EChart Userview Menu Plugin to dynamically change the chart value and shape based on the datalist value. "Show Filters" must be enabled so that you can dynamically change the chart display parameters. Under "Data Mappings", attach the List created previously.
Figure 4: UI Builder
5. Save and return to the front end UI. We can see the List attached with the EChart. Below shows that filter is not used.
Figure 5: Pivot table with EChart without filter
6. 2021 is entered at "year" filter. You can see that the datalist dynamically changed based on the filter. The EChart's value was also updated based on the modified datalist.
Figure 6: Pivot table with EChart with "year" filter