Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola
Quiero calcular el recuento de ocurrencias para Red para cada cliente. Si el nuevo cliente lo agregó de nuevo debe contar para el nuevo cliente. A continuación se muestra el conjunto de datos:
UC ID | Fecha | Bandera general | Bandera roja (salida) |
C1 | 31-Enero-20 | Rojo | 1 |
C1 | 29-Feb-20 | Verde | 0 |
C1 | 31-Mar-20 | Verde | 0 |
C1 | 30-Abr-20 | Verde | 0 |
C1 | 31-Mayo-20 | Rojo | 1 |
C1 | 30-Jun-20 | Verde | 0 |
C1 | 31-Jul-20 | Verde | 0 |
C1 | 31-Aug-20 | Verde | 0 |
C1 | 30-Sep-20 | Verde | 0 |
C1 | 31-Oct-20 | Rojo | 1 |
C1 | 30-Nov-20 | Rojo | 2 |
C1 | 31-Dic-20 | Rojo | 3 |
C2 | 31-Enero-20 | Rojo | 1 |
C2 | 29-Feb-20 | Rojo | 2 |
C2 | 31-Mar-20 | Rojo | 3 |
C2 | 30-Abr-20 | Verde | 0 |
C2 | 31-Mayo-20 | Verde | 0 |
C2 | 30-Jun-20 | Verde | 0 |
C2 | 31-Jul-20 | Rojo | 1 |
C2 | 31-Aug-20 | Rojo | 2 |
C2 | 30-Sep-20 | Rojo | 3 |
C2 | 31-Oct-20 | Rojo | 4 |
C2 | 30-Nov-20 | Rojo | 5 |
C2 | 31-Dic-20 | Rojo | 6 |
Solved! Go to Solution.
Hola @Sriku ,
En primer lugar, cree una columna de índice;
A continuación, cree 3 columnas como se indica a continuación:
Rank =
var _beforeflag=CALCULATE(MAX('Table'[Overall Flag]),FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Index]=EARLIER('Table'[Index])-1))
Return
IF('Table'[Overall Flag]<>"Red",0,IF('Table'[Overall Flag]="Red"&&_beforeflag<>"Red",1,
RANKX(FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Overall Flag]="Red"),'Table'[Date],,ASC,Dense))
)
_index =
var _previousrank=CALCULATE(MAX('Table'[Rank]),FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Index]=EARLIER('Table'[Index])-1))
var _diff='Table'[Rank]-_previousrank
var _index=IF(_diff>1,'Table'[Index],BLANK())
Return
_index
New Rank =
var _index=CALCULATE(MAX('Table'[_index]),FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])))
Return
IF('Table'[Index]>=_index,RANKX(FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Index]>=_index),'Table'[Index],,ASC,Dense)+1,'Table'[Rank])
Y verás:
Para el archivo .pbix relacionado, pls ver adjunto.
Hola @Sriku ,
En primer lugar, cree una columna de índice;
A continuación, cree 3 columnas como se indica a continuación:
Rank =
var _beforeflag=CALCULATE(MAX('Table'[Overall Flag]),FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Index]=EARLIER('Table'[Index])-1))
Return
IF('Table'[Overall Flag]<>"Red",0,IF('Table'[Overall Flag]="Red"&&_beforeflag<>"Red",1,
RANKX(FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Overall Flag]="Red"),'Table'[Date],,ASC,Dense))
)
_index =
var _previousrank=CALCULATE(MAX('Table'[Rank]),FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Index]=EARLIER('Table'[Index])-1))
var _diff='Table'[Rank]-_previousrank
var _index=IF(_diff>1,'Table'[Index],BLANK())
Return
_index
New Rank =
var _index=CALCULATE(MAX('Table'[_index]),FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])))
Return
IF('Table'[Index]>=_index,RANKX(FILTER('Table','Table'[UC ID]=EARLIER('Table'[UC ID])&&'Table'[Index]>=_index),'Table'[Index],,ASC,Dense)+1,'Table'[Rank])
Y verás:
Para el archivo .pbix relacionado, pls ver adjunto.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |