Ho lavorato un po senza portare aggiornamenti ma ora penso di essere a buon punto con una versione collaudata e stabile, la attuale versione ha subito molti cambiamenti , da quelli piú visibili come l’aspetto grafico alla rivisitazione della struttura dei dati.
Come é riportato nella documentazione delle API di SolarMan le richieste al Cloud totali sono limitate a 10000 l’anno , cose di cui ero già venuto a conoscenza ma a cui non avevo fatto molta attenzione con le prime versioni, ma poi alla fine ho dovuto seriamente gestire e ottimizare le richieste dei dati a SolarMan visto che ad ogni sincronizzazione con il Cloud il contatore viene decurtato di 3.
La decrementandone di 3 é dovuto a la richiesta dei dati del Report Dettagliato, Report Giornaliero e Aggiornamento del Report Mensile e in oltre ho scoperto che i dati del report Dettagliato rimangono sul Cloud solo per 6 mesi e i dati del report Giornaliero rimangono sul Cloud solo per 12 mesi mentre no non sono a conoscenza di quanto rimangono salvati i dati del report Mensile.
Con le precedenti versioni avevo fatto un database dove salvavo tutte le richieste e le riposte dal server di SolarMan, ma cosi facendo mi sono trovato ad Agosto un database abbastanza voluminoso e i implementando un backup compresso che vine eseguito in automatico alla apertura del programma e anche dopo la sincronizzazione mi sono reso conto che i tempi di esecuzione del backup era abbastanza lunghi.
Cercando la causa e ottimizzando l’algoritmo di compressione mi sono reso conto che il database era diventato 2.63Gb per aver archiviato 7 mesi di dati , ma dopo un attenta verifica mi sono reso conto che i dati reali erano solo 398Mb e tutto il resto era dovuto dallo storico delle richieste e risposte con il server di SolarMan a questo punto ho diviso il database con un archivio pysolarman.db dove sono presenti tutti i dati numerici per costruire i grafici e fare eustatiche e ho creati tanti database mensili cloud_raw.db dove risiedono solo le richieste e risposte delle comunicazioni con SolarMan.
Dopo questa ottimizzazione nel backup non vengono archiviati i file cloud_raw ma solo i file di configurazione e il database centrale cosi facendo i tempi di attesa sono di 1 ~ 3 sec. e il file di backup é di sili 88Mb.
Poi sono state sistemate alcune funzioni e ho corretto l’interfaccia , ma proseguendo mi sono reso conto che l’interfaccia usando tkinter sono molto limitanti e non sono ottimizzate per usare i computer moderni e dopo una ricerca ho testato le librerie grafiche Qt che sono ottime ma richiedono un pagamento , cosi sono passato alle librerie PySide6 che sono le librerie Qt ma solo con codice libero e dopo una riscrittura con conseguenti rettifiche e modifiche questo é l’attuale stato.
Interfaccia con grafica Leggera e lenta usando tkinter.

Interfaccia con grafica veloce usando pyside6
