Sacha Tomey

Sacha Tomey's Blog

Planning a PerformancePoint Planning Implementation

There is a useful spreadsheet (what other format would it be!?) to assist in the requirement gathering and the planning of the implementation for a PerformancePoint Planning Application.

It's a strange mix of high and lower level detail but it does ensure you capture and at least think about each element of your application and the business requirements it should satisfy.  It's a useful starting point/stake in the ground although some of the questions will require much more thought and analysis behind the scenes than others.

The main topics it covers are:

  • Completing an Impact Assessment
  • Application, Model, and Model Site Planning Considerations
  • Model Type Planning Considerations
  • Dimension Planning Considerations
  • Currency Translation Planning Considerations
  • Data Loading Planning Considerations
  • Business and Process Planning Considerations
  • Reporting Planning Considerations
  • Business Rule Planning Considerations
  • Model-to-Model Association Planning Considerations
  • Diagramming the Application

PerformancePoint Planning Server - Upgrading from CTP*

The PPS Operations Guide has a good procedure for upgrading from a pre-release version:

http://technet.microsoft.com/en-us/library/bb838730.aspx

It's relatively straightforward to follow but if you want a quick heads up, see below:

- Backup all the databases, both server databases and all application staging databases

- Uninstall all the PPS binaries

- Re-install the PPS binaries selecting 'Distributed Installation' to allow you to unselect the PPS Database Installation
(You'll upgrade, keeping all applications/server config in place this way)

- Run ppscmd upgrade /server < PlanningServer URL > from the command prompt
(This upgrades the database schemas for all applications to the new version)

- Connect to the Administration console and 'Take online' the applications

It's a similar but simpler process for Monitoring Server too.

 

PerformancePoint Server Planning - Business Rules Debugging

In PerformancePoint Server 2007 Planning, you build centralised business rules in a new language called PerformancePoint Expression Language (PEL).  PEL is very MDX-like and relatively straight-forward to pick up, if you are even a little familiar with MDX. 

The beauty of PEL is that it can generate either MDX or T-SQL scripts from the same PEL Expression.  This allows the developer/analyst to target either the cube itself, using MDX Script, or the fact table, using T-SQL, depending on which implementation approach is more suitable for the type of calculation and from a performance perspective.

image

Within the Business Rules Editor workspace you can easily select the implementation (SQL or MdxQuery) from the Rules Detail property list

 

 

 

image

With the Rule saved (it does not have to be deployed) you use the rule context menu to debug the rule.

If you come from a development background like me, you may expect a little more to happen than what actually does happen !

Depending on what implementation you have selected, and whether or not your PEL is valid, either the MDX or the T-SQL is generated from the PEL and displayed in a window.  It's important to realise that the PEL expression has not been run.  It is for information purposes only.

From this point you can eye-ball the resultant query to help determine your issue or, as I tend to do, cut and paste into a New Query window inside SQL Server Management Studio.  The resultant T-SQL tends to be extremely verbose so actually debugging the problem using T-SQL will be rare !

Error If there is a problem with the actual PEL itself, the reason, in the form of a (normally) reasonably helpful error message is displayed in the window, instead of the resultant MDX/T-SQL.

I was initially a little disappointed with the built-in debugging facilities, but considering the target audience of the Planning Business Modeler, full integration with SSMS or Visual Studio was never going to be a consideration.  But, to be fair, it is probably just enough; the debugger is primarily aimed at ensuring your PEL is correct, it stops somewhat short of helping you debug the actual business logic but this can be handled if you cut, paste and hack the resultant MDX or T-SQL into another tool and even that becomes less and less necessary as you develop your PEL writing skills.

PerformancePoint Server Planning 2007 - eh?

Despite all the hype, the recent launch, several PPS related conferences, numerous articles and the pull-no-punches Olap Report Preview ,there is still some doubt about what the Planning element actually offers, well..

To quote directly from the marketing bumf:

Efficiently build budgets, forecasts, and plans in the interface everyone knows—Microsoft Office Excel. PerformancePoint Server 2007 offers auditing capability, centralized control, enhanced security, and the proven data platform of Microsoft SQL Server 2005

For a specific example, imagine, without PerformancePoint Server, trying to build an enterprise-wide solution to capture quarterly financial based budgets and/or forecasts from every budget-holding manager across the organisation, for consolidation and approval by the CFO.  The issues you would face would revolve around data-capture, workflow, security, consolidation, business rules, performance, tracking etc.  Even if you were successful, it's likely that you would eventually end up in Excel hell, or left with no confidence in the results and a huge team on full-time support.

Step forward PerformancePoint Server Planning.  It removes much of the pain associated with all of the above and is not just limited to financial based scenarios.  In addition, when integrated with PerformancePoint Monitoring you can track the actuals against the captured plans/targets from Planning to ensure the business stays on track.  When the enevitable deviations occur, the Analytics element of PerformancePoint Server (Currently ProClarity) will help analyse why to allow corrective action to be taken. 

For a little more detail..

http://www.microsoft.com/business/performancepoint/capabilities/planning.aspx

PerformancePoint Server 2007 Forums - Released

The PerformancePoint Server forums are now part of the official TechNet Forums and no longer limited to Microsoft Connect Beta Forums.

For those that didn't see the relatively active Beta forums on Connect, Microsoft separated the product into two groups and this is reflected in the official versions too.

Planning:
http://forums.microsoft.com/TechNet/ShowForum.aspx?ForumID=1871&SiteID=17

Monitoring and Analytics:
http://forums.microsoft.com/TechNet/ShowForum.aspx?ForumID=1872&SiteID=17

At the time of writing the Planning forum was empty and the M&A forum had just the single topic.  It will be interesting to see how the activity picks up through the launch period and into the New Year.

Loading the PerformancePoint Planning Account Dimension

I've been setting up some PerformancePoint Planning demonstrations for both clients and internal knowledge transfer.  As part of these demonstrations I've been loading the Account Dimension from CSV files. 

There are several other ways of loading data into PerformancePoint planning dimensions and models and I'll no doubt post about the alternatives in the future.

There is a small gotcha that I'd thought I'd share.  The pre-defined Account Dimension contains a member property called Account Type.  This member property utlises a lookup table for the various built-in account types such as Unit, Expense etc. 

The PerformancePoint CSV format requires that the first row contains the field (or rather member property) names, and optionally data types, with the remaining rows that actual data.  This is slightly different for the Account Type member property, as this is a lookup field, you need to specify the key field name instead, in this case, AccountTypeMemberId.

With that known, you would be forgiven in thinking that, in order to load data against that field, you need to specify the actual AccountTypeMemberId.  However, that would result in a new member property being created called 'AccountTypeMemberId' that contains the value and not the description.  The proposed destination field Account Type would be left unpopulated.

Instead, to correctly load the member property, rather than use the Id, you need to specify the actual description from the lookup table.  (Not the only un-intuitive feature of PerformancePoint Planning!)

Community Days: September and October 2007

I'm out and about in the community at a couple of events in the UK over the next month or so:

September
- 26th Sep - UK SQL Usergroup meeting - Data Mining in practice and BI in Katmai
(Register)
- 27th Sep - Business Intelligence Partner Update Day
(Register)

October
- 16th Oct - Microsoft Office PerformancePoint Server 2007 Launch
(Register)

Unfortunately I'm missing the SQLBits Community Day on 6th October but if anyone is attending any of the same events as me, be sure to say hi !

PerformancePoint Server 2007 UK Launch

I have it on good authority that the UK launch for PerformancePoint Server 2007 is 16th October 2007, a day under four weeks after the 19th September 2007 US launch.

I'm not sure if either of these dates coincide with the RTM date and whether the RTM date will be for just the 32-bit or together with the 64-bit version too.  The 64-bit CTP releases have followed shortly after the 32-bit version so I guess it's fair to assume the RTM will not be any different.