Pagina 2 di 2

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mar 12 ott 2021, 16:42
da alex77
Grazie Enrico Galli
Mi pare di aver capito. Vedo di risolvere i miei problemi con topn e procedo con i passaggi che mi consigli. Domani tento e poi ti do un ritorno (spero positivo)!

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 9:24
da alex77
Ciao Enrico Galli ,
mi spiace continuare a chiedere aiuto, ma non è che non mi stia applicando... anzi, direi...
Creo il primo step della tabella temporanea come di seguito, ma non riesco ad applicare TOPN, in primis perchè se provo ad applicarlo sulla variabile vSettimaneProduzione, non so come richiamare la colonna "AnnoSettimana" (ho letto da qualche parte su dax guide che sostanzialmente non si può richiamare una colonna di una variabile "tabella" creata precedentemente), poi ammesso che potessi farlo, il parametro "orderby" di TOPN deve essere un'espressione? (tipo max([AnnoSettimana]))

Codice: Seleziona tutto

DAX.CalendarioProduzione = 

VAR vSettimaneProduzione = SELECTCOLUMNS(
                                        filter(
                                            ADDCOLUMNS(
                                                SUMMARIZE(dimCalendario,dimCalendario[AnnoSettimana]),
                                            "QtaTot",[dax.cabine prodotte]),
                                        [QtaTot]>0),
                            "AnnoSettimana",[AnnoSettimana])

RETURN
vSettimaneProduzione
Detto questo mi pareva di capire dal tuo ultimo post di suggerimenti che per creare la tabella temporanea dovevo utilizzare la variabile precedentemente creata max([AnnoSettimana]) e qui devo dire che sarei ancora più in crisi... Help, se puoi!

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 9:44
da Enrico Galli
Ciao, senza un file su cui fare delle prove è veramente difficile.... prova così, a braccio:

Codice: Seleziona tutto

VAR maxdata = MAX ( dimCalendario[AnnoSettimana] )
VAR tmptable =
	SELECTCOLUMNS(
		TOPN (
			4,
			FILTER(
				ADDCOLUMNS(
					ALL ( dimCalendario[AnnoSettimana] ),
					"QtaTot",[dax.cabine prodotte]
				),
				[QtaTot] > 0 &&
				dimCalendario[AnnoSettimana] <= maxdata
			),
			[AnnoSettimana], DESC
		),
		"AnnoSettimana",[AnnoSettimana]
	)
RETURN 
	CALCULATE ( [dax.cabine prodotte], REMOVEFILTERS ( dimCalendario ), tmptable )

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 10:09
da alex77
Enrico Galli Grazie!!!
Quando non vai a braccio non so che miracoli tu possa fare.
Devo dire che non ero proprio lontano, ma mi sa che devo superare un po' il timore di annidare formule su formule e di perdermici dentro :mrgreen:
Il risultato ha qualche difettino, ma non dico neanche cosa e provo a lavorarci su io intanto, con la speranza (anche per te :lol: )di non dover tornare qui

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 10:11
da Enrico Galli
Beh, anche se riuscissi da solo nell'intento, mi farebbe comunque piacere sapere cosa hai dovuto modificare :wave:

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 10:38
da alex77
Ciao eccomi qui, stavo per scrivere comunque, perchè può tornare comodo anche ad altri, ma sicuro mi fa piacere darti anche, giustamente, un feedback visto che mi hai tirato fuori da un problema che io da solo... mai e poi mai avrei risolto!
Con la tua formula originale (nell'immagine "Dax.Prova") nelle settimane in cui non c'era produzione mi dava il cumulato delle settimane precedenti.
Ho banalmente aggiustato (non so se sia la strada più corretta, ma mi sembra funzionare, quindi... ) così (risultato in DAX.Tempo Assegnato Cum):

Codice: Seleziona tutto

	if([DAX.Tempo Assegnato]>0,CALCULATE ( [DAX.Tempo Assegnato], REMOVEFILTERS ( dimCalendario ), tmptable))
Immagine

Ho un dubbio: se faccio drill up sul mese, la formula, per come è fatta, combinerà pasticci? Un numero vedo che lo dà, ma come excel, "un numero lo dà sempre", che poi sia giusto... :mrgreen:

Grazie ancora!

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 11:54
da Enrico Galli
La tua soluzione è perfetta, si fa sempre così ;-)
Se fai drill up sul mese, la formula guarderà qual è l'ultimo AnnoSettimana visibile in quel mese, e farà l'operazione andando a ritroso di N settimane fino a trovarne 4 da sommare con qta > 0. Se è questa l'operazione che ti aspetti, dovresti essere ok...

Calcolo efficienza cumulata su settimane effettivamente lavorate

Inviato: mer 13 ott 2021, 12:05
da alex77
Ciao Enrico Galli ,
sì mi sono accorto, guardando con un attimo di calma, di quale risultato ottengo con il drill up. E no, non è quello che mi aspetto (a ben pensarci non so neanche cosa mi aspettassi :mrgreen: ). Mi sa che metterò quindi due grafici, uno con efficienza puntuale mensile e uno con efficienza puntuale e cumulata per settimana.

Grazie ancora per l'assistenza

PS:
1. per dovere di cronaca, in TOPN al posto di mettere le 4 settimane fisse, ho inserito il valore di un parametro, in modo da poter avere una media mobile "a scelta"
2. per selezionare le settimane "con produzione" ho corretto la tabella temporanea testando le ore di presenza in linea e non la quantità prodotta, perchè, giustamente, capita che ci siano operatori, ma che in quella settimana non esca nessun prodotto finito, ma quella settimana mi deve entrare nel calcolo.