Se Crea un SQL que permite generar la Ruta de de acceso en el menú de PeopleSoft considerando de los siguientes Objetos como filtros:
- Referencia de contenido
- Página
- Componente.
El query, inicialmente se ha realizado para BD ORACLE, pero se pretende diseñarlo para otras Base de Datos, utilizando la misma lógica.
-- Busca Ruta de la Página dentro del menu PIA mediante filtros de :
--Referencia de Contenido, Páginas y Componente.
-- BD: Oracle
WITH PORTAL_REGISTRY AS
(SELECT RTRIM(REVERSE(SYS_CONNECT_BY_PATH(REVERSE(CASE B.PORTAL_LABEL WHEN 'Raíz' THEN 'Menú Principal' ELSE B.PORTAL_LABEL END), ' >> ')), ' >> ') RUTA_PIA,
LEVEL NIVEL
FROM PSPRSMDEFN A, PSPRSMDEFNLANG B
WHERE A.PORTAL_NAME = B.PORTAL_NAME
AND A.PORTAL_REFTYPE= B.PORTAL_REFTYPE
AND A.PORTAL_OBJNAME = B.PORTAL_OBJNAME
AND B.LANGUAGE_CD = 'ESP' -- Idioma
AND A.PORTAL_NAME = 'EMPLOYEE' -- Portal
START WITH A.PORTAL_OBJNAME =
-- Filtros Búsqueda por : Referencia de Contenido
-- Si requieres hacer una busqueda por Referencia de Contenido solo Agregar el Nombre ' Rerf _Cont' y comentar el Sub_quey.
-- Filtros Búsqueda por : Página o Componente
--Si quieres buscar por página o componente utilizar sub_query.
(SELECT DISTINCT(AA.PORTAL_OBJNAME)
FROM PSPRSMDEFN AA, PSPNLGROUP BB
WHERE AA.PORTAL_URI_SEG2 = BB.PNLGRPNAME
AND AA.PORTAL_URI_SEG3 = BB.MARKET
AND AA.PORTAL_NAME = A.PORTAL_NAME
--/ * Filtros Búsqueda - Inicio*/
-- AND BB.PNLGRPNAME = 'USERMAINT' -- Componente
AND BB.PNLNAME = 'INV_RECV_HDR' -- Página
--/* Filtros Búsqueda Fin */
AND BB. MARKET = 'GBL') -- Mercado
CONNECT BY PRIOR A.PORTAL_PRNTOBJNAME = A.PORTAL_OBJNAME)
SELECT DISTINCT(RUTA_PIA)
FROM PORTAL_REGISTRY
WHERE NIVEL =
(SELECT MAX(NIVEL)
FROM PORTAL_REGISTRY);
Cualquier Observación o comentario que ayude a mejorarlo se agreadese..
lunes, 26 de septiembre de 2011
jueves, 15 de septiembre de 2011
Utilizar Sub-query como campo en PsQuery
Creando una query se me presento el siguiente problema, utilizar una subquery como campo en una PsQuery... pero al querer agregar la subquery en la consulta atravez del Gestor de Consultas por PIA, me generaba el siguiente Error. "No se pueden utilizar cláusulas FROM en las expresiones. (50,536)"
Para solucionar el problema se resolvio de la siguiente manera:
1.- Se crea, atravez del designer una definicion SQL.
2.- Agregue una variables de %P, la cual me permita pasar el alias de la tabla principal de la Query para realizar el join.
5.- Indicamos que la expresion se Utilizada como Campo Ver Imagen.
6.- LISTO, si visualizamos el SQL generado nos daremos cuenta que se agrego a la consulta la subquery creada...
7.- Resultado Final ...
Espero les sea de ayuda ...
Para solucionar el problema se resolvio de la siguiente manera:
1.- Se crea, atravez del designer una definicion SQL.
2.- Agregue una variables de %P, la cual me permita pasar el alias de la tabla principal de la Query para realizar el join.
3.- Le damos un nombre y "Guardar"
4.- En la expresion se invoca la definicion SQL creada anteriormente atraves del Comando %SQL y se agrega el valor de la variables a sustituir. "Acepta"5.- Indicamos que la expresion se Utilizada como Campo Ver Imagen.
6.- LISTO, si visualizamos el SQL generado nos daremos cuenta que se agrego a la consulta la subquery creada...
7.- Resultado Final ...
Espero les sea de ayuda ...
miércoles, 14 de septiembre de 2011
Bienvenida..
Bienvenido a Peoplesoft Chile, un sitio dedicado compartir las distintas experiencias sobre Peoplesoft.
Donde podremos compartir información que ayuden hacer las tarea más faciles..
Suerte... !!
Suscribirse a:
Entradas (Atom)