calcolare fatturato medio di acquisto giornaliero L’argomento è risolto
-
- Messaggi: 54 | Topic creati
- Iscritto il: lun 19 ott 2020, 22:24
- Luogo: bareggio
- Ringraziato: 2 volte
calcolare fatturato medio di acquisto giornaliero
Buongiorno a tutti ho elebaorato una formula dax per calcolare il fatturato medio giornaliero ma non mmi tornarno i numeri la formula è la seguente:
fatturato_acquisto_medio_giornaliero =
DIVIDE([fatturato_fornitorenew],
CALCULATE(COUNT(data_ordine__[Date]),
FILTER(data_ordine__,data_ordine__[Date]<=DATE(2023,12,31))))
non capisco se devo anche inserire anche una data di partenza nel calcolo la data degli ordini inizia dal 2014
[Fatturato_fornitorenew ]è una semplice sum scritta così (SUM('ordini _acquisto_righe_tutti'[valore totale riga]))
grazie in anticipo
saluti
Silvestro
fatturato_acquisto_medio_giornaliero =
DIVIDE([fatturato_fornitorenew],
CALCULATE(COUNT(data_ordine__[Date]),
FILTER(data_ordine__,data_ordine__[Date]<=DATE(2023,12,31))))
non capisco se devo anche inserire anche una data di partenza nel calcolo la data degli ordini inizia dal 2014
[Fatturato_fornitorenew ]è una semplice sum scritta così (SUM('ordini _acquisto_righe_tutti'[valore totale riga]))
grazie in anticipo
saluti
Silvestro
-
- Messaggi: 2237 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 671 volte
- Contatta:
calcolare fatturato medio di acquisto giornaliero
schenas,
Il codice va scritto utilizzando gli appositi tag code:
Non vedendo il modello dati, ne il report che stai cercando di costruire (e serve un file demo, no immagini no descrizioni elaborate, ecc) si fa fatica a darti una mano.
Comunque per iniziare perché hai utilizzato questa sintassi:
Sai dirmi cosa riporta come valore quel "data_ordine__" ?
La risposta alla domanda che ti ho fatto serve per comprendere se conosci la teoria alla base del DAX (contesto filtro), e delle relazioni tra tabelle (nel caso in cui tu abbia previsto una tabella Calendario - cosa che non possiamo sapere senza appunto un file demo).
Andrea
Il codice va scritto utilizzando gli appositi tag code:
Codice: Seleziona tutto
fatturato_acquisto_medio_giornaliero =
DIVIDE (
[fatturato_fornitorenew],
CALCULATE (
COUNT ( data_ordine__[Date] ),
FILTER ( data_ordine__, data_ordine__[Date] <= DATE ( 2023, 12, 31 ) )
)
)
Comunque per iniziare perché hai utilizzato questa sintassi:
Codice: Seleziona tutto
FILTER ( data_ordine__, ....)
La risposta alla domanda che ti ho fatto serve per comprendere se conosci la teoria alla base del DAX (contesto filtro), e delle relazioni tra tabelle (nel caso in cui tu abbia previsto una tabella Calendario - cosa che non possiamo sapere senza appunto un file demo).
Andrea
-
Autore del topic - Messaggi: 54 | Topic creati
- Iscritto il: lun 19 ott 2020, 22:24
- Luogo: bareggio
- Ringraziato: 2 volte
calcolare fatturato medio di acquisto giornaliero
Ciao Andrea data ordine è una colonna della tabella calendario collegata molti a uno con la data ordine della tabella dei fatti( ordini di acquisto ) il data model è collegato tra tabelle delle dimensioni e tabelle dei fatti (schema star )
Grazie
Grazie
-
- Messaggi: 2237 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 671 volte
- Contatta:
calcolare fatturato medio di acquisto giornaliero
schenas,
Dunque se quella formula la esegui in una matrice che ha ad esempio i mesi sulle righe, ti mostrerà, per ogni sua cella, solo le righe del mese corrente, che poi tu vai a filtrare sempre in riferimento ad una data fissa.
Ma ripeto, non vedendo un file demo come facciamo a dirti se quello che stai facendo è corretto oppure no?
Il DAX è un linguaggio "delicato", basta prendere un campo da una tabella piuttosto che da un'altra per stravolgerne le logiche di calcolo.
Andrea
data_ordine__ non può essere una colonna, deve essere una tabella poiché FILTER() necessita di una tabella come primo argomento. E il fatto che tu abbia scritto solo "data_ordine__" significa che stai richiamando tale tabella nel contesto filtro corrente al momento del calcolo.
Dunque se quella formula la esegui in una matrice che ha ad esempio i mesi sulle righe, ti mostrerà, per ogni sua cella, solo le righe del mese corrente, che poi tu vai a filtrare sempre in riferimento ad una data fissa.
Ma ripeto, non vedendo un file demo come facciamo a dirti se quello che stai facendo è corretto oppure no?
Il DAX è un linguaggio "delicato", basta prendere un campo da una tabella piuttosto che da un'altra per stravolgerne le logiche di calcolo.
Andrea
-
Autore del topic - Messaggi: 54 | Topic creati
- Iscritto il: lun 19 ott 2020, 22:24
- Luogo: bareggio
- Ringraziato: 2 volte
calcolare fatturato medio di acquisto giornaliero
Ciao Andrea mi sono spiegato male data ordine è una tabella calendario collegata con data ordine della tabella dei fatti
Ho ricontrollato la formula inserendo solo una volta data ordine e aprendo una parentesi graffa con date che prendo dalla tabella dei fatti
È il calcolo funziona
Ti ringrazio per l’aiuto prezioso questo dax mi fà diventare matto
Ho ricontrollato la formula inserendo solo una volta data ordine e aprendo una parentesi graffa con date che prendo dalla tabella dei fatti
È il calcolo funziona
Ti ringrazio per l’aiuto prezioso questo dax mi fà diventare matto
-
- Messaggi: 2237 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 671 volte
- Contatta:
-
Autore del topic - Messaggi: 54 | Topic creati
- Iscritto il: lun 19 ott 2020, 22:24
- Luogo: bareggio
- Ringraziato: 2 volte
calcolare fatturato medio di acquisto giornaliero
Eccolo
fatturato_acquisto_medio_giornaliero =
DIVIDE (
[fatturato_fornitorenew],
CALCULATE (
COUNT ( data_ordine__[Date] ),
FILTER ( data_ordine__,[Date] <= DATE ( 2023, 12, 31 ) )
fatturato_acquisto_medio_giornaliero =
DIVIDE (
[fatturato_fornitorenew],
CALCULATE (
COUNT ( data_ordine__[Date] ),
FILTER ( data_ordine__,[Date] <= DATE ( 2023, 12, 31 ) )
-
- Messaggi: 2237 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 671 volte
- Contatta:
calcolare fatturato medio di acquisto giornaliero
schenas,
Hai semplicemente rimosso il nome della tabella prima del campo [Date] all'interno di FILTER:
invece che:
Andrea
Sinceramente non capisco, nella misura che ha incollato (ancora una volta senza tag code - inoltre mancano due parentesi tonde di chiusura) non c'è nulla di quello che hai scritto.
Hai semplicemente rimosso il nome della tabella prima del campo [Date] all'interno di FILTER:
Codice: Seleziona tutto
FILTER ( data_ordine__, [Date] <= DATE ( 2023, 12, 31 ) )
Codice: Seleziona tutto
FILTER ( data_ordine__, data_ordine__[Date] <= DATE ( 2023, 12, 31 ) )
-
Autore del topic - Messaggi: 54 | Topic creati
- Iscritto il: lun 19 ott 2020, 22:24
- Luogo: bareggio
- Ringraziato: 2 volte
calcolare fatturato medio di acquisto giornaliero
ciao questo è quello che ho scritto
fatturato_acquisto_medio_giornaliero =
DIVIDE (
[fatturato_fornitorenew],
CALCULATE (
COUNT ( data_ordine__[Date] ),
FILTER ( data_ordine__, [Date] <= DATE ( 2023, 12, 31 ) )
)
)
non riesco ad allegarti il file devo sistemarlo x ci sono dati sensibili appena ho tempo lo allego
ho provato in excel ad analizzare 10 giorni di totale acquisto con una semplice formula di excel "media"
e mi viene lo stesso risultato con il dax
le parentesi che mancavano erano frutto di un copia ed incolla fatto dal telefonino e non mi aveva copiato tutta la formula
fatturato_acquisto_medio_giornaliero =
DIVIDE (
[fatturato_fornitorenew],
CALCULATE (
COUNT ( data_ordine__[Date] ),
FILTER ( data_ordine__, [Date] <= DATE ( 2023, 12, 31 ) )
)
)
non riesco ad allegarti il file devo sistemarlo x ci sono dati sensibili appena ho tempo lo allego
ho provato in excel ad analizzare 10 giorni di totale acquisto con una semplice formula di excel "media"
e mi viene lo stesso risultato con il dax
le parentesi che mancavano erano frutto di un copia ed incolla fatto dal telefonino e non mi aveva copiato tutta la formula