0% found this document useful (0 votes)
245 views92 pages

Oracle - PeopleSoft Advanced Reporting Techniques PDF

- Data structure - Choose templates that best match the structure of your XML data source to simplify mapping and bursting. Templates with pre-defined regions for common elements can reduce customization. - Output format - Templates designed for specific output formats like PDF, RTF, Excel, etc. will produce better quality output than generic templates. - Pagination - Templates with advanced pagination controls are best for producing multi-page documents versus single-page templates. - Branding - Templates that support logos, headers, footers and other branding elements match your report presentation requirements. - Customization - Some templates

Uploaded by

mokona
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
245 views92 pages

Oracle - PeopleSoft Advanced Reporting Techniques PDF

- Data structure - Choose templates that best match the structure of your XML data source to simplify mapping and bursting. Templates with pre-defined regions for common elements can reduce customization. - Output format - Templates designed for specific output formats like PDF, RTF, Excel, etc. will produce better quality output than generic templates. - Pagination - Templates with advanced pagination controls are best for producing multi-page documents versus single-page templates. - Branding - Templates that support logos, headers, footers and other branding elements match your report presentation requirements. - Customization - Some templates

Uploaded by

mokona
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 92

<Insert Picture Here>

PeopleSoft Advanced Reporting Tips & Techniques


