40
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1

2013PSFT-102620 Mastering PeopleTools: Exploiting PeopleTools Tips and Tricks

Embed Size (px)

DESCRIPTION

2013PSFT-102620 Mastering PeopleTools: Exploiting PeopleTools Tips and Tricks. Jim Ellis PeopleSoft Applied Technology. - PowerPoint PPT Presentation

Citation preview

Page 1: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1

Page 2: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

2013PSFT-102620Mastering PeopleTools: Exploiting PeopleTools Tips and TricksJim EllisPeopleSoft Applied Technology

Page 3: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.3

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Page 4: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.4

Page 5: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5

IT Project Justification

Co

st

Value

Low cost,High value

Page 6: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6

Program Agenda

User Experience

Writing Code

System Administration Tips

Page 7: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.7

User Experience

Page 8: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8

Evolving from UI to UXHigher Productivity, Information to Action

Process/

Navigation

Content• Interactive• Intuitive• Graphical, Visual

• Proactive Delivery• Actionable• Event-based

• Transactional• Business Process Orientation• Role-based Consoles

Great

User

Experience

Look and Feel

Page 9: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.9

Documented User Experience Techniques

PeopleTools 8.52 and 8.53 have incorporated some exciting new user experience capabilities – Interaction Hub, Dashboards, WorkCenters and more !

Page 10: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.10

iScripts

Create Dynamic URL’s– CREF’s that redirect to other targets

Serve Non-HTML pages– Images, JavaScript, CSS, etc

– iCal, vCards, etc

Ajax/Flex Data Source

PeopleSoft “Swiss Army Knife”

Page 11: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.11

iScripts

Defined in a record that begins with WEBLIB iScript Function must begin with IScript_ iScript Function has no Parameters iScript Function does not Return a Value

Requirements

Page 12: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.12

iScriptsApplication Designer – Derived/Work Record

Page 13: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.13

iScriptsWeb Library Security – Permission Lists

Page 14: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.14

iScriptsApplication Designer – Derived/Work Record

Page 15: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.15

Pagelet Wizard

Create New Displays Extend through new Data Types, Display Formats, & Transform Types

Not just for Home Pages– WorkCenters

– Related Content

– Stand Alone

– Ajax

Configurable iScript

Page 16: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.16

Integration Broker

REST services SOAP services Serve HTML, JSON, JavaScript, XML, etc Client-side Mash-up Benefits:

– Can be anonymous

– Separate server

– Can use HTTP Basic Auth

Stateless UI

Page 17: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.17

JavaScript Injection

Add JavaScript to the end of a common PT% HTML Definition– PT_PAGESCRIPT

– PT_COPYURL

– PT_COMMON (if PT 8.50 or higher)

Change Behavior/Appearance of Existing Pages w/o Modifying Pages Warning: Must be properly managed – easy to introduce bugs…

Modify Behavior Without Modifying Code

Page 18: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.18

Static JavaScriptApplication Designer Definition

Page 19: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.19

Writing Code

Page 20: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.20

Martin FowlerRefactoring: Improving the Design of Existing Code

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”

Page 21: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.22

Reference Named Definitions

/* Find Definition References command won't find this */If (&rec.Name = "PERSONAL_DATA") Then

/* Too much overhead */If (&rec.Name = CreateRecord(Record.PERSONAL_DATA).Name) Then

/* Best */If (&rec.Name = Record.PERSONAL_DATA) Then

Page 22: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.23

How to Truncate an Array

Learn the Language - Really, Really Well !

Local object &Object;Local array of object &ArrObject = CreateArrayRept(&Object, 0);

/* OK -- It Works, but DON'T DO THIS!! */While (&ArrObject.Len > 0) &ArrObject.Pop();End-While;

/* BETTER: 1 line, no loop, but construction overhead */&ArrObject = CreateArrayRept(&Object, 0);

/* BEST: 1 line, no loop */&ArrObject.Len = 0;

Page 23: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.24

PeopleCode Language

Binary to Base64 – OLD WayLocal JavaObject &f_in = CreateJavaObject("java.io.FileInputStream", "c:\img.gif");Local JavaObject &coder_in = CreateJavaObject("org.apache.commons.codec.binary.Base64InputStream", &f_in, True);

Local JavaObject &reader = CreateJavaObject("java.io.BufferedReader", CreateJavaObject("java.io.InputStreamReader", &coder_in));

Local string &b64Data = "";Local any &line;While True &line = &reader.readLine(); If (&line <> Null) Then &b64Data = &b64Data | &line | Char(13) | Char(10); Else Break; End-If;End-While;

Page 24: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.25

Keep up with Changes

Binary to Base64 – NEW Way

Local File &f = GetFile("c:\img.png", "R", %FilePath_Absolute);

