New ASP.NET Charting Control: <asp:chart runat="server"/>

New ASP.NET Charting Control: <asp:chart runat="server"/>

Microsoft recently released a cool new ASP.NET server control – <asp:chart /> – that can be used for free with ASP.NET 3.5 to enable rich browser-based charting scenarios:

Once installed the <asp:chart/> control shows up under the "Data" tab on the Toolbox, and can be easily declared on any ASP.NET page as a standard server control:

<asp:chart /> supports a rich assortment of chart options – including pie, area, range, point, circular, accumulation, data distribution, ajax interactive, doughnut, and more.  You can statically declare chart data within the control declaration, or alternatively use data-binding to populate it dynamically.  At runtime the server control generates an image (for example a .PNG file) that is referenced from the client HTML of the page using a <img/> element output by the <asp:chart/> control.  The server control supports the ability to cache the chart image, as well as save it on disk for persistent scenarios.  It does not require any other server software to be installed, and will work with any standard ASP.NET page.

To get a sense of how to use the <asp:chart /> control I recommend downloading the Microsoft Chart Controls Sample Project.  This includes over 200 ASP.NET sample pages that you can run locally.  Just open the web project in VS 2008 and hit run to see them in action – you can then open the .aspx source of each to see how they are implemented.

The below example (under Chart Types->Line Charts->3D Line and Curve Charts) demonstrates how to perform Line, Spline and StepLine charting:

The below example (under Chart Types->Pie and Doughnut Charts) demonstrates a variety of pie and 3D doughnut options:

The below example (under Chart Types->Advanced Financial Charts) demonstrates some graph charts:

In addition to the above samples, you can download the Microsoft Chart Control Documentation or ask questions on the Chart Controls Forum to learn more.

This should provide a useful (and free) addition to your standard ASP.NET toolkit of functionality, and enable you to easily add richer visualization and data workflow scenarios to your ASP.NET applications.

Hope this helps,

Scott

HIPAA 005010 will not be supported in BizTalk Server 2006 R2

HIPAA 005010 will not be supported in BizTalk Server 2006 R2

I have just received word that the 005010 HIPAA schemas will not be supported in R2 but will only be available and supported in BizTalk 2009!

I am VERY surprised that Microsoft would decide that, given the somewhat slow accepting of new products in the Healthcare market. I am aware of many Payors and Providers that are using BizTalk for their HIPAA processing, and are either still using the Covast HIPAA accelerator or have barely started using the new R2 EDI components!

Does anyone know why the decision was made not to provide 005010 schemas for use in the HIPAA transactions in R2, is it simply a sales gimmick?

Web Platform – Single Install Release Candidate

Web Platform – Single Install Release Candidate

Today, we posted a release candidate (RC) of the Web Platform Installer (Web PI) here.  This effort is a direct result of feedback we’ve received from customers regarding the need to significantly simplify the installation of key components needed to spin up new web properties.  With the Web PI, customers can now use a simple tool to install Microsoft’s entire Web Platform, including IIS7, Visual Web Developer 2008 Express Edition, SQL Server 2008 Express Edition and the .NET Framework. Or, the tool can be used to install more specific combinations of these technologies.


 


Timing is critical for this update; our customers are already knee deep in deploying platform updates across Windows Server 2008, SQL Server 2008 and others.  This newest RC for the Web PI now enables installation of ASP.NET MVC, Visual Studio Tools for Silverlight and offers compatibility with Windows Server 2003 and Windows XP for a more complete, enterprise-level experience. As well, with the Microsoft Web Application Installer (WebAI), we are including several .NET and Open Source applications for development on top of the platform itself. These include Drupal, WordPress, OSCommerce, DotNetNuke, Graffiti, PHPBB, and Gallery.  We know our customers are working within heterogeneous environments today, and the need for tools and solutions that drive cross-platform interoperability is more important than ever. We’re continuing to drive interoperability into the core platform through.NET framework updates, Silverlight and “Oslo’s” M language, which is now included in the Open Specification Promise.


 

We’re already hearing from our customers that this tool is saving them significant amounts of time; check it out and see for yourself. Then, go back to doing what you do best-building and hosting powerful next-generation web apps that will revolutionize the business! Oh yeah, by the way – it’s free.

