01. DATOS GENERALES
Producto | |
---|
Línea de producto: | |
---|
Segmento: | |
---|
Módulo: | SIGAFAT - Facturación |
---|
Función: | Rutina | Nombre Técnico | Fecha |
---|
M486RNFXML | XML 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 |
---|
02. SITUACIÓN/REQUISITO
Se solicita la activación de Puntos de Entrada que permitan realizar los siguientes ajustes en el XML de Guías de Remisión Electrónicas (GRE) del País Perú:
- Agregar el nodo de Observaciones (Texto): /DespatchAdvice/cbc:Note
- Agregar el nodo de Número de Bultos o Pallets: /DespatchAdvice/cac:Shipment/cbc:TotalTransportHandlingUnitQuantity
- Agregar el nodo de Número de Contenedor: /DespatchAdvice/cac:Shipment/cac:TransportHandlingUnit/cac:Package/cbc:ID
- Agregar el nodo de Número de Precinto: /DespatchAdvice/cac:Shipment/cac:TransportHandlingUnit/cac:Package/cbc:TraceID
- Modificar los datos de Unidad de medida del bien (/DespatchAdvice/cac:DespatchLine/cbc:DeliveredQuantity@unitCode), Cantidad del bien (/DespatchAdvice/cac:DespatchLine/cbc:DeliveredQuantity), Descripción detallada del bien (/DespatchAdvice/cac:DespatchLine/cac:Item/cbc:Description) y Código del bien (/DespatchAdvice/cac:DespatchLine/cac:Item/cac:SellersItemIdentification/cbc:ID).
03. SOLUCIÓN
En la rutina de XML de Guías de Remisión Electrónicas - Perú (M486RNFXML), se realizaron los siguientes ajustes:
Se activó el Punto de Entrada M486RNF:
Para permitir agregar el nodo /DespatchAdvice/cbc:Note de Observaciones (Texto).

Para permitir modificar el nodo /DespatchAdvice/cac:Shipment/cbc:TotalTransportHandlingUnitQuantity de Número de Bultos o Pallets.

El Punto de Entrada M486RNF recibe como parámetro la opción "N", para generación del Nodo de Observaciones y "P" para la generación del nodo de Número de Bultos o Pallets. 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. 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). |
Se activó el Punto de Entrada M486DETRNF:
Para permitir modificar los datos de Unidad de medida del bien (/DespatchAdvice/cac:DespatchLine/cbc:DeliveredQuantity@unitCode), Cantidad del bien (/DespatchAdvice/cac:DespatchLine/cbc:DeliveredQuantity), Descripción detallada del bien (/DespatchAdvice/cac:DespatchLine/cac:Item/cbc:Description) y Código del bien (/DespatchAdvice/cac:DespatchLine/cac:Item/cac:SellersItemIdentification/cbc:ID).

