2015年4月12日星期日

How to find the page path by the component name?

Create a view by the following SQL to get the Component Path in PeopleSoft, the view includes fields pnlgrpname, portal_label, navigation.


SELECT P.PNLGRPNAME "COMPONENT",
       SUBSTR(DECODE(LVL0.PORTAL_REFTYPE,
                     'C',
                     LVL0.PORTAL_LABEL,
                     DECODE(LVL1.PORTAL_REFTYPE,
                            'C',
                            LVL1.PORTAL_LABEL,
                            DECODE(LVL2.PORTAL_REFTYPE,
                                   'C',
                                   LVL2.PORTAL_LABEL,
                                   DECODE(LVL3.PORTAL_REFTYPE,
                                          'C',
                                          LVL3.PORTAL_LABEL,
                                          LVL4.PORTAL_LABEL)))),
              1,
              30) PORTAL_LABEL,
       LVL0.PORTAL_LABEL ||
       DECODE(NVL(LVL1.PORTAL_LABEL, ' '), ' ', '', ' > ') ||
       LVL1.PORTAL_LABEL ||
       DECODE(NVL(LVL2.PORTAL_LABEL, ' '), ' ', '', ' > ') ||
       LVL2.PORTAL_LABEL ||
       DECODE(NVL(LVL3.PORTAL_LABEL, ' '), ' ', '', ' > ') ||
       LVL3.PORTAL_LABEL ||
       DECODE(NVL(LVL4.PORTAL_LABEL, ' '), ' ', '', ' > ') ||
       LVL4.PORTAL_LABEL "NAVIGATION"
  FROM PSPRSMDEFN   LVL0,
       PSPRSMDEFN   LVL1,
       PSPRSMDEFN   LVL2,
       PSPRSMDEFN   LVL3,
       PSPRSMDEFN   LVL4,
       PSPNLGRPDEFN P
 WHERE LVL0.PORTAL_NAME = 'EMPLOYEE'
   AND LVL0.PORTAL_PRNTOBJNAME = 'PORTAL_ROOT_OBJECT'
   AND LVL1.PORTAL_NAME = LVL0.PORTAL_NAME    /* E.G.'EMPLOYEE' */
   AND LVL2.PORTAL_NAME(+) = LVL1.PORTAL_NAME /* E.G.'EMPLOYEE' */
   AND LVL3.PORTAL_NAME(+) = LVL2.PORTAL_NAME /* E.G.'EMPLOYEE' */
   AND LVL4.PORTAL_NAME(+) = LVL3.PORTAL_NAME /* E.G.'EMPLOYEE' */
   AND LVL1.PORTAL_PRNTOBJNAME = LVL0.PORTAL_OBJNAME
   AND LVL2.PORTAL_PRNTOBJNAME(+) = LVL1.PORTAL_OBJNAME
   AND LVL3.PORTAL_PRNTOBJNAME(+) = LVL2.PORTAL_OBJNAME
   AND LVL4.PORTAL_PRNTOBJNAME(+) = LVL3.PORTAL_OBJNAME
   AND (LVL0.PORTAL_SEQ_NUM < 1000    /* 1000 EMPLOYEE SELF-SERVICE */
       OR LVL0.PORTAL_SEQ_NUM = 9110  /* 9110 SET UP FINANCIALS/SUPPLY CHAIN */
       OR LVL0.PORTAL_SEQ_NUM = 9955) /* 9955 PEOPLETOOLS */ /* USER FOLDER+ "SET UP FINANCIALS/SUPPLY CHAIN" */
   AND P.PNLGRPNAME IN (LVL1.PORTAL_URI_SEG2,
                        LVL2.PORTAL_URI_SEG2,
                        LVL3.PORTAL_URI_SEG2,
                        LVL4.PORTAL_URI_SEG2)
 ORDER BY 1

没有评论:

发表评论