Cool Navigation in SharePoint 2007 using jQuery – Teaser!

Cool Navigation in SharePoint 2007 using jQuery – Teaser!

So you think GUI coolness nowadays is only related to fancy RIA stuff like Silverlight? Think again! The video above is a little project I’m working on, using jQuery plugins to show a cool way to navigate to the Lists and Document Libraries of a SharePoint site. So there are no requirements on the client, everything is done using Javascript! Nifty isn’t it? I need to polish the code a little bit and I hope to be able to release it later on this week. But i’m still thinking about a cool name .. any suggestions?

Integrating SharePoint 2007 and jQuery [Part Two]

Integrating SharePoint 2007 and jQuery [Part Two]

The first part of this article showed you how you can enable jQuery in SharePoint 2007 sites and pages, so in this article let’s assume jQuery is up and running in your SharePoint environment. The second part of this article will show you a couple of things that you can accomplish by making use of jQuery in SharePoint 2007. It’s not my goal to write about how jQuery is working, the syntax etc, for those things I kindly refer to the tutorials that are already available.


Time to get started with a first sample! Let’s assume you’ve got a nice SharePoint List or Document Library with a bunch of columns and some data in it. SharePoint can display that data in a nice table of course, but let’s try to make that table even nicer by highlighting the entire row when the user hovers over the table. The JavaScript code, using jQuery  to accomplish this goes as follows:


$(document).ready(function()
    {
        $(“table[class=’ms-listviewtable’] tr”).hover
        (
            function() {
                $(this).addClass(“myRowHighlight”);
            },
            function() {
                $(this).removeClass(“myRowHighlight”);
            }
        );
    }
);


The first line creates a function that will be called when the document is completely loaded, this function is defined inline. In this function first all tr elements of all the tables that are having the class attribute set to ms-listviewtable, are selected (this class attribute value is used by SharePoint for every table that contains list data). For every tr element, the hover jQuery function is called. This hover function takes two parameters, once again two functions: one will be executed when the mouse pointer enters the hover area (in this case the tr element), the second one will be executed when the mouse leaves the hover area. When the hover area is entered, the addClass method will add the myRowHighlight CSS class to the tr element and that CSS class is removed when the hover area is left. Of course the myRowHighlight CSS needs to be declared as well:


