01. DATOS GENERALES
Producto | |
---|
Línea de producto: | |
---|
Segmento: | |
---|
Módulo: | SIGAFIN - Financiero |
---|
Función: | Rutina | Nombre Técnico | Fecha |
---|
RECEIPT.DATA.TLPP | Data del servicio de recibos | 28/01/2022 |
|
---|
País: | Todos |
---|
Ticket: | N/A |
---|
Requisito/Story/Issue (informe el requisito vinculado): | DMINA-14278 |
---|
02. SITUACIÓN/REQUISITO
Se necesita crear el punto de entrada F998BRFLT en el cual se pueda agregar más filtros al Query de selección de recibos al momento de dar clic en aplicar filtros al buscar recibo.
03. SOLUCIÓN
Se crea el punto de entrada F998BRFLT en la rutina RECEIPT.DATA.TLPP - Data del servicio de recibos, con el objetivo de que el usuario pueda agregar más filtros al Query de selección de recibos al momento de dar clic en aplicar filtros al buscar un recibo desde el programa de TOTVS Recibo.
Crear la función de usuario F998BRFLT para agregar filtro de campos para búsqueda de recibos.
- La función debe retornar la expresión SQL para la consulta correspondiente.
- Dentro del módulo Financiero ejecutar la rutina TOTVS Recibo (Actualizaciones | Cuentas por cobrar).
- Dentro del aplicativo de TOTVS Recibo, ir a Buscar recibo, llenar los campos de consulta de acuerdo a los recibos que se desea buscar y visualizar.
- Al dar clic en Aplicar se ejecutará el punto de entrada F998BRFLT.
- La función de usuario afectará la búsqueda de recibos, aplicando los filtros definidos por el usuario desde TOTVS Recibo más los filtros agregados desde el punto de entrada F998BRFLT. Esta función retornará la expresión SQL necesaria para realizar la consulta (Query) a la base de datos mostrando los recibos que cumplan todas las condiciones.
Descripción | Actualizaciones |
---|
Punto de entrada: | F998BRFLT |
Nombre del programa fuente: | RECEIPT.DATA.TLPP |
Parámetros recibidos: | Nombre | Tipo | Descripción |
---|
PARAMIXB[1] | C | Expresión SQL estándar para la consulta (SELECT) que contará los registros a seleccionar. | PARAMIXB[2] | C | Expresión SQL estándar con filtros por campo que se utilizada para filtrar (WHERE) los registros a seleccionar. | PARAMIXB[3] | C | Este punto de entrada se ejecuta en dos partes, este parámetro indica el tipo de consulta (expresión SQL para el Query a la base de datos) que se debe retornar: "complete" - El punto de entrada debe retornar una expresión de consulta (Query) completa, la cual se utiliza para determinar el total de registros que se visualizaran. "where" - El punto de entrada solo complementa la expresión de condiciones (WHERE) para la selección de registros a visualizar. | PARAMIXB[4] | O | Contiene el Objeto Json con las Respuestas del motor de búsqueda que se colocaron en buscar Recibo. |
|
Respuesta: | Nombre | Tipo | Descripción | Obligatorio |
---|
queryNew | C | Retorna la expresión SQL de la consulta a realizar de acuerdo al tipo de Query; "complete" o "where". | Si |
|
#Include 'Protheus.ch'
User Function F998BRFLT
Local querySelect := Paramixb[1]
Local queryWhere := Paramixb[2]
Local queryOption := Paramixb[3]
Local whereNew := " AND SEL.EL_RECIBO >= '0040' "
Local queryNew := ""
IF queryOption == 'complete'
queryNew := " SELECT " + querySelect + " AS totalreceipts FROM " + RetSqlName("SEL")
queryNew += +" SEL WHERE " + queryWhere + whereNew
ELSEIF queryOption == 'where'
queryNew := queryWhere + whereNew
ENDIF
RETURN queryNew
User Function F998BRFLT()
Local querySelect := Paramixb[1]
Local queryWhere := Paramixb[2]
Local queryOption := Paramixb[3]
Local jPergunte := Paramixb[4] // Objeto Json de Preguntas
Local whereNew := " "
Local queryNew := ""
IF jPergunte['form']['mv_par11'] != ""
whereNew :=" AND EL_NATUREZ = '"+jPergunte['form']['mv_par11']+"' "
EndIF
IF queryOption == 'complete'
queryNew := " SELECT " + querySelect + " AS totalreceipts FROM " + RetSqlName("SEL")
queryNew += +" SEL WHERE " + queryWhere + whereNew
ELSEIF queryOption == 'where'
queryNew := queryWhere + whereNew
ENDIF
RETURN queryNew
¡IMPORTANTE!
La presente solución aplica para versión 12.1.33 o superior, siempre y cuando se tengan las rutinas actualizadas a la fecha de la expedición del issue.
05. ASUNTOS RELACIONADOS