Renderer for DeepSee Dashboards in Browser with MDX2JSON as a Serverside and JS web-client.
Developed using AngularJS and Bootstrap.
This is newly rewritten DeepSeeWeb with TypeScript & Angular 10!
Current version is alpha!
Some features of new version:
- Clean navigation
Now user can clearly see and navigate to dashboards via breadcrumbs, changing namespace, etc. Query parameter "ns" for namespace was gone. Now url constructed by following rule "/namespace/folder/folder/.../dashboard.dashboard", eg. http://mysite.com/dsw/#/IRISAPP/Test/Countries.dashboard
- Redesigned login screen
- New sidebar with main menu
Now user can easly see options available for each screen and change settings
- More clean dashboards. Colors adjusted to show important data, whilst other information displayed in light colors. Also new design is more suitable for large screens. Top - new design, buttom - old:
- Clean widget actions
- Redesigned styles for filters, modals
- Added service workers to improve application startup
- Now all libs(eg. Highcharts, gridster) can be easily updated via npm
- Removed a lot of old code(300k+ lines) and refactored services
- Changed widget classes to more OOP style, removed all prototypes, etc.
- Changed templates to take advantage of component approach
- user addons, beacuse old addons has been written on Angular1 (but base addons as map, html text, worldmap are included in bundle already)
- changing app settings via UI(only configs supported)
- color adjustments and theming
- some specific widget settings or features(eg. changing type of chart)
This features will be implemented soon and are to be included in RC
- Area chart
- Line chart
- Chart with markers
- Bar chart
- Column chart
- Pie chart
- Time chart
- Pivot table
- Text widget
- Combo chart
- Bubble chart
- Hi-Low chart
- Quadtree chart
- Bullseye chart
- Speedometer
- Fuel gauge
-
First be sure, that you have MDX2JSON installed. To test it open URL
<server:port>/MDX2JSON/Test
You should see something like this:{ "DefaultApp":"\/mdx2json", "Mappings": { "Mapped":["MDX2JSON","SAMPLES" ], "Unmapped":["%SYS","DOCBOOK","USER" ] }, "Status":"OK", "User":"UnknownUser", "Version":2.2 }
-
Download the latest release xml file: https://github.com/intersystems-ru/DeepSeeWeb/releases
-
Import it to any Caché namespace, f.e. to USER.
-
Run in terminal:
USER> d ##class(DSW.Installer).setup()
It will:
- create /dsw web app,
- create ...csp/dsw folder
- put all the necessary DeepSee Web files into .../csp/dsw folder.
To use DSW Open server:port/dsw/index.html
Demo: https://www.youtube.com/watch?v=-HplM12eNik
Sometimes after installation you can see umlyauts in the client. like in the shot: To fix this there are tow ways:
- Copy index.html to index.csp and try to connect to it same way you do with index.html page. Symbols should go in Unicode now.
Or:
- Write your current codepage setting in CSP Gateway for the files:
zw ^%SYS("CSP","DefaultFileCharset")
This setting should be "utf-8". If there is another setting, save it somewhere and change to "utf-8"
So this should fix it:
set ^%SYS("CSP","DefaultFileCharset")="utf-8"
DeepSeeWeb allows modification of exist widgets and custom widget registration as well.
For base widget class methods and properties description please read Addons.
To setup custom widget simply copy widget js file to /addons
folder.
For custom widget example, please look at src/factories/customWidget.js. This is simple custom widget that represents html5 canvas for drawing.
User can create or use custom themes, more about it here: Custom themes.
Though DeepSeeWeb source goes with MIT License it uses hicharts.js for visualisation of several widgets so please obey the Highcharts license when use DeepSeeWeb for commercial applications. According to Highcharts license it's free for non-commercial usage
Here is the article on InterSystems Developer Community describing DSW features and capabilites.