01. DATOS GENERALES
Producto | TOTVS Backoffice | ||||||
---|---|---|---|---|---|---|---|
Línea de producto: | Línea Protheus | ||||||
Segmento: | Backoffice | ||||||
Módulo: | SIGAFAT - Facturación | ||||||
Función: |
| ||||||
País: | Perú | ||||||
Ticket: | 14810348 | ||||||
Requisito/Story/Issue (informe el requisito vinculado): | DMINA-16527 |
02. SITUACIÓN/REQUISITO
En la rutina de Documentos Electrónicos (MATA486), al realizar la transmisión electrónica de una Nota de Débito de Cliente (NDC), la cual tiene vinculada una Factura de Venta (NF), se presenta el siguiente error.log cuando para el ambiente se utiliza el manejador de base de datos de Oracle:
THREAD ERROR ([9156], AbilLB, ABRILLB) 21/07/2022 18:45:30
: Error : 1722 - ORA-01722: invalid number
( From tOracleConnection::GetQueryFile )
Thread ID [4112] User [Administrador] IO [2548] Tables [64] MaxTables [64] Comment [MATA486 - TCPIP - ThreadID(9156)] SP [ ] Traced [No] SQLReplay [No] InTran [No] DBEnv [ORACLE/SIGATSTPE] DBThread [(SID 1137,13632,1)] Started [21/07/2022 18:43:32] IP [10.220.255.136:1234] IDLE [ ] InTransact [ ] Memory [0] Running [ROP_QUERY for 0 s.] RCV [68833] SND [608243] TCBuild [20210202-20220202] TCVersion [21.1.1.1] ARCH [64] OS [WINDOWS] BUILD [RELEASE]
SELECT F2_EMISSAO FROM SF2010 SF2 WHERE F2_FILIAL+F2_DOC+F2_SERIE+F2_CLIENTE+F2_LOJA = '011000000012F9900000201' AND F2_ESPECIE = 'NF ' AND SF2.D_E_L_E_T_= ' ' on __EXECSQL(APLIB300.PRW) 08/06/2022 16:53:22 line : 149
03. SOLUCIÓN
En la rutina de Funciones genéricas de Facturación Electrónica de Perú (M486XFUN):
- Se realiza ajuste en la función que Obtiene la Fecha de Emisión del Documento de Referencia (M486GETEMI), para que al generar el query para obtener los datos del documento de referencia de la tabla SF2-Encabezado de Fact. de Salida, se realice por separado la búsqueda utilizando los campos Sucursal (F2_FILIAL), N. Documento (F2_DOC), Serie Docto. (F2_SERIE), Cliente (F2_CLIENTE), Tienda (F2_LOJA) en lugar de realizar una concatenación utilizando el comando +, ya que no es soportado por algunos manejadores de base de datos.
- Realizar un respaldo del repositorio del ambiente (archivo .rpo)
- Aplicar el parche generado para la issue DMINA-16527.
- Validar que las rutinas actualizadas en el repositorio, coincidan con las descritas en la sección función del punto 01. DATOS GENERALES.
- En el módulo Facturación (SIGAFAT), ir al menú Actualización | Archivos | Facturaciones (MATA467N).
- Incluir una nueva Factura de Salida (NF), la cual debe ser transmitida electrónicamente desde la rutina de Documentos Electrónicos (MATA486).
- En el módulo Facturación (SIGAFAT), ir al menú Actualización | Archivos | Generac. Notas de Crédito y Debito (MATA465N).
- Incluir una Nota de Débito de Cliente (NDC), vinculando la Factura de Salida (NF) que fue incluida y timbrada previamente.
- En el módulo Facturación (SIGAFAT) ir al menú Actualizaciones | Facturación | Documentos Electrónicos (MATA486).
- Informar los parámetros:
- ¿Tipo de Documento?: Nota de Débito
- ¿Serie?: Serie de la Nota de Débito creada previamente.
- Ejecutar la acción Transmitir.
- Informar los parámetros:
- ¿Serie de la Factura?: Serie de la Nota de Débito creada previamente.
- ¿Factura Inicial?: Folio de la Nota de Débito creada previamente.
- ¿Factura Final?: Folio de la Nota de Débito creada previamente.
- Presionar Ok, para confirmar la transmisión electrónica.
- Validar que no muestre error.log , que el proceso de transmisión haya sido exitoso.
04. INFORMACIÓN ADICIONAL
No aplica.
La presente solución aplica para versión 12.1.33 o superior, y es necesario tener activa la funcionalidad de Facturación Electrónica UBL 2.1 para el país Perú (ver la liga de la sección 05. ASUNTOS RELACIONADOS)¡IMPORTANTE!