Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Producto

Solucoes_espanhol
SolucaoTOTVS Backoffice

Línea de producto: 

Linhas_totvs_espanhol
LinhaLínea Protheus

Segmento:

Segmentos_totvs_espanhol
SegmentoBackoffice

Módulo:SIGAFAT - Facturación
Función:
RutinaNombre TécnicoFecha
M486RNFXMLXML de Guías de Remisión Electrónicas - Perú22/06/2022
País:Perú (PER)
Ticket:17336421
Requisito/Story/Issue (informe el requisito vinculado):DMINA-19961

...

Informações
titleInformación

El Punto de Entrada M486RNF recibe como parámetro la opción de tipo Caracter, mediante el cual se tienen disponibles las siguientes opciones:

Si opción es "N", para se permite la generación del Nodo de Observacionesy .

Image Added

Si opción es "P" para , permite la generación del nodo de Número de Bultos o Pallets, de igual manera se pueden generar los indicadores utilizando los tag cbc:SpecialInstructions.

Image Added


Aviso
titleImportante

Para generar el nodo <cbc:SpecialInstructions>SUNAT_Envio_IndicadorTrasladoVehiculoM1L</cbc:SpecialInstructions> ya no es necesario informarlo en el PE M486RNF, para generar el nodo consulte el siguiente documento técnico:

22139120 DMICNS-22184 DT Guías de Remisión con tipo de Vehículo M1 o L PER


Si opción es "S", permite la generación del tag cbc:HandlingInstructions con la descripción del Motivo de Traslado.

Image Added

Si opción es "DA", permite la generación del tag cbc:AddressTypeCode con el código de establecimiento de llegada.

Image Added

Si opción es "CO", permite la generación del tag cac:Package con los datos Utilizando la opción "P" de la generación del nodo de Número de Bultos o Pallets, se pueden generar los nodos de Número de Contenedor y Número de Precinto.

Image Added

Si opción es "R", permite la generación del tag cbc:DocumentType con la descripción del tipo de Documento de Referencia, recibiendo el segundo parámetro con el código del tipo de documento de referencia.

Image Added

Si opción es "PU", permite la generación del tag cbc:CompanyID el número de MTC del Transportista.

Image Added

Se debe retornar en un string los nodos generados de acuerdo a lo permitido por la guía de Guías de Remisión Electrónica definido por la SUNAT.

Se tiene acceso disponible a los campos de la tabla SF2 - Encabezado de Fact. de Salida por el posicionamiento previo a la tabla, y es importante realizar las bifurcaciones de manera correcta para la generación de los nodos y en caso de requerir utilizar el Motivo de Traslado se puede utilizar el campo Motivo Tras (F2_MODTRAD).

...

Bloco de código
titleM486RNF
#include "protheus.ch"  User Function M486RNF()
     Local cXMLPE := ""
    Local cCRLF    := (chr(13)+chr(10))
    Local cOpc    := PARAMIXB[1] //Opción N - Notas, P - Pallets/Contenedor/Precinto
    Local cCodDoc := IIf(cOpc=="R",PARAMIXB[2],"")  //cbc:DocumentTypeCode
    Local cDesTpD := ""

    If cOpc == "N" //Observaciones
        cXMLPE += '	<cbc:Note>Prueba del PE M486RNF</cbc:Note>' + cCRLF  
    ElseIf cOpc == "P" //número de Pallets, Número de Contenedor y Número de Precinto
        If Alltrim(SF2->F2_MODTRAD) == "0801" //Importación
            cXMLPE += '		<cbc:TotalTransportHandlingUnitQuantity>80</cbc:TotalTransportHandlingUnitQuantity>' + cCRLF
        EndIf
    ElseIf cOpc == "S" //Shipment
        cXMLPE += '		<cbc:HandlingInstructions>DESCRIPCION DEL MOTIVO DE TRASLADO</cbc:HandlingInstructions>' + cCRLF
    ElseIf cOpc == "DA" //Establecimiento
        cXMLPE += '			<cbc:AddressTypeCode listAgencyName="PE:SUNAT" listName="Establecimientos anexos" listID="20552174918">3985</cbc:AddressTypeCode>' + cCRLF 
    ElseIf cOpc == "CO" //Número de Contenedor y Número de Precinto
        cXMLPE += '			<cac:Package>' + cCRLF
        cXMLPE += '				<cbc:ID>hlxu2142141</cbc:ID>' + cCRLF
        cXMLPE += '				<cbc:TraceID>002jp00124</cbc:TraceID>' + cCRLF
        cXMLPE += '			</cac:Package>' + cCRLF
    ElseIf cOpc == "R" //AdditionalDocumentReference
        If cCodDoc == "01"
            cDesTpD := "FACTURA"
        ElseIf cCodDoc == "50" 
            cDesTpD := EncodeUtf8("Declaración Aduanera de Mercancías")
        EndIf
        cXMLPE += '		<cbc:DocumentType>' + cDesTpD + '</cbc:DocumentType>' + 
ReturncCRLF
    ElseIf cOpc == "PU" //MTC
        cXMLPE += '				<cbc:CompanyID>0200310CNG</cbc:CompanyID>' + cCRLF
    EndIf      Return cXMLPE



Card documentos
InformacaoLa presente solución aplica para versión 12.1.33 o superior.
Titulo¡IMPORTANTE!

...