Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!
Hola a todos
Estoy tratando de medir el número de proyectos fallidos con respecto a su fecha de inicio, sin tener datos que cambian en tiempos. Mi objetivo es reportar un número mensual, que se puede graficar con el tiempo.
Tengo 2 tablas de datos; (1) tabla de calendario (tabla de calendario normal de PowerBI con mes, año, trimestre, etc.) y (2) una tabla de mis proyectos fecha de inicio y fallo como se muestra a continuación:
Aquí puede encontrar la fecha de inicio del proyecto, la fecha de error, el identificador (único) y si el proyecto ha fallado en 6 meses o menos (1-sí, 0-no). La última es una columna calculada.
Los 2 tabels de datos se conectan hasta la fecha de inicio (Tabla de proyectos) a la fecha (Tabla de calendario).
Quiero una salida que se vea así:
La idea es que quiero hacer informes mensuales del porcentaje de proyectos que ha fallado en menos de 6 meses (fila 5). Para tomarlo desde arriba:
Comenzamos un proyecto que más tarde demostró fallar en 6 meses. Comenzamos 2 proyectos, pero solo 1 más tarde fallaría. Este proyecto falló en mayo, así que cuando lleguemos podemos volver atrás y cambiar este número, es decir, puede cambiar en el tiempo.
(Fila 2 - número de proyectos que se iniciaron durante los últimos 6 meses (L6) y fallaron en menos de 6 meses) no tenemos ningún proyecto fallido en enero-abril, y como tal este número es 0. En mayo registramos el error, y el número se cambia a 1. No retrocedemos en el tiempo para cambiar este número. En junio, todavía tenemos cuenta del fracaso, ya que el proyecto se inició hace 6 meses o menos. En julio, el proyecto tiene 7 meses y ya no lo tenemos en cuenta. Esencialmente, se trata de un total de 6 meses en ejecución de la fila 1, pero sin contar el error antes de la fecha de error real.
(Fila 3 - número de proyectos iniciados por mes) Comenzamos 2 proyectos en enero - esto es independiente del fracaso.
(Fila 4 - El total de ejecución de los proyectos iniciados dura 6 meses) Tomando un total de 6 meses consecutivos de la fila 3.
(fila 5 - Fila 2 dividida por la fila 4.) Este es el número que me gustaría informar mensualmente.
Es un poco complicado, pero espero que puedas ayudarme. Como puede ver en el resumen de estado, es sólo la fila 2 (marcada en rojo) que no he resuelto. El problema que encontré es que los 4 campos marcados en amarillo son incorrectos en mi versión, ya que sólo puedo obtener una suma corriente para trabajar.
Usé la fórmula:
Pero como se mencionó no me da el resultado deseado
Hola @ChristianRHouen ,
Cree que entendí que usted requisito, pero por favor compruebe el archivo adjunto.
Failures_L06M =
VAR pre6 =
EDATE ( MAX ( DateTable[Date] ); -6 )
VAR cure =
MAX ( DateTable[Date] )
VAR temp_table =
FILTER (
ALL ( Data );
DATESBETWEEN ( Data[Start Date]; pre6; cure )
&& Data[Fail Date] <= cure
)
RETURN
SUMX ( temp_table; Data[Failed in 6 months or less] ) + 0
He utilizado la suma de Failed en 6 meses, pero esto se puede ajustar.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsGracias - parece funcionar en el modelo que adjuntas, sin embargo, cuando lo uso en mis propios datos obtengo el siguiente código de error:
Mensaje de error:
MdxScript(Model) (124, 9) Error de cálculo en la medida 'Medidas externas'[ExtFailures_L06M_2]: se proporcionó una tabla de varios valores donde se esperaba un único valor.
¿Sabes lo que estoy haciendo mal?
¿Puedes compartir tu fórmula?
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsSí, lo siento fue simplemente arreglar el archivo (enlace WeTransfer)
https://we.tl/t-D2b3761h4K
Básicamente subí mis propios datos y probé exactamente la misma fórmula.
Hola @ChristianRHouen ,
Compruebe si la medida de trabajo del archivo adjunto es:
Failures_L06M =
VAR pre6 =
EDATE ( MAX ( DateTable[Date] ); -6 )
VAR cure =
MAX ( DateTable[Date] )
VAR temp_table =
FILTER (
ALL ( 'Data (2)' );
'Data (2)'[DeployDate_InclDOA] >= pre6
&& 'Data (2)'[DeployDate_InclDOA] <= cure
&& 'Data (2)'[EndDate] <= cure
)
RETURN
SUMX ( temp_table; 'Data (2)'[Distance >6M] ) + 0
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsFunciona - ¡gracias! @MFelix
Ahora, sin embargo, no se puede filtrar con otras métricas. ¿Hay también una solución para eso?
Me gustaría poder elegir algunos documentos de identificación y verlo - También tengo categorías adicionales en mis otras tablas que me gustaría poder examinar.
¿Es posible?
Hola @ChristianRHouen ,
Cambie ALL a ALLSELECTED y funcionará correctamente.
Failures_L06M =
VAR pre6 =
EDATE ( MAX ( DateTable[Date] ); -6 )
VAR cure =
MAX ( DateTable[Date] )
VAR temp_table =
FILTER (
ALLSELECTED ( 'Data (2)' );
'Data (2)'[DeployDate_InclDOA] >= pre6
&& 'Data (2)'[DeployDate_InclDOA] <= cure
&& 'Data (2)'[EndDate] <= cure
)
RETURN
SUMX ( temp_table; 'Data (2)'[Distance >6M] ) + 0
Adjuntar archivo.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsMuchas gracias @MFelix - que funcionó.
Pregunta final. Me gustaría mostrar el valor de los últimos meses como un cuadro KPI, sin embargo, el uso de mi fórmula habitual no funciona en esta fórmula.
Mi fórmula habitual es
Hola @ChristianRHouen ,
La medida debe darle el resultado basado en la última fecha seleccionada de la tabla de calendario, por lo que si filtra la tarjeta por el columbn el mes pasado, 1 debería darle el resultado esperado.
No es necesario añadir cálculos adicionales.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em Português@MFelix
hmm - tienes razón, cuando uso tarjetas, se muestra correctamente, sin embargo, si uso una matriz y selecciono una categoría, entonces no se muestra correctamente. En el ejemplo siguiente todos los números resaltados deben ser 0% - pero en la matriz es >3000%.
Además
Además, ¿tiene alguna sugerencia para evitar el aplanamiento porque quiere incluir la fecha futura? Ya intenté eliminar el "+0" de la fórmula.
Hola @ChristianRHouen ,
Perdón por la respuesta tardía.
Sólo para aclarar una cosa que estos cálculos que está colocando en las vizualizaciones no es lo mismo que el que le ayudé anteriormente, pero se basa en ese cálculo correcto?
Pruebe lo siguiente para la matriz:
Measure 2 =
var scanner_selected = SELECTEDVALUE(Table[Scanner type])
return
CALCULATE([Measure];Table[Scanner type] = scanner_selected)
Ajuste según sea necesario.
En cuanto a la segunda parte, puede tener una de las dos opciones o hacer que cuando los valores de medida son 0 devolver espacios en blanco (pero esto afectará a los valores anteriores) o filtrar en fechas futuras para forzar espacios en blanco. ¿Puede compartir la fórmula para las líneas planas por favor.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em Português@MFelix
Siento haberte molestado de nuevo, sé que probablemente estás muy ocupado. Sin embargo, ¿cree que tiene una respuesta para las preguntas anteriores?