Trouble viewing this newsletter? Click here to read it online
Dundas Software Ltd. Brought to you by!

Editor's Note: Support Forum

Dundas Software's Support Forum is now live. This forum is the product of the numerous requests I receive every month through e-mail.  Please feel free to create an account and start posting questions or comments. If any support issue is too intricate or complicated to be held in the public forum, our phones and e-mail are available to help you as always.

The goal behind the support forum is to not only have another avenue for you to receive support, but also provide a place for a community to grow. Additionally, since the forum is managed by our support engineers, you can expect accurate and in-depth responses to support questions.

I'd also like to mention that Dundas Software now has a Best Practices for Building Digital Dashboards whitepaper. This whitepaper should provide an excellent starting place if you have no idea what a Digital Dashboard is or how to build one, though it can also be quite useful even if you do.

Terrence Sheflin

In this Issue: October 25, 2006

Send your feedback


Pivot Stage

The .NET DateTime type unfortunately does not support negative times. While this is often not a required feature, consider the situation where you wish to display a Chart that starts at a zero value and shows events both before and after it. In this case, it would be convenient to display the time before the zero line as a negative time, i.e. "-1 minute". Dundas Software has created an add-on which allows you to do just this with our Charting product.

This add-on has been designed to be both easy to use and flexible. The first step to using this add-on is to instantiate an object of type Dundas.Charting.Utilities.PivotStage, which takes your Chart as a parameter. Once this is done, there are several public properties available to customize the output of the add-on. Customizations include the ability to equalize segments (i.e. always put the Y-Axis right in the center of the Chart), and the ability to completely control the X-Axis labels produced. Once customized, the add-on simply needs to know which points to use for the pivot. Points are marked through the MarkPoint(..) function; only one point per series can be marked. Lastly, a call to Pivot() is made which produces the output Chart.

The full article contains in-depth documentation and code snippets on how to use this add-on. As well, source code and a full sample are included to get you started. It should be noted that this add-on is only available for Visual Studio 2005 (.NET 2.0) due to its use of collections.

Tips n' Tricks Chart | Gauge | Map

General Tips

Dundas Chart for .NET - OLAP Services v5.5 Now in Beta!
This month marks the release of the Beta version of Dundas Chart for .NET - OLAP Services version 5.5. One of the main features of this new release is the introduction of the grid control. This means end users can complement their charts with a numerical analysis that allows for a more complete overview of multidimensional data. Another feature of this new release is that we have changed the core Chart within our OLAP product from version 5.0 to 5.5. Because of this, all of the new Chart v5.5 functionality, such as scale breaks, 2D drawing effects, and much more will now be available in our OLAP product. The Beta program provides a download of our product which is free and unrestricted.
read more »

Client Side Functionality Available for Reporting Services Products
During run-time all Dundas products for Reporting Services are rendered as report item images. Thus, all Reporting Services controls are limited by the interactivity provided by Microsoft for the Reporting Services Image Control. That said, there is some client side functionality available for controls for Reporting Services:

  • Tooltip for the entire control
  • Drill-down to another report or website in a new or existing browser window using hyperlinks
  • Ability to change the data the report is using through report parameters. This functionality allows the user to specify filters during run-time
Adding client side functionality can greatly increase the ease of usability of your reports for the user.

Dundas Controls in Reporting Services 2000
All Dundas Reporting Services products are designed for Microsoft Reporting Services 2005. However, it is possible to use Dundas ASP.NET controls in reports for Microsoft Reporting Services 2000. Any Dundas control that supports BinaryStreaming can be used in this manner. While the specific steps are outlined in the full article, the summary of the process is as follows:

  1. Setup an ASP.NET environment and drop a Dundas control onto a web-form.
  2. Delete all HTML tags on the ASP.NET page aside from the Dundas control
  3. Set the RenderType of the Dundas control to BinaryStreaming.
  4. Add this.Page.Response.Charset = ""; to the Page_Load event.
  5. Create a new report for Reporting Services 2000 and add an Image control to the report.
  6. Point the Image control to the created webpage that contains the Dundas control.
read more »

Image Animation Demo
The growing animation demo shows how Chart can be manipulated on the client-side through JavaScript in order to animate it. This particular effect can be very useful in dashboards or other data aggregation views where you may want to hide the bulk of the Chart data until the user wishes to see it. This has the benefit of saving screen space for other things until a detailed look at the Chart is required.

Image Animation Demo

This demo also uses the Chart control for both the small icon and the large picture. While this is convenient to show that Dundas Chart is robust, a static image can also be used for the icon to save resources and bandwidth.
The full article contains the source code for this sample.
read more »

How to use Dundas Chart for ASP.NET in IIS6 Isolation Mode
With IIS6, many new and exciting features are available to serve website content that were not available previously. One such feature is WebGarden Application Pooling.

Dundas Chart v5.5 can be used in a WebGarden environment with no modifications if none of the rich client-side features have been enabled, such as zooming and scrolling and the toolbar. However, if these features are used, a few changes are required in order for Chart to work properly and are necessary due to the way WebGarden memory is shared across processes by IIS. Please refer to the full article for a step-by-step explanation of what is required when using Dundas Chart v5.5 in a WebGarden environment with rich client-side features.
read more »

Performance and Optimization
Dundas Gauge for .NET has several different factors affecting its performance. These optimization techniques can greatly increase performance while still being easy to change. Before listing the optimization techniques, it is important to identify the main issues that affect performance on each platform:

