Encontre un error libro aprendiendo Aoo

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
marcosdavid
Mensajes: 4
Registrado: Vie Oct 17, 2014 4:11 am

Encontre un error libro aprendiendo Aoo

Mensaje por marcosdavid »

ACLARACION ¡el libro esta exelente y muy didactico! esto es solo un aporte positivo:
Este error aparece en los libros de nuestros amigos Mauricio Baeza y en el libro de Eduardo Badiola

Si ejecutan esta macro sin que previamente exista el archivo dara el siguiente error:
Error de ejecución de BASIC.
Se ha producido una excepción
Type: com.sun.star.lang.IllegalArgumentException
Message: Unsupported URL <file:///home/marcos/calc.ods>: "type detection failed".
Estoy ejecutando LibreOffice 5.1.4.2 en linux mint 18

el problema esta en la siguiente macro en la pagina 151
Esta es la macro qui tiene un error

Código: Seleccionar todo

Sub AbriendoGuardandoDocumentos2()
Dim sRuta As String
Dim mOpciones(0) As New "com.sun.star.beans.PropertyValue"
Dim oDoc As Object

	sRuta = "private:factory/scalc"
	oDoc = StarDesktop.loadComponentFromURL( sRuta, "_blank", 0, mOpciones() )

	'Nos indica si el archivo esta guardado físicamente
	MsgBox oDoc.hasLocation()

	sRuta = ConvertToUrl( "/home/mau/Mi archivo de Calc.ods" )
	oDoc = StarDesktop.loadComponentFromURL( sRuta, "_blank", 0, mOpciones() )

	MsgBox oDoc.hasLocation()

End Sub
SOLUCION:
Este codigo es el mismo que el anterior solo con una correccion.

Código: Seleccionar todo

Sub AbriendoGuardandoDocumentos2()
Dim sRuta As String
Dim mOpciones(0) As New "com.sun.star.beans.PropertyValue"
Dim oDoc As Object

	sRuta = "private:factory/scalc"
	oDoc = starDesktop.loadComponentFromURL( sRuta, "_blank", 0, mOpciones() )
	
	MsgBox oDoc.hasLocation()

	sRuta = ConvertToUrl( "/home/marcos/calc.ods" )
	oDoc.storeAsURL( sRuta, mOpciones() )
	
	MsgBox oDoc.hasLocation()
	
End Sub
El unico cambio es cambiar esta linea ubicada despues de "convertToUrl"

Código: Seleccionar todo

oDoc = StarDesktop.loadComponentFromURL( sRuta, "_blank", 0, mOpciones() )
Cambiarla por esta otra

Código: Seleccionar todo

oDoc.storeAsURL( sRuta, mOpciones() )
Libre Office 5.1.4.2
Linux MInt 18
Avatar de Usuario
entrance33
Mensajes: 1
Registrado: Mar Nov 26, 2019 1:54 pm

Re: Encontre un error libro aprendiendo Aoo

Mensaje por entrance33 »

Estoy aprendiendo a programar LibreOffice con este mismo libro y me he tropezado con este fallo.

Me acabo de registrar para agradecer la solución al usuario y aportar la experiencia que vaya adquiriendo.
LibreOffice 6.0.7 en Linux Mint 19.2
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Encontre un error libro aprendiendo Aoo

Mensaje por mauricio »

Lastima, que con sus honrosas excepciones, no se coopere para la actualización de este libro.
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Responder