Mostrar información de depuración en un cuadro de mensaje.
Si tiene cualquier problema en su código durante el desarrollo de sus macros, puede abrir un ticket de soporte en el sistema de ticket de este proyecto. Siempre copie la información de depuración mostrada en este mensaje.
import easymacro as app
def info():
app.msgbox(app.INFO_DEBUG)
return
Mostrar información en la terminal.
import easymacro as app
def test_debug():
msg = 'Verificar esta información...'
app.debug(msg)
return
11/08/2022 18:15:45 - DEBUG - Verificar esta información...
Mostrar mensajes informativos en la terminal.
import easymacro as app
def test_info():
msg = 'Iniciando proceso...'
app.info(msg)
return
11/08/2022 18:23:53 - INFO - Iniciando proceso...
Mostrar mensajes de error en la terminal.
import easymacro as app
def test_error():
msg = 'Error 505'
app.error(msg)
return
11/08/2022 18:27:34 - ERROR - Error 505
Guardar registro en un archivo, automáticamente se agrega la fecha y hora.
import easymacro as app
def test_save_log():
app.save_log('/home/mau/log.txt', 'PyUNO')
app.save_log('/home/mau/log.txt', 'Maldito Mundo')
return
cat ~/log.txt
2022-08-11 18:30:11 - 'PyUNO'
2022-08-11 18:30:11 - 'Maldito Mundo'
Mostrar cualquier información en un cuadro de mensaje.
def message():
msg = 'Por favor, consume menos.'
app.msgbox(msg)
msg = ('uno', 2, 'tres')
app.msgbox(msg)
msg = {'nombre': 'Teresa'}
app.msgbox(msg)
app.msgbox(app)
return
Capturar cualquier error que se produzca al ejecutar una macro.
@app.catch_exception
def test_capturar_error():
r = 1 / 0
return
11/08/2022 18:44:36 - ERROR - test_capturar_error
Traceback (most recent call last):
File "/home/mau/.config/libreoffice/4/user/Scripts/python/pythonpath/easymacro/easytools.py", line 115, in func
return f(*args, **kwargs)
File "/home/mau/.config/libreoffice/4/user/Scripts/python/test.py", line 18, in test_capturar_error
r = 1 / 0
ZeroDivisionError: division by zero
Usa este método solo en tiempo de desarrollo. No la uses en producción.
MRI es la mejor extensión para inspeccionar cualquier objeto UNO de LibreOffice. Necesita instalarla primero para poder llamarla.
def inspeccionar_objeto():
obj = app.active
app.mri(obj)
return
Inspeccionar un objeto.
def inspeccionar_objeto():
doc = app.active
data = app.inspect(doc)
for p in data.properties:
app.debug(p)
for m in data.methods:
app.debug(m)
return
Vaciar en una hoja de calculo.
def inspeccionar_objeto():
doc = app.active
app.inspect(doc, True)
return