Error al ejecutar la macro pruebas.py con MsgBox

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
juanchv
Mensajes: 46
Registrado: Mié May 30, 2012 5:39 pm

Error al ejecutar la macro pruebas.py con MsgBox

Mensaje por juanchv »

Saludos.
Ante todo gracias anticipadas.
He comenzado el tutorial sobre python, y a la primera de cambio me he atascado al ejecutar la macro prueba.py , cambiando
print() por msgbox() tal y como sugiere el tutorial. La macro sin modificar abriendo un archivo calc desde consola funciona.
Algo debo hacer mal, incluso he copiado el código, copia y pega , por si me he confundido tecleando.
He actualizado Libre office a 5.4,5.1 siguiendo la solución de otro post, pero no ha funcionado.
He buscado en el foro y en google y no he sabido encontrar una pista.
Seguramente debo tener un fallo en la instalación.
Adjunto los informes de error.
También he intentado ejecutar el archivo de Mauricio "obtener informacion.odt , que tambien da error.

Adjunto los informes de error.


Un saludo
Juan

Linux mint mate 18.3 64-bit
Libre office 4.4.5.1
python 3.5.2
Adjuntos
Error_al_ejecutar_pruebas_py.odt
(15.58 KiB) Descargado 165 veces
LibreOffice 6.3.6.2
Linux mint 19.3 Tricia 64-bit Mate

LibreOffice 5.4.5.3
Linux mint 18.3 64-bit Mate
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Error al ejecutar la macro pruebas.py con MsgBox

Mensaje por mauricio »

Hola...

El error es claro, le número de argumentos pasado es incorrecto, no es problema de tu código, si no del API interno de LibreOffice... prueba reemplazando la macro msgbox por la siguiente:

Código: Seleccionar todo

def msgbox(message):
    ctx = uno.getComponentContext()
    sm = ctx.getServiceManager()
    toolkit = sm.createInstanceWithContext('com.sun.star.awt.Toolkit', ctx)
    MsgBox = toolkit.createMessageBox(
                                     toolkit.getDesktopWindow(),
                                     'infobox',
                                     1,
                                     'UNOPython',
                                     str(message))
    return MsgBox.execute()
y me confirmas...
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
juanchv
Mensajes: 46
Registrado: Mié May 30, 2012 5:39 pm

Re: Error al ejecutar la macro pruebas.py con MsgBox

Mensaje por juanchv »

Hola Mauricio
Gracias por la respuesta. Efectivamente este es el error. He cambiado las lineas y funciona perfecto.
Ya puedo seguir con el tutorial.
LibreOffice 6.3.6.2
Linux mint 19.3 Tricia 64-bit Mate

LibreOffice 5.4.5.3
Linux mint 18.3 64-bit Mate
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Error al ejecutar la macro pruebas.py con MsgBox

Mensaje por mauricio »

Por favor, si consideras que el tema ha sido resuelto, marcalo como tal, mira en: ¿Cómo marcar como RESUELTO un tema?, de esta forma, conseguiremos un Foro más ordenado.

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Responder