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
Saludos desde España
ElOr