Sunday, October 14, 2012

Using SSRS with Silverlight, HTML5, JavaScript, Flash, Google Charts and other third party products.

I'm reading: Using SSRS with Silverlight, HTML5, JavaScript, Flash, Google Charts and other third party products.Tweet this !
SSRS, Powerpivot, Powerview, Excel Services, Powerpoint Services, Sharepoint Dashboarding all offer variety of data visualizations. But most of them end up with a static graphic image on a web browser, which is neither interactive nor appealing enough to the end users. Many architects take the route of custom development or try seeking reusable assets (third party / in-house) that can be used to bring a wow-factor on the user interface. These report platforms are not packaged with those rich interactive graphical capabilities that can blend on a portal or by itself serve the high-end UI needs.

For example, the charts and graphs that are generated by SSRS report output, are in the form of static images. There is no way that user can click on a chart/graph and it would drill down to the next level of hierarchy. Also if I have two charts/graphs and I want to configure them in a way such that I click on one of them and the other shows context sensitive information related to the same. Often reporting systems require such graphical interactivity, but the present stack of reporting tools are not yet capable of presenting such information with user interactivity.

There are different options that can be taken to provide reporting using a rich UI, which are mentioned as below:

1) Develop UI using Silverlight applications (.xap)
2) Develop UI using Silverlight + .Net or plain .Net
3) Develop UI using HTML5 + JavaScript + Adobe Flash based graphics
4) Develop UI using online charting services like Google Charts
5) Develop UI using third party tools.

A sample architecture diagram is shown below where application layers makes calls to SSRS web services. Above mentioned options would fit in one or other layer and have its own advantages and limitations.


Below listed are different chart and graph options to generate interactive charts and graphs, and blend with your UI along with SSRS reports.

1) Highcharts

2) JS Charts

3) gRaphael JavaScript Library

4) amCharts : JavaScript / HTML5 Charts

5) RGraph JavaScript Chart and Graphs

6) FusionCharts : JavaScript, HTML5 and Flash based data visualizations

7) JPowered JavaScript graphing library

8) CHAP Links Library using Google Charts Visualization

9) TeeChart JavaScript and HTML5 charting library

10) jQuery Sparklines plugin

11) jqPlot : jQuery plotting plugin

12) Microsoft Silverlight Toolkit

13) Infragistics NetAdvantage Ultimate

14) Dojo Charting

15) CanvasXpress - JavaScript library based on HTML5 Canvas Tag

16) Flotr2- JavaScript library based on HTML5 Canvas Tag

Saturday, October 06, 2012

Using Microsoft Office Project Server with MS BI ( SSIS, SSAS, and SSRS )

I'm reading: Using Microsoft Office Project Server with MS BI ( SSIS, SSAS, and SSRS )Tweet this !
Microsoft Office Project Server (MSPS) is one of the healthiest source of data in the microsoft ecosystem. Many departments especially CIOs have the greatest potential and probability to make extensive use of the data contained in Project Server. Almost every organizations have different projects for which they carry out planning, tracking, monitoring, resource assignments and related activities. MS Project Server is a chef's knife for this purpose.

From a technical standpoint, the way MSPS stores data is very interesting. Like Sharepoint, it stores data internally into SQL Server. But unlike Sharepoint, it gives a very neat and clean mechanism to use to data it stores internally in the form of a database intended for reporting known as Reporting database and is operated using a service known as Report Data Service. Also it has a service called Cube Build service (CBS), which can be operated using a web based console known as Project Web App (PWA).

The Reporting database (RDB) is the staging area for generating reports and OLAP cubes. Data in the Reporting database is comprehensive and is updated nearly in real time. The tables and views are optimized for read-only report generation; for example, the RDB tables are denormalized to provide redundant data and reduce the number of relational tables. As data is updated in real time in RDB, in case if you are considering extracting data from it to some other data store, consider reading how data gets to the RDB and Report Data Service. Schema documentation of the reporting database as well as the OLAP cubes is available and  can be downloaded from Project 2010 Reference: Software Development Kit, in the documentation\schemas subdirectory.

Microsot Office Project Server 2010 Architecture Diagram can be seen below:



As apparent in the above diagram, MS Project Server is very well integrated with Sharepoint 2010. Hence using reporting related tools like Excel Services, Performancepoint Services and BI + Dashboarding capabilities in-built into Sharepoint, a rich reporting platform can be provided to end users from data contained into Project Server 2010.

From an MS BI perspective,
  • SSIS can be used to extract data from reporting database and merge this data into a corporate warehouse
  • SSAS can be used to source and enhance cubes and OLAP database exposed by project server
  • SSRS can be used to generate reports on the top of OLTP reporting database and cubes contained in OLAP database exposed by Project Server.
I seriously wish that perhaps Sharepoint can expose such databases for reporting and analysis, as that makes it very easy to facilitate reporting and analysis of the content stored in sharepoint.

To understand more about Project Server, you should consider reading about Project Server Architecture and Project Server Programmability. Also consider reading more about how to configure reporting for Project Server 2010.

Tuesday, October 02, 2012

HTML5 Browser Compatibility for BI Solutions

I'm reading: HTML5 Browser Compatibility for BI SolutionsTweet this !
Consumers of a BI solution are increasing and BI solution are increasingly becoming web-based. Technologies like Silverlight are not supported on platforms like iOS and browsers like Safari Mobile. HTML5 due to its capability to render rich media on mobile devices, is receiving more and more adoption day by day. Below mentioned are some nice references that can be handy for various purposes when you are playing with html5. Some of these purposes can be cross browser compatibility, local storage on devices, feature support across devices, testing your application compatibility for html5 and others.







Related Posts with Thumbnails