Thursday, December 12, 2013

Dynamically change the Tab Name in component

You can pass the tab name dynamically to component item label name.

1) Create the HTML object ZAM_COMP_LABLE and write the following piece of java code.









  


2)  Create the work record ZAM_COMP_LABEL_WRK along with field HTMLAREA

3) Drage the HTML Area from menu Insert

4) Assing the work record name and field to HTML area

5) Write the code either on Component - Post Build or Page activate

ZAM_COMP_LABEL_WRK.HTMLAREA.value = GetHTMLText(HTML.ZAM_COMP_LABLE,  NAME.NAME1);

6) In above example i am passing %bind(:1) value NAME.NAME1 name to the component tab
   %bind(:1) = NAME.NAME1

Tuesday, October 29, 2013

PeopleSoft Security Queries

Query to find the list of users having access to component, action along with Navigation details
 
SELECT DISTINCT roleclass.rolename,
authitem.menuname,
authitem.menulabel, 
authitem.baritemname,
authitem.itemlabel,
DECODE(authitem.DISPLAYONLY, 0, 'N', 1, 'Y') AS "Display_Only",
CASE authitem.AUTHORIZEDACTIONS
    WHEN 1 THEN 'Add'
    WHEN 2 THEN 'Update/Display'
    WHEN 3 THEN 'Add, Update/Display'
    WHEN 4 THEN 'Update/Display All'
    WHEN 5 THEN 'Add, Update/Display All'
    WHEN 6 THEN 'Update/Display, Update/Display All'
    WHEN 7 THEN 'Add, Update/Display, Update/Display All'
    WHEN 8 THEN 'Correction'
    WHEN 9 THEN 'Add, Correction'
    WHEN 10 THEN 'Update/Display, Correction'
    WHEN 11 THEN 'Add, Update/Display, Correction'
    WHEN 12 THEN 'Update/Display All, Correction'
    WHEN 13 THEN 'Add, Update/Display All, Correction'
    WHEN 14 THEN 'Update/Display, Update/Display All, Correction'
    WHEN 15 THEN 'Add, Update/Display, Update/Display All, Correction'
    ELSE 'SPECIAL' END AS "Authorized_Actions",
authitem.PNLGRPNAME,
CASE InStr(nav.PATH_TO_COMPONENT, 'Root>', 1)
  WHEN 0 THEN nav.PATH_TO_COMPONENT
  ELSE SubStr(nav.PATH_TO_COMPONENT, InStr(nav.PATH_TO_COMPONENT, 'Root>', 1) + 5, length(nav.PATH_TO_COMPONENT) - InStr(nav.PATH_TO_COMPONENT, 'Root>', 1) + 5)
  END AS navigation
