Página 1 de 1

Error al exportar a pdf

Publicado: Vie Abr 26, 2019 9:26 pm
por ElOr
Buenas.

Me he hecho un programa de facturación, gracias Mauricio por tu estupendo manual, con base y calc ya me funciona todo excepto una cosa:

Cuando termino una factura la forma de guardar el archivo para enviárselo a los clientes es en PDF y al exportar con la siguiente macro me da el siguiente error:
"Error al guardar el documento FacturacionLibreOffice2:
Error general.
Error general de entrada/salida."

Os dejo la macro tal cual la tengo a ver si podéis ver el fallo, que yo soy bastante nuevo en esto de la programación, de hecho es mi primer proyecto en oOO Basic, y seguro que se me escapa algo...

Código: Seleccionar todo

Sub GuardarArchivoEnPDF()
Dim oDlgCarpeta As Object
Dim sRuta As String
Dim oHoja As Object
Dim oNumeroFactura As Object
Dim oNombreCL As Object
Dim oFechaFactura As Object
Dim mOpciones(1) As New "com.sun.star.beans.PropertyValue"
Dim oDocument As Object
Dim Dispatcher As Object
Dim NombreDeFactura As String
		
	oDocument = ThisComponent.CurrentController.Frame
	Dispatcher =  createUnoService("com.sun.star.frame.DispatchHelper")

	oDlgCarpeta = CreateUnoService("com.sun.star.ui.dialogs.FolderPicker")
	With oDlgCarpeta
		.Title = "Selecciona carpeta para guardar la factura"
		.DisplayDirectory = ConvertToURL("I:\cesar empresa\aasoinsa\facturas")
	End With
	
	If oDlgCarpeta.Execute() Then
		sRuta = oDlgCarpeta.Directory
		oHoja = ThisComponent.getSheets().getByName("Inicio")
		oNumeroFactura = oHoja.getCellRangeByName("F4")
		oNombreCL = oHoja.getCellRangeByName("B5")
		oFechaFactura = oHoja.getCellRangeByName("F5")
		NombreDeFactura = "Factura número " & oNumeroFactura.getString() & " " & oNombreCL.getString & " de " & oFechaFactura.getString & ".pdf"
		sRuta = ConvertToURL(sRuta & "\" & NombreDeFactura)
		mOpciones(0).Name = "URL"
      mOpciones(0).Value = sRuta
      mOpciones(1).Name = "filtername" 
      mOpciones(1).Value = "Calc_pdf_Export"
		
		dispatcher.executeDispatch(oDocument, ".uno:ExportToPDF", "", 0, mOpciones())
	Else
		MsgBox "Proceso cancelado"
	End If
End Sub
Muchas gracias por adelantado por vuestro tiempo

Saludos desde España
ElOr

Re: Error al exportar a pdf

Publicado: Sab Abr 27, 2019 3:48 pm
por Longi
Buenas!
Yo hago esas cosas desde un Writer, pero supongo que el error es del mismo tipo:
Supongo que generas una factura y no te da problemas, pero a la siguiente te da ese error.
Si es así, es simplemente que tienes el calc abierto. Deberías (e insisto, si no me equivoco), deberías establecer dentro de la rutina un cierre del documento antes de lanzar la macro la siguiente vez.

Ya contarás!

Un saludo! ;)

Re: Error al exportar a pdf

Publicado: Lun Abr 29, 2019 8:33 pm
por ElOr
Muy buenas Longi, gracias por tu respuesta.

La verdad es que no, me da error desde la primera factura, vamos que no puedo exportar el a pdf, generar las facturas puedo sin problemas, por eso sólo he puesto el código de la macro que genera el pdf, porque entiendo que el resto, y así me lo parece, funciona perfectamente.

No sé cómo podría hacer el cerrar calc para generar el pdf, te comento: Suelo hacer varias facturas al día, no todos los días pero sí muchos, y el andar cerrando y abriendo Calc para hacerlas me parece poco funcional, además que yo llamo a las macros desde cuadros de díálogo que invoco desde Calc, además que la plantilla de la factura está en Calc.... No sé, soy un completo indigente en estos menesteres, el "programa" lo he heco mirando el manual de Mauricio y viendo mis dudas en el foro...

Si se necesitara subir el "programa" completo, no tengo problema, pero me parece echarle mucho morro ejejejjejeje.

Gracias de nuevo.

Saludos desde España

Re: Error al exportar a pdf

Publicado: Sab Jun 01, 2019 10:41 pm
por mauricio
El error te indica o bien, un problema con el disco, o, lo más probable, con la ruta destino que estableces, asegurate de que este correctamente construida, que este en formato URL, y que tu sistema operativo soporte todos los caracteres usados en la ruta.