Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Cómo calcular la columna en función de datos similares en una columna en comparación con una segunda columna

No estoy seguro de cómo expresar este problema, pero haré todo lo posible.

Tengo una columna que enumera los nombres, los cursos que han tomado y su estado de dicho curso. Necesito una columna que indique si acaban de completar el curso final (Certificado), están en curso o no han comenzado. He intentado una columna condicional, pero eso no hace lo que necesito. Mostrará en la tabla certificada que han completado la certificación, pero también aparecen en la tabla en curso porque también tienen el curso

Datos de ejemplo:

Nombre Título de entrenamiento Estado de la transcripción

Jerry Ejemplo Cert Completado

Ejemplo de Jerry Class1 completado

Ejemplo de Jerry Class2 completado

Jane Ejemplo Cert en Curso

Clase de ejemplo de Jane completada

Clase de ejemplo de Kevin no iniciada

Ejemplo de Spencer Cert no iniciado

Clase de ejemplo spencer en curso

Lo que quiero agregar es una 4ª columna, que muestra si están certificados en una clase específica. En este caso, quiero saber si han completado el Certificado de ejemplo, están en progreso para él o no han comenzado (todos los demás), y para que el estado más alto se complete hasta el resto de las columnas.

Nombre Formación Título Transcripción Estado Cert Status

Ejemplo de Jerry Certificado completado Iniciado

Ejemplo de Jerry Class1 Completado Iniciado

Ejemplo de Jerry Class2 Completado Iniciado

Jane Ejemplo Cert in Progress in Progress

Ejemplo de Jane Class1 completado en curso

Ejemplo de Kevin Class3 No iniciado No iniciado

Ejemplo de Spencer Cert no iniciado en curso

Ejemplo de Spencer Class1 en curso en curso

¿Cómo podría hacer esto?

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Lo figued (¡gracias a @amitchandak por el código base!)

La instrucción return Switch() no funcionó según lo previsto. En su lugar, utilicé esto:

Status =
var _cnt = countx(filter(Table, [Name] = earlier([Name])), [Name])
var _cntc = countx(filter(Table, [Name] = earlier([Name]) && [Transcript Status] = "Completed"), [Name])
var _cntp = countx(filter(Table, [Name] = earlier([Name]) && [Transcript Status] = "In Progress"), [Name])
return

Switch(true() , 

_cntc > 0, "Completed", 
_cntp > 0 && _cntc < 1, "In Progress", 
"Not Started" ) 



¡Y funcionó perfectamente!

Syndicate_Admin
Administrator
Administrator

@leighp , Pruebe una nueva columna como

nueva columna =
var _cnt = countx(filter(Table, [Name] = earlier([Nombre])), [Nombre])
var _cntc = countx(filter(Table, [Name] = earlier([Name]) && [Transcript Status] = "Completed"), [Name])
var _cntp = countx(filter(Table, [Name] = earlier([Name]) && [Transcript Status] = "In Progress"), [Name])
devolución
Switch(true() ,
_cnt = _cntc, "Iniciado",
not(isblank(_cntp)) , "En curso",
"No iniciado"
)

¡Gracias por la rápida respuesta!

Lo intenté y solo parece funcionar con lo que sea que sea la primera fila. ¿Hay alguna manera de conseguirlo para que si alguna vez se encuentra con un nivel superior (es decir, No iniciado -> en progreso o En progreso -> Completado o No iniciado -> Completado), establece que todo sea eso?

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.