from
(SELECT
DISTINCT a.CLASSID, a.MENUNAME, b.MENULABEL , a.BARITEMNAME,c.itemlabel ,
a.DISPLAYONLY,                                                                               
a.AUTHORIZEDACTIONS,
c.PNLGRPNAME
FROM PSAUTHITEM a, PSMENUDEFN b, PS_ACLCOMPONENT_V2 c
where a.MENUNAME = b.MENUNAME
AND a.menuname =  c.menuname
AND a.barname = c.barname
AND a.baritemname = c.baritemname) authitem ,
psroleclass roleclass,
(SELECT a.PORTAL_URI_SEG2 as component
, E.PORTAL_LABEL || '>' || D.PORTAL_LABEL || '>' ||C.PORTAL_LABEL ||
'>' || B.PORTAL_LABEL || '>' || A.PORTAL_LABEL as PATH_TO_COMPONENT
, A.PORTAL_URLTEXT
, A.PORTAL_ISPUBLIC as Active
, A.LASTUPDOPRID
, A.LASTUPDDTTM
, A.PORTAL_URI_SEG2
FROM PSPRSMDEFN A, PSPRSMDEFN B, PSPRSMDEFN C, PSPRSMDEFN D, PSPRSMDEFN
E
WHERE 1=1
AND A.PORTAL_PRNTOBJNAME = B.PORTAL_OBJNAME(+)
AND B.PORTAL_PRNTOBJNAME = C.PORTAL_OBJNAME(+)
AND C.PORTAL_PRNTOBJNAME = D.PORTAL_OBJNAME(+)
AND D.PORTAL_PRNTOBJNAME = E.PORTAL_OBJNAME(+)
AND (E.PORTAL_NAME IS NULL OR E.PORTAL_NAME = 'EMPLOYEE')
AND (A.PORTAL_NAME = 'EMPLOYEE' OR A.PORTAL_NAME IS NULL )
AND (B.PORTAL_NAME = 'EMPLOYEE' OR B.PORTAL_NAME IS NULL )
AND (C.PORTAL_NAME = 'EMPLOYEE' OR C.PORTAL_NAME IS NULL )
AND (D.PORTAL_NAME = 'EMPLOYEE' OR D.PORTAL_NAME IS NULL )
) nav
WHERE  roleclass.rolename =
AND authitem.classid = roleclass.classid
AND  authitem.PNLGRPNAME =  nav.PORTAL_URI_SEG2(+)
ORDER BY rolename, menuname, baritemname
 
***********************************************************************
Below are the SQLs to find the Peoplecode and SQL objects which are  created or modified by you but not included in any of your project.
 
 
--------------------------------------------------
-- Selects Peoplecode not inserted in a project
--------------------------------------------------
SELECT
CASE A.OBJECTID1
when 1 then 'Record Peoplecode'
when 3 then 'Menu Peoplecode'
when 9 then 'Page Peoplecode'
when 10 then 'Component level Peoplecode'
when 60 then 'Message Peoplecode'
when 74 then 'Component Interface Peoplecode'
when 87 then 'Subscription Peoplecode'
END AS  OBJect_Type
,
A.OBJECTVALUE1 || '.' || A.OBJECTVALUE2 || '.' || A.OBJECTVALUE3 || '.' || A.OBJECTVALUE4 || '.' || A.OBJECTVALUE5 || '.' || A.OBJECTVALUE6  || '.' || A.OBJECTVALUE7
AS EXTENDED_OBJ_NAME
FROM PSPCMPROG    A 
 , PSPCMTXT B -- join to pspcmtxt to filter out reverted changes (back to blank)
WHERE  LASTUPDOPRID =
AND  A.OBJECTID1 || A.OBJECTVALUE1 || A.OBJECTID2 ||A.OBJECTVALUE2 || A.OBJECTID3 || A.OBJECTVALUE3 || A.OBJECTID4 || A.OBJECTVALUE4
NOT IN
(
SELECT OBJECTID1 || OBJECTVALUE1 || OBJECTID2 || OBJECTVALUE2 || OBJECTID3 || OBJECTVALUE3 || OBJECTID4 || OBJECTVALUE4
FROM PSPROJECTITEM I, PSPROJECTDEFN   d
WHERE I.PROJECTNAME = D.PROJECTNAME
AND D.LASTUPDOPRID =
and i.objecttype in (8,9,39,40,42,43,44,46,47,48)
)
AND a.objectid1                               = b.objectid1
AND a.objectvalue1                        = b.objectvalue1
AND a.objectid2                               = b.objectid2
AND a.objectvalue2                        = b.objectvalue2            
AND a.objectid3                               = b.objectid3
AND a.objectvalue3                        = b.objectvalue3
AND a.objectid4                               = b.objectid4
AND a.objectvalue4                        = b.objectvalue4
AND a.objectid5                               = b.objectid5
AND a.objectvalue5                        = b.objectvalue5
AND a.objectid6                               = b.objectid6
AND a.objectvalue6                        = b.objectvalue6
AND a.objectid7                               = b.objectid7
AND a.objectvalue7                        = b.objectvalue7
AND  A.OBJECTID1 NOT IN   (66,104)
;    
  
 
 
