Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and a 50 percent discount on exams.
Get startedEarn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Estoy intentando marcar valores duplicados, pero solo desde el primer valor duplicado que tipo.
Hasta ahora puedo hacer que todos los duplicados se marquen usando:
Column =
Var Equipment = [Fault Equipment]
Return Calculate(If(COUNTROWS(Sheet1)>1,"Yes","No"),All(Sheet1),Sheet1[Fault Equipment]=Equipment)
Mi desafío viene en donde trato de integrar primero la fecha en esto, he intentado usar como segundo filtro el argumento de
Sheet1[FaultDate]=Calendar(Earlier(Sheet1[FaultDate].[Date]),Earlier(Sheet1[FaultDate].[Date]))
También intenté usar la función DatesBetween, pero parece que no puedo hacer que se compile. Haber intentado usar la función DateAdd, así como descomponer y volver a componer manualmente los valores de fecha
DatesBetween((Sheet1[FaultDate]),DateAdd(Earlier(Sheet1[FaultDate]),-30,DAY),Earlier(Sheet1[FaultDate])))
DatesBetween((Sheet1[FaultDate]),Date(Year(Earlier(Sheet1[FaultDate])),Month(Earlier(Sheet1[FaultDate]))-1,Day(Earlier(Sheet1[FaultDate]))),Earlier(Sheet1[FaultDate])))
FaultRef | FaultDate | Equipo de falla | Repetir | Repetir fecha |
1 | 2021/02/06 | A | No | - |
2 | 2021/02/17 | B | No | - |
3 | 2021/02/26 | C | No | - |
4 | 2021/02/27 | A | Sí | 2021/02/06 |
5 | 2021/03/03 | D | No | - |
6 | 2021/03/08 | P | No | - |
7 | 2021/03/12 | D | Sí | 2021/03/03 |
8 | 2021/03/24 | C | Sí | 2021/02/26 |
9 | 2021/04/06 | A | No | - |
10 | 2021/04/10 | E | No | - |
Adjunto una tabla de ejemplo para mostrar cuál me gustaría que fuera la salida en las dos últimas columnas
Tenga en cuenta que las líneas 1 y 3 no deben marcarse, ya que serían las primeras entradas. Además, la Línea 9 no está marcada, ya que han transcurrido más de 30 días desde la entrada anterior.
Cualquier sugerencia / orientación sobre dónde me estoy equivocando sería muy apreciada.
Solved! Go to Solution.
¿Puedes probar esta columna, por favor?
ColumnX =
Var Equipment = Sheet1[Fault Equipment]
VAR _fDate = Sheet1[FaultDate]
VAR _dateOfDup = CALCULATE(MAX(Sheet1[FaultDate]), FILTER(Sheet1, Sheet1[Fault Equipment] = Equipment && Sheet1[FaultDate] < _fDate))
RETURN
IF(DATEDIFF(_dateOfDup, _fDate, DAY) < 30, _dateOfDup)
Hay @Yodaslay3r
¿Has probado la fórmula de @HotChilli? Debería funcionar para la columna Repetir fecha. Para la columna Repetir bandera, la modifico a continuación de una
Flag =
Var Equipment = Sheet1[Fault Equipment]
VAR _fDate = Sheet1[FaultDate]
VAR _dateOfDup = CALCULATE(MAX(Sheet1[FaultDate]), FILTER(Sheet1, Sheet1[Fault Equipment] = Equipment && Sheet1[FaultDate] < _fDate))
VAR _dateDiff = DATEDIFF(_dateOfDup, _fDate, DAY)
RETURN
IF(_dateDiff < 30 && NOT(ISBLANK(_dateDiff)), "Yes", "No")
Saludos
Equipo de soporte de la comunidad _ Jing
¿Puedes probar esta columna, por favor?
ColumnX =
Var Equipment = Sheet1[Fault Equipment]
VAR _fDate = Sheet1[FaultDate]
VAR _dateOfDup = CALCULATE(MAX(Sheet1[FaultDate]), FILTER(Sheet1, Sheet1[Fault Equipment] = Equipment && Sheet1[FaultDate] < _fDate))
RETURN
IF(DATEDIFF(_dateOfDup, _fDate, DAY) < 30, _dateOfDup)
Hola Gracias,
Esto funciona perfectamente!!!
Solo para mi propia información, en la función Calcular, en el filtro, ¿cuál de los argumentos se refiere a la fila "actual" para el cálculo? ¿Sería el Sheet1[Fault Equipment] o la variable que se declaró?
Entonces, como pensamiento adicional, ¿sería posible hacer esto en una Medida en lugar de una columna calculada?