En el Punto de Entrada M486DETRNF, se debe retornar un arreglo con 4 posiciones, y se recomienda que se retornen con el valor Nil las posiciones que no se van a actualizar. Se reciben como parámetros los datos Filial del Documento, Número de Documento, Serie del Documento, Especie del Documento, Código de Cliente, Loja del Cliente, Número de ítem y Código del Producto. Las posiciones a retornar corresponden a la generación de los siguientes datos: Posición | Dato | Nodo | Tipo |
---|
1 | Cantidad del bien | /DespatchAdvice/cac:DespatchLine/cbc:DeliveredQuantity | Numérico | 2 | Unidad de medida del bien | /DespatchAdvice/cac:DespatchLine/cbc:DeliveredQuantity@unitCode | Caracter | 3 | Descripción detallada del bien | /DespatchAdvice/cac:DespatchLine/cac:Item/cbc:Description | Caracter | 4 | Código del bien | /DespatchAdvice/cac:DespatchLine/cac:Item/cac:SellersItemIdentification/cbc:ID | Caracter |
|
- Realizar un respaldo del repositorio del ambiente (archivo .rpo).
- Descargar y actualizar el parche generado para la issue DMINA-19961.
- NOTA: Validar que correspondan a las rutinas y fechas indicadas en el sección 01. DATOS GENERALES.
- Tener configurada la funcionalidad para transmisión electrónica de Guías de Remisión (RNF), para más información ver el Documento Técnico de Transmisión de Guías de Remisión.
- Compilas los Puntos de Entrada M486DETRNF o M486RNF.
- En el módulo Facturación (SIGAFAT):
- Ir al menú Actualizaciones | Pedidos | Pedidos de Venta (MATA410).
- Incluir un Pedido de Venta, informando el campo Doc Gener. (C5_DOCGER) con valor 2 - Remisión.
- Ir al menú Actualizaciones | Form. de Remisión | Generac. de Remitos (MATA462AN).
- Seleccionar los ítems del Pedido de Venta creado previamente.
- Ejecutar la acción +Gen Remisión.
|
- En el módulo Facturación (SIGAFAT):
- Acceder a la rutina Documentos Electrónicos (MATA486), ubicada en la ruta: Actualizaciones | Facturación | Documentos Electrónicos.
- Especificar en los parámetros la Serie y el Tipo de Documento: Guía Remisión
- Indique los parámetros para el filtrado de los documentos a transmitir.
- Serie: Serie de las guías de remisión a transmitir.
- Guía de remisión inicial: Número de documento inicial a transmitir.
- Guía de remisión final: Número de documento inicial a transmitir.
- Una vez finalizado el proceso de transmisión se visualiza ventana con el log del proceso, presionar Sí para verificar el resultado de la transmisión.
- Puede revisar la Constancia de Recepción emitida por el OSE a través de la opción Monitor.
- Indique los parámetros para el filtrado de los documentos que serán visualizados en el monitor.
- Serie: Serie de las guías de remisión a consultar.
- Guía de remisión inicial: Número de documento inicial.
- Guía de remisión final: Número de documento inicial.
- El monitor cuenta con botones inferiores cuya funcionalidad es la siguiente:
- Leyenda: Contiene los significados de los estatus de los documentos electrónicos.
- XML Envío: Muestra el XML enviado al OSE.
- CDR: Muestra la Constancia de Recepción emitida por el OSE en formato XML.
- Salir: Permite cerrar el monitor.
- Validar que en XML se visualicen las personalizaciones realizadas a través de los Puntos de Entrada M486DETRNF y/o M486RNF.
|
|
04. INFORMACIÓN ADICIONAL
Ejemplos de los Puntos de Entrada:
#include "protheus.ch"
User Function M486DETRNF()
Local cFilDoc := PARAMIXB[1] //Filial
Local cNumDoc := PARAMIXB[2] //Número de Documento
Local cSerDoc := PARAMIXB[3] //Serie de Documento
Local cEspDoc := PARAMIXB[4] //Especie de Documento
Local cCodCli := PARAMIXB[5] //Codigo de Cliente
Local cCodLoj := PARAMIXB[6] //Codigo de la Tienda
Local cItem := PARAMIXB[7] //Ítem
Local cCodPro := PARAMIXB[8] //Código de Producto
Local aDetGRE := {Nil, Nil, Nil, Nil}
aDetGRE[1] := Nil //Cantidad
aDetGRE[2] := "PC" //Unidad de Medida
aDetGRE[3] := Nil //Descripción del Producto
aDetGRE[4] := Nil //Código del Producto
Return aDetGRE |
#include "protheus.ch"
User Function M486RNF()
Local cXMLPE := ""
Local cCRLF := (chr(13)+chr(10)) //Salto de Línea
Local cOpc := PARAMIXB[1] //Opción N - Notas, P - Pallets/Contenedor/Precinto
If cOpc == "N"
cXMLPE += ' <cbc:Note>Prueba del PE M486RNF</cbc:Note>' + cCRLF
ElseIf cOpc == "P"
cXMLPE += ' <cbc:TotalTransportHandlingUnitQuantity>80</cbc:TotalTransportHandlingUnitQuantity>' + cCRLF
EndIf
Return cXMLPE |

05. ASUNTOS RELACIONADOS