--------------------------------------------------
-- Selects App Engine Peoplecode not inserted in a project
--------------------------------------------------
SELECT
DISTINCT
'Application Engine Peoplecode',
A.OBJECTVALUE1 || '.' || A.OBJECTVALUE2 || '.' || A.OBJECTVALUE3 || '.' || A.OBJECTVALUE4 || '.' || A.OBJECTVALUE5 || '.' || A.OBJECTVALUE6  || '.' || A.OBJECTVALUE7
FROM PSPCMPROG    A 
WHERE  LASTUPDOPRID =
AND   A.OBJECTID1|| A.OBJECTVALUE1|| A.OBJECTID2||A.OBJECTVALUE2||A.OBJECTVALUE3||A.OBJECTVALUE4||A.OBJECTVALUE5  
 NOT IN
(
SELECT I.OBJECTID1 ||I.OBJECTVALUE1 || I.OBJECTID2 ||REPLACE(I.OBJECTVALUE2,' ','')
 FROM PSPROJECTITEM I, PSPROJECTDEFN   d
WHERE I.PROJECTNAME = D.PROJECTNAME
AND D.LASTUPDOPRID =
and objecttype =43
)
and A.OBJECTID1 = 66
;    
 
--------------------------------------------------
-- Selects App Package Peoplecode not inserted in a project
--------------------------------------------------
SELECT
'Application Package Peoplecode'
, A.OBJECTVALUE1 || '.' || A.OBJECTVALUE2
 FROM PSPCMPROG    A 
WHERE  LASTUPDOPRID =
AND   A.OBJECTID1|| A.OBJECTVALUE1|| A.OBJECTID2||A.OBJECTVALUE2
NOT IN
(
SELECT I.OBJECTID1 ||I.OBJECTVALUE1 || I.OBJECTID2 || I.OBJECTVALUE2
 FROM PSPROJECTITEM I, PSPROJECTDEFN   d
WHERE I.PROJECTNAME = D.PROJECTNAME
AND D.LASTUPDOPRID =
and objecttype =58
)
and A.OBJECTID1 = 104
;    
 
 
 
--------------------------------------------------
-- Selects SQL Objects not inserted in a project
--------------------------------------------------
SELECT 
CASE WHEN SQLTYPE = 0 THEN 'SQL Object '
WHEN SQLTYPE = 1 THEN 'App Engine Step '
WHEN SQLTYPE = 2 THEN 'Record View'
WHEN SQLTYPE = 6 THEN 'Application Engine XSLT'
END AS OBJECTTYPE      ,
SQLID
FROM PSSQLDEFN
WHERE   LASTUPDOPRID =
AND  SQLID
NOT IN
(
SELECT OBJECTVALUE1
FROM PSPROJECTITEM I, PSPROJECTDEFN   d
WHERE I.PROJECTNAME = D.PROJECTNAME
AND D.LASTUPDOPRID =
AND OBJECTTYPE in (30)
);

Wednesday, September 18, 2013

Web Service in PeopleSoft

Integration technology built into the PeopleSoft Internet Architecture – the PeopleSoft Integration Broker

• Embedded in tool set and delivered with all PeopleSoft Enterprise applications
• Providing support for:
• Web Services
• Inbound/outbound synchronous/asynchronous XML messaging,including SOAP support
• COM, C, C++, Java, XML access to PeopleSoft application logic via API
• Flat File processing, inbound and outbound


What is an Integration Broker?



• Messaging
• Transformation
• Routing
• Connectors
• Development
• Monitoring


Services


Focus on Added Web Services Support in PeopleTools 8.48





Upgrade - Retrofit Activity

SQL to find a specific string in all SQL definitions:

SELECT SQLID, CASE WHEN SQLTYPE=0 THEN 'SQL Object' WHEN SQLTYPE=1 THEN 'AE Step'
WHEN SQLTYPE=2 THEN 'SQL View' END AS SQLTYPE, SQLTEXT FROM PSSQLTEXTDEFN WHERE SQLTEXT LIKE '%<Mention search value here>%'



