managing cash flow in primavera p6 - oracle primavera p6 collaborate 14

43
REMINDER Check in on the COLLABORATE mobile app Managing Cash Flow in Primavera P6 Prepared by: Luka Novosel, PMP Primavera Implementation Consultant Primakon Ltd. How to Track Project Revenues and Expenditures in One P6 Project Session ID#: 15465

Upload: p6academy

Post on 10-Aug-2015

277 views

Category:

Business


19 download

TRANSCRIPT

Page 1: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

REMINDER

Check in on the COLLABORATE mobile app

Managing Cash Flow in Primavera P6

Prepared by:

Luka Novosel, PMP

Primavera Implementation Consultant

Primakon Ltd.

How to Track Project Revenues and Expenditures in One P6 Project

Session ID#: 15465

Page 2: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

About me…

■ Masters degree in Electrical Engineering

■ Primavera functional & technical consultant since 2006

■ PMI PMP certified since 2010

■ Oracle Primavera P6 & P6 R8 Implementation Specialist

■ Oracle Primavera EPPM trainer

■ PMP preparation trainer

■ Primavera EPPM API application designer & developer

■ Primavera EPPM SDK application designer & developer

Page 3: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

About us…

■ Primakon is privately owned consulting company

■ 15+ years of experience in Primavera implementations

■ Offers customer tailored education in the area of PM methodologies and Primavera products

■ References in wide area of industries (from finance sector to construction)

■ Present on markets in EU & SE Europe

Page 4: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Presentation overview

■ The business need (NUMIP case)

■ Solution analysis

■ Model description

▪ Model overview

▪ Data entry

▪ Background jobs

▪ Primavera reports

■ BI publisher data model

■ BI reports

■ Conclusion and what’s next

Page 5: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

The business need (NUMIP case)

This is a subtitle or bulleted list

Page 6: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

The business needs …

■ About company

▪ NUMIP, privately owned engineering company,

▪ Working in different process industries such as:

— Nuclear Industry

— Pharmaceutical Industry

— Paper Industry

▪ Present in USA & Europe

▪ Project oriented company

■ Business needs:

▪ Long-running recession

▪ Huge pressure on profit margin

▪ Optimization of internal processes

Page 7: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Requirements …

■ Primavera P6 as management tool

■ Detailed project plans in Primavera

▪ All activities with roles in planning phase for cost projections

▪ Resource and material assignments with planned and actual values for cost tracking

■ All project expenditures in one place

■ Cash flow projections in Primavera P6

■ Executive reports on future cash flow projections

■ Email alerts for invoices

Page 8: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Key problems …

■ Primary role of P6 is to help project managers in managing projects

■ Additional requirements mustn’t interfere with primary role

■ Invoice due dates depend on contract definitions

■ The moment when the job is done (and money earned) is different from the moment when the invoice is paid

■ Management request is to have both informations in P6 and in correlation to project schedule

Page 9: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Solution analysis: Why cost User Defined Fields (UDF)?

Page 10: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Cost UDF Model and what’s behind it

■ WBS node called Cash Flow

■ Milestones with predecessor links to project plan

▪ Lag on relationship defines invoice due date period (i.e 30 days)

▪ Activity Cost UDF’s :

— Revenue

— Expenditure

▪ Milestone calendar: 7-day workweek

■ Milestone date gives UDF time dimension

■ Project Cost UDF’s summarizes activity level UDF’s (background job) one field for every month / type

Page 11: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Automatic Project Cost UDF creation

■ Background job creates project UDF’s

■ Two prefixes (data type and value type)

■ Data Type

▪ PLI – planned value

▪ BLI – baseline value

■ Value type

▪ EXP – expenditure

▪ INC – revenue

▪ CF – cash flow

Page 12: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Key benefits of this ModelWhy Cost UDF’s?

■ Financial fields do not interfere with managing project costs

■ No specific filtering is needed

■ Data is dynamically related to project schedule

■ Background job is updating project fields on predefined intervals

■ Simple project reports in P6 Web

■ Simple Project Portfolio analysis

■ Default Primavera Project Cost analysis (i.e total costs) is not affected

■ Designed as an add-on to regular project plans

■ Easy copy / paste export to Excel

Page 13: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Model description

Page 14: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Data input process

■ In project planning phase : Project Manager and Commercialdepartment official define planned project cash flow.

■ Revenue and expenditure milestones are linked to project management schedule

■ In P6, financial department officers have special Project and Global Security setup

▪ Read / Write access to WBS nodes with cash flow and invoice milestones

▪ Read + add relationships on project level

■ This way they have authority to define new milestones if necessary during projects execution

Page 15: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Data input process cont.

■ In P6 web special user interface view + layout are defined for financial department

Page 16: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Data input process cont. 2

■ Assigning relationships and monetary value to milestones

Page 17: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Project Cost UDF creationBackground job description

■ Every UDF expenditure / revenue activity is paired with the assigned milestone date

■ With that, every expenditure / revenue is getting time distribution variable

■ Background job based on Java and P6 API summarizes all UDF’s from activity level to project level

■ In that process time variable is used to make time distribution of cost UDF’s on project level

Page 18: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Project Cost UDF creationAccessing Baseline UDF values

■ Using P6 API, it is possible to read „baseline” activity UDF values. That data are not visible in P6 application.

■ With this, background job creates baseline time distributed values as project code UDF-s

Activity

rescheduled

Baseline Project value

Page 19: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Project Cost UDF Naming Conventions

■ Automatically created UDF’s follow predefined naming conventions

▪ VALUE TYPE + space + DATA TYPE + space + month.year

■ In this implementation VALUE TYPES are:

