Download presentation
Presentation is loading. Please wait.
Published byJoseph Dawson Modified over 9 years ago
1
www.regouniversity.com Clarity Educational Community Advanced Maximizing Portlet Function to Personalize Output Presented by: Sangeet Chourey and Chris Wuenstel | Date Prepared: April 2015
2
2 Clarity Educational Community Agenda Advanced Portlet Types – Multi-Dimensional – Hierarchical Multi-Dimensional – Syntax – How-To Walkthrough Hierarchical – Syntax – How-To Walkthrough Questions Example Queries For Presentation
3
3 Clarity Educational Community Multi-Dimensional Advanced Portlet Types Y X
4
4 Clarity Educational Community Hierarchical Advanced Portlet Types Projects Tasks Resources
5
5 Clarity Educational Community Syntax Good news everyone, no new syntax to learn! Dimensions SELECT @SELECT:DIM:USER_DEF:IMPLIED:RESOURCE:RES.ID:RES_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:RESOURCE:RES.FULL_NAME:RES_FULL_NAME@ FROM SRM_RESOURCES RES WHERE @FILTER@ Each dimension needs a Unique ID and Property Field. First line: Unique ID Second line: Property Field Multi-Dimensional Portlet
6
6 Clarity Educational Community Syntax – Continued Adding a second dimension. SELECT @SELECT:DIM:USER_DEF:IMPLIED:Y:Y.ID:Y_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:Y:Y.COLUMN:Y_COLUMN@,@SELECT:DIM:USER_DEF:IMPLIED:Y:X.ID:X_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:Y:X.COLUMNS:X_COLUMNS@ FROM Y_AXIS Y LEFT JOIN X_AXIS X ON X.YID = Y.ID WHERE @FILTER@ Multi-Dimensional Portlet Y-Axis X-Axis
7
7 Clarity Educational Community Going from 1-Dimension -> 2-Dimensions Multi-Dimensional Portlet Y-Axis Unique ID Y-Axis Display(Property) FieldX-Axis Unique ID X-Axis Display(Property) Field X-Axis Metric
8
8 Clarity Educational Community Going from 1-Dimension -> 2-Dimensions cont. SELECT @SELECT:DIM:USER_DEF:IMPLIED:Y:RES.ID:RES_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:Y:RES.FULL_NAME:RES_FULL_NAME@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:Y:ACT.SLICE_DATE:DATE_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:Y:TO_CHAR(ACT.SLICE_DATE, 'Mon, YYYY'):DATE_DISPLAY@,@SELECT:METRIC:USER_DEF:IMPLIED:SUM(ACT.SLICE):HOURS@ FROM SRM_RESOURCES RES JOIN PRASSIGNMENT A ON A.PRRESOURCEID = RES.ID JOIN PRJ_BLB_SLICES ACT ON A.PRID = ACT.PRJ_OBJECT_ID WHERE @FILTER@ AND ACT.SLICE_REQUEST_ID = (SELECT ID FROM PRJ_BLB_SLICEREQUESTS WHERE REQUEST_NAME = 'MONTHLYRESOURCEACTCURVE') AND ACT.SLICE_DATE BETWEEN TRUNC(@WHERE:PARAM:USER_DEF:DATE:START_DATE@, 'MONTH') AND TRUNC(@WHERE:PARAM:USER_DEF:DATE:FINISH_DATE@, 'MONTH') GROUP BY RES.ID,RES.FULL_NAME,ACT.SLICE_DATE Multi-Dimensional Portlet Change to X Converts any date input to the first of the month. Example: 4/13/2015 -> 4/1/2015 Change to DIM
9
9 Clarity Educational Community Multi-Dimensional Final Query SELECT @SELECT:DIM:USER_DEF:IMPLIED:Y:RES.ID:RES_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:Y:RES.FULL_NAME:RES_FULL_NAME@,@SELECT:DIM:USER_DEF:IMPLIED:X:ACT.SLICE_DATE:DATE_ID@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:X:TO_CHAR(ACT.SLICE_DATE, 'Mon, YYYY'):DATE_DISPLAY@,@SELECT:METRIC:USER_DEF:IMPLIED:SUM(ACT.SLICE):HOURS@ FROM SRM_RESOURCES RES JOIN PRASSIGNMENT A ON A.PRRESOURCEID = RES.ID JOIN PRJ_BLB_SLICES ACT ON A.PRID = ACT.PRJ_OBJECT_ID WHERE @FILTER@ AND ACT.SLICE_REQUEST_ID = (SELECT ID FROM PRJ_BLB_SLICEREQUESTS WHERE REQUEST_NAME = 'MONTHLYRESOURCEACTCURVE') AND ACT.SLICE_DATE BETWEEN TRUNC(@WHERE:PARAM:USER_DEF:DATE:START_DATE@, 'MONTH') AND TRUNC(@WHERE:PARAM:USER_DEF:DATE:FINISH_DATE@, 'MONTH') GROUP BY RES.ID,RES.FULL_NAME,ACT.SLICE_DATE Multi-Dimensional Portlet
10
10 Clarity Educational Community Creating Query Multi-Dimensional Portlet Administration -> QueriesClick New Enter “Query Name” and “Query ID” Click “Save and Continue”
11
11 Clarity Educational Community Creating Query Multi-Dimensional Portlet Delete old and paste new query here Click “Save and Continue”
12
12 Clarity Educational Community Creating Query Multi-Dimensional Portlet No need to change anything here Metric Y-Axis X-Axis
13
13 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Administration -> Portlets Click New Click “Grid Portlet” Enter “Portlet Name” And “Portlet ID” Browse for Query Click Next
14
14 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Don’t change Click Next Click “Finish and Open” Click “List Column Section” And then Layout
15
15 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Changes Click Save
16
16 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Click “List Column Section” And then Fields Click Save Changes
17
17 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Click Resource Properties button Uncheck “Allow Word Wrapping in Column” Click “Save and Return”
18
18 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Click “List Filter Section” And then Layout Add “param_start_date” And then “param_finish_date” Remove “Filter” Change to Expanded Click Save
19
19 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Click “List Filter Section” And then Fields Change Labels Click Save
20
20 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Click “Finish Date” Properties button Select “Rolling Date” Set as “End of Previous Month” Make Required Click “Save and Return”
21
21 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Click “Start Date” Properties button Select “Rolling Date” Set as “Start of Current Year” Make Required Click “Save and Return”
22
22 Clarity Educational Community Creating Portlet Multi-Dimensional Portlet Add to a page, and view all of your hard work!
23
23 Clarity Educational Community Syntax Two new parameters: – HG_HAS_CHILDREN Is null if there aren’t any children Contains the value to be used in the child query – HG_ROW_ID Is null if the row is top parent Contains the value to be used in the child query Same value as HG_HAS_CHILDREN Confusing, I Know! Hierarchical Portlet
24
24 Clarity Educational Community Syntax cont. Unions are quite commonly used – not always the most efficient, but they are the easiest way Parent Query Union Child Query You can have more than one child query Don’t have too many child queries – Limit it to only a few child queries Hierarchical Portlet
25
25 Clarity Educational Community Creating Parent Query Hierarchical Portlet SELECT INV.ID PRID, INV.NAME, INV.SCHEDULE_START, INV.SCHEDULE_FINISH, NVL(ROUND(INV.LABOR_ACTSUM/3600,2),0) ACTUALS, INV.ID HG_HAS_CHILDREN FROM INV_INVESTMENTS INV WHERE INV.ODF_OBJECT_CODE = 'project' AND @WHERE:PARAM:USER_DEF:STRING:HG_ROW_ID@ IS NULL Going to first bring in projects, and the current total actuals This is what we are sending to the child query to get the corresponding children HG_ROW_ID is null because this is the top level
26
26 Clarity Educational Community Creating Child Query Hierarchical Portlet SELECT TSK.PRID, TSK.PRNAME NAME, TSK.PRSTART SCHEDULE_START, TSK.PRFINISH SCHEDULE_FINISH, NVL(ROUND(SUM(PRA.PRACTSUM)/3600,2),0) ACTUALS, NULL HG_HAS_CHILDREN FROM PRTASK TSK LEFT JOIN PRASSIGNMENT PRA ON PRA.PRTASKID = TSK.PRID WHERE TSK.PRPROJECTID = @WHERE:PARAM:USER_DEF:STRING:HG_ROW_ID@ GROUP BY TSK.PRID, TSK.PRNAME, TSK.PRSTART, TSK.PRFINISH For the children we are going to bring in tasks and there corresponding actuals Null because there aren’t any children Parent is sending INV_INVESTMENTS.ID We are going to link it to each tasks PRPROJECTID Now it’s only bringing back corresponding tasks for each project
27
27 Clarity Educational Community How it works Hierarchical Portlet Project Tasks Project has children Used in second query, to find the projects corresponding tasks
28
28 Clarity Educational Community Putting it all together Hierarchical Portlet We are going to union the project and task sections inside the NSQL SELECT @SELECT:DIM:USER_DEF:IMPLIED:ACTUALS:PRID:PRID@,,@SELECT:DIM_PROP:USER_DEF:IMPLIED:ACTUALS:NAME:NAME@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:ACTUALS:SCHEDULE_START:SCHEDULE_START@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:ACTUALS:SCHEDULE_FINISH:SCHEDULE_FINISH@,@SELECT:DIM_PROP:USER_DEF:IMPLIED:ACTUALS:HG_HAS_CHILDREN:HG_HAS_CHILDREN@,@SELECT:METRIC:USER_DEF:IMPLIED:ACTUALS:ACTUALS@ FROM( PROJECT QUERY UNION TASK QUERY ) WHERE @FILTER@
29
29 Clarity Educational Community Creating Query Hierarchical Portlet Administration -> QueriesClick New Enter “Query Name” and “Query ID” Click “Save and Continue”
30
30 Clarity Educational Community Creating Query Hierarchical Portlet Delete old and paste new query here Click “Save and Continue”
31
31 Clarity Educational Community Creating Query Hierarchical Portlet No need to change anything here
32
32 Clarity Educational Community Creating Portlet Hierarchical Portlet Administration -> Portlets Click New Click “Grid Portlet” Enter “Portlet Name” And “Portlet ID” Browse for Query Click Next
33
33 Clarity Educational Community Creating Portlet Hierarchical Portlet Click “Finish and Open” Click “List Column Section” And Layout
34
34 Clarity Educational Community Creating Portlet Hierarchical Portlet Changes Click Save
35
35 Clarity Educational Community Create Portlet Hierarchical Portlet Click “List Column Section” And Fields Rename the columns Click Save
36
36 Clarity Educational Community Creating Portlet Hierarchical Portlet Add to a page, and view all of your hard work!
37
37 Clarity Educational Community Questions Phone 888.813.0444 Email info@regouniversity.com Website www.regouniversity.com We hope that you found this session informative and worthwhile. Our primary goal was to increase your understanding of the topic and CA PPM in general. There were many concepts covered during the session, if you would like to contact any presenter with questions, please reach out to us. Thank you for attending regoUniversity 2015!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.