Southern New England User Group Meeting, October 17th, 2008
Stephen Wills
Applied Technology Sales Consultant
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.
“I upgraded my application from 8.3 to 8.9. Now my query
includes additional security joins and this is impacting
performance. What if I don’t want the additional security
joins?”
PS/Query
Security Joins
SELECT A.DEPTID, C.NAME, B.NAME
FROM PS_JOB A, PS_FAST_EMPGL_VW2 A1,
• When you join two PS_NAMES B, PS_PERS_SRCH_QRY1 B1, PS_NAMES C
different records with WHERE A.EMPLID = A1.EMPLID
the same query security AND A.EMPL_RCD = A1.EMPL_RCD
record, join the security AND A1.ROWSECCLASS = 'ALLPANLS'
record once for AND B.EMPLID = B1.EMPLID
optimization AND B1.ROWSECCLASS = 'ALLPANLS'
• But when you need to AND C.EMPLID = B1.EMPLID
join the same record AND ( A.EFFDT = C.EMPLID
C.EMPLID == B1.EMPLID
B1.EMPLID
twice the security join (SELECT MAX(A_ED.EFFDT) FROM PS_JOB A_ED
needs to be applied WHERE A.EMPLID =would would only
only return
A_ED.EMPLID return rows
rows of
of data
data when
when the
the
emplid
emplid is
is also
also equal
equal to
to supervisor
supervisor id.
id.
twice AND A.EMPL_RCD = A_ED.EMPL_RCD
AND A_ED.EFFDT <= SYSDATE)
• Prior to 8.44 PS/Query AND A.EFFSEQ =
only joined the security (SELECT MAX(A_ES.EFFSEQ) FROM PS_JOB A_ES
record one time. This WHERE A.EMPLID = A_ES.EMPLID
could cause incorrect AND A.EMPL_RCD = A_ES.EMPL_RCD
results in certain AND A.EFFDT = A_ES.EFFDT)
situations. AND A.EMPLID = B.EMPLID
AND
The correct SQL should be… …
The correct SQL should be

GSC Resolution 200973569


PS_PERS_SRCH_QRY1
PS_PERS_SRCH_QRY1 C1
C1 and
and C.EMPLID
C.EMPLID == C1.EMPLID
C1.EMPLID
PS/Query
Security Joins

• The 8.44 correction introduced in a change in behavior for prior existing


PS/Queries and although technically correct, performed slower

• If you do not want multiple inclusion of the security join:

INSERT INTO PSVERSION (OBJECTTYPENAME,VERSION) VALUES ('QRYSELFJ',1)

• The existence of 'QRYSELFJ' in PSVERSION table is checked by


PS/Query (as of PT8.47)

• Alternative for situations where you need to include the same field
multiple times include
• Expressions
• Views
“We need production reporting but the report
processing is consuming my server.”
Monitoring Queries
Query Administration Utility

• PeopleTools > Utilities > Administration > Query Monitor


• Administrative Information and Enable/Disable Query
• Ability to Kill Long Running Queries on Executing Tab
• Ability to Enable/Disable Stats for Test vs Production
Monitoring Queries
Query Administration Classes

• Query Classes provide many methods and properties for


examining the QueryStatistics via PeopleCode API
• AvgExecTime
• AvgNumRows
• ExecCount
• LastExecDtTm
• Delete
• View real-time and historical performance data using
Performance Monitor
• Perf Mon Event 355
“Is there a difference in performance among the
different supported data sources for XML
Publisher for PeopleSoft?”
XML File
Optimal Data Source for XML Publisher for PeopleSoft

• Supported Data Sources


• PSQuery Labels
• RowSet
• XmlDoc
• XML File Data
Data Source
Source

• Relational based data Invoices


sources, such as Layout
Layout
PSQuery and RowSet,
will involve processing to
align relational with XML
structure Translation
Translation

Reports
• The processing required
may impact performance
of production reporting,
however…
Checks
XML File
Optimal Data Source for XML Publisher for PeopleSoft

• … it is often possible to preprocess the relational data source to


prepare XML File for use at report time Labels

Data
Data Source
Source

Invoices
Layout
Layout
• A batch program such as SQR or
Application Engine can preprocess a
relational data source to XML
Translation
Translation
• Then use XML File as the Data Source
Reports

• Example: HCM 9.0 North American Payroll XML Publisher Reports

• PeopleTools researching a generic Query to XML File capability Checks


“How can I see my Query results (data) formatted in
XML? “
Generating XML

• Add a Return statement to method CleanOutput() of the


PSXP_RPTDEFNMANAGER:ReportDefn Application Class

• Files placed in %PS_SERDIR%\files\XMLP\Data and


%PS_SERDIR%\files\XMLP\RptInst directories
Generating XML

• Create an xdodebug.cfg file and place it under


[PS_HOME]\JRE\Lib (where your active JRE is installed)

• The file should include the following two entries:

LogLevel=STATEMENT
LogDir=c:\temp or any appropriate temp directory

• Run your XMLP report


An xdo.log file (and related xml, xsl, translation and template
files) will be written to the specified LogDir.
“Do I need schema in order to define an XMLP
report? If so, how do I generate one?”
Schema & Sample Files
• Both Schema and Sample files are required for PDF
mapping
• Schema file is required for bursting
• Schema and Sample files are auto generated only
for PS/Query data source
• For non-PS/Query data sources
• User must generate schema using an external tool such as
XML Spy, Visual Studio etc.
• Sample files can be created using notepad, a representative
clone of your actual data file, etc.
Generating Schema with Excel 2003+
• Have your XML data or sample file ready
• ‘File | Open’ in Excel 2003+. ‘Open XML’ dialog box pops up.
Select either ‘As an XML List’ or ‘Use the XML Source task
pane’

• Click OK. Ignore the following warning message coming from


Excel

• Click OK
Generating Schema with Excel 2003+
• The XML Source window will
appear on the right

• Open VBA,Tools/Macro/Visual
Basic Editor (Alt+F11). Type in the
following:
Generating Schema with Excel 2003+
• Click “Enter”
• the XML schema string appears

• Copy this string into any text editor (ie Notepad, etc)
• Add the following string at the top of the file:
• <?xml version="1.0" ?>
• Save the file with an ‘xsd’ extension
• Schema can now be uploaded to the XMLP Data Source.
• There are several websites like
http://tools.decisionsoft.com/xmlpp.html that will format
your xml data or schema files for free
“XML Publisher for PeopleSoft means more decisions
regarding report templates. How do I choose?”
XML Publisher Reporting
Choosing a Template

Feature RTF PDF


Custom/dynamic output x
Existing PDF Template (government forms) x
Pixel perfect positioning (using Adobe) x
Charts x
PDF Output x x
HTML, Excel and potential other output formats x
Sub-templates x
Runtime parameters x
Translation files x
Higher performance on very large reports (hundreds of mega bytes) x
Output Formulas x
Flexible Field-data mapping (XPath vs. simple name matching) x
“Sub-templates are a new concept for us. How do
they work?”
RTF Sub-templates
Header_Std_lower.rtf

• Can include image, text, XSL templates, etc.

• Usually used for logos, headers, footers, etc.

• Each primary template can import multiple sub-templates


RTF Sub-templates

• Add to Content
Library

• Sub-
templates
files stored in
database

• No
definitional
link to
primary
template
RTF Sub-templates

• Imported from primary template using Sub-Template ID

Within in (<?import:psxmlp://STDHEADER?>)
PIA Retrieved at runtime by core engine using psxmlp protocol
(Java to PeopleCode call)

Within
Test/preview using file system import
Template
Builder <?import:file:///c:/temp/Header_Std_lower.rtf?>
Runtime Parameters

• Can be added
to any template

• Delivered set
through the
ReportDefn
class

• Can
programmaticall
y add via XML
PeopleCode
API

• Need to be
declared before
use
“I need to run reports for every department in our
global operations.”
Bursting
Report by Burst Key

Use for Security & for Distribution


Bursting by EmplID
<PayChecks>
<PayCheck>
<EmpId>1000</Empld>
<DeptId>01</DeptId>
<Salary>1000</Salary>
</PayCheck>
emplid: 1000 emplid: 1001 emplid: 1002
<PayCheck>
<EmpId>1001</Empld>
<DeptId>01</DeptId>
<Salary>1000</Salary> Bursting by Deptld
</PayCheck>
<PayCheck>
<EmpId>1002</Empld>
<DeptId>02</DeptId>
<Salary>1000</Salary> emplid: 1001 emplid: 1003
</PayCheck> emplid: 1000 emplid: 1002
</PayChecks>
DeptId: 01 DeptId: 02
Bursting
Composite Key Bursting with XML Publisher

• Single burst field

• Create composite key in data source


e.g. Use Query expression to concatenate

Bursting by Country by Region

emplid: 1002 emplid: 1005


emplid: 1001 emplid: 1004
emplid: 1000 emplid: 1003

CountryState: USCA CountryState: USNY


Bursting templates/translation

• ‘Template controlled
by’ does not have to
match ‘burst by’
COUNTRY_REGION

• Default Template ID COUNTRY_REGION


specified on Run
Control W2
T4

• Could include one T4

template per data


value Emplid 1002 EmplID 1005 employé 1012
Emplid 1001 EmplID 1004 employé 1011
Emplid 1000 EmplID 1003 employé 1010
• Multiple languages per
template
CountryRegion: USCA CountryRegion:CABC PaysRégion:CAQB
“How do I make my XMLP reports reflect dates and
times based on the recipients setting?”
Recipient Time Zones

• Report template must be of type “RTF” or “XSL”


• Ensure user time zone is one of the standard 3 character
delivered time zone codes ( “PST”, “EST”, etc.)
• XML Publisher does not recognize custom time zones and will
revert to the “GMT” time zone
• Include the offset from GMT for each date-time element
• 2008-07-27T12:48:00.000+02:00
• Appropriate abstract format mask must be used in the
template in order to display the time zone
• <?format-date:DATE_TIME_FIELD;'SHORT_TIME_TZ'?>
“When Query Access List Cache is
enabled, Crystal Reports & Queries seem
to run slower for User Id’s that have a
large number of roles assigned”
Query Access List Cache

• Open the SQL definition PSQRYACCLISTFASTSQL in App


Designer (pside.exe), and replace the following SQL
SELECT DISTINCT C.RECNAME
, C.RECDESCR
FROM PSROLECLASS A
, PSROLEUSER B
, PSQRYACCLSTRECS C
, PSVERSION D
WHERE A.ROLENAME = B.ROLENAME
AND C.CLASSID = A.CLASSID
AND C.VERSION = D.VERSION
AND D.OBJECTTYPENAME = 'QAL'
AND B.ROLEUSER = '%s'
WITH
SELECT DISTINCT A.RECNAME
,A.RECDESCR
FROM PSQRYACCLSTRECS A
,PSVERSION B
WHERE A.VERSION = B.VERSION
AND B.OBJECTTYPENAME = 'QAL'
AND A.CLASSID IN (SELECT C.CLASSID FROM PSROLECLASS C,
PSROLEUSER D WHERE C.ROLENAME = D.ROLENAME AND D.ROLEUSER =
'%s')
“We always seem to have some users who jump on
the latest version of Office before we can upgrade
our servers and others who keep using older
versions long after our servers are upgraded. Any
suggestions for us regarding Office 2007?”
PS/nVision
Office 2007

• PS/nVision is now certified with Office 2007

• Recommendation is (as in the past) to use the same version of


Office for all PS/nVision environments:
• Report Batch Server
• User Browser Workstation
• Report Designer Client Workstation

• Different versions of Office in the mix have often worked in the


past but a workaround will be required in certain instances
PS/nVision
Office 2007

• Office 2007 will save nVision


reports as .xlsx
May require
Report Designer explicit
• Designers using saveas .xls
Office 2007 need to
rename or save as
Report User Process
.xls before running
Scheduler
the report in an May require COBOL
COBOL
environment using explicit
Office 2003. saveas .xls Application
Application Engine
Engine
Report
SQR
SQR
Repository
• End users need to save as .xls Crystal
Crystal Report
Report
before using Office 2003 to XML
XML Publisher
Publisher
open a report generated with
nVision
nVision
Office 2007
Web Server App Server Batch Server
Report Server
XML Publisher
Office 2007

• PT bundles the BIP Template


Builder
• While Customers can download
Template Builder the bundled
version is the Certified,
Recommended Version

• Offcycle certifications may create


an interim gap in time

• For e.g. the recent certification of


Office 2007
• Customers will want to download the
version 10.1.3.3 of the Template
Builder from the Oracle website.

• Or be on a Tools Patch of 8.49.07


and 8.48.16 or high (which updates
the PT bundle)


“PeopleTools provides several reporting tools.
When would I use nVision vs. XML Publisher vs.
Crystal Reports?”
Tool?
Which

XML

SQR
Reporting

nVISION

REPORTING NEED
CRYSTAL
REPORTS

PS/QUERY
PUBLISHER

Forms Based (PDF, Word, etc)


Pixel Precision Formatting
MICR









Graphics/Logos

FORMATTING



Charting








Simple Tabular




SubReport
Report Development

Matrixed


Financials, Ledger, Trees

DATA ORGANIZATION

 Reporting w/Logic /Processing





Scheduled/ On Demand


Ad-Hoc



Bursting
EXECUTION



Drill Down






Windows Batch Server







Unix/Linux Batch Server


BOE

Server

390 Batch Server


PLATFORMS



Excel Integration
“When using multiple schedulers in multiple OSs,
for load balancing, how can I assign AE process to
execute in a particular OS?”
Scheduling Scenario
• System setting - Unix is the primary OS and system load is
set to ‘Assign To Server In Any O/S’
• A Master Scheduler
• Customer has 4 schedulers - 2 on NT and 2 on UNIX
• Each is set up as ‘use for load balancing’ & ‘redistribute to same
OS’ and a Master Scheduler is booted
• They want all AE processes to run on Unix - except 3
• The 3 exceptions have been hard coded to run on a particular NT
scheduler
• But… sometimes the remaining AE processes are getting picked
up by NT schedulers
• Why? Is there any way to specify that these AE processes
run only on the Unix Schedulers?”
Process Category
• Define 2 Process Categories for AE processes (AE_NT
and AE_UNIX)
• Process Scheduler -> System Settings -> Process Category Admin
tab
• Assign the 3 AE processes you always want to run on NT
to process category AE_NT
• Assign the rest to process category AE_UNIX
• NT server definitions - set ‘max concurrent’ AE_NT > 0
and AE_UNIX = 0
• Unix server definitions - set ‘max concurrent’ AE_NT = 0
and AE_UNIX > 0
“When running an AE process to Window (output),
did you know you can have more than just the run
status displayed in popups?”
Run Status popups
• By default the popup windows reflects the request run
status
User Defined Progress
• Add the following PeopleCode
to display a customized status
message in popup window
• import PT_PRCS:API:*;
• Local PrcsApi &api = create
PrcsApi();
• &nret =
&api.notifyToWindow(QE_AE
STATUS_AET.PROCESS_IN
STANCE, "Executing
initialization steps…");
“Did you know you can define links to Application
pages from the Process Request result page?”
Links in Report results
• This can be done by defining links to pages on process
definition

OR
Links in Report results
Example
• Upon completion of process TREEMAINT, user may either
(1) Go to View result of an audit, (2) Go to Repair Tree
page.
• You can setup these links for navigation from the process
result page via Process Definition URL Links page.
Links in Report results

• URL Keys page is used to supply key values needed to pull


up the appropriate data in the page
• Values can be in the format of meta-variables or inline bind
variables
Links in Report results

• Submit the process TREEMAINT to run from Tree Manager


-> Tree Auditor…
Links in Report results

• On completion of process request, user clicks to view request/report


details from process monitor (or via notification email …etc)
• User will find URL link(s) associated with the generated instance
Links in Report results

• User can then click the link to navigate directly to the page
with the appropriate keys populated
• (ie. Process Instance and Run Control ID in this example)
“Tired of losing your PeopleSoft Tree changes?”
Collaborative work on PeopleSoft Trees

• On the PeopleTools Options page, select the ‘Use Tree


Update Reservation’
Check Out Tree

• Tree opened in Read Only


• ‘Check Out Tree’ to reserve/lock for update
• Tree or branch can be reserved/locked by Owner ID and
Timestamp
Release Tree

• Reservation released when user selects ‘Release Tree’,


closes the tree or when ‘Max Tree Inactivity Period’ is
reached
• timestamp on LAST_ACTIVITY_TIME field updated whenever
owner performs any action on tree - including navigation
Accessing a Reserved Tree

• If tree is currently checked out, user will be notified of the


User Id of the person holding the reservation
<Insert Picture Here>

PeopleSoft Enterprise
Reporting Tips &
Techniques Looking Ahead
“How do I map my data to a government supplied
PDF form when it contains repeated elements?”
PDF Mapping
Looking Ahead

• Full Path Mapping


PDF Full Path Mapping – 8.50

• Enable mapping PDF form fields to XML <Paychecks>


<PayCheck>
elements positioned under any level in the
<EmpNo>00001</EmpNo>
data source XML structure. <Company>
• No schema required. Only sample xml file <Address>1 Company st. CA 00001</Address>
is needed <Description>Company Info</Description>
</Company>
<Employee>
<Address>1 Employee st. CA 00001</Address>
<Description>Employee Info</Description>
<Salary>50000</Salary>
<Vacation>12</Vacation>
......
</Employee>
</PayCheck>
<PayCheck>
......
......
</PayCheck>
</PayChecks>
“How can I email the results of a Scheduled Query
or XMLP report?
Emailing Reports
Looking Ahead

• Query Report Scheduler supports email now.


• Email actual report file as attachment.
• Multiple levels of validation
“Every time I run my report it outputs the exact
same filename. In fact, it overwrites the existing
file.”
Prevent File Overwrite
Today

• Specify only the folder name when writing to a file


• Report name is system generated
• Each run of the report overwrites previous report
with that name
• The workaround is to specify a different folder
Descriptive Report Names
Looking Ahead

• Report output names (and file names) are now


customizable using a name template
• Plain text intermixed with output parameters:
• %BTV%: Burst value (bursting mode only)
• %ASD%: As of Date
• %RID%: Report ID
• %Field% (any candidate burst field under highest repeating element)
• ie %EMPLID%
Descriptive Report Names

• Can be set on the Output page

• Or programmatically using ReportFileName property on the


ReportDefn class.
• If set, it will override UseBurstValueAsOutputFileName property
“I have a PS/Query that uses ‘in tree’ criteria.
Problem is I need to select a different set of nodes
just about every time I run it”
inTree Criteria
Today

• For criteria, DEPTID as “in tree” and try to save.


Tree Prompt Option
Looking Ahead
Tree Prompt Option
Tree Prompt Option
Tree Prompt Option
“What happens if I need to keep certain reports for
7-10 years or longer?
Report Retention Days
Today

• System wide setting impacts all report retention


Report Retention Days
Looking Ahead

• Maximum retention days setting allowed has changed


from 999 to 9999 days
• Set the default retention at four levels
• Process Type Definition
• Process Definition
• Job Definition
• Schedule JobSet Definition
Process Type Definition Default

• Takes precedence over System setting


Process Definition Default
• Takes precedence over Process Type definition or
System setting
Job Definition Default
• Takes precedence over system setting
• Used to enforce the same retention days for all
processes within a job
Override at Schedule time
• Process Request / Scheduler JobSet UI (Distribution Link)
• With output type of web/window
“Can you explain what a ‘Run Control Id’ is to a new
user? What if you never had to again?”
Run Control
Today

• Required to prompt users for the parameters needed to


run the process
Generic Run Control
Looking Ahead

• Register parameters
• Once “Generic Run Control Page” option is enabled
on process definition, users can “Schedule” process
Generic Run Control

• Generic run control page generated based on the


registered parameters
Reporting Console
Looking Ahead

• Single location/launch pad for reporting activities


• Run, schedule, monitor, view process requests
• Create ad-hoc reports
• Share and email report instance
• Manager process and report definitions
• Admin functions
• Manage process and report definitions
Reporting Console
Looking Ahead
For More Information

search.oracle.com

or
oracle.com
The preceding 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.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy