2013PSFT-102620 Mastering PeopleTools

makeshiftklipInternet and Web Development

Oct 31, 2013 (3 years and 9 months ago)

174 views

Copyright

©

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

1

2013PSFT
-
102620

Mastering PeopleTools:
Exploiting PeopleTools Tips
and Tricks

Jim Ellis

PeopleSoft
Applied Technology


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.



Copyright

©

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

4


Copyright

©

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

5

IT Project Justification


Cost

Value

Low cost,

High value

Copyright

©

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

6

Program Agenda


User Experience


Writing Code


System Administration Tips

Copyright

©

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

7

User Experience


Copyright

©

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

8

Evolving from UI to UX

Higher 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

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 !

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”

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

Copyright

©

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

12

iScripts

Application Designer


Derived/Work Record

Copyright

©

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

13

iScripts

Web Library Security


Permission Lists

Copyright

©

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

14

iScripts

Application Designer


Derived/Work Record

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

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

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
Withou
t Modifying Code

Copyright

©

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

18

Static

JavaScript

Application Designer Definition

Copyright

©

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

19

Writing Code


Copyright

©

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

20

Martin Fowler

Refactoring: Improving the Design of
Existing Code

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

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


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;

Copyright

©

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

24

PeopleCode

Language


Binary to Base64


OLD Way


Local
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;

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();


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;

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
;

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
;

Copyright

©

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

29

Administration Tips

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

Copyright

©

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

31

HTTP Debugging Proxy Server Application

Troubleshoot with Fiddler

Copyright

©

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

32

Troubleshoot with Fiddler


Copyright

©

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

33

Troubleshoot with Fiddler


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

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

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

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

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 !

Copyright

©

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

39

Learn More

New 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
Tool

Twitter

Facebook

Click on to link to resource.

Copyright

©

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

40

Learn More

More Information Development Solutions

More helpful resources can be found on the
PeopleSoft Information Portal

Click on to link to resource.

Hosted & Mobile
PeopleBooks

Entity
Relationship
Diagrams

Fit Gap
UPK

Upgrade
Resource
Report

Service
Repository

Business Process
Maps

Copyright

©

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

41