Para acceder a la ventana de modificación de Consultas vaya a
Menu Seleccione de Áreas
Haga clic en "Configuración de Servidor"
En el menú Formulario haga clic en "Consultas Personalizadas"
Para poder modificar este formulario debe tener el permiso de "ERP.System.Manager"
●Query ID: Es el número de consulta único en el sistema, el cual será tomado como identificador para campos personalizados o reportes personalizados.
●Tipo de Catálogo: Es el número que se relaciona con el número de catálogo de la tabla Catalogos1.
Si se desea ejecutar la consulta especificada en el Query (incluso dentro de catálogos dinámicos) se debe dejar en 0 y en BindingFilter poner "Tipo=0", para esta opción se debe especificar las mismas columnas que Catálogos1
●Query Text: es la consulta en formato MS-SQL
●Data Table Name: El nombre que va a recibir la tabla
En el caso de Reportes Personalizados el Table Name debera ser siempre "Reporteador"
●Friendly Name: Nombre de la Ventana en el caso de ser catálogo o el nombre del Reporte en caso de Reportes Personalizados
●Binding Filter: En el caso de se requiera filtrar adicionalmente un Catálogo se debe poner el filtro en formato SQL
Para los parámetros siempre deben empezar en @arg1
Ejemplo:
SELECT * FROM Catalogos1 WHERE IDCatalogo1=@arg1
o
SELECT IDCatalogo1, NombreCat FROM Catalogos1 WHERE IDCatalogo1=@arg1
Para menú personalizado con QueryID los parámetros de la consulta personalizada deben ser establecidos conforme a lo siguiente:
@arg1 = fecha1
@arg2 = fecha2
@arg3 = IDProducto
@arg4 = IDCatalogos1
@arg5 = IDEmpresa
@arg6 = InputBox
Ejemplo:
WHERE (Documentos.Fecha BETWEEN @arg1 AND @arg2)
Se debe utilizar el siguiente Query Text:
SELECT * FROM Catalogos1 WHERE IDCatalogo1=@arg1
Siempre con la clausula WHERE tal y como está ya que al llamar al documento este utilizará la consulta arriba mencionada
Formato de Subconsulta
<Columna Seleccionada>#<ID Query>#<ID Columna Base>#<Ventana> ...
●Columna Seleccionada: Es la columna que se utiliza para que el sistema reconozca en donde el doble clic abrirá la Subconsulta
●ID Query: es el ID de la subconsulta configurada y la cual se mostrará al hacer doble clic
●ID Columna Base: es la referencia que se envia a la subconsulta, se puede utilizar dos o mas columnas separada por "/"
●Ventana: es el formulario a visualizar:
GRID
POLIZA
DOCUMENTO
Los Parametros son heredados desde la consulta base, siendo los parametros de la subconsulta subsecuentes a los heredados ejemplo:
●Consulta Principal: @Desde, @Hasta
●Subconsulta: @IDPoliza
●Total de parametros para la subconsulta (3): @Desde, @Hasta, @IDPoliza
Ejemplo:
Total#90601#IDProducto/NumSuc#GRID
El sistema mostrará un Grid cuando se haga doble clic en la columna Total y ejecutará la consulta 90601 con los parámetros IDProducto y NumSuc
Los parámetros IDProducto quedará como @arg7 y NumSuc como @arg8
Si no se desea usar columna por columna "Columna1/Columna2/Columna3"
Se puede optar por generar una columna con el detalle del registro separando los campos con "#" ejemplo:
Productos.Presentacion + '#' + CAST(Clientes.IDCliente AS VARCHAR) + '#' + CONVERT(VARCHAR(50), Documentos.Fecha , 103) as InfoSubQuery
En el subquery se debe utilizar la siguiente sintaxis para obtener los valores y ejecutar la consulta:
DECLARE @Presentacion varchar(50)
DECLARE @IDCliente INT
DECLARE @Fecha DATE
set @arg7 = Replace(@arg7, '#', '.');
SET @Presentacion = ParseName(@arg7, 3)
SET @IDCliente = ParseName(@arg7, 2)
SET @Fecha = ParseName(@arg7, 1)