Pages

Thursday, May 27, 2010

Find Portal Menu Navigation Path

PORTAL_OBJNAME is the key -
  • If a few page heading text are known, whether at Folder or Content level, use this sql to get PORTAL_OBJNAME:

Select * From psprsmdefn Where portal_name ='???????' And upper(DESCR254) Like upper('%fuzzy header%') -- find correct PORTAL_OBJNAME

Use this sql with the PORTAL_OBJNAME:

With psnav As
(Select RTRIM(Reverse(sys_connect_by_path(Reverse(portal_label), ' >----- ')), ' >----- ') navpath, Level lvl
From psprsmdefn A
Where portal_name = '????????'
START With PORTAL_OBJNAME = 'MY_PORTAL_OBJNAME'
CONNECT By PORTAL_OBJNAME = Prior PORTAL_PRNTOBJNAME)
Select navpath From psnav Where lvl=(Select max(lvl) From psnav)

This traverses from the Portal root down to the queried object. To go from queried object down:

Select LTRIM((sys_connect_by_path(portal_label, ' =====> ')),'=====> ' ) path, Level lvl
From psprsmdefn A
Where portal_name = '???????'
START With PORTAL_OBJNAME = 'EPGL_IMPORT_JOURNALS'
CONNECT By PORTAL_PRNTOBJNAME = Prior PORTAL_OBJNAME

  • If RECNAME is known:
Select * From ps_XREF_PANEL_VW Where recname='MY_RECNAME' -- get PNLNAME

Select * From ps_PNLGROUP_VW Where PNLNAME='MY_PNLNAME' -- get PNLGRPNAME

Select * From psprsmdefn Where PORTAL_NAME = '???????' And PORTAL_URI_SEG2 = 'MY_PNLGRPNAME' -- find PORTAL_OBJNAME

Use above sqls to find navigation up and down from the PORTAL_OBJNAME.
  • If a few field label texts are known:
Select * From pspnlfield Where upper(lbltext) Like upper('%??????%') --- find page name

use above sqls to find navigation up and down from the PORTAL_OBJNAME.