Below is list of SQL object type.
SQLTYPE
Data/Object Type
0
Stand alone SQL objects
1
Application engine step
2
SQL belongs to a view
 
 
SQL to find a specific string in all SQL definitions:
SELECT    CASE OBJECTID1 WHEN 1 THEN 'Record' WHEN 2 THEN 'Field' WHEN 3 THEN 'Menu' WHEN 4 THEN 'Bar Name' WHEN 5 THEN 'Item Name' WHEN 9 THEN 'Page' WHEN 10 THEN 'Component' WHEN 12 THEN 'Event' WHEN 20 THEN 'DB Type' WHEN 21 THEN 'Effective Date' WHEN 39 THEN 'Market' WHEN 60 THEN 'Message' WHEN 66 THEN 'App Eng' WHEN 74 THEN 'Comp Int - CI' WHEN 77 THEN 'Section' WHEN 78 THEN 'Step' WHEN 87 THEN 'Subscription' WHEN 104 THEN 'App Package' WHEN 105 THEN 'Class' WHEN 106 THEN 'Class' WHEN 107 THEN 'Class'    ELSE 'N/A' END AS OBJECTID1,OBJECTVALUE1,   CASE OBJECTID2 WHEN 1 THEN 'Record' WHEN 2 THEN 'Field' WHEN 3 THEN 'Menu' WHEN 4 THEN 'Bar Name' WHEN 5 THEN 'Item Name' WHEN 9 THEN 'Page' WHEN 10 THEN 'Component' WHEN 12 THEN 'Event' WHEN 20 THEN 'DB Type' WHEN 21 THEN 'Effective Date' WHEN 39 THEN 'Market' WHEN 60 THEN 'Message' WHEN 66 THEN 'App Eng' WHEN 74 THEN 'Comp Int - CI' WHEN 77 THEN 'Section' WHEN 78 THEN 'Step' WHEN 87 THEN 'Subscription' WHEN 104 THEN 'App Package' WHEN 105 THEN 'Class' WHEN 106 THEN 'Class' WHEN 107 THEN 'Class'    ELSE 'N/A' END AS OBJECTID2, OBJECTVALUE2,   CASE OBJECTID3   WHEN 1   THEN 'Record'   WHEN 2   THEN 'Field'   WHEN 3   THEN 'Menu'   WHEN 4   THEN 'Bar Name'   WHEN 5   THEN 'Item Name'   WHEN 9   THEN 'Page'   WHEN 10   THEN 'Component'   WHEN 12   THEN 'Event'   WHEN 20   THEN 'DB Type'   WHEN 21   THEN 'Effective Date'   WHEN 39   THEN 'Market'   WHEN 60   THEN 'Message'   WHEN 66   THEN 'App Eng'   WHEN 74   THEN 'Comp Int - CI'   WHEN 77   THEN 'Section'   WHEN 78   THEN 'Step'   WHEN 87   THEN 'Subscription'   WHEN 104   THEN 'App Package'   WHEN 105   THEN 'Class'   WHEN 106   THEN 'Class'   WHEN 107   THEN 'Class'  ELSE 'N/A' END AS OBJECTID3,OBJECTVALUE3, CASE OBJECTID4   WHEN 1   THEN 'Record'   WHEN 2   THEN 'Field'   WHEN 3   THEN 'Menu'   WHEN 4   THEN 'Bar Name'   WHEN 5   THEN 'Item Name'   WHEN 9   THEN 'Page'   WHEN 10   THEN 'Component'   WHEN 12   THEN 'Event'   WHEN 20   THEN 'DB Type'   WHEN 21   THEN 'Effective Date'   WHEN 39   THEN 'Market'   WHEN 60   THEN 'Message'   WHEN 66   THEN 'App Eng'   WHEN 74   THEN 'Comp Int - CI'   WHEN 77   THEN 'Section'   WHEN 78   THEN 'Step'   WHEN 87   THEN 'Subscription'   WHEN 104   THEN 'App Package'   WHEN 105   THEN 'Class'   WHEN 106   THEN 'Class'   WHEN 107   THEN 'Class'    ELSE 'N/A' END AS OBJECTID4, OBJECTVALUE4 ,   CASE OBJECTID5   WHEN 1   THEN 'Record'   WHEN 2   THEN 'Field'   WHEN 3   THEN 'Menu'   WHEN 4   THEN 'Bar Name'   WHEN 5   THEN 'Item Name'   WHEN 9   THEN 'Page'   WHEN 10   THEN 'Component'   WHEN 12   THEN 'Event'   WHEN 20   THEN 'DB Type'   WHEN 21   THEN 'Effective Date'   WHEN 39   THEN 'Market'   WHEN 60   THEN 'Message'   WHEN 66   THEN 'App Eng'   WHEN 74   THEN 'Comp Int - CI'   WHEN 77   THEN 'Section'   WHEN 78   THEN 'Step'   WHEN 87   THEN 'Subscription'   WHEN 104   THEN 'App Package'   WHEN 105   THEN 'Class'   WHEN 106   THEN 'Class'   WHEN 107   THEN 'Class'  ELSE 'N/A' END AS OBJECTID5,OBJECTVALUE5, CASE OBJECTID6   WHEN 1   THEN 'Record'   WHEN 2   THEN 'Field'   WHEN 3   THEN 'Menu'   WHEN 4   THEN 'Bar Name'   WHEN 5   THEN 'Item Name'   WHEN 9   THEN 'Page'   WHEN 10   THEN 'Component'   WHEN 12   THEN 'Event'   WHEN 20   THEN 'DB Type'   WHEN 21   THEN 'Effective Date'   WHEN 39   THEN 'Market'   WHEN 60   THEN 'Message'   WHEN 66   THEN 'App Eng'   WHEN 74   THEN 'Comp Int - CI'   WHEN 77   THEN 'Section'   WHEN 78   THEN 'Step'   WHEN 87   THEN 'Subscription'   WHEN 104   THEN 'App Package'   WHEN 105   THEN 'Class'   WHEN 106   THEN 'Class'   WHEN 107   THEN 'Class'    ELSE 'N/A' END AS OBJECTID6,OBJECTVALUE6,   CASE OBJECTID7 WHEN 1 THEN 'Record' WHEN 2 THEN 'Field' WHEN 3 THEN 'Menu' WHEN 4 THEN 'Bar Name' WHEN 5 THEN 'Item Name' WHEN 9 THEN 'Page' WHEN 10 THEN 'Component' WHEN 12 THEN 'Event' WHEN 20 THEN 'DB Type' WHEN 21 THEN 'Effective Date' WHEN 39 THEN 'Market' WHEN 60 THEN 'Message' WHEN 66 THEN 'App Eng' WHEN 74 THEN 'Comp Int - CI' WHEN 77 THEN 'Section' WHEN 78 THEN 'Step' WHEN 87 THEN 'Subscription' WHEN 104 THEN 'App Package' WHEN 105 THEN 'Class' WHEN 106 THEN 'Class' WHEN 107 THEN 'Class'    ELSE 'N/A' END AS OBJECTID7,OBJECTVALUE7,PCTEXT   FROM PSPCMTXT WHERE PCTEXT LIKE '%Mention search value here%';   
 
