Monday, January 16, 2012

Moving to Wordpress


been a while since I ever blogged but now I'm back but with new Address and new blog

follow me on wordpress for more Exciting BI , Performance Tuning and DWH SQL Server updates

Friday, April 30, 2010

SharePoint 2010 Architecture Diagram

I came across this intelligent diagram that describes the SharePoint 2010 Architecture it as release as a part of SharePoint practices and patterns blog.

Top level model-patterns

Modifying PPS Dashboards with SharePoint Web Parts

Microsoft PerformancePoint blog has released an excellent Article on how you can customize your dashboard…

Check this blog entry here

Tuesday, April 27, 2010

Programming Performance Point Services 2010 – Create a new Standard KPI

This Post is a Part of Programming PeformancePoint 2010 Series.

public IKPI CreateNewDefaultKPI(string listURL,string kpiName,string description,LocationManagement.Location displayFolder)


            Kpi newKpi = Kpi.CreateNew();

            newKpi.Name.Text = kpiName ;

            newKpi.Description.Text = description;

            // Set the DisplayFolder

            if (displayFolder != null)


                newKpi.Folder = displayFolder.Path;



            // Fixed value actual

            newKpi.Actual.DataSourceLocation = new RepositoryLocation(Constants.FixedValuesDataSourceLocationKey);

            newKpi.Actual.ModelCurrent = 80;    // this sets the value for the actual


            // Fixed value target

            Target target1 = new Target();

            target1.Guid = Guid.NewGuid();

            target1.Name.Text = "Target";

            target1.DataSourceLocation = newKpi.Actual.DataSourceLocation;

            target1.ModelCurrent = 100; // this sets the value for the target

            target1.IndicatorLocation =


            target1.Pattern = KpiPattern.IncreasingIsBetter;

            target1.RelatedActualId = newKpi.Actual.Guid;

            // set up the banding; 3 bands:  < .5; .5 - 1.0; > 1.0

            target1.Banding.ActualWorst = 0;

            target1.Banding.Type = BandType.Normalized;

            target1.Banding.SpreadMaximum = 1.2M;

            target1.Banding.SpreadMinimum = 0;




            newKpi = PPSWebService.GetInstance().WebService.CreateKpi(listURL, newKpi);

            return new KPI(newKpi);



Part of the Question I always get is how can I create a new Performance Point KPI, The Above function will help you through it.

Tuesday, April 20, 2010

Install SharePoint 2010 Complete on Domain Controller

If you are a Developer you may need to create a Single Machine that contains SharePoint 2010 , VS 2010 and the Machine is a Domain Controller

The Problem is : SharePoint 2010 don’t support Complete Installation on Domain Controller

to Over Ride this Behavior

  1. 1. Open Command Line
  2. 2. Extract the OfficeServer.exe File C:\Users\Administrator\Desktop\14.0.4730.1010_OfficeServer_none_ship_x64_en-us.exe /extract:c:\SP2010\
  3. 3. Run the Setup using the following Command:
    setup /config c:\SP2010\Files\SetupFarm\config.xml


Hopes this help

Thursday, April 15, 2010

Programming Performance Point Services 2010 – Part 2 (Create a new DataSource In Performance Point Programmatically)

Check the First Post (Click Here)

The Below function will allow you to create a new DataSource inside Performance Point

public IDataSource CreateNewAnalysisServicesDataSource(string dataSourceName,string serverName,string databaseName,string cubeDisplayName,DSConnectionContext connectionContext)
// Get a New Instance from the Service
PPSWebService service = PPSWebService.GetInstance();
// Create a new Data Source Instance
DataSource newDS = DataSource.CreateNew();
newDS.Name.Text = dataSourceName;
newDS.Description.Text = "Created By System";

newDS.ServerName = serverName;
// Set the Data Source Type to Analysis Services Type
newDS.SourceName = "ADOMD.NET";
newDS.CubeName = cubeDisplayName;
newDS.MinutesToCache = 10;
newDS.ContentType = FCOContentType.PpsDataSource;

// Set the Connection Type Based on Enumerator
if(connectionContext == DSConnectionContext.PerIdentity)
newDS.ConnectionContext = ConnectionContext.ConnectAsUser;
}else if(connectionContext == DSConnectionContext.SharedUser)
newDS.ConnectionContext = ConnectionContext.ConnectAsSharedUser;

newDS.DatabaseName = databaseName;

// Request the Service Instance to Create the DataSource
PPSWebService.GetInstance().WebService.CreateDataSource(Configurations.PerformancePointDefaultDataConnectionsList, newDS);
return new Datasource(newDS);



To be Able to restore the DataSource Again Always Store the List URL (Relative Path and the Item Index in your Data Store)

The Default List Should be store in a Relative Path like the below sample:


Feel free to Contact me for more info

Programming Performance Point Services 2010 – Part 1 (Communicate with the Service)

I’ll Start My PerformancePoint 2010 Programming Set with the the Basics how to communicate with the the PPS Monitoring Service

Monitoring Service

First you need to know where is the service URL:
http://<Your Site URL>/_vti_bin/pps/PPSAuthoringService.asmx

Try to type the Above URL in your browser to make sure you can communicate with the server

The Required Assemblies

To Access the Performance Point you need to include these set of Microsoft.PerformancePoint.Scorecards to your project

This Assemblies is available in GAC

The Namespaces

using Microsoft.PerformancePoint.Scorecards;
Create The Service Proxy Instance
IBIMonitoringAuthoring pmService;

pmService = BIMonitoringAuthoringServiceProxy.CreateInstance(
http://<Your Site URL>/_vti_bin/pps/PPSAuthoringService.asmx);
Some Notes You need to know 

1. The PerformancePoint Items you need to create should be added to the same site you’re accessing from the Performance Point Service
By Now you have access to the Monitoring Services and you can start working with your Performance Point Items 
Keep your feeds ready for more posts in PerformancePoint Programming.

Tuesday, April 13, 2010

SharePoint 2010 as A Development Environment

I faced a hard time with my Current Development environment so I decided to recreate it on Sun Virtual Box with windows 2008 R2

Believe it or not the Performance Difference Is huge so I totally Recommend that you build you Development Machine on both you will find it much simpler to implement and much much better performance

Programming PerformancePoint Services 2010

I’m Planning to Start a Series of Post Regarding Programming the PerformancePoint Services 2010

This Posts will help you with the following

- Programmatically Manage All PerformancePoint Objects
- Managing Security
- Designing new Views for Scorecards and Strategy Maps using Silver light

So Keep your Feeds Ready co’s Its about to get Rushed :)

Monday, March 29, 2010

My SharePoint 2010 Virtual Machine

I’ve Just Completed the Preparation of my SharePoint 2010 RC  Development Virtual machine

The Machine is
3 GB is RAM
100 GB Hard Drive

The Machine has the following Software Installed

- Microsoft Windows 2008 Service Pack 2
- Microsoft Office 2010
- Microsoft SQL Server 2008 Service Pack 1
- Microsoft Visual Studio 2010 RC
- SharePoint Manager 2010
- NotePad ++
- Flidder

Now I’m Ready to Try the New SharePoint 2010 Development

Keep Following new Performance Point Service Updates Coming Soon