preparar_json del 501 reventaba (TypeError/AttributeError) cuando
OPCIONDESTINO o CLAVETRANSFER venian NULL: get(k, "") no protege porque
un NULL de BD llega como None y el default no aplica. Pasa con pedimentos
que baja SCAII_Sync (dejan esos campos en NULL); WinDev los llenaba. Se
usa "or ''" en SCAII y SCAF.
Ademas, el hilo de sincronizacion tragaba la excepcion con print (invisible
en el exe windowed), por lo que parecia un cuelgue. Ahora se registra en
el log con traza (log.error exc_info).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
agregar_fila envolvia la construccion de la fila sin manejo de error, y
un fallo (p.ej. icons.json ausente) se perdia en silencio dejando la
tabla vacia. Se agrega try/except con log y traza de la fila agregada.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>