01. DATOS GENERALES


Producto

Línea de producto: 

Segmento:

Módulo:SIGAFAT - Facturación.
Función:
RutinaNombre Técnico
M486CBXMLXML para Comunicado de Baja.
M486NCCXMLXML para Nota de Crédito.
M486NDCXMLXML para Nota de Débito.
M486RNFXMLXML para Guía de Remisión.
M486XFUNFunciones genéricas para Facturación Electrónica.
Ticket:9284736
Requisito/Story/Issue (informe el requisito vinculado):DMINA-9663


02. SITUACIÓN/REQUISITO

Al generarse el XML de documentos electrónicos que contienen el nodo de información del Receptor (cac:AccountingCustomerParty), no muestran correctamente los caracteres especiales en el nodo de Razón Social (cbc:RegistrationName).


03. SOLUCIÓN

NOTA: Se debe retornar valor de tipo carácter con el nodo de acuerdo a lo definido por la SUNAT.

#include 'protheus.ch'

User Function M486FECVEN()
      Local cXMLVen := ""
      Local cFecVen := "2020-07-31" + Alltrim(SF2->F2_SERIE) + "-" + Alltrim(SF2->F2_DOC)
      Local cCRLF  := (chr(13)+chr(10))

      cXMLVen += ' <cbc:DueDate>' + cFecVen + '</cbc:DueDate>' + cCRLF
Return cXMLVen

Se activa el Punto de Entrada M486PEREF para definir la regla de negocio que aplicará para la generación del nodo cac:BillingReference en las Notas de Crédito de Cliente cuando el documentos origen no existe en Protheus:

NOTA:  Se debe retornar un arreglo con la Serie, Folio, Tipo de Documento (Catálogo N.° 01 de la SUNAT) y Fecha de Emisión del documento que será relacionado a la nota de Crédito.

#include 'protheus.ch'

User Function M486PEREF()
	Local cEs := PARAMIXB[1] //Especie
	Local cDc  := PARAMIXB[2] //Documento
	Local cSe  := PARAMIXB[3] //Serie
	Local cCl  := PARAMIXB[4] //Cliente
	Local cLo  := PARAMIXB[5] //Loja
	Local cSero := "F009"
	Local cDocO := RTRIM(cNFOri) 
	Local cTpDocu  := "01"
	Local cDtEmisi := "2020-07-31"
	
Return {cSero,cDocO,cTpDocu,cDtEmisi}


1. Configurar un Cliente que en el campo Nombre (A1_NOME) contenga caracteres especiales. (Desde módulo Facturación (SIGAFAT) desde el menú Actualizaciones | Archivos | Clientes)

2. Incluir una nueva Factura de Venta utilizando el cliente creado en el punto 1. (Desde módulo Facturación (SIGAFAT) desde el menú Actualizaciones | Facturación | Facturaciones)

1. En el módulo Facturación (SIGAFAT) ir al menú Actualizaciones | Facturación | Documentos Electrónicos (MATA486)

2. Ejecutar la acción Transmitir.

3. Informar en los parámetros las Serie y Folio de la Factura de Venta generada previamente, presionar Ok.

4. Validar que la transmisión haya sido exitosa.

5. Desde Otras acciones ejecutar la acción Imprimir PDF,y validar que en la representación gráfica del documentos en la razón social del cliente se visualicen correctamente los caracteres especiales.


04. INFORMACIÓN ADICIONAL

No aplica.



05. ASUNTOS RELACIONADOS


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>