01. DATOS GENERALES
Producto: | TOTVS Backoffice | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Línea de producto: | Línea Protheus | |||||||||
Segmento: | Backoffice | |||||||||
Módulo: | SIGAFIN - Financiero | |||||||||
Función: |
| |||||||||
País: | Todos (Mercado Internacional) | |||||||||
Ticket: | 18958300 | |||||||||
Requisito/Story/Issue (informe el requisito vinculado): | DMINA-21976 |
02. DESCRIPCIÓN
En el aplicativo de TOTVS Recibo, se encuentra la necesidad de habilitar un Punto de Entrada (PE) llamado "F998BRBOR". Este PE debe ejecutarse al momento de llevar a cabo la acción de borrar un recibo, con la capacidad de interrumpir el proceso y proporcionar un mensaje informativo al usuario, explicando la razón por la cual la eliminación del recibo fue cancelada.
03. INFORMACIÓN ADICIONAL
El fuente que se modificó es TOTVS Recibo (FINA998.PRW), donde se llevó a cabo la modificación. Se implementó una bifurcación en el código para verificar la existencia del Punto de Entrada "F998BRBOR". En caso de que este PE exista, este tiene la responsabilidad de llevar a cabo el tratamiento necesario para cancelar el borrado del recibo, siempre y cuando se cumplieran las condiciones determinadas.
- Crear la función de usuario "F998BRBOR" con las validaciones personalizadas tanto para aceptar, así como para rechazar el borrado del recibo.
- Debe retornar un arreglo con dos parámetros, en donde el primero es un valor lógico, .T. (Verdadero) o .F. (Falso), de aceptación o rechazo, y el segundo es un mensaje personalizado, según sea el caso. - 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.
- Se mostrará la lista de los recibos.
- Seleccionar el recibo deseado y al dar clic en el botón de Borrar (El recibo tiene que estar previamente anulado) recibo se ejecutará el punto de entrada "F998BRBOR".
- La función de usuario efectúa las validaciones personalizadas y retorna una respuesta que indica si procede o no el borrado.
- Se mostrará una ventana con el mensaje correspondiente y en caso de que proceda, el sistema continuará con el borrado del recibo.
Ejemplo punto de entrada F998BRBOR:
Descripción | Actualizaciones | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Punto de entrada: | F998BRBOR | ||||||||||||
Nombre del programa fuente: | FINA998.PRW | ||||||||||||
Parámetros recibidos: |
| ||||||||||||
Respuesta: |
|
Ejemplo:
#Include 'Protheus.ch' User Function F998BRBOR Local cSerie := Paramixb[1] Local cRecibo := Paramixb[2] Local cQueryWhere := "" Local cQueryFields := "" Local cAlias := GetNextAlias() Local aRet := {.T.,""} cQueryWhere := " FJT_FILIAL = '"+xFilial("FJT")+"' AND FJT_SERIE = '"+cSerie+"' AND FJT_RECIBO = '"+cRecibo+"' " cQueryFields := " FJT_SERIE,FJT_RECIBO,FJT_CLIENT,FJT_DTDIGI " cQuery := " SELECT "+cQueryFields+" FROM "+ RetSqlName("FJT") + " WHERE "+cQueryWhere cQuery := ChangeQuery(cQuery) MPSysOpenQuery(cQuery, cAlias) WHILE (cAlias)->(!EOF()) IF (cAlias)->FJT_DTDIGI == DTOS(ddatabase) aRet := {.F.,"No se puede BORRAR un recibo que haya sido generado el dia de hoy"} EndIf (cAlias)->(DbSkip()) END Return aRet
04. ASUNTOS RELACIONADOS