SlideShare a Scribd company logo
1 of 81
Download to read offline
Create S-Curve Reports
for
P6R8.1 or P6R8.2
using
BI Publisher 11g
Presented by:
Paul G. Ciszewski, PMP
Dynamic Consulting
pciszewski@Dynamic-Consulting.net
(920) 883-9048
Overview
• Oracle Business Intelligence Publisher (BIP)
is a tool to create pixel-perfect reports
• To modify existing P6 Web Reports and to
create new P6 Web Reports, you must use
BIP
• When building your reports, you should use
P6‟s new Px Extended Scheme (database)
• Px Extended Scheme is de-normalized and
has P6 calculated values
Overview (cont.)
• Tables in the Px Extended Scheme begin with “P6”
• P6Project – list of all projects and related data by project (for ex: the “baseline planned labor units” for
project “TA Fall 13”)
• P6ProjectSpread - list of all projects and related data by project and date (for ex: the “planned labor
units” on November 15, 2013 for project “TA Fall 13”)
• P6Activity – list of all activities and related activity data for all projects (for ex: the “earned value labor
units” for activity “A1000” for project TA Fall 13)
• P6ActivitySpread – list of all activities and related activity data by date for all projects (for ex: the
“actual labor units” for activity “A1000” on November 15, 2013 for project TA Fall 13)
• P6ActivityCodeAssignment – list of all the activity codes and their values assigned to ALL activities.
If an activity has 5 activity codes assigned to it, then there would be 5 records in this table for the one
(1) activity
• P6ActivityCode – list of all activity codes and values
Note: There are no physical tables called P6Project (or P6Activity), the P6 tables are actually synonyms/aliases that point to
“Views”. “Views” are results from executed SQL statements. In the Px Extended Scheme, the “Views” are joins of native P6
tables (such as project, task) and new extended tables (such as projectx and taskx) – and the P6 security tables are
included.
For our presentation “SYNONYM” is the same as “TABLE”
BI Publisher - Introduction
• Two (2) main modules to create a BIP report
1. Data Model Editor – To extract data from
P6‟s Extended Px Scheme (database)
2. Create Report Layout – the presentation
of the data. But there are 2 tools
 Report Layout Editor (tool is within BIP)
 Word Template Builder (a MS WORD add-on)
