TprxMENUS CATALOG Component

De Pragma Wiki
Ir a la navegación Ir a la búsqueda

Introducción

El objeto TprxMENUS_CATALOG_Component (Componente para menús de catálogos del explorador.) implementa funcionalidad para asistir en el armado de los menús de catálogos del explorador (ver TTprxMENUS Frame). Se documentan las sentencias SQL usadas para armar el menú, y su contenido.

Identidad

  • Ancestro: TprxMENUS_Component
  • Carpeta: C:\DevelopPrx\frames
  • Archivo: prxMENUS_CATALOG_Component.pas

SQL para armar el menú en el árbol

Este SQL arma la estructura del menú en el árbol.

SELECT A.* FROM
(
SELECT
Origen = 'CATALOG'
, MenuOrden = 0
, Menu = pCATALOGO.FCODIGO
, Leyenda = pCATALOGO.FCODIGO
, Imagen = 'bricks'
, Grupo = pCATALOGO.FGRUPO
, GrupoOrden = 0
, Objeto = NULL
, TS = pCATALOGO.FTS
, Tipo = 'CATALOGO'
, Orden = 0
, Nivel = 0
, Permiso = CAST(1 AS BIT)
FROM pCATALOGO

UNION SELECT
Origen = 'CATALOG'
, MenuOrden = 0
, Menu = pCATALOGO.FCODIGO
, Leyenda = pCATALOGO_MENU.FCODIGO
, Imagen = ISNULL(pCATALOGO_MENU.FIMAGEN, 'folder')
, Grupo = pCATALOGO.FGRUPO
, GrupoOrden = 0
, Objeto = NULL
, TS = pCATALOGO_MENU.FCODIGOTS
, Tipo = 'NODO'
, Orden = pCATALOGO_MENU.FORDEN
, Nivel = pCATALOGO_MENU.FNIVEL
, Permiso = CAST(1 AS BIT)
FROM
pCATALOGO
, pCATALOGO_MENU
WHERE
pCATALOGO_MENU.FCATALOGO = pCATALOGO.FCODIGO
) A

ORDER BY 2, 6, 7, 3, 11

SQL para armar el contenido de la grilla

Este SQL carga el contenido de la opción de menú seleccionada a la grilla.

DECLARE @FACTIVEMENU VARCHAR(64) = 'Pragma_ERP_Contable'
DECLARE @FACTIVEPATH VARCHAR(64) = 'Cuentas contables'

SELECT
Img = NULL
, Menu = pOBJETOS.FCATALOGO
, Descripcion = pOBJETOS.FDESCRIPCION
, Objeto = pOBJETOS.FCODIGO
, Clave = pOBJETOS.FCATALOGOKEY
, Orden = 0
, Permiso = CAST(1 AS BIT)
, Imagen = pOBJETO_TIPO.FIMAGEN
, Editable = pOBJETOS.FEDITABLE
, Tipo = pOBJETOS.FTIPO
, xxx = char(39) + '%' + @FACTIVEPATH + '%' + char(39)
FROM pOBJETOS, pOBJETO_TIPO WHERE
pOBJETOS.FCATALOGO = @FACTIVEMENU
AND pOBJETOS.FCATALOGOKEY LIKE '%' + @FACTIVEPATH + '%'
AND pOBJETOS.FTIPO IN
(
'prxclases'
, 'prxconsultas'
, 'prxenumeraciones'
, 'prxframes'
, 'prxfunciones'
, 'prxprocedimientos'
, 'prxscripts'
, 'prxvistas'
)
AND pOBJETO_TIPO.FCODIGO = pOBJETOS.FTIPO
ORDER BY pOBJETOS.FCODIGO