Local string &b64Data = &f.GetBase64StringFromBinary();

Page 25: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.26

Complex Logic

Bugs love clutter…!

&bPosEffdt = False;If &hdr.Name = "POSITION_DATA" And &fld.Name = "EFFDT" Then &bPosEffdt = True;End-If; If (&fld.IsKey) And &bPosEffdt = False Then &where = &where | " and " | &prefix | &fld.Name | %This.GetFieldSQLBind(&fld);End-If;

Page 26: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.27

Be Positive

Use an Empty “If” - Instead of “Not”

If ( &hdr.Name = Record.POSITION_DATA And &fld.Name = Field.EFFDT) Then REM ** Do nothing;Else &where = &where | " and " | &prefix | &fld.Name | %This.GetFieldSQLBind(&fld);End-If;

Page 27: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.28

Don’t Be So Negative -

It is harder to comprehend negative logic…

If ( Not (&hdr.Name = Record.POSITION_DATA And &fld.Name = Field.EFFDT)) Then &where = &where | " and " | &prefix | &fld.Name | %This.GetFieldSQLBind(&fld);End-If;

Page 28: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.29

Administration Tips

Page 29: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.30

Troubleshoot with Fiddler

Report Node Integration Broker PeopleSoft Test Framework User Interface

HTTP Debugging Proxy Server Application

Page 30: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.31

HTTP Debugging Proxy Server ApplicationTroubleshoot with Fiddler

Page 31: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.32

Troubleshoot with Fiddler

Page 32: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.33

Troubleshoot with Fiddler

Page 33: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.34

Modular Infrastructure Design

PS_CFG_HOME– Contains the PeopleSoft configuration content like cache, log files

– PeopleTools 8.50+

PS_APP_HOME – Location of the PeopleSoft Application– Install and run the PeopleSoft application independent of PeopleTools.

– PeopleTools 8.52+, PeopleSoft Applications 9.0+

PS_CUST_HOME – Location of Customizations– Designate a specific file system location for customizations (COBOL, SQR, etc.)

– PeopleTools 8.53+

Decoupled Homes

Page 34: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.35

Modular Infrastructure Design

PS_HOME– Contains only file system artifacts deployed by PeopleTools installation programs

PS_CFG_HOME – Location of Configuration content like cache, log files– PeopleTools 8.50+

PS_APP_HOME – Location of the PeopleSoft Application– Install and run the PeopleSoft application independent of PeopleTools.

– PeopleTools 8.52+, PeopleSoft Applications 9.0+

PS_CUST_HOME – Location of Customizations– Designate a specific file system location for customizations (COBOL, SQR, etc.)

– PeopleTools 8.53+

Decoupled PeopleSoft Homes

Page 35: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.36

Modular Infrastructure Design Secured Environment

– Different owners for PS_APP_HOME and PS_HOME

– No cross-writing of the PS_HOME and PS_APP_HOME by restricted users.

– Runtime user can have restricted access

Reduced Disk Space Needs– Same installation can be shared by multiple independent runtime users

Patch Application– Simplified due to fewer distinct copies of the installation that must be maintained.

Reuse– Decouple PeopleSoft homes helps run multiple applications use the same PS_HOME

Problem Diagnosis– Easier to isolate the problem

Isolation of Customizations– Allows the PS_HOME and PS_APP_HOME locations to retain only content delivered with the installation program

Advantage of Decoupled PeopleSoft Homes

Page 36: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.37

Modular Infrastructure Design

Oracle's PeopleSoft Virtualization Products (Doc ID 1538142.1) Quick Start Option for PeopleSoft Applications Portal, HRMS, FSCM, ELM Two Oracle Linux/Oracle VM Images

– PeopleSoft FSCM Database instance running on Oracle Database 11.1.0.7 containing PeopleSoft demo data

– PeopleSoft Internet Architecture and Application Server with Oracle Tuxedo 10gR3 and Oracle Weblogic 11g

PeopleSoft OVM Whitepaper Available– http://docs.oracle.com/cd/E18128_01/psft/acrobat/OVM_Templates_WhitePaper_2010.pdf

PeopleSoft Oracle VM Images

Page 37: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.38

Books to Make Your Life Easier…..Tips and Techniques – Get Ready for Your PeopleSoft Upgrade !

Page 38: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.39

Learn MoreNew Information Development Solutions

More helpful resources can be found on the PeopleSoft Information Portal

Video Feature Overviews & More on YouTube

Strategy Blog Linkedin

Cumulative Feature Overview ToolTwitter Facebook

Click on to link to resource.

Page 40: 2013PSFT-102620 Mastering PeopleTools:  Exploiting PeopleTools Tips and Tricks

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.41