BI Publisher – Presentation Objective
Presentation Objective
Go through all the steps to:
1. Develop the Data Model (SQL)
to extract the data from P6
2. Develop the S-Curve Template
in the WORD Template Builder
that uses the Data Model
3. Upload the Template to the
Report in BI Publisher
4. Move the Report and Data
Model to the P6Reports folder
5. Run S-Curve Report in P6 and
produce the same output as you
see on this slide
BI Publisher - Login
• User Name should exist in P6
• The user‟s security is applied
BI Publisher - Home
BI Publisher – Create Data Model (DM)
• Three (3) components needed to create the
DM for our examples
1. Create 1 List of Values (LOV)
2. Create 1 parameter
3. Create Data Set
BI Publisher – Create New DM
BI Publisher – Create New DM – P6 Tables
• Four (4) P6 Tables needed to create examples
1. P6Project (list of projects and all related data)
2. P6ActivitySpread (list of activities and activity data by date)
For version 1, I could have used P6ProjectSpread but P6ActivitySpread
works for both version 1 and 2
3. P6ActivityCodeAssignments (needed for version2)
4. P6ActivityCode (needed for version2)
BI Publisher – Create DM – Parameter
Desired “look and feel” in P6
BI Publisher – Create DM – Parameter
Desired “look and feel” in P6
BI Publisher – Create DM – Parameter
Desired “look and feel” in P6
BI Publisher – Create DM - Parameter
• First create list of values (LOV) for Projects
• Then create parameter using the LOV
• Parameter Label would be “Select Projects”
BI Publisher – Create DM – Create LOV‟s
SQL to retrieve the list of Project
ID‟s
BI Publisher – Create DM – Create Parameter
“p_project_id” is special parameter
recognized by P6
When “Parameter Type” is Menu,
user can select “LOV” value
BI Publisher – Create DM – Data Set
• Next, create a Data Set
• Data Set contains the SQL query/statements to
extract the P6 data (such as Baseline Planned
Labor Units) from the P6 tables
• In our example, our SQL query will sum the labor
units for all activities by date AND
• Our SQL statements will create running totals (see
next slide)
• The query result will be a record for each date of our
project(s) when work is planned or work is done
BI Publisher – Create DM – Data Set
Date
ACTSP_STARTDATE
Display Date
DISPLAYDATE
Baseline Labor Units
SUM_BLPLANNEDLABORUNITS
Running Totals
CUM_BLPLANNEDLABORUNITS
Feb 4, 2013 02/04 50 50
Feb 5, 2013 02/05 25 75
Feb 6, 2013 02/06 10 85
Feb 7, 2013 02/07 20 105
Feb 8, 2013
02/08 50 155
And so
BI Publisher – Create DM – Create Data Set
Then select “SQL Query”
BI Publisher – Create DM – Create Data Set
You could use “Query Builder” for
simple SQL queries/statements.
“Query Builder” builds the SQL
query for us.
But for advanced/complex SQL
queries/statements, I just type it in
myself
BI Publisher – Create DM – Create Data Set
I typed in the SQL
query/statement
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
Breakdown SQL Query
SQL query to create four (4) columns:
- ACTSP_STARTDATE
- DISPLAYDATE
- SUM_BLPLANNEDLABORUNITS
- CUM_BLPLANNEDLABORUNITS
Summed and grouped by
TRUNC(ACTSP.STARTDATE)
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
Tables Accessed/FROM Clause
P6Project with an alias of ”PRJ”
P6ActivitySpread with an alias of “ACTSP”
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
Conditions/Where Statement
p_project_id is the Parameter
Before the user runs the report, they will
select 1 or more projects.
This statement will extract all project
records from P6Project with matching
Project ID‟s.
PRJ.ID are the project ID‟s you see in P6
such as “Fall TA 2013” or “EC500123”.
Tables are usually linked together (joined
together) using the unique key for the
record. But first we must look up the
correct record by Project ID. In the Px
Extended Scheme, the unique key is
called “ObjectID”.
ID ObjectID (other columns…)
Fall TA 2013 4501
EC500123 1287
Test Prj 123 9333
P6Project PRJ Table
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
Conditions/Where Statement
This statement will extract all activity
records from P6ActivitySpread with
matching project ObjectID.
However in the P6ActivitySpread table,
the project‟s unique key column is called
“ProjectObjectID”.
So first we move to the correct project
record with “PRJ.ID IN (:p_project_id)“
then we get the ObjectID and use it to
extract activity records from the
P6ActivitySpread table using
ProjectObjectID
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
Group Clause
The GROUP clause groups ALL activity
records together by STARTDATE.
The SUM() function, will sum all “Baseline
Planned Labor Units” from all Activities
that have the same STARTDATE.
Remember: The P6ActivitySpread table
has a record for each day of the Activity. If
the Activity has 24 budgeted hours over 3
days (Feb 1, Feb 2, and Feb 3), then there
will be 3 records in the P6ActivitySpread
table for that activity. Ex:
Activity Start BL Planned
ID Date Labor Units
A1000 2/1/13 8
A1000 2/2/13 8
A1000 2/3/13 8
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
ACTSP_STARTDATE
This is the full date (without time)
used for sorting/ordering.
This value is not placed on the
chart/S-Curve.
In the P6ActivitySpread table,
ACTSP.STARTDATE is the start date
for the hours on this date
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
DISPLAYDATE
This value will be shown across the
horizontal axis of the chart/S-Curve.
The date will be in “mm/dd” format
without the year to save space on the
report.
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
SUM_BLPLANNEDLABORUNITS
This is the “Baseline Planned Labor
Units” from the Activity Spread
extended table summed by StartDate
(because of the “GROUP BY”
clause).
SUM() is a function.
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
CUM_BLPLANNEDLABORUNITS
This statement will add up all “Baseline
Planned Labor Units” beginning at the first
row (UNBOUNDED PRECEDING) to the
current row (CURRENT ROW).
Using the STARTDATE for order (ORDER
BY TRUNC(STARTDATE))
The result is stored in
“CUM_BLPLANNEDLABORUNITS”
Notice: SUM(SUM())
BI Publisher – Create DM - Data Set / SQL
-- Version 1 - just BL planned labor units
SELECT
TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS)
AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
ORDER BY ACTSP_STARTDATE
ORDER BY
Last, we will order all our records by
ACTSP_STARTDATE
BI Publisher – Create DM – Create XML Data
• After creating the LOV‟s, Parameters, and the
Data Set – you must generate XML data.
• To create the presentation part of the report,
you must have XML data
• You must save the XML data to the DM if you
are building the report in the Report Layout
Editor
• You must save the XML data to a file and
import it into your WORD document if you are
using the Word Template Builder
BI Publisher – Create DM – Create XML Data
Data Set
The Data Set shows the four
columns being returned from the
SQL query/statement
Generate XML Data
Click this button to show the screen
when we can generate the XML.
BI Publisher – Create DM – Create XML Data
1. Generate XML Data
Select 1 or more projects, then click
“Run”
2. XML Data
The XML data has
the tag names and
values.
3. Save XML
Either “Export
XML” to a file or
“Save As
Sample Data” to
the DM.
BI Publisher – Create DM – Create XML Data
• Save the DM
• Next, build presentation part of report by first
creating a report called “SCurve-V1” and then
• Use Word Template Builder for layout
BI Publisher – Create Report
BI Publisher – Create Report – Select DM
BI Publisher – Create Report – Save Report in BIP
Report Layout Editor
If we were going to create the presentation
part in the Report Layout Editor tool, then I
would have selected a Template. However,
we will be developing the presentation part in
the “Word Template Builder” therefore we just
want to save the report.
BI Publisher – Create Report – Save Report
Enter Report Name
BIP – Create Report – Word Template Builder
• Switch to MS WORD
• Select BI Publisher Add-in tab
• Log into BIP
• Load XML file
• Create report‟s layout in WORD
• Add Report Title
• Add Chart (S-Curve)
• Save WORD file as RTF
• Upload Template to BIP Report
BIP – Create Report – Word Template Builder
Log On
Enter Username
Enter Password
Enter IP of BIP server
BIP –Template Builder – Select Report
Select Report
Layout Templates
If there were templates in
BIP for this report, the
templates would be listed
here.
BIP –Template Builder – Load XML Data
Select XML File
This file was created
by the DM
BIP –Template Builder – Create Layout
2. Add Chart
Move cursor to
position in WORD
doc and double click
Chart object
1. Add Text
Using WORD‟s standard
features – such as
forecolor, center, font
BIP –Template Builder – Chart Properties
BIP –Template Builder – Chart Properties
Chart/Line Properties
Change other properties
such as 3-D effect, line
color, line name
Chart/Line Properties
1.Drag/Drop DISPLAYDATE to
Labels
2. Drag/Drop
CUM_BLPLANNEDLABORUNITS
to Values
3. Change Type to Line Graph
4. Uncheck Group Data
BIP –Template Builder – Chart Properties
BIP –Template Builder – Report
BIP – Create Report – Word Template Builder
• To upload Template into BIP
• Save File in WORD as RTF
• Select “Upload Template As” on BI Publisher
Add-in tab
• Save Template to the BIP Report
• Login into BIP
• Open/Edit Report
• Select Template Layout (that we just uploaded from Tmp Builder)
• View Report
BIP –Template Builder – Create Layout
BIP – Open/Edit Report – View Report
BIP – Run Report from P6 to PDF Format
BIP – DM – Expand DM
• DM is currently plotting BL Planned Labor
Units
• Add Actual Labor Units and Earned Value
Labor Units
• Create new XML data file with new data
elements
• Import new XML into WORD Template Builder
• Modify Template to include new data elements
• Upload to BIP – run report
BIP – DM – Add More Data Elements
Original Section of SQL
Copy/Paste this section
New Section of SQL
Change
BASELINEPLANNEDLABORUNITS to
ACTUALLABORUNITS in 4 places
See Next Slide
BIP – DM – Add More Data Elements (SQL 1 of 2)
Original Section of
SQL
Copy/Paste this section
New Section of SQL
Change
BASELINEPLANNEDLABORUNITS
to ACTUALLABORUNITS in 4 places
-- Version 1 - BL planned Labor Units,
-- Actual Labor Units, and EV Labor Units
SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE,
TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE,
-- BL planned labor units summed by date
SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS,
-- BL planned labor units - running totals by date
SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_BLPLANNEDLABORUNITS,
-- Actual labor units summed by date
SUM(ACTSP.ACTUALLABORUNITS) AS SUM_ACTUALLABORUNITS,
-- Actual labor units - running totals by date
SUM(SUM(ACTSP.ACTUALLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_ACTUALLABORUNITS,
BIP – DM – Add More Data Elements (SQL 2 of 2)
Another New Section of SQL
After copying the section in RED on
previous slide, change
BASELINEPLANNEDLABORUNITS to
EARNEDVALUELABORUNITS in 4
places.
-- (Continuation from previous slide)
-- EV labor units summed by date
SUM(ACTSP.EARNEDVALUELABORUNITS) AS SUM_EARNEDVALUELABORUNITS,
-- EV labor units - running totals by date
SUM(SUM(ACTSP.EARNEDVALUELABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_EARNEDVALUELABORUNITS
-- Two tables needed for version 1
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID
GROUP BY TRUNC(ACTSP.STARTDATE)
BIP – DM – Add More Data Elements
New Data Elements in the Data Set
Generate XML
again with New
Data Elements
then Save It
BIP –Template Builder – Modify Template Add New Chart
Include all 3 running total
data elements.
Change Some
Properties
Color, labels, remove
3-D effect
BIP –Template Builder – Modify Template (show Project ID‟s)
Add Data Element
1. Click on Field
2. The Field Dialog box is
displayed
3. Double Click on data
element (such as
p_project_id)
4. The data element will
be added to the report
NOTE: p_project_id was
our parameter in our DM
BIP – Create Report – Word Template Builder
• We must upload Template into BIP again
• Save File in WORD as RTF
• “Upload Template As” to save report
• Login into BIP
• Open/Edit Report
• Select Template Layout (that we just uploaded from Tmp Builder)
• View Report
• Move Report and DM to P6Reports folder
and reattach DM to Report
BIP – Run Report from P6
BIP – Expand DM/Report to include Activity Codes
• In many operations, the managers want to see
progress only for activities with a specific
Activity Code/Value combination
• For ex:
• By Phase: FOUND, DESGN, STRUC
• By Department: CON, PCH, ENG
• So, we need to add:
• List of Value: ActivityCodeLOV
• Parameter: p_activity_value
• SQL logic to the Data Set that uses new parameter
BIP – Expand DM/Report to include Activity Codes
SELECT CODEVALUE FROM P6ACTIVITYCODE
WHERE CODETYPENAME = 'Phase' AND CODETYPESCOPE = 'AS_Global'
BIP – Expand DM/Report to include Activity Codes
p_activity_value
1. Display “Select Phase”
2. Use ActivityCodeLOV
3. No Multiple Selection
4. Also changed the
values on p_project_id so
that the user can only
select one (1) project.
BIP – DM – Expand SQL (to Include Activity Code Logic)
Same SQL
The SQL above this point
is the same as the
previous SQL
New SQL for Activity
Code Logic
Need the Activity Code
Assignment table
-- EV labor units summed by date
SUM(ACTSP.EARNEDVALUELABORUNITS) AS SUM_EARNEDVALUELABORUNITS,
-- EV labor units - running totals by date
SUM(SUM(ACTSP.EARNEDVALUELABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_EARNEDVALUELABORUNITS
-- Three tables needed for version 2
FROM P6PROJECT PRJ,
P6ACTIVITYSPREAD ACTSP,
P6ACTIVITYCODEASSIGNMENT ACTAS
WHERE PRJ.ID IN (:p_project_id) AND
PRJ.OBJECTID = ACTSP.PROJECTOBJECTID AND
ACTSP.ACTIVITYOBJECTID = ACTAS.ACTIVITYOBJECTID AND
ACTAS.ACTIVITYCODETYPENAME = 'Phase' AND
ACTAS.ACTIVITYCODEVALUE IN (:p_activity_value)
GROUP BY TRUNC(ACTSP.STARTDATE)
New SQL for Activity
Code Logic
Add condition so that the
results will only include
Activities with an Activity
Code of „Phase‟ and the
Activity Value selected
(which is stored in
p_activity_value)
BIP – Update Report
After making the changes to the DM
• Save DM
• Create XML data
• Import XML data into Template in WORD
• Modify Template
• Upload Template to BIP
• Open/Edit Report
• View Report
• Move Report to P6Report folder (reattached DM)
BIP – Update Report – WORD Template Builder
This is just a table in WORD
Using the Field
control on the BIP
tab, added
p_project_id and
p_activity_value to
table cells – then
change forecolor to
RED
No changes were needed on
the Chart
BIP – Running Report in P6
On Reports Tab in P6, find Report in
list and Right Click – select „Run
Report‟. Then the „Report Settings‟
screen is shown
Select Project
Select Phase from Dropdown List
Click the „Run‟ button
BIP – Running Report in P6
Looks good but we need to
stop the EV and Actual lines
on the Data Date
BIP – Advanced Topic for Chart
In our example, Actual Labor Units and EV Labor
Units are plotted to the end of the project. I want
them to plot only to the Data Date
Plot to End of Project Plot to Data Date
BIP – Advanced Topic for Chart
To add support so that lines are only plotted to
the Data Date, we need to:
1. Modify the DM/Data Set so that our running
totals for Actual and EV will be set to -1 when
the Date (Start Date) is greater than the Data
Date AND
2. Add an “if” condition in the XSL code behind
the Chart in the WORD Template Builder.
Behind most objects on the Template Builder, there is a section where
you can add additional code (it‟s XML-type code)
BIP – Advanced Topic for Chart – DM Changes
SUM(SUM(ACTSP.ACTUALLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS CUM_ACTUALLABORUNITS,
(CASE WHEN TRUNC(ACTSP.STARTDATE) <=
MAX(TRUNC(PRJ.DATADATE)) THEN
SUM(SUM(ACTSP.ACTUALLABORUNITS)) OVER
(ORDER BY TRUNC(ACTSP.STARTDATE)
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
ELSE
-1
END ) AS CUM_ACTUALLABORUNITS,
Old SQL for Running Total
for
CUM_ACTUALLABORUNITS
New SQL for Running Total
for
CUM_ACTUALLABORUNITS
The CASE is an IF statement.
When the StartDate is <= the
Data Date, continue adding to
running total ELSE set it to -1
We did the same thing for
the running total for EV
BIP – Advanced Topic for Chart – Template Changes
Steps
1. Open Template/RTF file in
WORD Template Builder
2. Double click on Chart
3. Select „Advanced‟ tab
BIP – Advanced Topic for Chart – Template Changes
XSL Code
Unformatted but
if you copy/paste
to an XML editor
or to a NOTEPAD
file with an XML
extension then
open it in your
browser, it looks
a little better.
See next slide
BIP – Advanced Topic for Chart – Template Changes
XSL Code
Formatted after:
1. copying/pasting XSL
Code to a NOTEPAD
file,
2. saving with an XML
extension, then
3. opening in a browser
IF Condition
We need to insert an <xsl:if>
statement round the Cell elements for
both
CUM_EARNEDVALUELABORUNITS
and
CUM_ACTUALLABORUNITS
BIP – Advanced Topic for Chart – Template Changes
To modify, I just used NOTEPAD and put in
NEWLINES so that it was organized.
Then I modified it in NOTEPAD, save it to a
txt file, then copy/paste back to the
Advanced tab.
BIP – Advanced Topic for Chart – Template Changes
The Yellow highlight shows the sections that had to
be modified. Note the “<xsl:if” statement.
The Grey highlight shows that we did not modify the
logic for CUM_BLPLANNEDLABORUNITS
BIP – Advanced Topic for Chart – Template Changes
Note: EV and Actual stop plotting after 4/26
but BL Planned plots to the end of the project
BI Publisher – Presentation Objective
Presentation Objective
Go through all the steps to:
1. Develop the Data Model (SQL)
to extract the data from P6
2. Develop the S-Curve Template
in the WORD Template Builder
that uses the Data Model
3. Upload the Template to the
Report in BI Publisher
4. Move the Report and Data
Model to the P6Reports folder
5. Run S-Curve Report in P6 and
produce the same output as you
see on this slide
Wrap Up
When you download this PowerPoint
Presentation , you will also receive all Data
Models, SQL, Reports, and the XSL code with
the “IF” condition
End of Presentation
Questions?
Presented by:
Paul G. Ciszewski, PMP
Dynamic Consulting
pciszewski@Dynamic-Consulting.net
(920) 883-9048

More Related Content

What's hot

How to prepare recovery or revised schedule rev.2
How to prepare recovery or revised schedule rev.2How to prepare recovery or revised schedule rev.2
How to prepare recovery or revised schedule rev.2Abdelhay Ghanem
 
SAP Project Systems with Success Factors
SAP Project Systems with Success FactorsSAP Project Systems with Success Factors
SAP Project Systems with Success FactorsITChamps Software Pvt. Ltd
 
Primavara
PrimavaraPrimavara
Primavaradanabl
 
MS Project Integration: Tips, Tricks and What's New for You
MS Project Integration: Tips, Tricks and What's New for YouMS Project Integration: Tips, Tricks and What's New for You
MS Project Integration: Tips, Tricks and What's New for YouCA Technologies
 
Primavera presentation
Primavera presentationPrimavera presentation
Primavera presentationNithin Dev
 
Ps user manual
Ps user manualPs user manual
Ps user manualSoumya De
 
Ms Project 2010
Ms Project 2010Ms Project 2010
Ms Project 2010Mazen Elsayed
 
Primavera p6 vs ms
Primavera p6 vs msPrimavera p6 vs ms
Primavera p6 vs msUPMS MAGHREB
 
Sap ps cost planning
Sap ps cost planningSap ps cost planning
Sap ps cost planningSoumya De
 
Sap solutions presentation
Sap solutions presentationSap solutions presentation
Sap solutions presentationKumar M.
 
Oracle Fusion Trees
Oracle Fusion TreesOracle Fusion Trees
Oracle Fusion TreesFeras Ahmad
 
Important scheduled processes list in fusion hcm
Important scheduled processes list in fusion hcmImportant scheduled processes list in fusion hcm
Important scheduled processes list in fusion hcmFeras Ahmad
 
Basic Functionality and Integration of PS SAP
Basic Functionality and Integration of PS SAPBasic Functionality and Integration of PS SAP
Basic Functionality and Integration of PS SAPNoveco Systems Pty.Ltd
 
Project Systems: Materials
Project Systems: MaterialsProject Systems: Materials
Project Systems: Materialsvnhardik
 
SAP Project Management
SAP Project ManagementSAP Project Management
SAP Project ManagementKumar M.
 
Jaspersoft and Clarity PPM - Advanced Reporting with Data Warehouse
Jaspersoft and Clarity PPM - Advanced Reporting with Data WarehouseJaspersoft and Clarity PPM - Advanced Reporting with Data Warehouse
Jaspersoft and Clarity PPM - Advanced Reporting with Data WarehouseThiago Bottoni
 
Building BI Publisher Reports using Templates
Building BI Publisher Reports using TemplatesBuilding BI Publisher Reports using Templates
Building BI Publisher Reports using Templatesp6academy
 

What's hot (20)

How to prepare recovery or revised schedule rev.2
How to prepare recovery or revised schedule rev.2How to prepare recovery or revised schedule rev.2
How to prepare recovery or revised schedule rev.2
 
tcc primavera
tcc primaveratcc primavera
tcc primavera
 
SAP Project Systems with Success Factors
SAP Project Systems with Success FactorsSAP Project Systems with Success Factors
SAP Project Systems with Success Factors
 
Primavara
PrimavaraPrimavara
Primavara
 
MS Project Integration: Tips, Tricks and What's New for You
MS Project Integration: Tips, Tricks and What's New for YouMS Project Integration: Tips, Tricks and What's New for You
MS Project Integration: Tips, Tricks and What's New for You
 
Primavera presentation
Primavera presentationPrimavera presentation
Primavera presentation
 
Ps user manual
Ps user manualPs user manual
Ps user manual
 
Ms Project 2010
Ms Project 2010Ms Project 2010
Ms Project 2010
 
Primavera p6 vs ms
Primavera p6 vs msPrimavera p6 vs ms
Primavera p6 vs ms
 
Sap ps cost planning
Sap ps cost planningSap ps cost planning
Sap ps cost planning
 
Primavera Training P6
Primavera Training P6Primavera Training P6
Primavera Training P6
 
Sap solutions presentation
Sap solutions presentationSap solutions presentation
Sap solutions presentation
 
SAP PS overview
SAP PS overviewSAP PS overview
SAP PS overview
 
Oracle Fusion Trees
Oracle Fusion TreesOracle Fusion Trees
Oracle Fusion Trees
 
Important scheduled processes list in fusion hcm
Important scheduled processes list in fusion hcmImportant scheduled processes list in fusion hcm
Important scheduled processes list in fusion hcm
 
Basic Functionality and Integration of PS SAP
Basic Functionality and Integration of PS SAPBasic Functionality and Integration of PS SAP
Basic Functionality and Integration of PS SAP
 
Project Systems: Materials
Project Systems: MaterialsProject Systems: Materials
Project Systems: Materials
 
SAP Project Management
SAP Project ManagementSAP Project Management
SAP Project Management
 
Jaspersoft and Clarity PPM - Advanced Reporting with Data Warehouse
Jaspersoft and Clarity PPM - Advanced Reporting with Data WarehouseJaspersoft and Clarity PPM - Advanced Reporting with Data Warehouse
Jaspersoft and Clarity PPM - Advanced Reporting with Data Warehouse
 
Building BI Publisher Reports using Templates
Building BI Publisher Reports using TemplatesBuilding BI Publisher Reports using Templates
Building BI Publisher Reports using Templates
 

Viewers also liked

S curve innovation #BBTwisnu
S curve innovation #BBTwisnuS curve innovation #BBTwisnu
S curve innovation #BBTwisnuWisnu Dewobroto
 
Innovation and the S-Curve
Innovation and the S-CurveInnovation and the S-Curve
Innovation and the S-Curvewright4
 
Project network scheduling and S-curve
Project network scheduling and S-curve Project network scheduling and S-curve
Project network scheduling and S-curve Satish Yadavalli
 
S Curve
S CurveS Curve
S Curveoswald64
 
Technology life cycle
Technology life cycleTechnology life cycle
Technology life cycleMBAMithlesh
 
Technology life cycle
Technology life cycleTechnology life cycle
Technology life cycleVijayKrKhurana
 
The Bell Curve Meets the S-Curve: The speed of change in learning environments
The Bell Curve Meets the S-Curve: The speed of change in learning environmentsThe Bell Curve Meets the S-Curve: The speed of change in learning environments
The Bell Curve Meets the S-Curve: The speed of change in learning environmentsCarter F. Smith, J.D., Ph.D.
 
Earned Value Analysis - Basic Concepts
Earned Value Analysis  - Basic ConceptsEarned Value Analysis  - Basic Concepts
Earned Value Analysis - Basic ConceptsRicardo Viana Vargas
 
A simple example of Earned Value Management (EVM) in action
A simple example of Earned Value Management (EVM) in actionA simple example of Earned Value Management (EVM) in action
A simple example of Earned Value Management (EVM) in actionPlanisware
 
Présentation birt J2EE
Présentation birt J2EEPrésentation birt J2EE
Présentation birt J2EEOlympe Tchibozo
 

Viewers also liked (12)

S curve innovation #BBTwisnu
S curve innovation #BBTwisnuS curve innovation #BBTwisnu
S curve innovation #BBTwisnu
 
Innovation and the S-Curve
Innovation and the S-CurveInnovation and the S-Curve
Innovation and the S-Curve
 
Project network scheduling and S-curve
Project network scheduling and S-curve Project network scheduling and S-curve
Project network scheduling and S-curve
 
S Curve
S CurveS Curve
S Curve
 
Technology life cycle
Technology life cycleTechnology life cycle
Technology life cycle
 
Technology life cycle
Technology life cycleTechnology life cycle
Technology life cycle
 
The Bell Curve Meets the S-Curve: The speed of change in learning environments
The Bell Curve Meets the S-Curve: The speed of change in learning environmentsThe Bell Curve Meets the S-Curve: The speed of change in learning environments
The Bell Curve Meets the S-Curve: The speed of change in learning environments
 
Earned Value Analysis - Basic Concepts
Earned Value Analysis  - Basic ConceptsEarned Value Analysis  - Basic Concepts
Earned Value Analysis - Basic Concepts
 
Technology S-curves
Technology S-curvesTechnology S-curves
Technology S-curves
 
2016 jpo
2016 jpo2016 jpo
2016 jpo
 
A simple example of Earned Value Management (EVM) in action
A simple example of Earned Value Management (EVM) in actionA simple example of Earned Value Management (EVM) in action
A simple example of Earned Value Management (EVM) in action
 
Présentation birt J2EE
Présentation birt J2EEPrésentation birt J2EE
Présentation birt J2EE
 

Similar to 204460 create s curve reports

Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...
Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...
Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...p6academy
 
P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...
P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...
P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...p6academy
 
Bi Portfolio
Bi PortfolioBi Portfolio
Bi PortfolioSandra1217
 
BI Portfolio
BI PortfolioBI Portfolio
BI Portfoliosprigge
 
BI Portfolio
BI PortfolioBI Portfolio
BI Portfolioguestf0c552
 
JKJ_SSRS PPS Excel Services Project.Documentation
JKJ_SSRS PPS Excel Services Project.DocumentationJKJ_SSRS PPS Excel Services Project.Documentation
JKJ_SSRS PPS Excel Services Project.DocumentationJeff Jacob
 
SSRS - PPS - MOSS Profile
SSRS - PPS - MOSS ProfileSSRS - PPS - MOSS Profile
SSRS - PPS - MOSS Profiletthompson0421
 
QLIKVIEW ONLINE TRAINING
QLIKVIEW ONLINE TRAININGQLIKVIEW ONLINE TRAINING
QLIKVIEW ONLINE TRAININGTRAINING ICON
 
Business Intelligence Portfolio of Anastasia Bakhareva
Business Intelligence Portfolio of Anastasia BakharevaBusiness Intelligence Portfolio of Anastasia Bakhareva
Business Intelligence Portfolio of Anastasia Bakharevabanastal
 
C-Project Report-SSRS
C-Project Report-SSRSC-Project Report-SSRS
C-Project Report-SSRSYubaraj Khanal
 
Agnes's SSAS Project Documentation
Agnes's SSAS Project DocumentationAgnes's SSAS Project Documentation
Agnes's SSAS Project Documentationagnestetter
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence PortfolioVito Addotta
 
Kevin Fahy Bi Portfolio
Kevin Fahy   Bi PortfolioKevin Fahy   Bi Portfolio
Kevin Fahy Bi PortfolioKevinPFahy
 
Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14
Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14
Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14p6academy
 
00 project control tools
00 project control tools00 project control tools
00 project control toolsAHMED NADIM JILANI
 
Rodney Matejek Portfolio
Rodney Matejek PortfolioRodney Matejek Portfolio
Rodney Matejek Portfoliormatejek
 
conf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalytics
conf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalyticsconf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalytics
conf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalyticsTom LaGatta
 

Similar to 204460 create s curve reports (20)

Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...
Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...
Create bar chart report for p6 r8.3 using bi publisher 11g - Oracle Primavera...
 
P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...
P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...
P6R8.3 Using BI Publisher 11g - Create Multi-Project Status and Pivot Table R...
 
Bi Portfolio
Bi PortfolioBi Portfolio
Bi Portfolio
 
BI Portfolio
BI PortfolioBI Portfolio
BI Portfolio
 
BI Portfolio
BI PortfolioBI Portfolio
BI Portfolio
 
JKJ_SSRS PPS Excel Services Project.Documentation
JKJ_SSRS PPS Excel Services Project.DocumentationJKJ_SSRS PPS Excel Services Project.Documentation
JKJ_SSRS PPS Excel Services Project.Documentation
 
SSRS - PPS - MOSS Profile
SSRS - PPS - MOSS ProfileSSRS - PPS - MOSS Profile
SSRS - PPS - MOSS Profile
 
Sap BPC concepts
Sap BPC conceptsSap BPC concepts
Sap BPC concepts
 
QLIKVIEW ONLINE TRAINING
QLIKVIEW ONLINE TRAININGQLIKVIEW ONLINE TRAINING
QLIKVIEW ONLINE TRAINING
 
Business Intelligence Portfolio of Anastasia Bakhareva
Business Intelligence Portfolio of Anastasia BakharevaBusiness Intelligence Portfolio of Anastasia Bakhareva
Business Intelligence Portfolio of Anastasia Bakhareva
 
C-Project Report-SSRS
C-Project Report-SSRSC-Project Report-SSRS
C-Project Report-SSRS
 
Agnes's SSAS Project Documentation
Agnes's SSAS Project DocumentationAgnes's SSAS Project Documentation
Agnes's SSAS Project Documentation
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
Power bi
Power biPower bi
Power bi
 
Kevin Fahy Bi Portfolio
Kevin Fahy   Bi PortfolioKevin Fahy   Bi Portfolio
Kevin Fahy Bi Portfolio
 
Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14
Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14
Managing cash flow in Primavera P6 - Oracle Primavera P6 Collaborate 14
 
00 project control tools
00 project control tools00 project control tools
00 project control tools
 
Rodney Matejek Portfolio
Rodney Matejek PortfolioRodney Matejek Portfolio
Rodney Matejek Portfolio
 
BizViz - CA PPM Analytics
BizViz - CA PPM AnalyticsBizViz - CA PPM Analytics
BizViz - CA PPM Analytics
 
conf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalytics
conf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalyticsconf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalytics
conf2015_TLaGatta_CHarris_Splunk_BusinessAnalytics_DeliveringHighLevelAnalytics
 

More from p6academy

Oracle OpenWorld 2015
Oracle OpenWorld 2015Oracle OpenWorld 2015
Oracle OpenWorld 2015p6academy
 
Plan and Execute the Right Projects— Easily and Affordably
Plan and Execute the Right Projects—  Easily and AffordablyPlan and Execute the Right Projects—  Easily and Affordably
Plan and Execute the Right Projects— Easily and Affordablyp6academy
 
What's New In Primavera P6 EPPM 17.1
What's New In Primavera P6 EPPM 17.1What's New In Primavera P6 EPPM 17.1
What's New In Primavera P6 EPPM 17.1p6academy
 
Oracle Primavera Unifier What's New in Release 16.2
Oracle Primavera Unifier What's New in Release 16.2Oracle Primavera Unifier What's New in Release 16.2
Oracle Primavera Unifier What's New in Release 16.2p6academy
 
Oracle What's New In Primavera P6 16.2
Oracle What's New In Primavera P6 16.2Oracle What's New In Primavera P6 16.2
Oracle What's New In Primavera P6 16.2p6academy
 
What's New in Primavera Prime 16.1
What's New in Primavera Prime 16.1What's New in Primavera Prime 16.1
What's New in Primavera Prime 16.1p6academy
 
What's New in Primavera Gateway 16.1
What's New in Primavera Gateway 16.1What's New in Primavera Gateway 16.1
What's New in Primavera Gateway 16.1p6academy
 
What's New In Primavera Analytics 16.1
What's New In Primavera Analytics 16.1What's New In Primavera Analytics 16.1
What's New In Primavera Analytics 16.1p6academy
 
What's New in Unifier 16.1
What's New in Unifier 16.1What's New in Unifier 16.1
What's New in Unifier 16.1p6academy
 
20160405 How to Install Primavera P6 16.1 Professional desktop
20160405 How to Install Primavera P6 16.1 Professional desktop20160405 How to Install Primavera P6 16.1 Professional desktop
20160405 How to Install Primavera P6 16.1 Professional desktopp6academy
 
Oracle Primavera P6 16.1 Announced
Oracle Primavera P6 16.1 AnnouncedOracle Primavera P6 16.1 Announced
Oracle Primavera P6 16.1 Announcedp6academy
 
Oracle Primavera Unifier 16.1
Oracle Primavera Unifier 16.1Oracle Primavera Unifier 16.1
Oracle Primavera Unifier 16.1p6academy
 
P6 Release 8 Application Considerations Overview
P6 Release 8 Application Considerations OverviewP6 Release 8 Application Considerations Overview
P6 Release 8 Application Considerations Overviewp6academy
 
Administering Users, Access and Views in P6 EPPM (Web) Release 8 and later
Administering Users, Access and Views in P6 EPPM  (Web) Release 8 and laterAdministering Users, Access and Views in P6 EPPM  (Web) Release 8 and later
Administering Users, Access and Views in P6 EPPM (Web) Release 8 and laterp6academy
 
P6 Release 8 Installation Orientation
P6 Release 8 Installation OrientationP6 Release 8 Installation Orientation
P6 Release 8 Installation Orientationp6academy
 
Oracle Primavera P6 R8 Release Value Proposition
Oracle Primavera P6 R8 Release Value PropositionOracle Primavera P6 R8 Release Value Proposition
Oracle Primavera P6 R8 Release Value Propositionp6academy
 
Oracle Primavera P6 v7 Release Value Proposition
Oracle Primavera P6 v7 Release Value Proposition Oracle Primavera P6 v7 Release Value Proposition
Oracle Primavera P6 v7 Release Value Proposition p6academy
 
Oracle Primavera P6 Release Content Document (RCD)
Oracle Primavera P6 Release Content Document (RCD)Oracle Primavera P6 Release Content Document (RCD)
Oracle Primavera P6 Release Content Document (RCD)p6academy
 
Oracle Support Accreditation – Level 1 Study Guide
Oracle Support Accreditation – Level 1 Study GuideOracle Support Accreditation – Level 1 Study Guide
Oracle Support Accreditation – Level 1 Study Guidep6academy
 
Oracle Primavera Support Accreditation Study Guide
Oracle Primavera Support Accreditation Study GuideOracle Primavera Support Accreditation Study Guide
Oracle Primavera Support Accreditation Study Guidep6academy
 

More from p6academy (20)

Oracle OpenWorld 2015
Oracle OpenWorld 2015Oracle OpenWorld 2015
Oracle OpenWorld 2015
 
Plan and Execute the Right Projects— Easily and Affordably
Plan and Execute the Right Projects—  Easily and AffordablyPlan and Execute the Right Projects—  Easily and Affordably
Plan and Execute the Right Projects— Easily and Affordably
 
What's New In Primavera P6 EPPM 17.1
What's New In Primavera P6 EPPM 17.1What's New In Primavera P6 EPPM 17.1
What's New In Primavera P6 EPPM 17.1
 
Oracle Primavera Unifier What's New in Release 16.2
Oracle Primavera Unifier What's New in Release 16.2Oracle Primavera Unifier What's New in Release 16.2
Oracle Primavera Unifier What's New in Release 16.2
 
Oracle What's New In Primavera P6 16.2
Oracle What's New In Primavera P6 16.2Oracle What's New In Primavera P6 16.2
Oracle What's New In Primavera P6 16.2
 
What's New in Primavera Prime 16.1
What's New in Primavera Prime 16.1What's New in Primavera Prime 16.1
What's New in Primavera Prime 16.1
 
What's New in Primavera Gateway 16.1
What's New in Primavera Gateway 16.1What's New in Primavera Gateway 16.1
What's New in Primavera Gateway 16.1
 
What's New In Primavera Analytics 16.1
What's New In Primavera Analytics 16.1What's New In Primavera Analytics 16.1
What's New In Primavera Analytics 16.1
 
What's New in Unifier 16.1
What's New in Unifier 16.1What's New in Unifier 16.1
What's New in Unifier 16.1
 
20160405 How to Install Primavera P6 16.1 Professional desktop
20160405 How to Install Primavera P6 16.1 Professional desktop20160405 How to Install Primavera P6 16.1 Professional desktop
20160405 How to Install Primavera P6 16.1 Professional desktop
 
Oracle Primavera P6 16.1 Announced
Oracle Primavera P6 16.1 AnnouncedOracle Primavera P6 16.1 Announced
Oracle Primavera P6 16.1 Announced
 
Oracle Primavera Unifier 16.1
Oracle Primavera Unifier 16.1Oracle Primavera Unifier 16.1
Oracle Primavera Unifier 16.1
 
P6 Release 8 Application Considerations Overview
P6 Release 8 Application Considerations OverviewP6 Release 8 Application Considerations Overview
P6 Release 8 Application Considerations Overview
 
Administering Users, Access and Views in P6 EPPM (Web) Release 8 and later
Administering Users, Access and Views in P6 EPPM  (Web) Release 8 and laterAdministering Users, Access and Views in P6 EPPM  (Web) Release 8 and later
Administering Users, Access and Views in P6 EPPM (Web) Release 8 and later
 
P6 Release 8 Installation Orientation
P6 Release 8 Installation OrientationP6 Release 8 Installation Orientation
P6 Release 8 Installation Orientation
 
Oracle Primavera P6 R8 Release Value Proposition
Oracle Primavera P6 R8 Release Value PropositionOracle Primavera P6 R8 Release Value Proposition
Oracle Primavera P6 R8 Release Value Proposition
 
Oracle Primavera P6 v7 Release Value Proposition
Oracle Primavera P6 v7 Release Value Proposition Oracle Primavera P6 v7 Release Value Proposition
Oracle Primavera P6 v7 Release Value Proposition
 
Oracle Primavera P6 Release Content Document (RCD)
Oracle Primavera P6 Release Content Document (RCD)Oracle Primavera P6 Release Content Document (RCD)
Oracle Primavera P6 Release Content Document (RCD)
 
Oracle Support Accreditation – Level 1 Study Guide
Oracle Support Accreditation – Level 1 Study GuideOracle Support Accreditation – Level 1 Study Guide
Oracle Support Accreditation – Level 1 Study Guide
 
Oracle Primavera Support Accreditation Study Guide
Oracle Primavera Support Accreditation Study GuideOracle Primavera Support Accreditation Study Guide
Oracle Primavera Support Accreditation Study Guide
 

Recently uploaded

QSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptx
QSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptxQSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptx
QSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptxDitasDelaCruz
 
Putting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxPutting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxCynthia Clay
 
Lucknow Housewife Escorts by Sexy Bhabhi Service 8250092165
Lucknow Housewife Escorts  by Sexy Bhabhi Service 8250092165Lucknow Housewife Escorts  by Sexy Bhabhi Service 8250092165
Lucknow Housewife Escorts by Sexy Bhabhi Service 8250092165meghakumariji156
 
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableNanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Availablepr788182
 
Arti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfArti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfwill854175
 
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al MizharAl Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizharallensay1
 
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60% in 6 Months
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60%  in 6 MonthsSEO Case Study: How I Increased SEO Traffic & Ranking by 50-60%  in 6 Months
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60% in 6 MonthsIndeedSEO
 
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowKALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book nowkapoorjyoti4444
 
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur DubaiUAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubaijaehdlyzca
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1kcpayne
 
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGpr788182
 
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in PakistanChallenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistanvineshkumarsajnani12
 
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan CytotecJual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan CytotecZurliaSoop
 
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Adnet Communications
 
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableBerhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Availablepr788182
 
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTSDurg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTSkajalroy875762
 
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowGUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book nowkapoorjyoti4444
 
KOTA 💋 Call Girl 9827461493 Call Girls in Escort service book now
KOTA 💋 Call Girl 9827461493 Call Girls in  Escort service book nowKOTA 💋 Call Girl 9827461493 Call Girls in  Escort service book now
KOTA 💋 Call Girl 9827461493 Call Girls in Escort service book nowkapoorjyoti4444
 

Recently uploaded (20)

QSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptx
QSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptxQSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptx
QSM Chap 10 Service Culture in Tourism and Hospitality Industry.pptx
 
Putting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxPutting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptx
 
Lucknow Housewife Escorts by Sexy Bhabhi Service 8250092165
Lucknow Housewife Escorts  by Sexy Bhabhi Service 8250092165Lucknow Housewife Escorts  by Sexy Bhabhi Service 8250092165
Lucknow Housewife Escorts by Sexy Bhabhi Service 8250092165
 
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableNanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
 
Arti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfArti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdf
 
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al MizharAl Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
 
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60% in 6 Months
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60%  in 6 MonthsSEO Case Study: How I Increased SEO Traffic & Ranking by 50-60%  in 6 Months
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60% in 6 Months
 
WheelTug Short Pitch Deck 2024 | Byond Insights
WheelTug Short Pitch Deck 2024 | Byond InsightsWheelTug Short Pitch Deck 2024 | Byond Insights
WheelTug Short Pitch Deck 2024 | Byond Insights
 
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowKALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book now
 
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur DubaiUAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1
 
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
 
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in PakistanChallenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
 
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan CytotecJual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
 
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
 
Buy gmail accounts.pdf buy Old Gmail Accounts
Buy gmail accounts.pdf buy Old Gmail AccountsBuy gmail accounts.pdf buy Old Gmail Accounts
Buy gmail accounts.pdf buy Old Gmail Accounts
 
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableBerhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
 
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTSDurg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
 
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowGUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book now
 
KOTA 💋 Call Girl 9827461493 Call Girls in Escort service book now
KOTA 💋 Call Girl 9827461493 Call Girls in  Escort service book nowKOTA 💋 Call Girl 9827461493 Call Girls in  Escort service book now
KOTA 💋 Call Girl 9827461493 Call Girls in Escort service book now
 

204460 create s curve reports

  • 1. Create S-Curve Reports for P6R8.1 or P6R8.2 using BI Publisher 11g Presented by: Paul G. Ciszewski, PMP Dynamic Consulting pciszewski@Dynamic-Consulting.net (920) 883-9048
  • 2. Overview • Oracle Business Intelligence Publisher (BIP) is a tool to create pixel-perfect reports • To modify existing P6 Web Reports and to create new P6 Web Reports, you must use BIP • When building your reports, you should use P6‟s new Px Extended Scheme (database) • Px Extended Scheme is de-normalized and has P6 calculated values
  • 3. Overview (cont.) • Tables in the Px Extended Scheme begin with “P6” • P6Project – list of all projects and related data by project (for ex: the “baseline planned labor units” for project “TA Fall 13”) • P6ProjectSpread - list of all projects and related data by project and date (for ex: the “planned labor units” on November 15, 2013 for project “TA Fall 13”) • P6Activity – list of all activities and related activity data for all projects (for ex: the “earned value labor units” for activity “A1000” for project TA Fall 13) • P6ActivitySpread – list of all activities and related activity data by date for all projects (for ex: the “actual labor units” for activity “A1000” on November 15, 2013 for project TA Fall 13) • P6ActivityCodeAssignment – list of all the activity codes and their values assigned to ALL activities. If an activity has 5 activity codes assigned to it, then there would be 5 records in this table for the one (1) activity • P6ActivityCode – list of all activity codes and values Note: There are no physical tables called P6Project (or P6Activity), the P6 tables are actually synonyms/aliases that point to “Views”. “Views” are results from executed SQL statements. In the Px Extended Scheme, the “Views” are joins of native P6 tables (such as project, task) and new extended tables (such as projectx and taskx) – and the P6 security tables are included. For our presentation “SYNONYM” is the same as “TABLE”
  • 4. BI Publisher - Introduction • Two (2) main modules to create a BIP report 1. Data Model Editor – To extract data from P6‟s Extended Px Scheme (database) 2. Create Report Layout – the presentation of the data. But there are 2 tools  Report Layout Editor (tool is within BIP)  Word Template Builder (a MS WORD add-on)
  • 5. BI Publisher – Presentation Objective Presentation Objective Go through all the steps to: 1. Develop the Data Model (SQL) to extract the data from P6 2. Develop the S-Curve Template in the WORD Template Builder that uses the Data Model 3. Upload the Template to the Report in BI Publisher 4. Move the Report and Data Model to the P6Reports folder 5. Run S-Curve Report in P6 and produce the same output as you see on this slide
  • 6. BI Publisher - Login • User Name should exist in P6 • The user‟s security is applied
  • 8. BI Publisher – Create Data Model (DM) • Three (3) components needed to create the DM for our examples 1. Create 1 List of Values (LOV) 2. Create 1 parameter 3. Create Data Set
  • 9. BI Publisher – Create New DM
  • 10. BI Publisher – Create New DM – P6 Tables • Four (4) P6 Tables needed to create examples 1. P6Project (list of projects and all related data) 2. P6ActivitySpread (list of activities and activity data by date) For version 1, I could have used P6ProjectSpread but P6ActivitySpread works for both version 1 and 2 3. P6ActivityCodeAssignments (needed for version2) 4. P6ActivityCode (needed for version2)
  • 11. BI Publisher – Create DM – Parameter Desired “look and feel” in P6
  • 12. BI Publisher – Create DM – Parameter Desired “look and feel” in P6
  • 13. BI Publisher – Create DM – Parameter Desired “look and feel” in P6
  • 14. BI Publisher – Create DM - Parameter • First create list of values (LOV) for Projects • Then create parameter using the LOV • Parameter Label would be “Select Projects”
  • 15. BI Publisher – Create DM – Create LOV‟s SQL to retrieve the list of Project ID‟s
  • 16. BI Publisher – Create DM – Create Parameter “p_project_id” is special parameter recognized by P6 When “Parameter Type” is Menu, user can select “LOV” value
  • 17. BI Publisher – Create DM – Data Set • Next, create a Data Set • Data Set contains the SQL query/statements to extract the P6 data (such as Baseline Planned Labor Units) from the P6 tables • In our example, our SQL query will sum the labor units for all activities by date AND • Our SQL statements will create running totals (see next slide) • The query result will be a record for each date of our project(s) when work is planned or work is done
  • 18. BI Publisher – Create DM – Data Set Date ACTSP_STARTDATE Display Date DISPLAYDATE Baseline Labor Units SUM_BLPLANNEDLABORUNITS Running Totals CUM_BLPLANNEDLABORUNITS Feb 4, 2013 02/04 50 50 Feb 5, 2013 02/05 25 75 Feb 6, 2013 02/06 10 85 Feb 7, 2013 02/07 20 105 Feb 8, 2013 02/08 50 155 And so
  • 19. BI Publisher – Create DM – Create Data Set Then select “SQL Query”
  • 20. BI Publisher – Create DM – Create Data Set You could use “Query Builder” for simple SQL queries/statements. “Query Builder” builds the SQL query for us. But for advanced/complex SQL queries/statements, I just type it in myself
  • 21. BI Publisher – Create DM – Create Data Set I typed in the SQL query/statement
  • 22. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE Breakdown SQL Query SQL query to create four (4) columns: - ACTSP_STARTDATE - DISPLAYDATE - SUM_BLPLANNEDLABORUNITS - CUM_BLPLANNEDLABORUNITS Summed and grouped by TRUNC(ACTSP.STARTDATE)
  • 23. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE Tables Accessed/FROM Clause P6Project with an alias of ”PRJ” P6ActivitySpread with an alias of “ACTSP”
  • 24. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE Conditions/Where Statement p_project_id is the Parameter Before the user runs the report, they will select 1 or more projects. This statement will extract all project records from P6Project with matching Project ID‟s. PRJ.ID are the project ID‟s you see in P6 such as “Fall TA 2013” or “EC500123”. Tables are usually linked together (joined together) using the unique key for the record. But first we must look up the correct record by Project ID. In the Px Extended Scheme, the unique key is called “ObjectID”. ID ObjectID (other columns…) Fall TA 2013 4501 EC500123 1287 Test Prj 123 9333 P6Project PRJ Table
  • 25. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE Conditions/Where Statement This statement will extract all activity records from P6ActivitySpread with matching project ObjectID. However in the P6ActivitySpread table, the project‟s unique key column is called “ProjectObjectID”. So first we move to the correct project record with “PRJ.ID IN (:p_project_id)“ then we get the ObjectID and use it to extract activity records from the P6ActivitySpread table using ProjectObjectID
  • 26. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE Group Clause The GROUP clause groups ALL activity records together by STARTDATE. The SUM() function, will sum all “Baseline Planned Labor Units” from all Activities that have the same STARTDATE. Remember: The P6ActivitySpread table has a record for each day of the Activity. If the Activity has 24 budgeted hours over 3 days (Feb 1, Feb 2, and Feb 3), then there will be 3 records in the P6ActivitySpread table for that activity. Ex: Activity Start BL Planned ID Date Labor Units A1000 2/1/13 8 A1000 2/2/13 8 A1000 2/3/13 8
  • 27. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE ACTSP_STARTDATE This is the full date (without time) used for sorting/ordering. This value is not placed on the chart/S-Curve. In the P6ActivitySpread table, ACTSP.STARTDATE is the start date for the hours on this date
  • 28. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE DISPLAYDATE This value will be shown across the horizontal axis of the chart/S-Curve. The date will be in “mm/dd” format without the year to save space on the report.
  • 29. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE SUM_BLPLANNEDLABORUNITS This is the “Baseline Planned Labor Units” from the Activity Spread extended table summed by StartDate (because of the “GROUP BY” clause). SUM() is a function.
  • 30. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE CUM_BLPLANNEDLABORUNITS This statement will add up all “Baseline Planned Labor Units” beginning at the first row (UNBOUNDED PRECEDING) to the current row (CURRENT ROW). Using the STARTDATE for order (ORDER BY TRUNC(STARTDATE)) The result is stored in “CUM_BLPLANNEDLABORUNITS” Notice: SUM(SUM())
  • 31. BI Publisher – Create DM - Data Set / SQL -- Version 1 - just BL planned labor units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE) ORDER BY ACTSP_STARTDATE ORDER BY Last, we will order all our records by ACTSP_STARTDATE
  • 32. BI Publisher – Create DM – Create XML Data • After creating the LOV‟s, Parameters, and the Data Set – you must generate XML data. • To create the presentation part of the report, you must have XML data • You must save the XML data to the DM if you are building the report in the Report Layout Editor • You must save the XML data to a file and import it into your WORD document if you are using the Word Template Builder
  • 33. BI Publisher – Create DM – Create XML Data Data Set The Data Set shows the four columns being returned from the SQL query/statement Generate XML Data Click this button to show the screen when we can generate the XML.
  • 34. BI Publisher – Create DM – Create XML Data 1. Generate XML Data Select 1 or more projects, then click “Run” 2. XML Data The XML data has the tag names and values. 3. Save XML Either “Export XML” to a file or “Save As Sample Data” to the DM.
  • 35. BI Publisher – Create DM – Create XML Data • Save the DM • Next, build presentation part of report by first creating a report called “SCurve-V1” and then • Use Word Template Builder for layout
  • 36. BI Publisher – Create Report
  • 37. BI Publisher – Create Report – Select DM
  • 38. BI Publisher – Create Report – Save Report in BIP Report Layout Editor If we were going to create the presentation part in the Report Layout Editor tool, then I would have selected a Template. However, we will be developing the presentation part in the “Word Template Builder” therefore we just want to save the report.
  • 39. BI Publisher – Create Report – Save Report Enter Report Name
  • 40. BIP – Create Report – Word Template Builder • Switch to MS WORD • Select BI Publisher Add-in tab • Log into BIP • Load XML file • Create report‟s layout in WORD • Add Report Title • Add Chart (S-Curve) • Save WORD file as RTF • Upload Template to BIP Report
  • 41. BIP – Create Report – Word Template Builder Log On Enter Username Enter Password Enter IP of BIP server
  • 42. BIP –Template Builder – Select Report Select Report Layout Templates If there were templates in BIP for this report, the templates would be listed here.
  • 43. BIP –Template Builder – Load XML Data Select XML File This file was created by the DM
  • 44. BIP –Template Builder – Create Layout 2. Add Chart Move cursor to position in WORD doc and double click Chart object 1. Add Text Using WORD‟s standard features – such as forecolor, center, font
  • 45. BIP –Template Builder – Chart Properties
  • 46. BIP –Template Builder – Chart Properties Chart/Line Properties Change other properties such as 3-D effect, line color, line name Chart/Line Properties 1.Drag/Drop DISPLAYDATE to Labels 2. Drag/Drop CUM_BLPLANNEDLABORUNITS to Values 3. Change Type to Line Graph 4. Uncheck Group Data
  • 47. BIP –Template Builder – Chart Properties
  • 48. BIP –Template Builder – Report
  • 49. BIP – Create Report – Word Template Builder • To upload Template into BIP • Save File in WORD as RTF • Select “Upload Template As” on BI Publisher Add-in tab • Save Template to the BIP Report • Login into BIP • Open/Edit Report • Select Template Layout (that we just uploaded from Tmp Builder) • View Report
  • 50. BIP –Template Builder – Create Layout
  • 51. BIP – Open/Edit Report – View Report
  • 52. BIP – Run Report from P6 to PDF Format
  • 53. BIP – DM – Expand DM • DM is currently plotting BL Planned Labor Units • Add Actual Labor Units and Earned Value Labor Units • Create new XML data file with new data elements • Import new XML into WORD Template Builder • Modify Template to include new data elements • Upload to BIP – run report
  • 54. BIP – DM – Add More Data Elements Original Section of SQL Copy/Paste this section New Section of SQL Change BASELINEPLANNEDLABORUNITS to ACTUALLABORUNITS in 4 places See Next Slide
  • 55. BIP – DM – Add More Data Elements (SQL 1 of 2) Original Section of SQL Copy/Paste this section New Section of SQL Change BASELINEPLANNEDLABORUNITS to ACTUALLABORUNITS in 4 places -- Version 1 - BL planned Labor Units, -- Actual Labor Units, and EV Labor Units SELECT TRUNC(ACTSP.STARTDATE) AS ACTSP_STARTDATE, TO_CHAR(TRUNC(ACTSP.STARTDATE),'mm/dd') AS DISPLAYDATE, -- BL planned labor units summed by date SUM(ACTSP.BASELINEPLANNEDLABORUNITS) AS SUM_BLPLANNEDLABORUNITS, -- BL planned labor units - running totals by date SUM(SUM(ACTSP.BASELINEPLANNEDLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_BLPLANNEDLABORUNITS, -- Actual labor units summed by date SUM(ACTSP.ACTUALLABORUNITS) AS SUM_ACTUALLABORUNITS, -- Actual labor units - running totals by date SUM(SUM(ACTSP.ACTUALLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_ACTUALLABORUNITS,
  • 56. BIP – DM – Add More Data Elements (SQL 2 of 2) Another New Section of SQL After copying the section in RED on previous slide, change BASELINEPLANNEDLABORUNITS to EARNEDVALUELABORUNITS in 4 places. -- (Continuation from previous slide) -- EV labor units summed by date SUM(ACTSP.EARNEDVALUELABORUNITS) AS SUM_EARNEDVALUELABORUNITS, -- EV labor units - running totals by date SUM(SUM(ACTSP.EARNEDVALUELABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_EARNEDVALUELABORUNITS -- Two tables needed for version 1 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID GROUP BY TRUNC(ACTSP.STARTDATE)
  • 57. BIP – DM – Add More Data Elements New Data Elements in the Data Set Generate XML again with New Data Elements then Save It
  • 58. BIP –Template Builder – Modify Template Add New Chart Include all 3 running total data elements. Change Some Properties Color, labels, remove 3-D effect
  • 59. BIP –Template Builder – Modify Template (show Project ID‟s) Add Data Element 1. Click on Field 2. The Field Dialog box is displayed 3. Double Click on data element (such as p_project_id) 4. The data element will be added to the report NOTE: p_project_id was our parameter in our DM
  • 60. BIP – Create Report – Word Template Builder • We must upload Template into BIP again • Save File in WORD as RTF • “Upload Template As” to save report • Login into BIP • Open/Edit Report • Select Template Layout (that we just uploaded from Tmp Builder) • View Report • Move Report and DM to P6Reports folder and reattach DM to Report
  • 61. BIP – Run Report from P6
  • 62. BIP – Expand DM/Report to include Activity Codes • In many operations, the managers want to see progress only for activities with a specific Activity Code/Value combination • For ex: • By Phase: FOUND, DESGN, STRUC • By Department: CON, PCH, ENG • So, we need to add: • List of Value: ActivityCodeLOV • Parameter: p_activity_value • SQL logic to the Data Set that uses new parameter
  • 63. BIP – Expand DM/Report to include Activity Codes SELECT CODEVALUE FROM P6ACTIVITYCODE WHERE CODETYPENAME = 'Phase' AND CODETYPESCOPE = 'AS_Global'
  • 64. BIP – Expand DM/Report to include Activity Codes p_activity_value 1. Display “Select Phase” 2. Use ActivityCodeLOV 3. No Multiple Selection 4. Also changed the values on p_project_id so that the user can only select one (1) project.
  • 65. BIP – DM – Expand SQL (to Include Activity Code Logic) Same SQL The SQL above this point is the same as the previous SQL New SQL for Activity Code Logic Need the Activity Code Assignment table -- EV labor units summed by date SUM(ACTSP.EARNEDVALUELABORUNITS) AS SUM_EARNEDVALUELABORUNITS, -- EV labor units - running totals by date SUM(SUM(ACTSP.EARNEDVALUELABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_EARNEDVALUELABORUNITS -- Three tables needed for version 2 FROM P6PROJECT PRJ, P6ACTIVITYSPREAD ACTSP, P6ACTIVITYCODEASSIGNMENT ACTAS WHERE PRJ.ID IN (:p_project_id) AND PRJ.OBJECTID = ACTSP.PROJECTOBJECTID AND ACTSP.ACTIVITYOBJECTID = ACTAS.ACTIVITYOBJECTID AND ACTAS.ACTIVITYCODETYPENAME = 'Phase' AND ACTAS.ACTIVITYCODEVALUE IN (:p_activity_value) GROUP BY TRUNC(ACTSP.STARTDATE) New SQL for Activity Code Logic Add condition so that the results will only include Activities with an Activity Code of „Phase‟ and the Activity Value selected (which is stored in p_activity_value)
  • 66. BIP – Update Report After making the changes to the DM • Save DM • Create XML data • Import XML data into Template in WORD • Modify Template • Upload Template to BIP • Open/Edit Report • View Report • Move Report to P6Report folder (reattached DM)
  • 67. BIP – Update Report – WORD Template Builder This is just a table in WORD Using the Field control on the BIP tab, added p_project_id and p_activity_value to table cells – then change forecolor to RED No changes were needed on the Chart
  • 68. BIP – Running Report in P6 On Reports Tab in P6, find Report in list and Right Click – select „Run Report‟. Then the „Report Settings‟ screen is shown Select Project Select Phase from Dropdown List Click the „Run‟ button
  • 69. BIP – Running Report in P6 Looks good but we need to stop the EV and Actual lines on the Data Date
  • 70. BIP – Advanced Topic for Chart In our example, Actual Labor Units and EV Labor Units are plotted to the end of the project. I want them to plot only to the Data Date Plot to End of Project Plot to Data Date
  • 71. BIP – Advanced Topic for Chart To add support so that lines are only plotted to the Data Date, we need to: 1. Modify the DM/Data Set so that our running totals for Actual and EV will be set to -1 when the Date (Start Date) is greater than the Data Date AND 2. Add an “if” condition in the XSL code behind the Chart in the WORD Template Builder. Behind most objects on the Template Builder, there is a section where you can add additional code (it‟s XML-type code)
  • 72. BIP – Advanced Topic for Chart – DM Changes SUM(SUM(ACTSP.ACTUALLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS CUM_ACTUALLABORUNITS, (CASE WHEN TRUNC(ACTSP.STARTDATE) <= MAX(TRUNC(PRJ.DATADATE)) THEN SUM(SUM(ACTSP.ACTUALLABORUNITS)) OVER (ORDER BY TRUNC(ACTSP.STARTDATE) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) ELSE -1 END ) AS CUM_ACTUALLABORUNITS, Old SQL for Running Total for CUM_ACTUALLABORUNITS New SQL for Running Total for CUM_ACTUALLABORUNITS The CASE is an IF statement. When the StartDate is <= the Data Date, continue adding to running total ELSE set it to -1 We did the same thing for the running total for EV
  • 73. BIP – Advanced Topic for Chart – Template Changes Steps 1. Open Template/RTF file in WORD Template Builder 2. Double click on Chart 3. Select „Advanced‟ tab
  • 74. BIP – Advanced Topic for Chart – Template Changes XSL Code Unformatted but if you copy/paste to an XML editor or to a NOTEPAD file with an XML extension then open it in your browser, it looks a little better. See next slide
  • 75. BIP – Advanced Topic for Chart – Template Changes XSL Code Formatted after: 1. copying/pasting XSL Code to a NOTEPAD file, 2. saving with an XML extension, then 3. opening in a browser IF Condition We need to insert an <xsl:if> statement round the Cell elements for both CUM_EARNEDVALUELABORUNITS and CUM_ACTUALLABORUNITS
  • 76. BIP – Advanced Topic for Chart – Template Changes To modify, I just used NOTEPAD and put in NEWLINES so that it was organized. Then I modified it in NOTEPAD, save it to a txt file, then copy/paste back to the Advanced tab.
  • 77. BIP – Advanced Topic for Chart – Template Changes The Yellow highlight shows the sections that had to be modified. Note the “<xsl:if” statement. The Grey highlight shows that we did not modify the logic for CUM_BLPLANNEDLABORUNITS
  • 78. BIP – Advanced Topic for Chart – Template Changes Note: EV and Actual stop plotting after 4/26 but BL Planned plots to the end of the project
  • 79. BI Publisher – Presentation Objective Presentation Objective Go through all the steps to: 1. Develop the Data Model (SQL) to extract the data from P6 2. Develop the S-Curve Template in the WORD Template Builder that uses the Data Model 3. Upload the Template to the Report in BI Publisher 4. Move the Report and Data Model to the P6Reports folder 5. Run S-Curve Report in P6 and produce the same output as you see on this slide
  • 80. Wrap Up When you download this PowerPoint Presentation , you will also receive all Data Models, SQL, Reports, and the XSL code with the “IF” condition
  • 81. End of Presentation Questions? Presented by: Paul G. Ciszewski, PMP Dynamic Consulting pciszewski@Dynamic-Consulting.net (920) 883-9048