550 likes | 770 Vues
Adding data visualization to windows applications with codejock. Peter Bragg Care Data Systems www.donorflex.com. Why you should never tell your boss what your presentation is about!. Peter Bragg Care Data Systems Limited www.donorflex.com. Agenda. Theory Codejock Chart Pro
E N D
Adding data visualization to windows applications with codejock Peter Bragg Care Data Systems www.donorflex.com
Why you should never tell your boss what your presentation is about! Peter Bragg Care Data Systems Limited www.donorflex.com
Agenda • Theory • Codejock Chart Pro • sigCjChart Class • Practical • sigCjChart demo • Dashboards • Do codejock components provide a viable solution?
CodejockXtreme Chart Pro • Part of Toolkit Pro • Appeared v15.0.1 • Charting Component • Illustration tool • NOT a reporting component • NOT a business intelligence tool
CodejockXtreme Chart Pro Comprises of over 75 classes: • Appearance • Axis • Border • Content • Global Settings • Diagram • Element • Fill Style • Font • Legend • Line Style • Marker • Number Format • Palette • Series • Series Label • Series Point • Series Style • Title • Tooltip • Chart Control
CodejockXtreme Chart Pro Comprises of over 75 classes: • Appearance (1) • Axis (12) • Border (1) • Content (1) • Global Settings (1) • Diagram (5) • Element (1) • Fill Style (1) • Font (1) • Legend (1) • Line Style (1) • Marker (1) • Number Format (1) • Palette (1) • Series (2) • Series Label (8) • Series Point (2) • Series Style (29) • Title (2) • Tooltip (1) • Chart Control (1)
CodejockXtreme Chart Pro What is a diagram? A diagram is an area within a chart control in which you will place a chart or charts. The control may contain any number of diagrams. A chart control object would typically contain just one diagram. The first image (top right) shows a chart with two diagrams. The second image (bottom right) shows a chart with three diagrams.
CodejockXtreme Chart Pro What is a series? In essence a series is a chart within a diagram. Multiple series within the same diagram allow you to overlay different charts on top of each other. The image shows a bar chart, a spline chart, and area chart and a point chart all within a single diagram. The chart comprises of one diagram and four series.
CodejockXtreme Chart Pro Chart Control Diagram (2D) Diagram (Pie)
CodejockXtreme Chart Pro Chart Control Diagram (2D) Diagram (Pie) Series (pie)
sigCjChart Class sigCj Class Library conceptualised. Alcohol blamed. Library revealed. Report Control & Calendar added. Training given. Forum created. Presentation. Snow. Too much snow. Don’t like snow. Time off for good behaviour. Met a spaceman. Xtreme Chart Pro released with v15.0.1 sigCjChart Class first revealed. Alcohol required! Please.
sigCjChart Class Design Objectives: • Model should be as simple as possible. 75 classes is too many! • Be dynamic, where possible, wherever appropriate. • Make no assumptions as to where data is coming from. Minimum Requirements: • Visual DataFlex 15.1 or higher (RefClass(), RefProc(), etc.) • Codejock 15.2 or higher (3D classes removed)
sigCjChart Class How to handle Diagrams and Series? • One Diagram Class • One Series Class • Model with methods or objects?
sigCjChart Class Chart Control Diagram (2D) Diagram (Pie) Series (pie)
sigCjChart Class Chart Control Object Diagram Object Diagram Object Series Object – Bar Style Series Object – Pie Style Series Object – Line Style
sigCjChart Class • cSigCjChart • cSigCjDiagram (1..n) • cSigCjSeries (1..n)
sigCjChart Class • cSigCjChart • cSigCjDiagram (1..n) • cSigCjSeries (1..n) • OnAddChartData (cSigCjSeries) • AddPoint (Tooltip, X value, Y value x4)
sigCjChart Class • cSigCjChart • cSigCjDiagram (1..n) • cSigCjSeries (1..n) • OnAddChartData (cSigCjSeries) • AddPoint (Tooltip, X value, Y value x4) • ReloadSeriesPoints(cSigCjSeries) • ReloadAllSeriesPoints(cSigCjChart/cSigCjDiagram) • RefreshSeriesPoints/RefreshAllSeriesPoints
Dashboards donorflex dashboard considerations: • Should not require specialist skills • Should be intuitive and easy to configure • Should provide the headlines/an overview • Does not need to offer extensive drill down capability • Needs to incorporate ‘web’ news/’other’ • Should add value but NOT add cost.
Dashboards Possible solutions: • Dynamic AI • Crystal Reports • Own bespoke solution. Codejock...?
Dashboards Dashboard using codejock? • Should not require specialist skills • Should be intuitive and easy to configure • Should provide the headlines/an overview • Does not need to offer extensive drill down capability • Needs to incorporate ‘web’ news/’other’ • Should add value but NOT add cost.
Dashboards Dashboard using codejock? • Should not require specialist skills • Should be intuitive and easy to configure • Should provide the headlines/an overview • Does not need to offer extensive drill down capability • Needs to incorporate ‘web’ news/’other’ • Should add value but NOT add cost.
Dashboards Dashboard using codejock? • Should not require specialist skills • Should be intuitive and easy to configure • Should provide the headlines/an overview • Does not need to offer extensive drill down capability • Needs to incorporate ‘web’ news/’other’ • Should add value but NOT add cost.
Dashboards Dashboard using codejock? • Should not require specialist skills • Should be intuitive and easy to configure • Should provide the headlines/an overview • Does not need to offer extensive drill down capability • Needs to incorporate ‘web’ news/’other’ • Should add value but NOT add cost.