There are two main areas of concern for performance and optimization, they include:

  1. The amount of time it takes the gauge control to render the image. This is largely related to the complexity, and size of the Gauge image.
  2. The amount of time it takes to stream the gauge image from the server to the client, which is directly proportional to the size of the gauge image generated.

Windows Forms
The refresh rate, which is set using the RefreshRate property, determines how often the control is refreshed. The refresh rate is measured in redraws per second, and the lower the refresh rate, the greater the overall performance of the gauge.
Decreasing the refresh rate may cause the motion of pointers in the gauge to become "choppy" or erratic. Since the refresh rate impacts performance more significantly than any other single factor, it is important to strike a fine balance between an optimal refresh rate, and performance desired.

Since the main issues affecting performance have been identified, the properties that can increase performance can now be considered. Below is the major factors and their associated properties so that you can quickly make changes to Gauge within your own project.

  1. (ASP.NET only) Image Size and Type - Controlled through the RenderType property as well as the Width and Height properties of Gauge.
  2. AntiAliasing - Two properties are available for AntiAliasing: AntiAliasing and TextAntiAliasingQuality.
  3. Frames - The BackFrame object within Gauge controls this.
  4. Calculated Values - Contained within the Values collection.
  5. Gradient Colors - These colors are controlled by a variety of properties in each class which they can appear in.
  6. Semi Transparency - When using the Color.FromArgb() function, the alpha value controls transparency.

For more information, including information on why these specific properties are important to performance, please refer to the article Performance and Optimization within the help documentation.

How to Reduce Map Storage Space Through Simplification
In the Dundas Map control, imported shapes can be highly detailed and it can take megabytes of space to store information about all of the points and segments that make up the shapes. Sometimes, this is so much information that the control reacts slowly. If your Map control's maximum zooming range (set in MapControl.Viewport.MaximumZoom) does not need this level of detail to display your shapes, consider using simplification to remove some of it.

Dundas Map includes a Simplify() method to perform simplification automatically. Simply call this method and supply a float value argument as your desired simplification factor. The argument should be greater than zero, but the value that you choose depends on how closely you can zoom into your map, and how much detail you feel is needed.
read more »

Dundas Q & A Chart | Gauge | Map

Chart for .NET

Q. I have MSDN and/or Visual Studio 2005 documentation present, but when I install the Chart, I get an error that says "The installer has determined that no Microsoft Help Viewer is present. The documentation will not be installed."
A. In order to run the stand-alone Chart documentation, the Chart install requires the Microsoft Help 8 viewer to be present in its default location. If this location is different on your machine, you will need to manually install the Chart documentation. This is a simple process, and is outlined in the full article.
read more »

Chart for Reporting Services

Q. Why does my pie chart legend show incorrect labels?
A. In Dundas Chart for Reporting Services, the Series Label is set by default so that each data value field displays as a single item in the legend, for all chart types except for Pie and Doughnut. Pie and Doughnut chart types show X-values (labels for each pie slice) in the legend, so for these cases you will need to clear the Series Label property and set the Value X property:
  • Open the Chart Designer by right-clicking your chart and choosing Properties
  • Click on the Data tab
  • Double-click on your data value field or Series
  • Clear the Series Label property
  • Set your Value X property to the data field that you want to display as labels for your slices

Q. How do I set tooltips for data-points, series or other items within Chart for Reporting Services?
A. Due to a limitation in Microsoft's implementation of Reporting Services only one tooltip per control is available. This is a limitation that effects all controls for Reporting Services, not just Dundas'. As such, there can only be a tooltip over the entire Chart, not elements within the Chart. The release of Reporting Services 2007 will include support for multiple tooltips, so this functionality will be available at that time.

Gauge for .NET

Q. How can I paint Dundas Gauge onto a device context?
A. Dundas Gauge for Windows Forms can be painted onto any Device context reference returned by the Device Handler pointer. The static class Graphics returns a reference to a Graphics object related to a device handler by invoking the Graphics.FromHdc(IntPtr) method and providing a reference to a device.

All device context objects hold a reference to the Graphics object which is responsible for the paint tasks of the device context. The code to do this looks something like the below:
C#: this.chart.Printing.PrintPaint(Graphics.FromHdcInternal(pointer), new Rectangle(0, 0, 100, 100));
VB.NET: me.chart.Printing.PrintPaint(Graphics.FromHdcInternal(pointer), new Rectangle(0, 0, 100, 100))

Map for .NET

Q. Why can I still pan and zoom using the keyboard and mouse after disabling panning and the zoom panel?
A. The Viewport.EnablePanning property disables mouse panning, which is done by clicking and dragging the mouse image across the screen. To disable keyboard panning, also disable the KeyboardNavigation property. Similarly, zooming in and out can be achieved using the mouse scroll wheel, even if the ZoomPanel is disabled. To disable this ability, set the MouseWheelZooming property to false.
read more »

Map for Reporting Services

Q. How do I use paths, symbols or groups with my data instead of shapes in Reporting Services?
A. The Map Designer's Data Appearance tab in Dundas Map for Reporting Services provides the ability to associate your data with only one type of element. To change this element type:
  • Right-click on the map and choose Properties to open the Map Designer
  • Click on Advanced
  • Select (Map Control) from the drop-down menu at the top
  • Change the FieldType property to Shape, Path, Symbol or Group
  • Now your selected element will be available to set in the Data Appearance tab of the Map Designer

The Data Appearance tab is just one place that you can use "rules" to visualize your data. By going to the Advanced tab of the Map Designer, you can add whatever combinations of shape, path, symbol and group rules that you like. All of these types of rules are very similar, but are described in detail in our documentation.