List of OBJECTID1 field values:
 
ObjectID
Object Type
1
Record
3
Menu
9
Page
10
Component
60
Message
66
App Eng
74
Comp Int - CI
104
App Package
  
 
Please have a look and add this sql to our Retrofit approach document.
 
Select PNLNAME, FIELDNUM, RECNAME, FIELDNAME,CASE FIELDTYPE
        WHEN 0 THEN 'Static Text'
        WHEN 1 THEN 'Frame'
        WHEN 2 THEN 'Group Box'
        WHEN 3 THEN 'Statis Image'
        WHEN 4 THEN 'Edit Box'
        WHEN 5 THEN 'Dropdown List'
        WHEN 6 THEN 'Long Edit Box'
        WHEN 7 THEN 'Check Box'
        WHEN 8 THEN 'Radio Button'
        WHEN 9 THEN 'Image'
        WHEN 10 THEN 'Scroll Bar'
        WHEN 11 THEN 'Subpage'
        WHEN 12 THEN 'Peoplecode Command - (Button/Hyperlink Destination)'
        WHEN 13 THEN 'Scroll Action - (Button/Hyperlink Destination)'
        WHEN 14 THEN 'Toolbar Action - (Button/Hyperlink Destination)'
        WHEN 15 THEN 'External Link - (Button/Hyperlink Destination)'
        WHEN 16 THEN 'Internal Link - (Button/Hyperlink Destination)'
        WHEN 17 THEN 'Process - (Button/Hyperlink Destination)'
        WHEN 18 THEN 'Secondary Page'
        WHEN 19 THEN 'Grid'
        WHEN 20 THEN 'Tree'
        WHEN 21 THEN 'Secondary Page - (Button/Hyperlink Destination)'
        WHEN 23 THEN 'Horizontal Rule'
        WHEN 24 THEN 'Tab Separator'
        WHEN 25 THEN 'Html Area'
        WHEN 26 THEN 'Prompt Action - (Button/Hyperlink Destination)'
        WHEN 27 THEN 'Scroll Area'
        WHEN 29 THEN 'Page Anchor'
        WHEN 30 THEN 'Chart'
        WHEN 31 THEN 'Push Button/Link'
        WHEN 32 THEN 'Analytic Grid'
        ELSE TO_CHAR(FIELDTYPE)
    END CASE
from sysadm.PSPNLFIELD where pnlname = '';
 
Retrofit - Private Queries using below sql updates:
 
UPDATE SYSADM.PSQRYBIND SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYCRITERIA SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYDEFN SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYDEL SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYEXPR SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYFIELD SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYRECORD SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYSELECT SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYSTATS SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';
UPDATE SYSADM.PSQRYTRANS SET OPRID = ' ' WHERE OPRID = '' AND QRYNAME = '';

 

Saturday, December 24, 2011

Web Services and PeopleTools
















I rt i t r r


















Web Services And PeopleTools
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.




Agenda







• Introduction To PeopleSoft Application Integration

• Consuming A Web Service

• The Web Service Wizard

• Demo: calling a Web Service and processing the results

• Exposing A Web Service

• Components

• Component Interfaces

• Demo

• Preparing Services

• Publishing WSDL

• Adding fields and re-publishing




Agenda







• Introduction To PeopleSoft Application Integration

• Consuming A Web Service

• The Web Service Wizard

• Demo: calling a Web Service and processing the results

• Exposing A Web Service

• Components

• Component Interfaces

• Demo

• Preparing Services

• Publishing WSDL

• Adding fields and re-publishing




PeopleSoft Application Integration
What’s The Goal?




• Our goal with PeopleSoft Application Integration is to:

• Enable application developers and customers to natively create and consume standard web services so that PeopleSoft applications can integrate into SOA environments
• Improve interoperability and automation by leveraging Web Service standards and a common interface
• Provide the option of interoperating with robust, optimized business integration services through Oracle Business Integration Technology (BPEL/ESB)




PeopleSoft Integration
How Do We Achieve This Goal?




• Integration technology built into the PeopleSoft Internet
Architecture – the PeopleSoft Integration Broker

• Embedded in tool set and delivered with all PeopleSoft
Enterprise applications

• Providing support for:

• Web Services

• Inbound/outbound synchronous/asynchronous XML messaging, including SOAP support
• COM, C, C++, Java, XML access to PeopleSoft application logic via API
• Flat File processing, inbound and outbound




