JSDC - Javascript data components
What files do JSDC consist of?
When using JSDC, one starts all implementations in the main web page file with including (like <script type="text/javascript" src="JSDC/datatable.js"> </script>) the files one need.
Actually, to help with development, JSDC automatically tells you if you try to create objects who's implementations you haven't included.
To determine what files you need to include, look below:
-
Application level:
- application.js
Contains the application class and application-wide settings.
When you are using anything from JSDC, you're likely to include this file aswell.
-
Core JSDC data handling:
- datatable.js
The datatable class loads and holds the actual data, like a database table would.
Is responsible for propagating changes to dataviews using the data.
- dataview.js
Query engine, query cache, master-detail, data manipulation, event handling and aggregate calculations. And more.
Perhaps not surprising, most of JSDC:s heart is beating here.
Data-aware objects:
In JSDC, the acronym DAO stands for data-aware-object(Do not confuse with Data Access Object(yeah i know, it's was a stupid choice)).
The following files contains the implementations of the ones available in JSDC.
- dao_select.js
Makes select-element data-aware, populates and handles change events and so on.
- dao_table.js
Can populate a table-element and supports editing, events, aggregates(can have a summary line) and deletion of rows.
- dao_tree.js
Populates a supplied table-element and generates a clickable and traversable tree-structure from nodeid and parentnodeid fields.
- dao_input_group.js
Not implemented yet but is supposed to handle a group of HTML data input elements.
Helper files (and functions):
- transcoding.js
Provides support for different encodig/decoding schemes.
- validation.js
Rudimentary input validation is built into JSDC and is implemented here.
NOTE: This project is not actively maintained, however, parts of this project has moved to the Business Process Management System Optimal BPM. Check out that later on.