Requisito/Story/Issue (informe el requisito vinculado):
DMINA-17319
...
Se necesita preparar la rutina de anulación y eliminación de recibos para que cuando se produzca un error, estas rutinas estén preparadas para realizar rollback y revertir los cambios efectuados.
...
Se realizan cambios en los siguientes fuentes:
Eliminación de recibos (DELETE-RECEIPT.SERVICE.TLPP): Se realizan cambios en el fuente para detectar si lo que retorno la rutina de eliminación es un error y de ser así mostrar un mensaje de advertencia.
Cancelación de recibos (CANCEL-RECEIPT.SERVICE.TLPP): Se elimina el valor asignado al campo Cancelado (FJT_CANCEL), esto se redefine dentro del modelo.
Reglas de negocio (F887FIN.PRW): Se Se determina que el proceso de cancelación y eliminación de recibos debe ir dentro de la transacción (INTTS) y antes de la transacción (BerforeTTS), de esta manera es posible utilizar la instrucción Begin Transaction y End transaction, los cuales ayudan ayudan a controlar y deshacer los cambios cuando hay un error, también se determina los mensajes a mostrar en caso de error así como validaciones.
Reglas de negocio para México (F887FINMEX.PRW): Se agregan validaciones para el país de México.
Reglas de negocio para Perú (F887FINPER.PRW): Se agregan validaciones para el país de Perú.
Mantenimiento de recibos (FINA846.PRW): Se agrega el array "aResponse" en donde se agregan los errores generados por la rutina.
Totvs custom tabs box
tabs
Pre-condiciones,Procedimiento, Paso 03, Paso 04
ids
Pre-condiciones,Procedimiento
Totvs custom tabs box items
default
yes
referencia
Pre-condiciones
Realizar un respaldo del repositorio (RPO).
Aplicar el parche correspondiente al issue DMINA-17319.
Validar que las rutinas actualizadas en el repositorio, coincidan con las descritas en el encabezado del presente Documento Técnico.
A través del módulo configurador (SIGACFG) configurando los siguientes parámetros, para el correcto funcionamiento de la generación de CFDI en México:
Habilitamos las versiones de timbrado:
MV_CFDI33 = .T.
MV_CFDI40 = .T.
Configuramos los siguientes parámetros (Los valores de estos parámetros varían a cada cliente):
Expandir
title
Expandir parámetros
MV_CFDARQS
MV_CFDCPUB
MV_CFDI_CE
MV_CFDI_CP
MV_CFDI_KP
MV_CFDI_PR
MV_CFDI_PX
MV_CFDI_CS
MV_CFDICVE
MV_CFDI_CL
MV_CFDI_PA
MV_CFDI_US
MV_CFDI_CO
MV_IVATRAS
A través de la rutina “Productos”, ubicada en el módulo de SIGAFAT (Actualizaciones | Archivos), incluir un producto.
A través de la rutina “Bancos”, ubicada en el módulo de SIGAFAT (Actualizaciones | Archivos), incluir un banco.
A través de la rutina “Clientes”, ubicada en el módulo de SIGAFAT (Actualizaciones | Archivos), incluir un cliente.
A través de la rutina "Tipo de Entrada y Salida", ubicada en el módulo de Facturación, SIGAFAT (Actualizaciones | Archivos), incluir una TES de salida.
A través de la rutina "Factura de Venta", ubicada en el módulo Facturación, SIGAFAT (Actualizaciones | Movimientos), capturar una Factura timbrada para el Cliente con el producto y la TES previamente configurada.
Totvs custom tabs box items
default
no
referencia
Procedimiento
Ingresar a la rutina TOTVS Recibo; SIGAFIN - Actualizaciones | Cuentas por Cobrar | TOTVS Recibo.
Ingresar a la opción de "Nuevo recibo".
Capturar los datos del encabezado para obtener la Factura del cliente configurado.
Seleccionar la Factura timbrada generada anteriormente.
Agregar una Forma de Pago correspondiente al valor total de la Factura.
Dar clic en "Generar CFDI".
Confirmar el guardado y timbrado del recibo.
A través del módulo configurador (SIGACFG), dejar vacío el parámetro MV_CFDI_PA.
Ingresar a la rutina TOTVS Recibo; SIGAFIN - Actualizaciones | Cuentas por Cobrar | TOTVS Recibo.
Se ingresa a la opción de "Buscar recibo"
Localizar el recibo generado anteriormente y dar clic en anular.
Verificar que se muestre el error y se realice un rollback correctamente.