What is an Integration Broker?










• Messaging

• Transformation

• Routing

• Connectors

• Development

• Monitoring




Services
Focus on Added Web Services Support in PeopleTools 8.48




Service Operations
Focus on Added Web Services Support in PeopleTools 8.48




Wizards
Focus on Added Web Services Support in PeopleTools 8.48




Utilities
Focus on Added Web Services Support in PeopleTools 8.48









Monitor
Focus on Added Web Services Support in PeopleTools 8.48









Agenda







• Introduction To PeopleSoft Application Integration

• Consuming A Web Service

• The Web Service Wizard

• Demo: calling a Web Service and processing the results

• Exposing A Web Service

• Components

• Component Interfaces

• Demo

• Preparing Services

• Publishing WSDL

• Calling Service




Demonstration
Consume and Call a Web Service




• Illustrate Web Service call using public Web Service:

• Demonstrate calling a web service

• Review Contact Component

• Review code used to invoke the Web Service

• Review code used to process the results




Web Services Home Page




• Web Services options accessed from Web Services Home Page




Consume Web Service Wizard









• Wizard imports Web Service definitions from a variety of sources




Consume Web Service Wizard



















• Wizard inspects the WSDL and determines the service operations that it finds – only one in this case




Consume Web Service Wizard





































• l fr fil




Consume Web Service Wizard


















• Additional parameters automatically derived and set




Consume Web Service Wizard











• Request/Response messages created and named automatically
• Message names can be over-ridden if required for ease-of-use




Consume Web Service Wizard











• Message names can be over-ridden if required for ease-of-use




Consume Web Service Wizard




















• Service name and default node automatically added




Consume Web Service Wizard













• Confirmation of created Web Services objects
• Complete view of objects available via View Consumed Service




View Consumed Service







• View of complete Service including all associated objects














Consume Web Service
Demonstration




Calling A Web Service







• Web Service invoked programmatically by PeopleCode

• For a synchronous message this would typically be code on a FieldChange or PageSave event




Calling A Web Service




• Contact Record has FieldChange PeopleCode for FieldChange




Calling A Web Service































1. Construct Request string

2. Make Synchronous Request Message call and receive results in the Response Message
3. Unravel Response Message and display appropriate fields














Call Web Service
Demonstration




Call Web Service
Example




• User updates the value of the data in the Zip Code field
• Field Change PeopleCode triggers to call the Web Service to return the Weather information for that Zip code




Call Web Service
Example




• Web Service returns
Weather including:

• A graphic showing the weather
• High and low forecast temperatures
• PeopleCode:

• Extracts info from the Web Service response message
• Formats and displays it on the page




Agenda







• Introduction To PeopleSoft Application Integration

• Consuming A Web Service

• The Web Service Wizard

• Demo: calling a Web Service and processing the results

• Exposing A Web Service

• Components

• Component Interfaces

• Demo

• Preparing Services

• Publishing WSDL

• Calling Service




Demonstration
Publish And Process a Web Service




• Review the PeopleTools “object hierarchy”

• Review the Vendor Component

• Expose the Vendor Component as a Web Service

• Call the Web Service using the SoapUI utility




PeopleTools Building Blocks




• Create fields
• Create records from fields
• Create pages from records
• Create components from pages
• Define Menu navigation to component
• Set Security for component
• Deploy via browser




Security (Controls Access)

Menu (Controls Navigation)

Component (Business Transaction Object)


Page (Defines UI)

Record



Record

Page (Defines UI)

Record


Field


Field Field


Field


Field Field


Field


Field Field




PeopleTools Building Blocks




SOAP/ Web Services

PeopleSoft
Batch App


Java C/C++ COM









Component Interface API






Component Interface



Security (Controls Access)

Menu (Controls Navigation)

Component (Business Transaction Object)





File

Page (Defines UI) Record



Record

Page (Defines UI) Record

Layout

Field

Field Field

Field

Field Field

Field

