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

Editor's Note: Product Updates

This month quite a few products received new release builds. Before I get into that, I would like to mention that the Technical Newsletter has been reformatted for improved rendering in certain mail clients. That said, if it is still rendering incorrectly for you, please e-mail me with the specifics of your mail viewer. In the mean time, the newsletter continues to be available online via the link at the top of this newsletter.

This month's minor version releases: Dundas Chart for Reporting Services version and Dundas Gauge for Reporting Services version have been released. On a similar note, Dundas Map for .NET version has also been released with new capabilities which are discussed later in this newsletter. While the Map build is not a major release, several enhancements have been made to the control. Lastly, Dundas Chart for .NET - OLAP Services has had a major release, version 5.5, which is also discussed below.

The Dundas Software support forum is now in full swing and has addressed quite a few common questions from clients. If for some reason you cannot find information you require on our support site, be sure to check the forums as well.

Terrence Sheflin

In this Issue: November 21, 2006


Send your feedback


Step Column Chart Add-On

The Step Column Add-On converts a simple column chart into a Step Column chart. A Step Column chart is a very efficient way to see the breakdown and composition of a criterion. This type of breakdown is similar to a Gantt chart.

This add-on simplifies the task of converting regular Column charts to Step Column charts. Generally, using this utility class involves setting public properties for customizations (e.g. showGridLines, showXAxisLabels) and then making a call to the function convertToStepColumn() which performs the actual conversion. Example source code is provided in the full article which also includes the Step Column Chart class files for both ASP.NET and Windows Forms, as well as C# and VB.NET.

Gauge Pins

One of the most overlooked features in Dundas Gauge is its Pin feature. Pins let you stop the pointer at a minimum or maximum value of your choosing, independent of the scale. The pointer will stop in interactive mode (e.g. when the user drags the pointer) as well as when a value is assigned to it in code. Pins affect the Pointer regardless of the origin of the input; it is an assured means of keeping the pointer within the boundary of the pin.

Pins have both aesthetic and practical uses. They can help control the pointer from going past a certain point, or extend the scale by some amount to accommodate unusual data which is, literally, off the scale.

Pins are controlled through two properties: MaximumPin and MinimumPin. Both of these are found within the Scales class within CircularGauges and LinearGauges. These properties have a number of customizable features including the shape, location and placement of the pin.

Some code snippets and a more detailed explanation of Gauge Pins are available within the full article.

Tips n' Tricks Chart | Gauge | Map

General Tips

Use Dundas Software's AJAX Library to Update Non-Dundas Controls
Dundas Chart for ASP.NET and Dundas Map for ASP.NET both include a full AJAX API which is easy to use. One popular and versatile function included in these APIs is the CallbackManager.UpdateClientControl() function. This function, when used during a callback (e.g. during the Callback event) can update any ASP.NET control on the client-side through AJAX. This means labels, textboxes, lists or any other ASP.NET control will be updated with server-side settings seamlessly through AJAX with only one function call.
read more »

How To Determine What Version of Dundas Software's Product You Are Using
You can tell what version of Dundas Software's product you are using and whether you are using an Evaluation or Retail copy by looking at the product's DLL file. You should find the DLL file in your Program Files directory. For example, if you are using Dundas Chart for ASP.NET for Visual Studio 2005, the DLL file will be located in C:\Program Files\Dundas Software\Charting\WebControlVS2005\bin by default. The specific names of the DLL files for each product are listed in the full article. Once you have located the correct file you can simply right click on it, select Properties, and then select the Version tab in the Properties window. The version number is listed beside the text "File Version:". If you want to find out if the product is Evaluation or Retail, you can click on the Comments item in the listbox.
read more »

Use Your Database For More Than X and Y Values
Your database can be used to bind to a multitude of different properties. One of the more popular ways of accomplishing this involves using one of Chart's data-binding methods that allow binding to "other fields", such as Tooltip, Href and other properties. The two methods that let you bind to "other fields" are the Points.DataBind() and Chart.DataBindCrossTab() methods. The Points.DataBind() method adds points to a specific series, while the Chart.DataBindCrossTab() method splits your data into series automatically, based on a grouping field. Using Chart's built-in methods for binding in this way can decrease the amount of development time for applications.
read more »

Chart for .NET - OLAP Services

Dundas Chart for .NET - OLAP Services v5.5 Now Available!
Dundas Chart for .NET - OLAP Services v5.5 includes the full Dundas Chart for .NET v5.5 at its core. This new core means the new features available in Chart v5.5, such as AJAX zooming and scrolling, are now available in OLAP Chart. In addition to the new core, the toolbar functionality in OLAP Chart has also been extended to provide more customizability options than ever before. Dundas Chart for .NET - OLAP Services now includes integrated support for pie and donut charts. These chart types can now be created easier than was previously possible. Like all Dundas Software products, the evaluation copy of Dundas Chart for .NET - OLAP Services v5.5 is free to download.
read more »

Radar Gauge
The Radar Gauge demo has been created to demonstrate the flexibility of Dundas's Gauge control. While there are many examples on Dundas Software's main website illustrating the different ways Gauge can deliver data, none customize Gauge in a severe way. In this demo we have used Dundas Gauge to create a simulated radar terminal displaying some fictional data. Both the ASP.NET and WinForms demo display the radar updating in real time.

