alfiop78 / web-bi

0 stars 0 forks source link

Elaborazione del report modificato #170

Closed alfiop78 closed 7 months ago

alfiop78 commented 8 months ago

Un datamart WEBBI* già creato viene sovrascritto dall'elaborazione del report che si sta modificando. Questo comporta un disallineamento tra gli oggetti impostati sul report e il datamart (es.: colonne o metriche non corrispondenti)

Soluzione Creare il datamart con userId legato al nome _WEB_BI_timestampuserId, in questo modo ogni utente ha la sua copia del datamart. Le modifiche effettuate sul report sono sempre in locale, e la Dashboard visualizza sempre il report pubblicato

alfiop78 commented 8 months ago

Aggiungere il tasto pubblica per versionare (renderlo disponibile in bi_sheets) il report.

Il report avrà l'ID dello user che lo modifica, il datamart che verrà creato sarà _WEB_BI_timestampuserId .

Lo user id : 1 crea un report, lo esegue e viene creato il datamart _WEB_BI_timestamp1, successivamente lo user id 2 scarica in locale il report e lo modifica, lo esegue e verrà creato un nuovo datamart _WEB_BI_timestamp2. Se lo user id :2 non effettua nessuna modifica e apre il report, verrà visualizzato il _WEB_BI_timestamp1 dello user id : 1, perché è l'ultima versione del report.

In bi_sheets deve esserci sempre e solo l'ultima versione del report.

In questo modo la cache del report, che è utilizzato in una Dashboard, non viene invalidata e allo stesso tempo, può avere, in locale, una versione diversa del report oppure l'originale.

Per aggiornare la Dashboard con il nuovo report si dovrà aprire la Dashboard (init-dashboard-create.js) e pubblicare la Dashboard per effettuare il COPY_TABLE dal _WEB_BI_timestampuserId al _WEB_BItimestamp