<style type=”text/css”>
   .myRowHighlight {color:red; background-color:#FFCC66}
</style>


The next thing that we need to think about is how we can tell a SharePoint page (which is showing a table containing List data), to execute that script and declare the CSS class. Probably the easiest thing to do is to make use of the Content Editor Web Part. Navigate to for example a Task list (e.g. http://yoursite/Lists/Tasks/AllItems.aspx). Next click Site Actions, Edit Page to switch the page into edit mode. Then click on the Add a Web Part button of the web part zone of that page and add an instance of the Content Editor Web Part. Click on the link open the tool pane and click on the button Source Editor.



Finally copy and paste the script and CSS class discussed above (note that script tags have been added around the JavaScript code!):


<style type=”text/css”>
   .myRowHighlight {color:red; background-color:#FFCC66}
</style>

<script>
$(document).ready(function()
    {
        $(“table[class=’ms-listviewtable’] tr”).hover
        (
            function() {
                $(this).addClass(“myRowHighlight”);
            },
            function() {
                $(this).removeClass(“myRowHighlight”);
            }
        );
    }
);
</script>


 


Now you can click Exit Edit Mode in the top right of the screen to switch back to the normal view. When you hover over one of the rows of the table, the entire row will be highlighted.



Although adding the script and style in a Content Editor Web Part is very easy, you probably don’t want to do this in every list view for ever single List or Document Library if you want to activate the row highlighting everywhere. A better approach is to wrap the adding of the script and style in a Feature. And once again this can be accomplished by making use of the Delegate control (for more information about this approach, check out the previous part of this series).


The feature.xml simply points to a manifest which will define the delegate. The only special thing in the feature.xml is the ActivationDepenencies element: there’s an activation dependency defined that points to the feature ID of the SmartTools.jQuery feature. So the TableRowHighlight feature can only be activated if the jQuery library is loaded.


<Feature xmlns=”http://schemas.microsoft.com/sharepoint/”
         Id=”{7D6840E4-E31A-4c75-B2AC-71A262D0B375}”
         Title=”SmartTools.TableRowHighlight v1.0″
         Description=”This feature enables the highlighting of rows in List or Document Library views, when the mouse is hovered above them.”
         Scope=”Web”
         >


  <ElementManifests>
    <ElementManifest Location=”manifest.xml”/>
  </ElementManifests>


  <ActivationDependencies>
    <ActivationDependency FeatureId=”{45B66929-08B5-4715-8511-F9FB94F614EE}”/>
  </ActivationDependencies>
</Feature>


The manifest.xml is even easier, the only thing to pay attention to is the fact that this delegate control (which loads the SmartTools.TableRowHighlight.ascx user control), has a sequence that’s higher than the sequence of the SmartTools.jQuery delegate (which adds the jQuery library). So first the jQuery library is loaded, then the custom script is added.


<Elements xmlns=”http://schemas.microsoft.com/sharepoint/”>
  <Control
    Id=”AdditionalPageHead”
    ControlSrc=”~/_controltemplates/SmartTools.TableRowHighlight.ascx”
    Sequence=”100″/>
</Elements>


The SmartTools.TableRowHighlight.ascx user control, will simply define SmartToolsRowHighlight style, and load a Javascript file (tablerowhighlight.js). This ASCX file should be deployed to the CONTROLTEMPLATES folder in the 12\TEMPLATE folder.


<%@ Control Language=”VB” ClassName=”SmarToolsTableRowHighLight” %>
<style type=”text/css”>
   .SmartToolsRowHighlight {color:red; background-color:#FFCC66}
</style>


<script type=”text/javascript” src=”http://weblogs.asp.net/_layouts/SmartTools.TableRowHighlight/tablerowhighlight.js”></script>


And finally the tablerowhighlight.js javascript file will execute the function to accomplish the hover effect. This javascript file should be deployed to the LAYOUTS folder of the 12 hive.


$(document).ready(function()
    {
        $(“table[class=’ms-listviewtable’] tr”).hover
        (
            function() {
                $(this).addClass(“SmartToolsRowHighlight”);
            },
            function() {
                $(this).removeClass(“SmartToolsRowHighlight”);
            }
        );
    }
);


What’s the result? Well, when the feature is activated on a site, the delegate is adding the ASCX to the HEAD element of the page’s HTML. This ASCX will take care of defining the style and loading the script. All the grids showing data coming from SharePoint Lists or Document Libraries, will now have the fancy hover effect. To illustrate all of this, I’ve packaged the row highlighting functionality in a nice SharePoint solution (including a nice installation wizard) which can be download from the SmartTools project on CodePlex (direct link to the releases).


Added CSV Extract functoid

Added CSV Extract functoid

Hi all

I have added a new functoid to my functoid library.

This functoid will take a string, that is separated by some character as input and
split it up into the substrings it is, given the separator. It will then return the
substring given by a third parameter.

So for instance, given these three inputs:

  1. Jan,Eliasen,BizTalk
  2. ,
  3. 1

You would get “Eliasen” as output.

You can download my functoid library at http://www.eliasen.eu/DownloadSoftware.aspx and
here you can also find updated documentation describing this new functoid.



eliasen

Dublin Webcasts

Dublin Webcasts

I’ve posted a couple of webcasts on Dublin on BloggersGuides.net. They are based on the PDC08-CSD image, so things may well change going forward, but they provide a good intro as to how to get started exploring hosting services in Dublin, and the configuration options.
This webcast will look at hosting declarative services in the Dublin application server. The webcast will start with a basic WCF declarative service and demonstrate the procedure to host the service in Dublin.
The configuration features in Dublin will be explored, including tracking, persistence, and throttling. The tracking data will be queried using SQL Server Management Console, and the DublinER tool.
This webcast will take a quick tour of the DublinER tool, showing how it can be used to display query results from the Dublin tracking database.
The link to the DublinER tool on codeplex is here.