The online demonstration of this sample, listed in the full article, uses ASP.NET and Real-Time Streaming. A WinForms version is also available within the sample included in the article. The WinForms application has the advantage of being a local rich application and thus much faster when doing updates during the redraw of the radar sweep.
read more »

Advanced Real-Time Streaming Gauge Samples
Real-time streaming updates Gauge's image from the server at a regular interval. This lets you show data in the client's browser in real time, but the methods provided update only the Gauge's image and not the rest of the page. This is built into Dundas Gauge as the RealTimeStreaming rendering type - for more information, see "Using Real-Time Data" in our documentation. Click here for our support article about this and a link to an online real-time streaming demo.

In web applications with a large number of simultaneous users, you should use more advanced techniques for displaying real time images. This new article provides working sample projects which implement a Gauge Host class. This class runs as a single background thread to handle requests from multiple clients. The article also discusses the two optimized rendering methods available: Binary Streaming and temporary gauge images.
read more »

Where to Find Map (Shape) Files
We are often asked where shape files can be found for use with the Dundas Map product. While some Maps are included with the product download, it is sometimes necessary to have much more specific maps (i.e., maps of a specific region or road information for a city). As such we have compiled a list of sources, both free and fee-based, that can be used to acquire more shape files. The full article also includes a link to a free third party tool that can be used to modify or create shape files for use with Dundas Map.
read more »

New Dundas Map Build Includes 2 New Features
The Global Network Demo, which uses the new build of Dundas Map, has been added to the online demos section of Dundas Map for .NET. This demo features the new mini-map feature of Dundas Map. Mini-maps are created by placing two separate map controls on top of each other and connecting them through JavaScript and AJAX so that changes in one are reflected in the other. The sample set bundled with Dundas Map for .NET includes a demonstration (with full source code) on how to use this feature. The Global Network Demo also makes use of the new caching feature available in Dundas Map for .NET. This feature generates images as they are needed, but does not delete them after (caching). Because of this, all subsequent access to the same images will be extremely fast.

How to Create a Shape or Path
Before creating a shape or path, be sure that creating one is what you want to do. You can add shapes from the map wizard or import shapes, paths and symbols from publicly available ESRI shape files. There is an article available regarding this topic.
To create a shape or path during run-time, you can create a set of MapPoints and a set of ShapeSegments or PathSegments, then add these using the AddSegments method in your code. Some example code is included in the full article, but you can also view the sample Advanced >> Creating Shapes and Paths within our samples environment if you have the Windows Forms or ASP.NET versions of Dundas Map installed.
read more »

Dundas Q & A Chart | Gauge | Map

Chart for .NET

Q. Why do I get an error saying, "Axis object - Auto interval error due to invalid point values or minimum/maximum."?
A. This error usually occurs because you have either a positive or negative infinity value in the Chart (double.PositiveInfinity, double.NegativeInfinity). This error should stop occurring if you make sure that infinity values do not exist in the Chart's data.

Chart for Reporting Services

Q. How can I combine Chart keywords with Reporting Services expressions?
A. Both Reporting Services expressions (e.g. Fields!Department.Value) and keywords (e.g. #VAL) can be used together in labels. To use them together simply insert an ampersand between the Reporting Services expression and the Chart keyword: =Sum(Fields!ProductID.Value) & "#SER". Note that this style of concatenation is available only during design time; at run-time it is too late to process any Reporting Services expressions. This is due to the fact that Dundas Chart processes keywords, whereas the Reporting Services engine processes the Reporting Services expressions.

Gauge for .NET

Q. Why does Gauge always appear above all other elements on my Page when rendered as Flash?
A. Dundas Gauge for ASP.NET, when rendered as a Flash image, will appear above all elements on the webpage regardless of the z-index setting. This problem occurs because Flash is rendered as an ActiveX object and unfortunately Microsoft Windows always renders ActiveX controls on top of everything. This problem affects all Flash rendered images, not just those produced by Dundas products. You can find more information on Microsoft's support site.

Gauge for Reporting Services

Q. I specified a URL for the "Jump to URL" feature, but when the report is running, clicking on the element does nothing. Why is this?
A. This issue is usually caused by one of two reasons. The first cause is not having SQL Server 2005 Service Pack 1 installed. If Service Pack 1 is installed, then the second cause is often that the full URL is not being used. For example, the URL "" should be used instead of "".

Map for .NET

Q. How do I center/zoom on a clicked shape in a Map?
A. Centering and zooming on a clicked element should be done using the Click event or the MouseDown event combined with the HitTest function. The code sample given in the full article centers and zooms the Map if the user clicked on a shape and does nothing if the user clicked an object which is not a shape. The code makes use of the function MapControl.CenterView in order to center the Map on the point clicked.
read more »

Q. How can I bind two separate data tables to a single map control?
A. To bind data from two separate data tables, you need to add the two data tables to one DataSet and use the MapControl.DataBindShapes method. The example provided in the full article creates a new dataset, adds two separate tables, populates the tables and binds the DataSet to the map control. While the tables are populated manually, it could be easily modified to use a database instead.
read more »