© 2010 oracle corporation –proprietary and confidential advanced tips... program agenda...
Post on 27-Mar-2018
216 Views
Preview:
TRANSCRIPT
© 2010 Oracle Corporation – Proprietary and Confidential
<Insert Picture Here>
PeopleTools Tips and Tricks
Stephen Wills (Stephen.Wills@oracle.com)
PeopleSoft Application Technology Sales Consultant, Oracle
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.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.
<Insert Picture Here>
Program Agenda
• Communities and resources
• Extend the user interface
• Browser extensions
• iScripts
• Ajax: Zero impact customizations… almost• Ajax: Zero impact customizations… almost
• PeopleTools – the extensible foundation
• Extend the app server
• Extend the web server
• Extend Integration Broker
• Web Services-less Real-time Integrations
• Custom target connectors
<Insert Picture Here>
Communities and Resources
Forums
• http://mix.oracle.com
• http://forums.oracle.com/forums/category.jspa?categoryID=152
• PeopleSoft General
• Business Intelligence
• Security
• Upgrades
• http://peoplesoft.ittoolbox.com/groups/technical-
functional/peopletools-l
• Caveat
• Forums don’t replace the Global Support Center!
• Don’t Post Confidential Information
Blogs
• http://blogs.oracle.com/peopletools/
• http://jjmpsj.blogspot.com/
• http://blog.greysparling.com/
• IT Toolbox groups ERP > PeopleSoft
• http://blogs.ittoolbox.com/peoplesoft/rob• http://blogs.ittoolbox.com/peoplesoft/rob
• http://xtrahot.chili-mango.net/
• http://peoplesofttipster.com/
• http://campus-codemonkeys.blogspot.com/
• http://gasparotto.blogspot.com/
RSS FeedsChoose A Feed Reader, And Subscribe
Oracle Customer SupportTrouble Navigating The Flash Site?
• Default flash site is:
• https://support.oracle.com
• But…
• … there’s an HTML version of the site at:• … there’s an HTML version of the site at:
• https://supporthtml.oracle.com
Oracle Web Site – Useful LinksDid You Know About These?
• Online PeopleBooks:
• http://www.oracle.com/pls/psft/homepage
• Downloadable PDF PeopleBooks
• http://www.oracle.com/technology/documentation/psftent.html• http://www.oracle.com/technology/documentation/psftent.html
• PeopleTools Viewlets
• http://download.oracle.com/peopletools/viewlets.html
PeopleSoft Business Process Maps
and Entity Relationship Diagrams
Available On
• Available on My Oracle Support
• Business Process Maps
• (r9.0 Doc ID 989289.1)
• (r9.1 Doc ID 1061003.1)
• Entity Relationship Diagrams
• (Doc ID 1051533.1)
PeopleSoft Enterprise
Integration Point Diagrams
Available On
• Available on My Oracle Support – Document ID 1157149.1
PeopleSoft Upgrade Home
Pages on Oracle Support
• One page for each upgrade path per product line,
serves as a homepage for that specific upgrade path
• Upgrade Files including the Getting Started Guide
• Change Assistant User Guide (link)
• Upgrade instructions
Available On
• Demo to Demo Compare Reports
• Upgrade code files.
• Install/Upgrade Information Development team posts
installation documentation, hardware/software
requirements documentation, and certification
information on a separate Oracle Support page for
Install & Hardware/Software
Example Upgrade Pages
On My Oracle Support
Available On
Oracle Tweets on Twitter
<Insert Picture Here>
Extend the
User Interface
Site Specific Browsers
• No noise
• No distractions
• More real estate
• Fewer browser-related
user errorsuser errors
• No back button
• No Favorites/Bookmarks
• No plugins
• Although you can add plugins
• Implementations
• Mozilla Prism
• Microsoft HTA
UbiquityCommand your Browser
• Delivered scripts
• Map location
• Vendor, customer, offices, training rooms, etc
• PeopleSoft transaction specific
• View employee• View employee
• Open vendor
<Insert Picture Here>
IScripts – The Swiss Army Knife
What is an IScript?
• A function that can be called from a URL
• http:…/EMPLOYEE/EMPL/s/WEBLIB_ADS_FB.ISCRIPT1.Fi
eldFormula.IScript_GetFriends
• Takes no parameters and does not return a valueFunction IScript_GetFriends()
...
• Contained in a record named WEBLIB_XXXXXXXX
• Provides access to %Request and %Response
...
End-Function;
What Can They Do?
• Custom user interfaces
• Not bound to Page/Component paradigm
• Ajax/Flex/Applet request/response handlers
• Serve JSON, XML, or HTML in response to Ajax requests
• Excellent for testing PeopleCode snippets• Excellent for testing PeopleCode snippets
• Just about anything… but choose wisely (see
disadvantages)
Advantages of IScripts
• Unstructured Request/Response handling
• PeopleCode version of JSP/ASP
• Very few rules
• Full PeopleCode/Database access
• Leverage PeopleSoft security model• Leverage PeopleSoft security model
• Great for non-UI development
Disadvantages of IScripts
• No META-DATA
• No upgrade
• No component processor
• Event processing
• More difficult to develop and maintain• More difficult to develop and maintain
AJAX InjectionLight-weight User Interface Customizations
• Design• Modify PT_COPYURL HTML definition
• Use AJAX/IScript to load page specific JavaScript
• Advantages• Reduce modification footprint (<20 lines of JavaScript)
• Only way to modify search pages• Only way to modify search pages
• Global or page specific
• Disadvantages• Minimal access to component buffer
• Only access page (not component) fields
• Visible or
• Interact with JavaScript
<Insert Picture Here>
PeopleTools Foundation
The Extensible Foundation
The “Tech Stack”
• Relational database
• Programmable
• Functions, procedures, triggers
• App Server
• Java VM• Java VM
• Native libraries
• J2EE web server
• JSP/JSF
• Servlets
• EJB
• Web Browser
<Insert Picture Here>
Extend the App Server
Language DiversityBest Practices
• How many languages are
delivered with PeopleTools?
• Others?
– PeopleCode
– SQR
– DMS
– COBOL
– Java
– XML
– XSL
– JavaScript
– HTML– COBOL
– SQL
– HTML
– Stored Procedures
– Shell scripting (batch, bash,
etc)
– C++
– Java interpreted script engines:
• JRuby, Groovy, Jython, etc
– … Unlimited
Extend the PeopleCode Language
• Operating system native libraries
• DLLs
• so’s
• Java VM
• Standard Java API• Standard Java API
• Custom Java classes
Extend the PeopleCode LanguageWhy?
• Some things are easier to do in Java
• Java regular expressions versus PeopleCode String
manipulation
• Take advantage of existing libraries
• Apache POI for reading binary Microsoft Excel files • Apache POI for reading binary Microsoft Excel files
(integration)
Extend PeopleCode LanguageUsing the Java API
Function ResolveMetaHTML(&html as string) returns stringLocal JavaObject &pattern;Local JavaObject &matcher;Local String &node_url;
REM ** Resolve %NodePortalURL(NODENAME) tags;&pattern = GetJavaClass("java.util.regex.Pattern")
.compile("(?i)%NodePortalURL\((\w+)\)");
&matcher = &pattern.matcher(CreateJavaObject("java.lang.String", &html));
While &matcher.find() SQLExec("SELECT URI_TEXT FROM PSNODEURITEXT WHERE MSGNODENAME
= :1 AND URI_TYPE = 'PL'", &matcher.group(1), &node_url);&html = Substitute(&html, &matcher.group(), &node_url);
End-While;End-Function;
Extend PeopleCode LanguageCustom Java Classes
REM ** Generate MD5 checksum;
Function test_md5() Returns stringLocal JavaObject &jMD5;
&jMD5 = GetJavaClass("com.oracle.ads.peoplesoft.MD5");&sig = &jMD5.encodeString("String to encode");
End-Function;End-Function;
Access PeopleSoft from Java
• Within a PeopleSoft session (app or process
scheduler server)
• PeopleCode objects
• Record, SQL, Field, File, XMLDoc, etc
• PeopleCode functions
• Func.SQLExec, Func.SendMail, etc
• PeopleCode system variables
• Sysvar.UserId(), Sysvar.Roles()
• TIP: Add peoplecode.jar to your Java IDE’s classpath
Java Integration Scenario
• Vendor e-mails invoice in Microsoft Excel format
• You need to create a voucher from that invoice
• Solution
• Use Apache POI (http://poi.apache.org/) and PeopleCode
objects/functions to copy spreadsheet to staging table (Java) objects/functions to copy spreadsheet to staging table (Java)
• Use a component interface based on VCHR_EXPRESS to
create vouchers (PeopleCode)
Java Integration ScenarioJava Component
public static void processSpreadsheet(int processInstance) {//POI variable initilization, etc...// 20 insert bind valuesObject[] parms = new Object[20];parms[0] = row.getCell(0).getStringCellValue();// column 2 contains an integerParms[1] = newParms[1] = new
Integer(row.getCell(1).getNumericCellValue().intValue());...
// use Meta-SQL to simplify retrieving SQL from// stored SQL objectFunc.SQLExec("%SQL(MYSQLOBJECT)", parms);
...}
Advantages of UsingPeopleCode Data Objects from Java
• Avoid JDBC configuration, data access,
authentication, etc
• Simplicity of SQLExec
• Simplicity of SQL objects/cursors
• Meta-SQL expansion• Meta-SQL expansion
• Avoid updating PS database directly
Access PeopleSoft from JavaAdditional References
• Enterprise PeopleTools 8.50 PeopleBook:
PeopleCode API Reference > Java Class
<Insert Picture Here>
Extend the Web Server
Extensible Options
• Standard J2EE web server options
• Servlet filters
• JSP
• JSF
• Custom Servlets
• CGI
ServletFilters
• Allow you to modify the HTTP request or response
• Examples
• Authentication
• Injection
• Monkeygrease• Monkeygrease
• Add additional HTML/JavaScript/CSS to pages
• Compression
• URLRewriting
• Encryption
• Encoding
• Request/Response header modification
Standard Request Response Cycle...
… and then ServletFilters
Web ServerApp Server
Request
Response
Client/Browser
Response
Web Server
ServletFilter Servlet
Request
Response
Modify Request
Modify Response
<Insert Picture Here>
Extend Integration Broker
The ProblemReal-time Integrations
• Integrate with web service challenged applications
• Common solution: Batch process
• Suffers from:
• Latency
• Complex logic• Complex logic
• Performance and resource utilization (caused by complex
logic)
Solution: Custom Target ConnectorsReal-time Integrations
• Create connectors to send Integration Broker
messages to targets not covered by delivered
connectors
• Databases via JDBC (JDBCTargetConnector)
• Other TCP/IP based protocols
• Anywhere, in any electronic way
AdvantagesCreating Custom Connectors
• Reuse delivered integration points
• Employees, vendors, transactions
• Eliminate complex identification logic
• No “was transaction modified?” logic
<Insert Picture Here>
Want More?
Includes direct links to PeopleBooks, PeopleBook Updates, Release Notes, Installation and Upgrade Guides, and more. All accessible from one convenient My Oracle Support location.
https://supporthtml.oracle.com/ep/f
PeopleTools 8.51
Documentation Homepage
PeopleTools 8.51 Information Development Deliverables
PeopleTools 8.51
Hosted PeopleBooks
PeopleTools Cumulative
Feature Overview Tool
Access a searchable HTML installation of our PeopleTools 8.50 PeopleBook suite. This hosted solution lets you access PeopleBooks using the help link in your applications without having to install PeopleBooks on your own server.
Dynamic tool provides concise descriptions of new and enhanced solutions and functionality that have become available between your starting and target releases.
The CFO tool can be found on My
Oracle Support and on our Doc Home https://supporthtml.oracle.com/ep/faces/secure/km/DocumentDisplay.jspx?id=1127534.1&h=Y
http://www.oracle.com/pls/psft/homepage
Oracle Support and on our Doc Home
Pages.
Cumulative Feature Overview Tool
• How do I know what changed between releases?
• You could read all the release notes…
• …or use the PeopleSoft Enterprise Cumulative
Feature Overview Tool
• Excel-based tool• Excel-based tool
• Choose your topics
• Choose your “from” and “to” releases
• Creates a summary of changes, by release, for the
topics chosen between the releases chosen
• Available for PeopleTools and PeopleSoft Apps
PeopleTools 8.50 Available Training
• PeopleTools 8.50 classes available now:
• PeopleSoft PeopleTools 1 Rel 8.50
• PeopleTools II Rel 8.50
• PeopleTools I/PeopleTools II - Accelerated Rel 8.50
• PeopleSoft PeopleCode Rel 8.50
• SQR for PeopleSoft Rel 8.50
• Application Engine Rel 8.50
• PeopleCode/SQR – Accelerated Rel 8.50
• PeopleCode/Application Engine – Accelerated Rel 8.50
• To view a schedule of these classes or new upcoming
classes visit the Oracle University booth in Moscone
West (W-144) or go to oracle.com/education
PeopleTools Tips and TechniquesNew PeopleTools book available now!
• A collection of code, documentation, and best
practices as presented by Jim Marion over the last
few years
• 600 pages of well written, thought provoking
techniquestechniques
• Available Now!
• Order from major book resellers
PeopleTools Tips and TechniquesNew PeopleTools book available now!
• What’s inside?
• The basics
• App Classes, Approval Workflow Engine, File Attachments
• The user interface
• Mobile, iScripts, Flex, JavaScript, AJAX, Pagelet Wizard
• How and when to use Java in PeopleSoft
• App server, Web server, and Integration
• Best Practices
• Fluent interface design, test driven development
• http://www.amazon.com/PeopleSoft-PeopleTools-
Techniques-Osborne-ORACLE/dp/0071664939
© 2010 Oracle Corporation – Proprietary and Confidential
top related