Diferencia entre revisiones de «TprxMENUS CATALOG Component»

De Pragma Wiki
Ir a la navegación Ir a la búsqueda
Línea 10: Línea 10:


=SQL para armar el menú en el árbol=
=SQL para armar el menú en el árbol=
Este SQL arma la estructura del menú en el árbol.
<pre>
<pre>
SELECT A.* FROM
SELECT A.* FROM

Revisión del 19:47 4 jun 2025

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

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