Title: Advanced%20PeopleTools%20Tips%20and%20Techniques
1Advanced PeopleTools Tips and Techniques
- Chris Heller, Grey Sparling Solutions
2Agenda
- About This Session
- Presenter Overview
- PeopleTools Tips and Techniques
- Drilling Into Application Designer
- Security Drilling / Portal Administration
Drilling - Dynamic Tracing or Row Level Security
- Enhancing PeopleSoft User Experience
- Automating Save As Processing
- Grab Bag
- Questions
3About This Session
- Hands On
- Demo Intensive
- Existing Experience with Application Designer is
assumed - Focus is on PeopleTools 8.4x
- But techniques can be applied to earlier versions
- Don't worry about trying to type code snippets in
your notes!
4More about the Presenter
- Chris Heller
- PeopleSoft Employee 1993 - 2005
- Director, PeopleTools Product Strategy 1999
2005 - Currently Chief Architect at Grey Sparling
Solutions
5Who is Grey Sparling Solutions?
- We Enhance the PeopleSoft Experience
- Our Products
- Address common PeopleSoft needs.
- Leverage your existing PeopleSoft infrastructure.
- Enable functionality with minimal cost and effort
6Products that Enhance
- Auditing Experience
- Compliance and Accountability
- Security
- Administrative Experience
- Operations Productivity
- Application Support Productivity
- Developer Productivity
- End-User Experience
- End-user Productivity
- Enhanced Reporting
7Application Designer Drilling
8Application Designer Drilling
- Go from online page into underlying objects in
Application Designer - Drill from other environments
- Web
- Email
- Windows Explorer
9Calling ViewObject from PeopleCode
10Application Designer Drilling
- Free Enterprise wide License for Grey Sparling
PSIDE Helper for PeopleSoft customers attending
this session. - Send an email to chris.heller_at_greysparling.com
- Don't use your hotmail address -)
11Security Drilling / Portal Administration Drilling
12Understanding Bookmarklets
- Mini Javascript programs that execute in the
context of the current page - See http//www.bookmarklets.com/ for examples
- Has to be one line of JavaScript as a browser
favorite
13Security Drill Bookmarklet Expanded
- var w window.frames'TargetContent'
- if (!w) w window
- if (w.strCurrUrl.search(/PAGE(A-Z0-9_)/)gt0)
- document.location '/psc/ps/EMPLOYEE/ER
P/q/?ICActionICQryNameURLPUBLIC.PT_SEC_PAGES_PLI
STBIND2' RegExp.1 -
- else
- alert('Could not figure out page name.')
-
14Dynamic Tracing
15Dynamic Tracing
- Leverage iScript capabilities to avoid tracing an
entire session - Function IScript_PCTraceOff()
- SetTracePC(0)
- End-Function
- Function IScript_PCTraceAll()
- SetTracePC(3596)
- End-Function
16Enhancing PeopleSoft User Experience
17Enhancing PeopleSoft User Experience
- Judicious use of JavaScript on PeopleSoft
generated pages - Multiple ways to add JavaScript
- HTML Areas
- Web Server plugins
- PeopleTools HTML objects
18Minimizing impact with JavaScript
- function addEvent(obj, evType, fn, useCapture)
- if (obj.addEventListener)
- obj.addEventListener(evType, fn, useCapture)
- return true
- else if (obj.attachEvent)
- var r obj.attachEvent("on"evType, fn)
- return r
- else
- alert("Handler could not be attached")
-
-
- addEvent(document, "keydown", function (e)
gridKeyHandler(e) , false)
19- function gridKeyHandler(evt)
- evt getEvent(evt)
- var src getEventSource(evt)
- if (typeof src "undefined") return
- var key evt.keyCode
- if (key 38 key 40)
- var tokens /(.)\(\d)/.exec(src.id)
- var newRowNbr parseInt(tokens2) ((key
38) ? - 1 1) - var moveToID tokens1 '' newRowNbr
- var moveTo document.getElementById(moveToID
) - if (moveTo) moveTo.focus()
-
- gridKeyHandler(e) , false)
20Automating Save As functionality
21Automating Save As Functionality
- Load Project with Save As code
- Identify/Create Component Interface for Component
- Don't forget about security!
- Copy level 0 Record
- Delete all fields except for keys
- Change Record type to Work Record
- Create Page with fields from new record
- Add Save As subpage
- Add page to component
- Grant security to Save As page for authorized
users - Optional
- Add additional PeopleCode logic around Save As
logic
22Save As PeopleCode
- This gets added to RowInit for your work record
- GS_CI_UTILS_WRK.RECNAME "GS_VNDR_SAVE_AS"
- GS_CI_UTILS_WRK.BCNAME "VNDR_ID_EXCEL"
- GS_CI_UTILS_WRK.PANELNAME "VNDR_ID1_SUM"
- Optionally copy PeopleCode from delivered Save
As push button to add application specific logic - Example Auto-numbering, etc.
- level0RecordNew.GetField(Field.VENDOR_ID).Value
newCI.GetPropertyByName("VENDOR_ID")
23Questions?
- http//blog.greysparling.com/
- Lots of good PeopleTools Tips and Techniques
posted