Field Field




Demonstration
Publish and process a Web Service




• Review the PeopleTools “object hierarchy”

• Review the Vendor Component

• Expose the Vendor Component as a Web Service

• Call the Web Service using the SoapUI utility




Review the Vendor Component




• Vendor Component in browser




Review the Vendor Component








• Vendor Component in browser




Review the Vendor Component

























• Vendor Component Definition




Review the Vendor Component




• Vendor Component Structure




Vendor Component Interface




• This is the basis for the published Web Service
• Fields become Properties
• Default Methods are provided; others can be added with PeopleCode




Enable Required Service Operations













• Select the Component Interface to be exposed as a Web Service




Enable Required Service Operations




• Review the CI Status to determine available CI Methods
• Selected CI Methods will become Service Operations




Enable Required Service Operations






• Defaults are created
• Aliases and message versions may be specified if required




Enable Required Service Operations







• Web Service and Service Operations now created
• The Web Service can now be published and WSDL generated




“Provide Web Service” Wizard










• “Provide Web Service Wizard” steps through process
• Step 1: Select Service to be provided (defined in previous step)




“Provide Web Service” Wizard












• “Provide Web Service Wizard” steps through process
• Step 2: Select required Service Operations




“Provide Web Service” Wizard














• “Provide Web Service Wizard” steps through process
• Step 3: View Generated WSDL for Service




“Provide Web Service” Wizard


















• “Provide Web Service Wizard” steps through process
• Step 4: Publish WSDL to UDDI Server if required




“Provide Web Service” Wizard







• “Provide Web Service Wizard” steps through process
• Finish: Review WSDL Generation Log: note the WSDL URL




Test The Web Service



• Test the Web Service with standard test tools e.g. SOAPUI
• Add Web Service definition to testing tool using .WSDL




Test The Web Service



• Test the Web Service with standard test tools e.g. SOAPUI
• Web Service Operation definitions retrieved and created




Test The Web Service



• Test the Web Service with standard test tools e.g. SOAPUI
• Example of Find Service Operation (Vendors starting with “C”)




Test The Web Service



• Test the Web Service with standard test tools e.g. SOAPUI
• Example of Get Service Operation (for a Vendor returned by Find)


Saturday, December 10, 2011

Dynamic View

PAGE Design




Create the work record : NM_STATE_WRK
Add two field COUNTRY, STATE




Create the Dynamic view : NM_STATE_DVW
Add two field STATE , Desc



Create the Component : ZM_STATE_COMP and add the page ZM_STATE_PG

On Component Record Field : COUNTRY write the following piece of CODE to populate STATE field value dynamically based on COUNTRY field selected.





SQLText : Is the property of Dynamic VW which assing to field value of record as show below....

NM_STATE_WRK.STATE.SqlText = &SQLString

Wednesday, August 10, 2011

Change Assistance

Getting ready:

a. Install Change Assistant

b. Download items from MyOracle Support's Tools Only Upgrade homepage
Tools Only Upgrade template
and
Html documentation

Configuring Change Assistant for the Tools Only Upgrade:

a. Open Change Assistant

b. Tools / options / set Mode to Perform PeopleTools Only Upgrade; click OK.

c. File / import template.

d. Create the environment: File / new environment
Unicode: check checkbox if Unicode
Products: for Tools Only Upgrade, select PeopleTools.
Language: select languages installed to the environment being upgraded.
Database type: use pull down to select
Sql query tool: enter entire directory name
New release Ps_Home. Click Next.

e. Target database information:
Database name
Userid / userid's password
Accessid / accessid's password
If ungreyed, enter database server name and ownerid

f. Test connection
(Optional, but a good idea)

g. Save environment.

h. Create Upgrade Job:
File / New job / Use template
Select template previously imported
Select environment previously configured
Type of Upgrade: initial

i. Attach html documentation to the Upgrade job:
Edit / highlight the job name
Set documentation directory
Select html previously downloaded
File / save Job.