Friday, March 15, 2019

Find the Navigation of a Peoplesoft Component or a Process



Here's an SQL that will help you find the navigation path of a component. The parameter needed is the Component Name.

SELECT DISTINCT REVERSE(LTRIM(SYS_CONNECT_BY_PATH (REVERSE(PORTAL_LABEL), ' >- '), ' >- ')) AS NAVIGATION_PATH
FROM   PSPRSMDEFN P 
WHERE  PORTAL_OBJNAME = 'PORTAL_ROOT_OBJECT' 
START WITH PORTAL_URI_SEG2 = 'COMPONENT_NAME' 
CONNECT BY PRIOR PORTAL_PRNTOBJNAME = PORTAL_OBJNAME 
                 AND PORTAL_NAME = PRIOR PORTAL_NAME 
                                         AND PORTAL_REFTYPE = 'F'; 


And if you are looking for the run control page of a specific process (e.g. application engine, SQR, etc.), here's the SQL that you can use. This SQL can accept process name or component name.

SELECT E.PRCSTYPE, 
       E.PRCSNAME, 
       F.DESCR, 
       DECODE(H.PORTAL_LABEL, ' ', '', 
                              '', '', 
                              'Root', 'Root ', 
                              'Root > ' 
                              || H.PORTAL_LABEL) 
       || ' > ' 
       || G.PORTAL_LABEL 
       || ' > ' 
       || C.PORTAL_LABEL 
       || ' > ' 
       || B.PORTAL_LABEL 
       || ' > ' 
       || A.PORTAL_LABEL 
       || ' > ' 
       || D.PORTAL_LABEL, 
       D.DESCR254, 
       E.PNLGRPNAME, 
       D.PORTAL_NAME, 
       D.PORTAL_REFTYPE, 
       D.PORTAL_OBJNAME, 
       F.PRCSTYPE, 
       F.PRCSNAME 
FROM   PSPRSMDEFN D, 
       PS_PRCSDEFNPNL E, 
       PS_PRCSDEFN F, 
       PSPRSMDEFN A, 
       PSPRSMDEFN B, 
       PSPRSMDEFN C, 
       PSPRSMDEFN G, 
       PSPRSMDEFN H 
WHERE  E.PNLGRPNAME = D.PORTAL_URI_SEG2 
       AND E.PRCSTYPE = F.PRCSTYPE 
       AND E.PRCSNAME = F.PRCSNAME 
       AND D.PORTAL_NAME = 'EMPLOYEE' 
       AND D.PORTAL_REFTYPE = 'C' 
       AND E.PNLGRPNAME > ' ' 
       AND A.PORTAL_NAME = 'EMPLOYEE' 
       AND A.PORTAL_OBJNAME = D.PORTAL_PRNTOBJNAME 
       AND B.PORTAL_NAME = 'EMPLOYEE' 
       AND B.PORTAL_OBJNAME = A.PORTAL_PRNTOBJNAME 
       AND C.PORTAL_NAME (+) = 'EMPLOYEE' 
       AND C.PORTAL_OBJNAME(+) = B.PORTAL_PRNTOBJNAME 
       AND G.PORTAL_NAME(+) = 'EMPLOYEE' 
       AND G.PORTAL_OBJNAME(+) = C.PORTAL_PRNTOBJNAME 
       AND H.PORTAL_NAME(+) = 'EMPLOYEE' 
       AND H.PORTAL_OBJNAME(+) = G.PORTAL_PRNTOBJNAME 
       AND E.PRCSNAME = 'PROCESS_NAME' 
       --AND  E.pnlgrpname = 'MCM_CC_PAY_REG' 
ORDER  BY 1, 
          2, 
          4; 


No comments:

Post a Comment