Histórico da Página
Puntos A continuación se presentan los puntos de entrada disponibles para todos los países :
...
Tiene el objetivo de que el usuario pueda agregar más filtros a la consulta (Query) de selección de recibos al momento de dar click en "Aplicar filtros" en el programa TOTVS Recibos.
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. |
Retorno: Expresión SQL.
Nombre | Tipo | Descripción |
---|---|---|
queryNew | C | Retorna la expresión SQL de la consulta a realizar de acuerdo al tipo de Query; "complete" o "where". |
Enlace de documentación y ejemplo: DT PE F998BRFLT Agregar más filtros al momento de buscar recibos TOTVS Recibo MEX
Ejemplo:
#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 := ""
...
Tiene el objetivo de que el usuario pueda personalizar validaciones para ejecutar la opción de "Anular/Borrar" un recibo de cobro.
Parámetros recibidos:
Nombre | Tipo | Descripción |
---|---|---|
PARAMIXB[1] | C | Serie del recibo |
PARAMIXB[2] | C | Número del recibo |
Retorno: Flag que indica si procede o no la anulación.
Nombre | Tipo | Descripción |
---|---|---|
aRet[1] | L | Retorna .T. si procede el Anulado/Borrado o .F. si no se permite. |
aRet[2] | C | Mensaje de la causa de rechazo de anulación . |
Enlace de documentación y ejemplo: DT PE F998BRANU Pre-validaciones para la anulación de un recibo en TOTVS Recibo MEX
Ejemplo:
#Include 'Protheus.ch'
User Function F998BRANU
Local cSerie := Paramixb[1]
Local cRecibo := Paramixb[2]
Local cQueryWhere := ""
Local cQueryFields := ""
Local cAlias := GetNextAlias()
Local aRet := {.T.,""}
...
cQuery := ChangeQuery(cQuery)
MPSysOpenQuery(cQuery, cAlias)
WHILE (cAlias)->(!EOF())
IF (cAlias)->FJT_DTDIGI == DTOS(ddatabase)
aRet := {.F.,"No se puede eliminar un recibo que haya sido generado el dia de hoy"}
EndIf
(cAlias)->(DbSkip())
END
Return aRet
...
Tiene el objetivo de que el usuario pueda indicar campos/columnas que se desean incluir en el GRID de visualización de los recibos desde la opción de "Buscar recibos".
Parámetros recibidos:
Nombre | Tipo | Descripción |
---|---|---|
PARAMIXB[1] | C | Serie del recibo |
PARAMIXB[2] | C | Número del recibo |
PARAMIXB[3] | C | Cliente |
Retorno: Arreglo de configuraciones para agregar a la lista de campos que se pueden visualizar en la lista de recibos.
Nombre | Tipo | Descripción |
---|---|---|
aRet[1] | C | Título de la columna que se desea agregar en la lista de recibos. |
aRet[2] | C | Valor del campo, de cualquier tabla en la DB vinculada a los recibos de cobro. |
aRet[3] | L | Mostrar marca de seleccionado en la lista de campos a visualizar: .T. = Sí, .F. = No. |
aRet[4] | C | Nombre para asignar al campo a visualizar, debe ser con estilo de escritura "camelCase". Comienza con minúscula, puede tener mayúsculas intermedias, no permite espacios ni signos especiales. |
Link documentación y ejemplo: DT PE F998BRMCOL Incluir columnas a visualizar en el GRID de buscar recibos
Ejemplo:
Ejemplo:
#Include 'Protheus.ch'
...
//Se forman las condicionales de la consulta
cQueryWhere := " FJT_FILIAL = '"+xFilial("FJT")+"' AND FJT_SERIE = '"+cSerie+"' AND FJT_RECIBO = '"+cReceipt+"' AND FJT_CLIENT = '"+cClient+"' "
//Se estructura la parte de los campos a obtener
cQueryFields := " SELECT "
For nCont := 1 to LEN(aCampos)
cQueryFields += " "+aCampos[nCont][1]+" "
If nCont != LEN(aCampos)
cQueryFields += ","
EndIf
Next nCont
...
aAux := {}
//Se asignan los campos deseados al arreglo a retornar
WHILE (cAlias)->(!EOF())
AADD( aAux,{aCampos[1][2],(cAlias)->FJT_VERSAO,aCampos[1][3],aCampos[1][4]})
AADD( aAux,{aCampos[2][2],(cAlias)->FJT_DTDIGI,aCampos[2][3],aCampos[2][4]})
(cAlias)->(DbSkip())
END
...
dentro de la rutina FINA998 así como los equivalentes que se desarrollaron para realizar procesos ya existentes en otras rutinas.