Oggetto visivo per immettere un parametro nelle tabelle L’argomento è risolto
-
- Messaggi: 6 | Topic creati
- Iscritto il: gio 21 set 2023, 16:01
Oggetto visivo per immettere un parametro nelle tabelle
Buongiorno,
ho la seguente necessità: dovendo conteggiare la durata di un evento, vorrei dare modo all'utente di variare il range di date (inizio e fine) e fare in modo che queste date vengano usate per i calcoli della durata dell'evento in quel range di date.
Faccio un esempio:
L'attvità1 dura dal 20/01/2023 al 06/07/2023
L'utente desidera sapere quanti giorni è stata attiva nel periodo 01/06/23-15/06/23
Su excel è facile da gestire:
Si creano 2 celle dove inserire le due date inizio/fine del report e poi si calcola
Durata= min(15/06/23;06/07/23) - max(01/06/23;20/01/23)
Tralasciando i casi di durate negative, che verranno poi eliminate, si calcola agevolmente la durata.
In powe bi sono riuscito con un workaround, usando un calendario che viene agganciato nel filtro della dashboard, ma così facendo sono obbligato ad avere una permutazione di tutte le date per tutte le attività; per ogni incrocio calcolo e poi usando il filtro aggrego solo per quello che interessa. Funziona, ma è poco elegante e il db diventa troppo pesante.
Esiste qualcosa per fare in modo che l'utente possa selezionare le date (01/06 e 15/06 dell'esempio) e che queste diventino 2 colonne delle tabella dove ho tutte le attività?
In questo modo avrei un'attività per riga con le sue date di inizio e fine attività e ulteriori 2 date di inizio fine report.
Un'ulteriore colonna verrebbe usata per calcolare la durata nel range di date del report (con la stessa formula, o simile, che userei in excel).
Ringrazio anticipatamente chi vorrà e saprà aiutarmi.
Grazie
ho la seguente necessità: dovendo conteggiare la durata di un evento, vorrei dare modo all'utente di variare il range di date (inizio e fine) e fare in modo che queste date vengano usate per i calcoli della durata dell'evento in quel range di date.
Faccio un esempio:
L'attvità1 dura dal 20/01/2023 al 06/07/2023
L'utente desidera sapere quanti giorni è stata attiva nel periodo 01/06/23-15/06/23
Su excel è facile da gestire:
Si creano 2 celle dove inserire le due date inizio/fine del report e poi si calcola
Durata= min(15/06/23;06/07/23) - max(01/06/23;20/01/23)
Tralasciando i casi di durate negative, che verranno poi eliminate, si calcola agevolmente la durata.
In powe bi sono riuscito con un workaround, usando un calendario che viene agganciato nel filtro della dashboard, ma così facendo sono obbligato ad avere una permutazione di tutte le date per tutte le attività; per ogni incrocio calcolo e poi usando il filtro aggrego solo per quello che interessa. Funziona, ma è poco elegante e il db diventa troppo pesante.
Esiste qualcosa per fare in modo che l'utente possa selezionare le date (01/06 e 15/06 dell'esempio) e che queste diventino 2 colonne delle tabella dove ho tutte le attività?
In questo modo avrei un'attività per riga con le sue date di inizio e fine attività e ulteriori 2 date di inizio fine report.
Un'ulteriore colonna verrebbe usata per calcolare la durata nel range di date del report (con la stessa formula, o simile, che userei in excel).
Ringrazio anticipatamente chi vorrà e saprà aiutarmi.
Grazie
-
- Messaggi: 2318 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 677 volte
- Contatta:
-
Autore del topic - Messaggi: 6 | Topic creati
- Iscritto il: gio 21 set 2023, 16:01
Oggetto visivo per immettere un parametro nelle tabelle
Buongiorno Andrea,
ho caricato un file excel di esempio, la logica da applicare è quella del file.
In Power BI avrei trovato anche un'altra soluzione: l'utente modifica un file excel contenente le due date del range del report, ma non è quello che vorrei.
Grazie.
Andrea
ho caricato un file excel di esempio, la logica da applicare è quella del file.
In Power BI avrei trovato anche un'altra soluzione: l'utente modifica un file excel contenente le due date del range del report, ma non è quello che vorrei.
Grazie.
Andrea
- Allegati
-
- Range di date in power bi.xlsx
- (11.54 KiB) Scaricato 139 volte
-
- Messaggi: 2318 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 677 volte
- Contatta:
Oggetto visivo per immettere un parametro nelle tabelle
@Andrea77R,
Puoi creare una tabella Calendario che sia scollegata rispetto alla tabella che contiene i dati.
Lo slicer con le date lo crei con il campo data della tabella Calendario così da avere a disposizione tutte quelle che ti servono.
Poi per calcolare la durata puoi usare una logica simile:
Per il numero di attività non so che logiche vuoi utilizzare, ma comunque la logica potrebbe essere simile a quella che ti ho mostrato nella precedente misura.
Andrea
Puoi creare una tabella Calendario che sia scollegata rispetto alla tabella che contiene i dati.
Lo slicer con le date lo crei con il campo data della tabella Calendario così da avere a disposizione tutte quelle che ti servono.
Poi per calcolare la durata puoi usare una logica simile:
Codice: Seleziona tutto
=
VAR MaxDate =
MAX ( 'Calendar'[Data] )
VAR MinDate =
MIN ( 'Calendar'[Data] )
VAR Result =
SUMX (
VALUES ( Dati ),
VAR value_t =
MIN ( MaxDate, Dati[Fine] ) - MAX ( MinDate, Dati[Inzio] )
VAR result =
IF ( value_t < 0, 0, value_t )
RETURN
result
)
RETURN
Result
Andrea
-
Autore del topic - Messaggi: 6 | Topic creati
- Iscritto il: gio 21 set 2023, 16:01
Oggetto visivo per immettere un parametro nelle tabelle
Grazie per il tempo dedicato e grazie per la pulizia nel codice.
Nel fine settimana lo applico subito.
Immaginavo servisse qualcosa che fungesse da variabile, ma leggendo online non sono riuscito a trovare nulla che riuscissi a capire e/o mettere in pratica.
Passami il paragone, è un po' come nel VBA di excel dove si chiarano le variabili da usare successivamente.
Grazie ancora e buon fine settimana.
Andrea
Nel fine settimana lo applico subito.
Immaginavo servisse qualcosa che fungesse da variabile, ma leggendo online non sono riuscito a trovare nulla che riuscissi a capire e/o mettere in pratica.
Passami il paragone, è un po' come nel VBA di excel dove si chiarano le variabili da usare successivamente.
Grazie ancora e buon fine settimana.
Andrea
-
- Messaggi: 2318 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 677 volte
- Contatta:
Oggetto visivo per immettere un parametro nelle tabelle
@Andrea77R,
Giusto per essere chiari, l'approccio che propongo è completamente diverso dalla tua idea iniziale, non modifico le tabelle che hai nel modello dati aggiungendo colonne. Creo una tabella calendario slegata dalla tua tabella dati utilizzandola solamente come campo filtro per permettere all'utente di selezionare il range di date desiderato.
Il resto è una misura DAX
Andrea
Giusto per essere chiari, l'approccio che propongo è completamente diverso dalla tua idea iniziale, non modifico le tabelle che hai nel modello dati aggiungendo colonne. Creo una tabella calendario slegata dalla tua tabella dati utilizzandola solamente come campo filtro per permettere all'utente di selezionare il range di date desiderato.
Il resto è una misura DAX
Andrea
-
Autore del topic - Messaggi: 6 | Topic creati
- Iscritto il: gio 21 set 2023, 16:01
Oggetto visivo per immettere un parametro nelle tabelle
La precisazione è stata provvidenziale!
"il resto è una misura DAX" mi aperto la mente, stavo già impazzendo per capire dove andare a scrivere quel codice.
Volevo scriverlo come campo di una nuova colonna dove ho i dati.
Funziona!
Ho solo aggiunto un +1 nella data max, perchè il range di date deve iniziare dalle 00:00 del primo giorno e finire alle 23:59 dell'ultimo giorno
"il resto è una misura DAX" mi aperto la mente, stavo già impazzendo per capire dove andare a scrivere quel codice.
Volevo scriverlo come campo di una nuova colonna dove ho i dati.
Funziona!
Ho solo aggiunto un +1 nella data max, perchè il range di date deve iniziare dalle 00:00 del primo giorno e finire alle 23:59 dell'ultimo giorno
-
Autore del topic - Messaggi: 6 | Topic creati
- Iscritto il: gio 21 set 2023, 16:01
Oggetto visivo per immettere un parametro nelle tabelle
Buonasera @Andrea90
avevo testato il tuo suggerimento su un set di dati molto ridotto e funzionava.
Simulavo in parallelo con excel e power bi ed ottenevo risultati identici.
Ho caricato 2 anni (2022 e 2023) e fatto qualche test, ma non mi tornano più i numeri con quanto già fatto in excel.
Allora sono andato ad indagare i casi anomali, in particolare quelli per i quali veniva conteggiato qualcosa anche per periodi non compresi nel range dello slicer.
Nel file allegato ho messo due viste ricavate filtrando la stessa targa.
Nella prima immagine si vedono due "movimenti" della vettura: una manutenzione che inizia il 19/11/22 e finisce il 31/01/24, poi l'auto è disponibile dal 31/01/24 fino al 31/12/30 (in realtà ce ne sono molti altri prima, ma è corretto che vengano conteggiati).
Si vede anche la misura creata con la tua regola.
Nell'immagine seguente il range di date è fino al 31/12/23.
La data dello slicer è quella del Calendario.
Cosa mi aspetto? Che il 2024 e seguenti vadano sempre a zero.
Ho seguito pedissequamente il tuo consiglio, apportando gli aggiustamenti del caso.
Dove sbaglio?
Grazie per il supporto.
Andrea
avevo testato il tuo suggerimento su un set di dati molto ridotto e funzionava.
Simulavo in parallelo con excel e power bi ed ottenevo risultati identici.
Ho caricato 2 anni (2022 e 2023) e fatto qualche test, ma non mi tornano più i numeri con quanto già fatto in excel.
Allora sono andato ad indagare i casi anomali, in particolare quelli per i quali veniva conteggiato qualcosa anche per periodi non compresi nel range dello slicer.
Nel file allegato ho messo due viste ricavate filtrando la stessa targa.
Nella prima immagine si vedono due "movimenti" della vettura: una manutenzione che inizia il 19/11/22 e finisce il 31/01/24, poi l'auto è disponibile dal 31/01/24 fino al 31/12/30 (in realtà ce ne sono molti altri prima, ma è corretto che vengano conteggiati).
Si vede anche la misura creata con la tua regola.
Nell'immagine seguente il range di date è fino al 31/12/23.
La data dello slicer è quella del Calendario.
Cosa mi aspetto? Che il 2024 e seguenti vadano sempre a zero.
Ho seguito pedissequamente il tuo consiglio, apportando gli aggiustamenti del caso.
Dove sbaglio?
Grazie per il supporto.
Andrea
- Allegati
-
- Slicer e misura.pptx
- (212.17 KiB) Scaricato 219 volte
-
- Messaggi: 2318 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 677 volte
- Contatta:
Oggetto visivo per immettere un parametro nelle tabelle
@Andrea77R,
File PDF, immagini, Power Point, Word, ecc ecc sono del tutto inutili.
Se vuoi un aiuto mirato devi allegare un file demo con i dati a sufficienza per mostrare l'errore che riscontri, ed il risultato desiderato scritto a mano.
Andrea
File PDF, immagini, Power Point, Word, ecc ecc sono del tutto inutili.
Se vuoi un aiuto mirato devi allegare un file demo con i dati a sufficienza per mostrare l'errore che riscontri, ed il risultato desiderato scritto a mano.
Andrea
-
Autore del topic - Messaggi: 6 | Topic creati
- Iscritto il: gio 21 set 2023, 16:01
Oggetto visivo per immettere un parametro nelle tabelle
@Andrea90
Perdonami per la perdita di tempo e grazie per la pazienza.
Ho sbagliato io nella scelta del campo data per costruire la matrice: non era quello dello slicer ma quello della tabella dati.
Correttamente mi rappresentava il dato aggregando per quel campo.
Power BI faceva la cosa giusta, ero io a chiedergli quella sbagliata per la mia necessità.
Grazie ancora
Perdonami per la perdita di tempo e grazie per la pazienza.
Ho sbagliato io nella scelta del campo data per costruire la matrice: non era quello dello slicer ma quello della tabella dati.
Correttamente mi rappresentava il dato aggregando per quel campo.
Power BI faceva la cosa giusta, ero io a chiedergli quella sbagliata per la mia necessità.
Grazie ancora