Línea de Producto: | Microsiga Protheus | ||||||
Segmento: | Servicios - Mercado Internacional | ||||||
Módulo: | SIGAFAT - Facturación | ||||||
Función: |
| ||||||
Situación/Requisito: | Se solicita la apertura del Punto de Eentrada M485NFDET para modificar detalle del XML (NFAEXMLECU) y que se desarrolle nuevo punto de entrada Entrada M485DETNF, para permitir modificación de detalle en generación de XML para transmisión de documentos electrónicos, y además se requiere desarrollar un nuevo Punto de Entrada para modificar encabezado de XML para documentos electrónicos de Factura de Venta (NF), Notas de Débito (NDC) y Nota de Crédito (NCC). | ||||||
Solución/Implementación: | En la rutina de Generación de XML de Documentos Electrónicos para país Ecuador (NFAEXMLECU), se realiza la apertura de los siguientes Puntos de Entrada siguientesEntrada para permitir modificación de estructura en nodo Detalle:
Se realiza la apertura de los siguientes Puntos de Entrada para permitir modificación de estructura de archivo XML en nodo Encabezado.
Importante: Asegúrese de generar las secciones de acuerdo al estándar solicitado por Signature, ya que podrían ocurrir errores de esquema al enviar el XML a TSS o al enviar el documento a Signature. | ||||||
Puntos de Entrada | M485DETNF | ||||||
Requisito (Issue): | DMINA-4904 (v 11.8) | ||||||
Versión: | 11.8 |
...
Descripción: | M485DETNF.- Personalización de los valores del detalle en los documentos electrónicos Factura de Venta (NF). | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | NFAEXMLECU.PRW | ||||||||
Función: | NFAEXMLECU | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
...
"KIDDIBUJO",; //Codigo Producto
10} //Descuento
Return aM485DET
Descripción: | M485DNDC.- Personalización de los valores del detalle en los documentos electrónicos Nota de Débito de Cliente (NDC). | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | NFAEXMLECU.PRW | ||||||||
Función: | NFAEXMLECU | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
...
"KIDDIBUJO",; //Codigo Producto
10} //Descuento
Return aM485DET
Descripción: | M485DNCC.- Personalización de los valores del detalle en los documentos electrónicos Nota de Crédito de Cliente (NCC). | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | NFAEXMLECU.PRW | ||||||||
Función: | NFAEXMLECU | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
User Function M485DETNF M485DNCC()
Local cFilPE := PARAMIXB[1] //Filial
Local cDocPE := PARAMIXB[2] //Num. Documento
Local cSerPE := PARAMIXB[3] //Serie
Local cEspPE := PARAMIXB[4] //Especie
Local cCliPE := PARAMIXB[5] //Clientes
Local cLojPE := PARAMIXB[6] //Tienda
Local cItemPE := PARAMIXB[7] //Item
Local cCodPrdPE := PARAMIXB[8] //Cod. Prod
Local aM485DET := {}
...
"KIDDIBUJO",; //Codigo Producto
10} //Descuento
Return aM485DET
Descripción: | M485ENDC.- Personalización de los valores del Encabezado en los documentos electrónicos Nota de Débito de Cliente (NDC). | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | NFAEXMLECU.PRW | ||||||||
Función: | NFAEXMLECU | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
User Function M485ENCNF M485ENDC()
User function M485ENCNF()
Local cRet := ""
Local cFilPE := PARAMIXB[1] //Filial
Local cDocPE := PARAMIXB[2] //Num. Documento
Local cSerPE := PARAMIXB[3] //Serie
Local cEspPE := PARAMIXB[4] //Especie
Local cCliPE := PARAMIXB[5] //Clientes
Local cLojPE := PARAMIXB[6] //Tienda
cRet := "<Encabezado>" + chr(13)+ chr(10)
cRet += " <IdDoc>" + chr(13)+ chr(10)
cRet += " <Ambiente>1</Ambiente>" + chr(13)+ chr(10)
cRet += " <TipoEmision>1</TipoEmision>" + chr(13)+ chr(10)
cRet += " <ContenidoTC></ContenidoTC>" + chr(13)+ chr(10)
cRet += " <Tipo>03</Tipo>" + chr(13)+ chr(10)
cRet += " <Serie>A</Serie>" + chr(13)+ chr(10)
cRet += " <Numero>000000001</Numero>" + chr(13)+ chr(10)
cRet += " <Estado>ORIGINAL</Estado>" + chr(13)+ chr(10)
cRet += " <FechaEmis>2018-11-29T16:37:00Z</FechaEmis>" + chr(13)+ chr(10)
cRet += " <Establecimiento>001</Establecimiento>" + chr(13)+ chr(10)
cRet += " <PtoEmis>001</PtoEmis>" + chr(13)+ chr(10)
cRet += " </IdDoc>" + chr(13)+ chr(10)
cRet += " <Emisor>" + chr(13)+ chr(10)
cRet += " <TipoContribuyente>5368</TipoContribuyente>" + chr(13)+ chr(10)
cRet += " <RegimenContable>SI</RegimenContable>" + chr(13)+ chr(10)
cRet += " <IDEmisor>20517833101</IDEmisor>" + chr(13)+ chr(10)
cRet += " <NmbEmisor>EMPRESA 001</NmbEmisor>" + chr(13)+ chr(10)
cRet += " <NombreEmisor>" + chr(13)+ chr(10)
cRet += " <PrimerNombre>EMPRESA NOMBRE</PrimerNombre>" + chr(13)+ chr(10)
cRet += " </NombreEmisor>" + chr(13)+ chr(10)
cRet += " <DomFiscal>" + chr(13)+ chr(10)
cRet += " <Calle>cALLE Y NUMERO</Calle>" + chr(13)+ chr(10)
cRet += " <Departamento>CU</Departamento>" + chr(13)+ chr(10)
cRet += " <Distrito>CU</Distrito>" + chr(13)+ chr(10)
cRet += " <Ciudad>CU</Ciudad>" + chr(13)+ chr(10)
cRet += " <Municipio>CU</Municipio>" + chr(13)+ chr(10)
cRet += " <Pais>218</Pais>" + chr(13)+ chr(10)
cRet += " <CodigoPostal>01259030</CodigoPostal>" + chr(13)+ chr(10)
cRet += " </DomFiscal>" + chr(13)+ chr(10)
cRet += " <LugarExped>" + chr(13)+ chr(10)
cRet += " <Calle>AV. BRAZ LEME, 1631</Calle>" + chr(13)+ chr(10)
cRet += " </LugarExped>" + chr(13)+ chr(10)
cRet += " </Emisor>" + chr(13)+ chr(10)
cRet += " <Receptor>" + chr(13)+ chr(10)
cRet += " <DocRecep>" + chr(13)+ chr(10)
cRet += " <TipoDocRecep>04</TipoDocRecep>" + chr(13)+ chr(10)
cRet += " <NroDocRecep>1791287118001</NroDocRecep>" + chr(13)+ chr(10)
cRet += " </DocRecep>" + chr(13)+ chr(10)
cRet += " <NmbRecep>NOMBRE DE TU EMPRESA</NmbRecep>" + chr(13)+ chr(10)
cRet += " </Receptor>" + chr(13)+ chr(10)
cRet += " <Transporte>" + chr(13)+ chr(10)
cRet += " <MedioTransporte>" + chr(13)+ chr(10)
cRet += " <MetodoTransp>MetodoTransp</MetodoTransp>" + chr(13)+ chr(10)
cRet += " </MedioTransporte>" + chr(13)+ chr(10)
cRet += " </Transporte>" + chr(13)+ chr(10)
cRet += " <Totales>" + chr(13)+ chr(10)
cRet += " <Moneda>USD</Moneda>" + chr(13)+ chr(10)
cRet += " <SubTotal>500.00</SubTotal>" + chr(13)+ chr(10)
cRet += " <MntDcto>0</MntDcto>" + chr(13)+ chr(10)
cRet += " <VlrPagar>560.00</VlrPagar>" + chr(13)+ chr(10)
cRet += " <MontoPropina>0.00</MontoPropina>" + chr(13)+ chr(10)
cRet += " </Totales>" + chr(13)+ chr(10)
cRet += " <Impuestos>" + chr(13)+ chr(10)
cRet += " <TipoImp>2</TipoImp>" + chr(13)+ chr(10)
cRet += " <CodTasamp>2</CodTasamp>" + chr(13)+ chr(10)
cRet += " <TasaImp>18.00</TasaImp>" + chr(13)+ chr(10)
cRet += " <MontoBAseImp>1500.00</MontoBAseImp>" + chr(13)+ chr(10)
cRet += " <MontoImp>160.00</MontoImp>" + chr(13)+ chr(10)
cRet += " </Impuestos>" + chr(13)+ chr(10)
cRet += "</Encabezado>"
Return cRet
Descripción: | M485ENCNF.- Personalización de los valores del Encabezado en los documentos electrónicos Factura de Venta (NF). | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | NFAEXMLECU.PRW | ||||||||
Función: | NFAEXMLECU | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
...
Local cRet := ""
Local cFilPE := PARAMIXB[1] //Filial
Local cDocPE := PARAMIXB[2] //Num. Documento
Local cSerPE := PARAMIXB[3] //Serie
Local cEspPE := PARAMIXB[4] //Especie
Local cCliPE := PARAMIXB[5] //Clientes
Local cLojPE := PARAMIXB[6] //Tienda
cRet := "<Encabezado>" + chr(13)+ chr(10)
cRet += " <IdDoc>" + chr(13)+ chr(10)
cRet += " <Ambiente>1</Ambiente>" + chr(13)+ chr(10)
cRet += " <TipoEmision>1</TipoEmision>" + chr(13)+ chr(10)
cRet += " <ContenidoTC></ContenidoTC>" + chr(13)+ chr(10)
cRet += " <Tipo>01</Tipo>" + chr(13)+ chr(10)
cRet += " <Serie>A</Serie>" + chr(13)+ chr(10)
cRet += " <Numero>000000001</Numero>" + chr(13)+ chr(10)
cRet += " <Estado>ORIGINAL</Estado>" + chr(13)+ chr(10)
cRet += " <FechaEmis>2018-11-29T16:37:00Z</FechaEmis>" + chr(13)+ chr(10)
cRet += " <Establecimiento>001</Establecimiento>" + chr(13)+ chr(10)
cRet += " <PtoEmis>001</PtoEmis>" + chr(13)+ chr(10)
cRet += " </IdDoc>" + chr(13)+ chr(10)
cRet += " <Emisor>" + chr(13)+ chr(10)
cRet += " <TipoContribuyente>5368</TipoContribuyente>" + chr(13)+ chr(10)
cRet += " <RegimenContable>SI</RegimenContable>" + chr(13)+ chr(10)
cRet += " <IDEmisor>20517833101</IDEmisor>" + chr(13)+ chr(10)
cRet += " <NmbEmisor>EMPRESA 001</NmbEmisor>" + chr(13)+ chr(10)
cRet += " <NombreEmisor>" + chr(13)+ chr(10)
cRet += " <PrimerNombre>EMPRESA NOMBRE</PrimerNombre>" + chr(13)+ chr(10)
cRet += " </NombreEmisor>" + chr(13)+ chr(10)
cRet += " <DomFiscal>" + chr(13)+ chr(10)
cRet += " <Calle>cALLE Y NUMERO</Calle>" + chr(13)+ chr(10)
cRet += " <Departamento>CU</Departamento>" + chr(13)+ chr(10)
cRet += " <Distrito>CU</Distrito>" + chr(13)+ chr(10)
cRet += " <Ciudad>CU</Ciudad>" + chr(13)+ chr(10)
cRet += " <Municipio>CU</Municipio>" + chr(13)+ chr(10)
cRet += " <Pais>218</Pais>" + chr(13)+ chr(10)
cRet += " <CodigoPostal>01259030</CodigoPostal>" + chr(13)+ chr(10)
cRet += " </DomFiscal>" + chr(13)+ chr(10)
cRet += " <LugarExped>" + chr(13)+ chr(10)
cRet += " <Calle>AV. BRAZ LEME, 1631</Calle>" + chr(13)+ chr(10)
cRet += " </LugarExped>" + chr(13)+ chr(10)
cRet += " </Emisor>" + chr(13)+ chr(10)
cRet += " <Receptor>" + chr(13)+ chr(10)
cRet += " <DocRecep>" + chr(13)+ chr(10)
cRet += " <TipoDocRecep>04</TipoDocRecep>" + chr(13)+ chr(10)
cRet += " <NroDocRecep>1791287118001</NroDocRecep>" + chr(13)+ chr(10)
cRet += " </DocRecep>" + chr(13)+ chr(10)
cRet += " <NmbRecep>NOMBRE DE TU EMPRESA</NmbRecep>" + chr(13)+ chr(10)
cRet += " </Receptor>" + chr(13)+ chr(10)
cRet += " <Transporte>" + chr(13)+ chr(10)
cRet += " <MedioTransporte>" + chr(13)+ chr(10)
cRet += " <MetodoTransp>MetodoTransp</MetodoTransp>" + chr(13)+ chr(10)
cRet += " </MedioTransporte>" + chr(13)+ chr(10)
cRet += " </Transporte>" + chr(13)+ chr(10)
cRet += " <Totales>" + chr(13)+ chr(10)
cRet += " <Moneda>USD</Moneda>" + chr(13)+ chr(10)
cRet += " <SubTotal>500.00</SubTotal>" + chr(13)+ chr(10)
cRet += " <MntDcto>0</MntDcto>" + chr(13)+ chr(10)
cRet += " <VlrPagar>560.00</VlrPagar>" + chr(13)+ chr(10)
cRet += " <MontoPropina>0.00</MontoPropina>" + chr(13)+ chr(10)
cRet += " </Totales>" + chr(13)+ chr(10)
cRet += " <Impuestos>" + chr(13)+ chr(10)
cRet += " <TipoImp>2</TipoImp>" + chr(13)+ chr(10)
cRet += " <CodTasamp>2</CodTasamp>" + chr(13)+ chr(10)
cRet += " <TasaImp>18.00</TasaImp>" + chr(13)+ chr(10)
cRet += " <MontoBAseImp>1500.00</MontoBAseImp>" + chr(13)+ chr(10)
cRet += " <MontoImp>160.00</MontoImp>" + chr(13)+ chr(10)
cRet += " </Impuestos>" + chr(13)+ chr(10)
cRet += "</Encabezado>"
Return cRet
Descripción: | M485ENCC.- Personalización de los valores del Encabezado en los documentos electrónicos Nota de Crédito de Cliente (NCC). | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | NFAEXMLECU.PRW | ||||||||
Función: | NFAEXMLECU | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
User Function M485ENCNF M485ENCC()
Local cRet := ""
Local cFilPE := PARAMIXB[1] //Filial
Local cDocPE := PARAMIXB[2] //Num. Documento
Local cSerPE := PARAMIXB[3] //Serie
Local cEspPE := PARAMIXB[4] //Especie
Local cCliPE := PARAMIXB[5] //Clientes
Local cLojPE := PARAMIXB[6] //Tienda
cRet := "<Encabezado>" + chr(13)+ chr(10)
cRet += " <IdDoc>" + chr(13)+ chr(10)
cRet += " <Ambiente>1</Ambiente>" + chr(13)+ chr(10)
cRet += " <TipoEmision>1</TipoEmision>" + chr(13)+ chr(10)
cRet += " <ContenidoTC></ContenidoTC>" + chr(13)+ chr(10)
cRet += " <Tipo>04</Tipo>" + chr(13)+ chr(10)
cRet += " <Serie>A</Serie>" + chr(13)+ chr(10)
cRet += " <Numero>000000001</Numero>" + chr(13)+ chr(10)
cRet += " <Estado>ORIGINAL</Estado>" + chr(13)+ chr(10)
cRet += " <FechaEmis>2018-11-29T16:37:00Z</FechaEmis>" + chr(13)+ chr(10)
cRet += " <Establecimiento>001</Establecimiento>" + chr(13)+ chr(10)
cRet += " <PtoEmis>001</PtoEmis>" + chr(13)+ chr(10)
cRet += " </IdDoc>" + chr(13)+ chr(10)
cRet += " <Emisor>" + chr(13)+ chr(10)
cRet += " <TipoContribuyente>5368</TipoContribuyente>" + chr(13)+ chr(10)
cRet += " <RegimenContable>SI</RegimenContable>" + chr(13)+ chr(10)
cRet += " <IDEmisor>20517833101</IDEmisor>" + chr(13)+ chr(10)
cRet += " <NmbEmisor>EMPRESA 001</NmbEmisor>" + chr(13)+ chr(10)
cRet += " <NombreEmisor>" + chr(13)+ chr(10)
cRet += " <PrimerNombre>EMPRESA NOMBRE</PrimerNombre>" + chr(13)+ chr(10)
cRet += " </NombreEmisor>" + chr(13)+ chr(10)
cRet += " <DomFiscal>" + chr(13)+ chr(10)
cRet += " <Calle>cALLE Y NUMERO</Calle>" + chr(13)+ chr(10)
cRet += " <Departamento>CU</Departamento>" + chr(13)+ chr(10)
cRet += " <Distrito>CU</Distrito>" + chr(13)+ chr(10)
cRet += " <Ciudad>CU</Ciudad>" + chr(13)+ chr(10)
cRet += " <Municipio>CU</Municipio>" + chr(13)+ chr(10)
cRet += " <Pais>218</Pais>" + chr(13)+ chr(10)
cRet += " <CodigoPostal>01259030</CodigoPostal>" + chr(13)+ chr(10)
cRet += " </DomFiscal>" + chr(13)+ chr(10)
cRet += " <LugarExped>" + chr(13)+ chr(10)
cRet += " <Calle>AV. BRAZ LEME, 1631</Calle>" + chr(13)+ chr(10)
cRet += " </LugarExped>" + chr(13)+ chr(10)
cRet += " </Emisor>" + chr(13)+ chr(10)
cRet += " <Receptor>" + chr(13)+ chr(10)
cRet += " <DocRecep>" + chr(13)+ chr(10)
cRet += " <TipoDocRecep>04</TipoDocRecep>" + chr(13)+ chr(10)
cRet += " <NroDocRecep>1791287118001</NroDocRecep>" + chr(13)+ chr(10)
cRet += " </DocRecep>" + chr(13)+ chr(10)
cRet += " <NmbRecep>NOMBRE DE TU EMPRESA</NmbRecep>" + chr(13)+ chr(10)
cRet += " </Receptor>" + chr(13)+ chr(10)
cRet += " <Transporte>" + chr(13)+ chr(10)
cRet += " <MedioTransporte>" + chr(13)+ chr(10)
cRet += " <MetodoTransp>MetodoTransp</MetodoTransp>" + chr(13)+ chr(10)
cRet += " </MedioTransporte>" + chr(13)+ chr(10)
cRet += " </Transporte>" + chr(13)+ chr(10)
cRet += " <Totales>" + chr(13)+ chr(10)
cRet += " <Moneda>USD</Moneda>" + chr(13)+ chr(10)
cRet += " <SubTotal>500.00</SubTotal>" + chr(13)+ chr(10)
cRet += " <MntDcto>0</MntDcto>" + chr(13)+ chr(10)
cRet += " <VlrPagar>560.00</VlrPagar>" + chr(13)+ chr(10)
cRet += " <MontoPropina>0.00</MontoPropina>" + chr(13)+ chr(10)
cRet += " </Totales>" + chr(13)+ chr(10)
cRet += " <Impuestos>" + chr(13)+ chr(10)
cRet += " <TipoImp>2</TipoImp>" + chr(13)+ chr(10)
cRet += " <CodTasamp>2</CodTasamp>" + chr(13)+ chr(10)
cRet += " <TasaImp>18.00</TasaImp>" + chr(13)+ chr(10)
cRet += " <MontoBAseImp>1500.00</MontoBAseImp>" + chr(13)+ chr(10)
cRet += " <MontoImp>160.00</MontoImp>" + chr(13)+ chr(10)
cRet += " </Impuestos>" + chr(13)+ chr(10)
cRet += "</Encabezado>"
Return cRet
Descripción: | M485XMLECU.- Personalización de los valores del Encabezado en los documentos electrónicos para Ecuador. | ||||||||
Ubicación: | Actualizaciones / Facturación / Transmisión Electrónica. | ||||||||
Eventos: | Transmitir documento | ||||||||
Programa Fuente: | MATA485 | ||||||||
Función: | getFact | ||||||||
Retorno: |
|
Ejemplo:
#Include 'Protheus.ch'
...
cRet := "<Documento></Documento>"
Return cRet