Thursday, December 24, 2009

Dashboard Creation

Dashboard Creation

Below notes is my quick overview helps in creating the dashboard (reports) (mostly for SQL 2005, SSRS 2005) and in particular to decision making.

Dashboards
  • To deliver information for (day-to-day) decision making
  • Real time business intelligence. Snapshots of KPIs, Trend Graphs, Ad-hoc Reports and more ...
  • With drill down capability, summary levels to detail levels for better results.
Below Steps can be used for quickly building the dashboard

Step 1: Identify and choose the data to be displayed.
  • Data sources, connection strings
  • Source Tables, Columns, its data types
  • Prepare the list of calculations, grouping, where conditions or other statements like case
  • Any other important SQL information
Step 2: Choose Layout
  • Design on paper first or atleast the rough sketch
  • For charts, consider titles, legends, colors, heading, details, type - atleast select bar or pie to start with, later we can change
  • Grids - headings, rows, column groupings, aggregations - totals / sums, % variances, % calculations, Period / dates and more ... purely derive from BA and Data. Create a mockup in Excel, easy and then we can go get the same from SQL.
Step 3: Data Conversion
  • Pick the data sources. If only one, it is simple and no need to worry about linking.
  • Prepare the data for report so that it can be used. For ex: which goes to x-axis, y-axis, series ...
  • Configuration / parameter details
  • Integration w/ other data sets
Step 4: Paper design of layout

Paper design of layout - Grid / Chart / both

Step 5: Getting together

Put data & layout together --> w/ report data, datasets & parameters. Resources --> embedded images. Write Unit test.
"Intermediate result and presentation is ready"

Step 6: Conceptualize plan of interactivity

For better readability, usability with different modules.

Step 7: Data for Interactive Dashboard

Test with integration by developer.

Step 8: Interactive Dashboard

with Business Users. Run through the requirements, colors, look & feel, interactivity.

Enjoy the dashboard!!!

Dashboard
  • Performance
  • Executive
  • Metrics
  • Analytics (BI)
Design considerations
  • Zoomable or go to details of data
  • #1. Put the user first
  • #2. Right medium: Graph / Chart ... for better communication & to what level
  • #3. Color selection
  • #4. Layout optimization
  • #5. Keep dashboards to one page (for executives)

Friday, November 20, 2009

Visual Studio Tutorials and Training Videos

Friday, November 6, 2009

SQL Useful Links


Video Tutorials - to learn sql:

you can browse these sites for basic learning of SQL (for newbies only) and once you are familiar with concepts and way to do, then read a book or in parallel with videos. Together, you can learn SQL very nice. Enjoy!






Useful Links (Extract from http://www.sqlskills.com/links.asp)
Microsoft Related Resource Links
www.microsoft.com/sql - SQL Server Home Page
www.microsoft.com/sql/community - SQL Server Community Page
www.microsoft.com/sql/community/newsgroups - SQL Server Newsgroups Page
www.microsoft.com/sql/partners - Partner Products

Industry Experts Sites
www.sqldev.net - Gert Draper's site
www.betav.com - William R. Vaughn's site
www.sqldts.com - Darren Green's DTS Site
www.sql.co.il - Itzik Ben-Gan's Site
www.InsideSQLServer.com - Kalen Delaney's Site
www.callsql.com/en - Fernando Guerrero's Site
www.mssqlserver.com - Mike Hotek's Site
www.prospice.com - Ron Talmage's Site

Excellent Sites with Useful Information
www.sswug.org - SQL Server Worldwide User's Group
www.databasejournal.com/features/mssql - Database Journal
www.sql-server-performance.com - SQL Server Performance
www.sqlservercentral.com - SQL Server Central Web Community
www.solidqualitylearning.com - Solid Quality Learning
www.sqljunkies.com - SQL Junkies

Usergroups
www.sqlpass.org - Professional Association of SQL Server
www.pnwsql.org - Pacific Northwest SQL Server User's Group

Magazine and Technical Journal Sites
www.sqlmag.com - SQL Server Magazine
www.tsqlsolutions.com - TSQLSolutions Journal

Conference Sites
www.sqlmaglive.com - Featuring SQL Server Magazine Authors at two conferences in the US each year!
www.sqlpass.org - Featuring Industry Experts at their annual summit.
www.microsoft.com/teched - Microsoft Tech·Ed.

Wednesday, March 11, 2009

Web setup project - content files - Vs.net 2008

Problem
In one of my project, I had Vs.net 2008 web project including multiple c# projects. 

I create a web setup project in the same solution but when deployed I noticed that PDF files are not included in the deployment. (Not webdeployment project)

Solution
By default, VS.net  project do not include PDF files as content files. (.js, .css, .jpg ... are included by default)

I posted on forums, and the solution is ...

Approach 1: Mark the file as content. Right click the file in Vs.net 2008, properties, set build action -> Content. You may have to do for every file. 

In other words, modify your web application's project file to set pdf files to "Content" by

<ItemGroup>

    <Content Include="YourFolder\Reference1.pdf"/>

     <Content Include="YourFolder\Reference2.pdf"/>

 ......

</ItemGroup>

 Using IDE does the modification for you.


Aprroach 2: Mark the whole folder to copy ...

If these pdf files are in one folder, we can try to use MSBuild to copy this folder to OutPut directory in Web Deployment project.

To do so, we need to enter Web Deployment project file by right clicking Web Deployment project in Solution Window and selecting "Open Project File", and then write following command below "Import" section:

<Target Name="AfterBuild">

<Copy DestinationFolder="YourDestinationfolder" SourceFiles="YourSourcefile"></Copy>

</Target>  

Example

<Copy DestinationFolder="Guides" SourceFiles="Guides\*.pdf"></Copy>

Or

<Copy DestinationFolder="$(OutputPath)\Guides\" SourceFiles="$(SourceWebPhysicalPath)\Guides\*.pdf"></Copy>

Asp.net - Cross page posting

Cross page posting

New feature in Asp.net 2.0

Why? When?
Some pages need to post the page to other page (like good old systems or old classic asp) or when there is a need to have multiple submit button controls, where one may need to submit to other page.

Who decides?
It is mostly the developer that decides to use this feature or not.
It is heavy duty control and be careful to use this feature.

How to use it?
Please refer MSFT article first.
http://msdn.microsoft.com/en-us/library/ms178139.aspx
http://msdn.microsoft.com/en-us/library/ms178140(VS.80).aspx

Secondly use strong typing both at control level and page level attributes.
PreviousPage != null && PreviousPage.IsCrossPagePostBack 
Login LoginControl = (Login)PreviousPage.FindControl("Login1");
<%@ PreviousPageType VirtualPath="~/SourcePage.aspx" %> 

Example of scenarios to use cross page posting
  • We can have search control in the header and a regular form in the content page.
  • We have to submit to different page based on a button type clicked.
  • To better use of caching some times, we provide forms say for search, in one page and submit to other page ...
  • For those who like old style of submitting to different pages ... like in classic asp
Note: It is all deponds the scenario, developer to decide why we need this feature.

For ex: One of the project, application site home page needs to be served very fast and I decided to use by enabling the cache (vary by browser) and did the cross page posting to validate the login information. The reason in my case are the login process is complicated with lot of server validation, roles assignment, license verification, rules and redirection ... 

Drawbacks
Say, if you are validating a form on server side, it is hard to get back to the previous page.