▪ EXP -> for expenditures

▪ INC -> for revenues

▪ CF -> for cash flow (revenue – expenditure)

■ DATA TYPES are:

▪ BLI -> baseline values

▪ PLI -> planned values

▪ ACI -> actual values (to be implemented)

■ These properties can be altered to suite specific implementation needs

Page 20: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Primavera out-of-the-box reports

Page 21: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Primavera Web reports

■ Porftolio with active projects

■ Portfolio views based od project cost UDF’s

■ P6 Web summarizes project UDF’s

■ Different scorecards can be created

■ Quite limited report options directly from the web

■ Limit of 28 fields per scorecard

■ Export to Excel option

Page 22: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Primavera Client reports

■ Generally P6 Client is not used for reporting

■ Export to Excel option is used from the P6 Client

■ No limitation in number of fields per layout

■ Easy copy / paste of fields to MS Excel for further analysis

■ Special layout is designed for that purpose

Page 23: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher Cash Flow Report

Page 24: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher reportsNew reporting in P6

■ BI Publisher is selected as main reporting source for reports in this model

■ Data model is developed to support requested reports

■ P6 desired look and feel is implemented

■ Reports are accessible via P6 web

Page 25: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher Data Model

■ List of Values(LOV) is created for Projects

■ Parameter p_project_id is defined to use this LOV

■ Data sets are defined

Page 26: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data Set

■ Data set is defined to support reporting needs

■ In this example SQL query will create number of fields from our Project Cost UDF names

■ Main fields are:

▪ DATA_TYPE

— sql: trim(SUBSTR(P6UDFTYPE.TITLE,4,4))

▪ VALUE_TYPE

— sql: trim(SUBSTR(P6UDFTYPE.TITLE,1,3))

▪ VALUE_DATE

— sql: trim(SUBSTR(P6UDFTYPE.TITLE,-7))

▪ SORT_DATE

— sql: trim(SUBSTR(P6UDFTYPE.TITLE,-4)) ||'.'||

trim(SUBSTR(P6UDFTYPE.TITLE,-7,2))

Page 27: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data Set cont.

■ The query result will hold one record for every sort_date-data_type-value_type pair with appropriate value and sum value to date

Value

Date

Sort

Date

Value Value Type Data

Type

Cum

Value

12.014 2014.01 90000 CF Baseline 90000

42.014 2014.04 -21312 CF Baseline 68688

72.014 2014.07 0 CF Baseline 68688

12.015 2015.01 0 CF Baseline 68688

12.014 2014.01 -31200 EXP Baseline -31200

42.014 2014.04 -21312 EXP Baseline -52512

72.014 2014.07 0 EXP Baseline -52512

12.015 2015.01 0 EXP Baseline -52512

12.014 2014.01 121200 INC Baseline 121200

42.014 2014.04 0 INC Baseline 121200

Page 28: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data SetRunning totals

Data sort for running

totals

Data sort for running

totals

Grouped by value typeRunning total per group

Page 29: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data SetSQL query String month.year and

year.month fields for

grouping

Case when for

data_type – this is done

to make chart legend

more readable

Page 30: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data SetSQL query cont.

Running totals are created

to enable cashflow S-curve.

Partition is done by:

1. data_type

2. value_type

All sorted by sort_date

Three tables are used in

SQL join:

• P6UDFTYPE

• P6PROJECT

• P6PROJECT_UDFVALUE

Page 31: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data SetSQL query cont. 2

In WHERE statement,

project UDF fields are

filtered by value_type

values (EXP, INC, CF)

UDF field with TOTAL

instead of sort_date is

excluded from this data set

Parameter value is used in

WHERE part of the

statement

That can be one or list of

project ID’s

Page 32: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data SetSQL query cont. 3

Grouping in SQL statement Grouping in SQL statement

is done according to SQL

standard requirements

Page 33: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

BI Publisher - Data Model - Data SetSample XML data and Report editor

■ After data set definition, XML sample data set is created

■ Report is designed in Web Report editor

■ Word .rtf templates are not used in this case

■ The goal was to create report in Web Editor only and to test it’s limitations

■ 4 layouts are defined

▪ Cumulative Graphical

▪ CashFlow Report

▪ Revenue Report

▪ Expenditure report

Page 34: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

P6 Web Report AccessTemplate selection

■ 4 report layouts defined in BI Publisher are available as templates in P6

■ Same names as Layouts in BI

Page 35: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

P6 Web Report AccessProject selection

■ In this data model project data is summarized

■ Possible uses of reports:

▪ One project

▪ Cumulative reports on portfolios

Page 36: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Report examplesCumulative graphical report

Page 37: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Report exampleCashFlow report

■ Table and chart filter

▪ Value_type=„CF”

■ Project List

Page 38: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Report exampleRevenue report

■ Table and chart filter

▪ Value_type=„INC”

■ Project List

Page 39: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Report exampleExpenditure report

■ Table and chart filter

▪ Value_type=„EXP”

■ Project List

Page 40: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Future model development

Page 41: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Plans for future …

■ Data integration with financial system on several key points

▪ i.e. invoice number assigned to milestones

■ New Actual fields

▪ When milestone has actual date, value in UDF (expenditure / revenue) is declared as actual value

■ New reports for key stakeholders

■ Additional forecast analysis

▪ i.e. Preset and Net Present Values

Page 42: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Questions ?

Contact Information:

Luka Novosel, M.Eng , PMP

Primakon ltd

[email protected]

www.primakon.com

Page 43: Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14

Please complete the session evaluationWe appreciate your feedback and insight

You may complete the session evaluation either

on paper or online via the mobile app