Snapshot is an out of the box feature for the EPM (Project Server) User View within Reporting Hub that works by storing every day the changes you have made to all projects into history tables so that you are enabled to undertake trending per week, per month, per quarter over time for all of your projects without configuration!
By default, the frequency of the data capture occurs during nightly maintenance, however depending on your needs Sensei can assist with the creation of customised frequency captures.
With this feature you will be able to create trend analysis reports like the following:
Note: This is not meant to be instructions on how to build reports or use SQL Server. For additional training on these tools consult your Sensei account manager.
When Snapshot is active you will be able to make review trends on your projects by week, month or quarter. It is important to note that history will only commence being collected when the feature is activated in your Site Collection.
The following views will be available:
Each view will contain the relevant columns for that part of the project user view with additional fields allowing a user to chart and report on the specified time dimension. For each time period the state of the project for that point in time will be returned; these dimension columns are:
- TimeByDay - Datetime for the last minute of the week
- TimeYear - The year of the week
- TimeWeekOfTheYear - The week of the year
- TimeByDay - Datetime for the last minute of the month
- TimeYear - The year of the month
- TimeMonthofTheYear - The month of the year
- TimeByDay - Datetime for the last minute of the quarter
- TimeYear - The year of the quarter
- TimeQuarter - The quarter of the year
These will enable you to establish the series in your chart and do any additional grouping.
Additionally, you can track the trends against specific points in time by executing a stored procedure.
To create a new moment the following Stored Procedure should be executed using the report designer account or higher.
exec [Snapshot].[CreateSnapshotMoment] @Name='My Snapshot', @CreatedBy='John Smith', @MetaData='<insert any metadata you want… e.g. xml or json containing a description>'
Or… as all parameters are optional
When executed, the stored procedure will check for any changes across the project data and register the moment in the snapshots table.
These moments will add a time by day grouping to the following views with a project row per snapshot moment, along with the values passed to the stored procedure:
Via customer care or partner with sufficient access, snapshot moments can be created or updated for dates and time in the past, and as long as history data was stored for that point in time, you can review the state of the projects for that moment.
Sample: Creating a snapshot moment via Flow
To automate the creation of a snapshot moment via Microsoft Flow it is straight forward… and in turn trigger it via a flow button, a timer, a power app or any other system that can trigger a Flow.
Using the Azure SQL Server connection details for your report designer account use the "Execute stored procedure" action, providing the parameters as needed.