Árvore de páginas


01. DATOS GENERALES

Producto:

TOTVS Backoffice

Línea de producto:

Linha Protheus

Segmento:

Backoffice

Módulo:

TOTVS Backoffice (Linha Protheus) - Faturamento (SIGAFAT)

Función:
RutinaNombre TécnicoFecha
MATA486Documentos Electrónicos05/07/2024
País:Perú
Ticket:

20401088

Requisito/Story/Issue (informe el requisito vinculado):DMINA-23669


02. DESCRIPCIÓN

En la rutina de Documentos Electrónicos (MATA486), se tiene habilitado el Punto de Entrada M486PDFGEN, que permite la personalización de la impresión gráfica de los Documentos Electrónicos (Archivo .PDF) desde la opción "Otras acciones >> Recuperar PDF y XML"

El Punto de Entrada M486PDFGEN, está habilitado desde la opción Otras acciones | Imprimir PDF, y para la acción Recuperar PDF y XML es necesario tener actualizada la rutina de Documentos Electrónicos (MATA486) con una fecha mayor o igual a 05/07/2024.


03. INFORMACIÓN ADICIONAL

IMPORTANTE:

  • Al ejecutarse el Punto de Entrada desde la acción Recupera XML/PDF, se reciben como parámetros los datos Serie del Documento, Número del Documento Inicial y Número del Documento Final (Los parámetros no son enviados al ejecutarse el Punto de Entrada desde la acción Imprimir PDF)
  • Para el copiado de los archivos XML/PDF de documentos de tipo Factura de Venta, Boleta de Venta, Nota de Crédito, Nota de Débito, solamente aplica el copiado de los archivos de documentos que se encuentran en estatus Autorizado (F1_FLFTEX/F2_FLFTEX con valor igual a 6).
  • Cuando existe compilado el Punto de Entrada siempre se realiza la generación del PDF (es responsabilidad del usuario definir que no se genere el PDF si ya existe), y en caso contrario la generación del PDF sólo se realizará si NO existe el PDF en la ruta configurada en el parámetro MV_CFDDOCS, y en caso que exista solo se copia el archivo PDF del servidor a la ruta indicada.


Ejemplo de Punto de entrada:

M486PDFGEN
User Function M486PDFGEN()
    Local cSerieR  := PARAMIXB[1] // Sucursal que emitió el documento.
    Local cDocIniR := PARAMIXB[2] // Número de Documento
    Local cDocFinR := PARAMIXB[3] // Número de Documento
    Local cPerg := "M486PDF"
	Private cSerie := ""
	Private cDocIni := ""
	Private cDocFin := ""
	Private cFormato := ""
	Private cPath := &(SuperGetmv( "MV_CFDDOCS" , .F. , "'cfd\recibos\'" )) + "\Autorizados\"
	Private oXML   := Nil
	Private nTotPag := 0
	Private oFont1 := TFont():New( "ARIAL", , 7, .F., .F.)
	Private oFont2 := TFont():New( "ARIAL", , 8, .F., .F.) 
	Private oFont3 := TFont():New( "ARIAL", , 10, .T., .T.)
	Private oFont4 := TFont():New( "ARIAL", , 8, .F., .T.) //Negrita - 8
	Private nLinea	:= 0
	Private cPicture := "999,999,999,999.99"
	
	cPath := Replace( cPath, "\\", "\" )
	
    If (!Empty(cSerieR) .Or. !Empty(cDocIniR) .Or. !Empty(cDocFinR))
       Pergunte(cPerg,.T.)
    EndIf
	cSerie 	:= IIf(!Empty(cSerieR),cSerieR,MV_PAR01)
	cDocIni := IIf(!Empty(cDocIniR),cDocIniR,MV_PAR02) 
	cDocFin := IIf(!Empty(cDocFinR),cDocFinR,MV_PAR03) 
	cFormato:= IIf(!Empty(cSerieR) .Or. !Empty(cDocIniR) .Or. !Empty(cDocFinR),1,MV_PAR04)
	
	Processa({|| PRINTPE(cEspecie)},"Espere..", "Imprimiendo documento autorizado desde PE") 
Return Nil


Información

En el ejemplo del Punto de Entrada, la función PRINTPE() se define la impresión del encabezado y detalle del informe, y se bifurca para que al ejecutar desde la acción Recupera XML/PDF no se muestra el grupo de preguntas al ejecutar desde la acción Imprimir PDF, ya que se toman los valores Serie, Folio del Documento Inicial y Folio del Documento Final del grupo de preguntas MATA486J,


¡IMPORTANTE!

La presente solución aplica para versión de Protheus 12.1.2210 con garantía extendida o superior, y es necesario tener activa la funcionalidad de Transmisión Electrónica de UBL 2.1 directo a SUNAT a través de Protheus-TSS.

04. ASUNTOS RELACIONADOS