Totali Matrice erronei

Il software per la BI di Microsoft, leader nel mercato

FurioP
Messaggi: 32 | Topic creati
Iscritto il: lun 6 mag 2024, 16:47

Totali Matrice erronei

Messaggio da FurioP »

grazie per la preziosa informazione; non essendo ancora esperto di sintassi (e facendomi aiutare dall'AI per comprendere più che altro la logica) il "suggerimento" che mi viene indicato è il seguente:

Codice: Seleziona tutto

SLA Penale AGV L25 = 
VAR TempTable =
    ADDCOLUMNS(
        SUMMARIZE(
            'Siti Attività',
            'Siti Attività'[Sito Area],
            'calendario'[Date],
            "SLA AGV L25", [Calcola SLA AGV L25],
            "Costo Lotto L25 AGV", [Calcola Costo Lotto L25 AGV]
        ),
        "Penale", 
        IF(
            [SLA AGV L25] <= 0.92,
            IF(
                (0.92 - [SLA AGV L25]) * [Costo Lotto L25 AGV] < 0,
                [Costo Lotto L25 AGV],
                (0.92 - [SLA AGV L25]) * [Costo Lotto L25 AGV]
            ),
            0
        )
    )
RETURN
    SUMX(
        TempTable,
        [Penale]
    )
da quello che capisco, nella prima parte, lui "virtualizza" la tabella a cui applicare la misura; in questo modo anche in assenza di colonne riferimento della tabella per la misura (ad esempio il Sito Area) il calcolo sarà corretto perché riferito alle "coordinate" virtualizzate. In pratica è una tabella in una linea di comando DAX?


Avatar utente

Andrea90
Messaggi: 2324 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 679 volte
Contatta:

Totali Matrice erronei

Messaggio da Andrea90 »

@FurioP,

Si è una virtualizzazione di tabella... al livello di dettaglio che tu desideri considerando il contesto valutativo presente.

Ho sottolineato quella parte così da farti porre l'attenzione su quello che stai eseguendo con quel calcolo suggerito dall'AI.

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
FurioP
Messaggi: 32 | Topic creati
Iscritto il: lun 6 mag 2024, 16:47

Totali Matrice erronei

Messaggio da FurioP »

anche se, essendo il calendario un tabelle ulteriore, genera un errore di relazione che devo risolvere penso
Avatar utente

Andrea90
Messaggi: 2324 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 679 volte
Contatta:

Totali Matrice erronei

Messaggio da Andrea90 »

FurioP ha scritto: mar 7 mag 2024, 11:06 genera un errore di relazione
non capisco a cosa ti riferisci...

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
FurioP
Messaggi: 32 | Topic creati
Iscritto il: lun 6 mag 2024, 16:47

Totali Matrice erronei

Messaggio da FurioP »

la parte temporale, le date e i mesi, sono presi da una calendario, che sta in relazione con la colonna "data" della tabella su cui si bassano le misure.

ho quindi usato la colonna data della tabella (visto che è relazionata con il calendario a sua volta) e il risultato è interessante:

formula usata:

Codice: Seleziona tutto

SLA Penale AGV L25 test = 
VAR TempTable =
    ADDCOLUMNS(
        SUMMARIZE(
            'tab_L25',
            'tab_L25'[sito],
            'tab_L25'[data],
            "SLA AGV L25", [SLA AGV L25],
            "Costo Lotto L25 AGV", [Costo Lotto L25 AGV]
        ),
        "Penale", 
        IF(
            [SLA AGV L25] <= 0.92,
            IF(
                (0.92 - [SLA AGV L25]) * [Costo Lotto L25 AGV] < 0,
                [Costo Lotto L25 AGV],
                (0.92 - [SLA AGV L25]) * [Costo Lotto L25 AGV]
            ),
            0
        )
    )
RETURN
    SUMX(
        TempTable,
        [Penale]
    )
Risultato comparato:

Immagine

I risultati per riga sono diverso, ma i totali della nuova misura esatti...che forse la formula originale fosse fuori mira di suo?
Avatar utente

Andrea90
Messaggi: 2324 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 679 volte
Contatta:

Totali Matrice erronei

Messaggio da Andrea90 »

@FurioP,
FurioP ha scritto: mar 7 mag 2024, 11:33 che sta in relazione con la colonna "data" della tabella su cui si bassano le misure.
Se le tabelle sono messe in relazione tu puoi fare il summarize della tabella dei fatti ed estrarre anche i campi delle altre tabelle ad essa relazionate.

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
FurioP
Messaggi: 32 | Topic creati
Iscritto il: lun 6 mag 2024, 16:47

Totali Matrice erronei

Messaggio da FurioP »

purtroppo, la misura usata con la funziona SUMMARIZE e ADDCOLUM, genera valori singoli e totali coerenti ma ambigui, o meglio, fuori dal contesto della misure.
Faccio un Esempio:

Mese Marzo / Città Torino: la misura SLA Malus restituisce una cifra pari a 1.555,95€ , mentre la nuova misura (di cui sopra) 1.730,82€.

facciamo un passo indietro: come si arriva a questa misura? è un rapporto percentuale, chiamata appunto SLA AGV L25, che si misura in con un rapporto tra altre misure e restituisce una percentuale:

Codice: Seleziona tutto

SLA AGV L25 = 
IF(
    AND([Audit NC AGV L25] = 0, [Audit Validi AGV L25] >= 1),
    1.0,
    IF(
        [Audit NC AGV L25] = 0,
        "-",
        1 - DIVIDE([Audit NC AGV L25], [Audit Validi AGV L25])
    )
)
Audit NC AGV L25 = 9
Audit Validi AGV L25= 60
1−(9/60)​=1−0.15=0.85


la percentuale in questo caso è 85,00%. Ora, la "penale" calcolata per cifre inferiori a 0.92 è la differenza delle tue moltiplicata per il "costo lotto", ovvero un semplice tariffario, il cui valore in questo caso (costo attività * attività scolte) è di 22.185€.
Oggettivamente quindi:

0.92−0.85=0.07 -- > 22185×0.07=1552.95

è quindi giusto il risultato della misura originaria a livello algebrico..
sono abbastanza confuso
Avatar utente

Andrea90
Messaggi: 2324 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 679 volte
Contatta:

Totali Matrice erronei

Messaggio da Andrea90 »

FurioP ha scritto: mar 7 mag 2024, 12:20 sono abbastanza confuso
Con il DAX non ci sono vie facili... la teoria che ci sta dietro la devi conoscere... non puoi copiare ed incollare pezzi di codice qua e la senza prima studiarteli.

Se guardi qualche messaggio prima ti avevo sottolineato una frase .... hai capito cosa intendevo?
Era riferita al codice che Chat Gpt ti aveva suggerito e che tu hai applicato...

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
FurioP
Messaggi: 32 | Topic creati
Iscritto il: lun 6 mag 2024, 16:47

Totali Matrice erronei

Messaggio da FurioP »

si si appunto, proprio questa era la questione determinante: tutte le misure sono state generate senza quel tipo di elemento virtualizzante, quindi l'errore deve essere annidato in tutte le formule che stanno alla base delle altre e che hanno bisogno di quella correzione...ora è chiaro!
Avatar utente

Andrea90
Messaggi: 2324 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 679 volte
Contatta:

Totali Matrice erronei

Messaggio da Andrea90 »

@FurioP,

In realtà mi riferivo anche ad un altro aspetto... Tu nel report hai il campo [Sito] e poi il campo [Mese]... Nella tua misura che hai preso da chat gpt che campi hai dentro la tabella virtualizzata?

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link
Rispondi