...
Se solicita ajustar los siguientes PE para su correcto funcionamiento en la versión de del Nuevo Recibo en MVC:
- FINCMTC.
- FINLRCHQ.
- F998NROK.
...
- Reglas de negocio para todos los países (F887FIN.PRW): Se realizaron ajustes para garantizar el correcto llamado y retorno del punto de entrada F998NROK. El parámetro enviado a este PE es un objeto que contiene toda la información del recibo. El retorno consiste en un valor booleano (true o false), acompañado de un mensaje descriptivo que indica, en caso de error, la causa y una posible solución.
- Cobros Diversos para ArgnetinaArgentina (FINA887ARG.PRW): Se agrega la lógica necesaria para mandar a llamar y ejecutar correctamente los PE FINCMTC y FINLRCHQ .
...
| Totvs custom tabs box |
|---|
| tabs | Pre-condiciones, Procedimiento |
|---|
| ids | paso1,paso2 |
|---|
|
| Totvs custom tabs box items |
|---|
| default | yes |
|---|
| referencia | paso1 |
|---|
| - Realizar un respaldo del repositorio (RPO).
- Realizar la aplicación del parche correspondiente al issue DMINA-26519.
- Validar que las rutinas actualizadas en el repositorio, coincidan con las descritas en el encabezado del presente Documento Técnico, así como las fechas.
- Compilar los siguientes PE para pruebas (No es una configuración estándar, son un ejemplo de los PE)
Punto de entrada FINCMTC: (Para más información dar clic aquí) | Bloco de código |
|---|
| firstline | 1 |
|---|
| title | FINCMTC |
|---|
| linenumbers | true |
|---|
| collapse | true |
|---|
| #Include 'Protheus.ch'
User Function FINCMTC()
Local cCmc7 := Paramixb[1]
Local nTamBco := 0 As Numeric
Local nTamAge := 0 As Numeric
Local nTamCta := 0 As Numeric
Local nTamChq := 0 As Numeric
Local nTamCPo := 0 As Numeric
Local aCmc7Tc := {} As Array
If nTamBco == 0
nTamBco := TamSX3("EF_BANCO")[1]
Endif
If nTamAge == 0
nTamAge := TamSX3("EF_AGENCIA")[1]
Endif
If nTamCta == 0
nTamCta := TamSX3("EF_CONTA")[1]
Endif
If nTamChq == 0
nTamChq := TamSX3("EF_NUM")[1]
Endif
If nTamCPo == 0
nTamCPo := TamSX3("EF_POSTAL")[1]
Endif
//Se agrega al arreglo a retornar una subcadena de la cadena original, configurando la posición inicial de cada campo y su longitud
//AADD(Array al que se le agregaran los valores, SUBSTR(cadena de la lectora de cheques, número editable que indica donde empieza la cadena y por último el tamaño del campo))
Aadd( aCmc7Tc, SubStr(cCmc7, 2, nTamBco)) //Banco
Aadd( aCmc7Tc, SubStr(cCmc7, 5, nTamAge)) //Agencia
Aadd( aCmc7Tc, SubStr(cCmc7, 10, nTamCPo)) //Codigo Postal
Aadd( aCmc7Tc, SubStr(cCmc7, 14, nTamChq)) //Cheque
Aadd( aCmc7Tc, SubStr(cCmc7, 20, nTamCta)) //Conta
Aadd( aCmc7Tc, SubStr(cCmc7, 30, 1) ) //DV Conta
Return aCmc7Tc |
Punto de entrada FINLRCHQ: (Para más información dar clic aquí) | Bloco de código |
|---|
| firstline | 1 |
|---|
| title | FINLRCHQ |
|---|
| linenumbers | true |
|---|
| collapse | true |
|---|
| #Include 'Protheus.ch'
User Function FINLRCHQ()
Local cChq := ""
cChq := "0<XXX00XXX76100123456789ASDFGHJK"
Return cChq |
Punto de entrada F998NROK: (Para más información dar clic aquí) | Bloco de código |
|---|
| firstline | 1 |
|---|
| title | F998NROK |
|---|
| linenumbers | true |
|---|
| collapse | true |
|---|
| #INCLUDE "Totvs.ch"
/*/{Protheus.doc} F998NROK
Punto de entrada que permite agregar validaciones al recibo antes del guardado
Si retorna un .T. procedera con el guardado del recibo
Si retorna un .F. no continuara con el guardado del recibo
/*/
USER FUNCTION F998NROK()
Local oModel := Paramixb[1] //Json que contiene todas las formas de pago del recibo
Local oModelFJT := oModel:GetModel("FJT_MASTER")
Local oModelSEL := oModel:GetModel("SEL_DETAIL")
Local oModelSE1 := oModel:GetModel("SE1_DETAIL")
Local oModelMOE := oModel:GetModel('MOE_DETAIL')
Local lRet := .T. As Logical
Local aRet := {} As Array
Local nCont As Numeric
Local cMensaje := "" As Character
Local cSolucion := "" As Character
//Ejemplo de validaciones en las formas de pago que contiene el recibo
FOR nCont := 1 TO oModelSEL:Length()
IF oModelSEL:GetValue('EL_TIPO',nCont) == "EF "
lRet := .F.
cMensaje := "No se permite guardar recibos con forma de pago tipo EF-Efectivo"
cSolucion := "Texto de solución"
AADD(aRet,{lRet,cMensaje,cSolucion})
RETURN aRet
ENDIF
NEXT
RETURN aRet |
- Desde En el módulo Configurador (SIGACFG), configure configurar el parámetro MV_RECMVC con el valor .T. para activar la funcionalidad de Recibos en MVC.
- Desde En el módulo Facturación (SIGAFAT):
- Ir al menú Actualizaciones | Archivos | Bancos (MATA070), configure configurar un Banco.
- Ir al menú Actualizaciones | Archivos | Clientes (MATA030), configure configurar un Cliente.
- Desde En el módulo Financiero (SIGAFIN):
- Ir al menú Actualizaciones | Archivos | Entidades Bancarias (FINA094) registre un banco chequeregistrar un Banco para el Cheque.
|
| Totvs custom tabs box items |
|---|
| - Prueba para los PE FINCMTC y FINLRCHQ.
- En el módulo Financiero (SIGAFIN):
- Ingrese Ingresar al menú : Actualizaciones | Archivos | TOTVS Recibo (FINA998) y seleccioné seleccionar la opción Nuevo Recibo.
- Complete Completar el encabezado del recibo con los datos previamente configurados.
- En el GRID de formas de pago, informe informar una forma de pago con tipo "CH - Cheque", haciendo clic en el campo Tipo (EL_TIPO).
- Al salir del campo Tipo (EL_TIPO), si el valor seleccionado es "CH - Cheque", se mostrará una ventana con el siguiente mensaje:
- ¿Desea utilizar la lectora de cheques?
- Haga Hacer clic en "Sí".
- Al confirmar, se ejecutarán los puntos de entrada FINCMTC y FINLRCHQ:
- FINLRCHQ retornará una cadena de texto con los datos leídos del cheque.
- FINCMTC utilizará dicha cadena para asignar de forma personalizada los valores a campos configurados.
- Esta información será mostrada en la ventana de la lectora de cheques.
- Al hacer clic en "OK", los siguientes campos del GRID de formas de pago (SEL) serán automáticamente completados (Esta asignación es de acuerdo a la personalización del PE FINLRCHQ, puede variar):
- Banco.
- Agencia.
- Código Postal.
- Cheque.
- Cuenta.
- DV Conta.
- Grabar el recibo.
- Confirmar la generación del recibo anticipado.
- Verificar que se guarden correctamente los valores asignados por los Puntos de Entrada en las tablas.
- Prueba para el PE F998NROK.
- Ingrese Ingresar al menú : Actualizaciones | Archivos | TOTVS Recibo (FINA998) y seleccioné seleccionar la opción Nuevo Recibo.
- Complete Completar el encabezado del recibo con los datos previamente configurados.
- En el GRID de formas de pago, informe informar una forma de pago con tipo "EF - Efectivo".
- Intentar guardar el recibo.
- Verificar que se muestre un HELP mostrando el siguiente texto:
- "No se permite guardar recibos con forma de pago tipo EF-Efectivo" - "Texto de solución".
- Verificar que no se permita el guardado del recibo.
|
|
04. INFORMACIÓN ADICIONAL
...