Árvore de páginas

01. DATOS GENERALES


Producto

TOTVS Backoffice

Línea de producto: 

Línea Protheus

Segmento:

Servicios

Módulo:

SIGAFIN - Financiero.

SIGACOM - Compras.

Función:

   

Rutina(s)Nombre TécnicoFecha
M486CERXMLGeneración de XML para Comprobantes de Retención.22/11/2020
M486XFUNFunciones Genéricas para Documentos Electrónicos.22/11/2020

   

Ticket:10130591
Requisito/Story/Issue (informe el requisito vinculado):DMINA-10567

02. SITUACIÓN/REQUISITO

En el proceso de trasmisión de Comprobantes de Retención, se detecta que al generar el XML, algunos atributos y nodos solo están imprimiendo el código de la Moneda 1 (Soles - PEN), cuando se utiliza un documento origen en Moneda 2 (Dólares - USD); lo anterior se presenta en el nodo <sac:SUNATRetentionDocumentReference>.

03. SOLUCIÓN

  1. Se modifica la función M486RETFAC() ubicada en la rutina Generación de XML para Certificados de Retención (M486CERXML), para obtener el código de la moneda en la Tabla genérica (SX5 - XQ) en base a la moneda del documento origen (F1_MOEDA/F2_MOEDA).
  2. Se realizan las siguientes modificaciones en la función fGenXMLCer() ubicada en la rutina Generación de XML para Certificados de Retención (M486CERXML):
    • Se imprime el código de la Moneda 1 (PEN) por default en los atributos "currencyID" de los nodos SUNATRetentionAmount y SUNATNetTotalPaid.
    • Se modifica el contenido del nodo TargetCurrencyCode, para imprimir el código de la Moneda 1 (PEN).
    • Se imprime el código de la Moneda del documento origen en los atributos "currencyID" de los nodos TotalInvoiceAmountPaidAmount.
    • Se imprime el valor en la Moneda del documento origen, en el nodo PaidAmount.
    • Se imprime el código de la Moneda del documento origen en el nodo SourceCurrencyCode.
  3. Se modifica la función M486VALSX5() ubicada en la rutina Funciones Genéricas para Documentos Electrónicos (M486XFUN), para retornar la descripción de la tabla "XQ" en Tablas genéricas (SX5), de acuerdo al idioma del ambiente.


  1. Realizar un respaldo del repositorio (RPO).
  2. Aplicar el parche correspondiente al issue DMINA-10567.
  3. Validar que las rutinas incluidas en el parche coincidan con las mencionadas en la sección "Función" del encabezado del presente Documento Técnico, así como las fechas.
  4. Contar con las configuraciones correspondientes a la transmisión de Comprobantes de Retención, mencionadas en el Documento Técnico mencionado en la sección 05. ASUNTOS RELACIONADOS.
  5. Crear los siguientes documentos en moneda dólar (puede ser una moneda diferente a soles).
    • Factura de Entrada.
    • Nota de Débito para Proveedor.
    • Nota de Crédito para Proveedor.
  6. Crear una Orden de Pago, utilizando los documentos creados en el paso anterior, para generar el Comprobante de Retención.
  1. Ingresar al módulo de Financiero (SIGAFIN).
  2. Ingresar a la rutina Documentos Electrónicos, ubicada en "Actualizaciones |Facturación | Documentos Electrónicos" (MATA486B).
  3. Dar clic en "Transmitir".
  4. Informar en los parámetros solicitados, la Serie y Número del Comprobante de Retención generado en las "Pre-condiciones".
  5. Visualizar el mensaje de confirmación, correspondiente a la transmisión exitosa del comprobante.
  6. Validar en el XML generado, que los siguientes nodos contengan la información correcta, en base a la moneda origen del documento:
    • TotalInvoiceAmount.
    • PaidAmount.
    • SUNATRetentionAmount.
    • SUNATNetTotalPaid.
    • SourceCurrencyCode.
    • TargetCurrencyCode.

04. INFORMACIÓN ADICIONAL

No aplica.


¡IMPORTANTE!

Se debe tener configurada la funcionalidad de transmisión electrónica de Certificados de Retención para el país Perú, solución disponible para versión 12.1.17 o superiores.

05. ASUNTOS RELACIONADOS

Documento Técnico de Referencia para funcionalidad de Facturación Electrónica:

DT Facturación Electrónica UBL 2.1 PER