Ayuda Dax Mensual anualizado ℅

Un usuario Pregunto ✅

Anónimo

12Mes Rolloing Attr% = CALCULAR ([12 month Attrition Nos]/[12 month Avg Billable No], FILTRO (‘Calendario’, ‘Calendario'[Date]> = fecha (2016,12,1)))
I hv data desde el 16 de enero en adelante, la fórmula anterior funciona bien desde el 16 de diciembre en adelante. Pero quiero 2 calcular el% de deserción durante los primeros 11 meses que tiene una fórmula de diferencia como
Promedio del% mensual (para el promedio de enero de enero, para el promedio de febrero de enero y febrero, etc.) * 12 meses
¿Alguien puede sugerir cambios en la primera medida DAX para calcular lo mismo?
Además, la fecha codificada no funcionará si algún proceso comienza en el último año, por ejemplo, 2018/2019. Necesito arreglar esto también.
Ayuda apreciada. Gracias por adelantado.

En respuesta a Anónimo

Hola @Anónimo,

Lo siento por no entender claramente su requerimiento, ahora he arreglado mi fórmula, podemos usar la siguiente medida para archivar su requerimiento:

Test =
VAR selectedtime =
    MAX ( 'Calendar'[Date] )
VAR starttime =
    CALCULATE (
        MIN ( 'BillableNos'[Month] ),
        FILTER (
            ALL ( BillableNos ),
            AND (
                AND (
                    'BillableNos'[Billable Nos] > 0,
                    NOT ISBLANK ( BillableNos[Billable Nos] )
                ),
                BillableNos[Sow Name] IN FILTERS ( 'SOWMaster'[SOW] )
            )
        )
    )
VAR starttimemonth =
    DATE ( YEAR ( starttime ), MONTH ( starttime ), 1 )
VAR t =
    ADDCOLUMNS (
        ADDCOLUMNS (
            DISTINCT ( ALLSELECTED ( BillableNos[Month] ) ),
            "MonthBill", CALCULATE (
                SUM ( BillableNos[Billable Nos] ),
                FILTER ( ALLSELECTED ( 'BillableNos' ), [Month] = EARLIER ( [Month] ) )
            ) + 0
        ),
        "MonthNo", CALCULATE (
            COUNT ( ActualAttritionRaw[Attrition Gross/Net] ),
            FILTER (
                ALLSELECTED ( ActualAttritionRaw ),
                AND (
                    ActualAttritionRaw[Attrition Gross/Net] = "Net",
                    AND (
                        MONTH ( ActualAttritionRaw[Last Working Day] ) = MONTH ( [Month] ),
                        YEAR ( ActualAttritionRaw[Last Working Day] ) = YEAR ( [Month] )
                    )
                )
            )
        ) + 0
    )
VAR t1 =
    ADDCOLUMNS (
        t,
        "MonthAtt", IF ( [Month] < starttimemonth, BLANK (), DIVIDE ( [MonthNo], [MonthBill], 0 ) )
    )
RETURN
    IF (
        selectedtime < starttimemonth,
        BLANK (),
        IF (
            selectedtime < ( starttimemonth + 365 ),
            FORMAT (
                AVERAGEX ( FILTER ( t1, [Month] <= selectedtime ), [MonthAtt] ) * 12,
                "Percent"
            ),
            FORMAT (
                DIVIDE (
                    SUMX (
                        FILTER ( t1, AND ( [Month] <= selectedtime, [Month] >= selectedtime - 365 ) ),
                        [MonthNo]
                    ),
                    AVERAGEX (
                        FILTER ( t1, AND ( [Month] <= selectedtime, [Month] >= selectedtime - 365 ) ),
                        [MonthBill]
                    ),
                    0
                ),
                "Percent"
            )
        )
    )

4.PNG5.PNG6.PNG7.PNG

Por cierto, pbix como adjunto.

Atentamente,

Equipo de apoyo de la comunidad _ Dong Li
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Hola @Anónimo,

De acuerdo con su descripción, me burlo de algunos datos y creo esta medida.

Measure = 
VAR d =
    SELECTEDVALUE ( Data[Date] )
RETURN
    CALCULATE (
        SUM ( Data[Attrition] ) / MONTH ( d ),
        FILTER (
            ALL ( Data ),
            AND ( YEAR ( Data[Date] ) = YEAR ( d ), MONTH ( Data[Date] ) <= MONTH ( d ) )
        )
    ) * 12

10.PNG

Si no cumple con sus requisitos, comparta amablemente su resultado exceptuado basado en mis datos de muestra.

POR CIERTO, pbix como adjunto.

Atentamente,

Equipo de soporte de la comunidad _ DongLi
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los otros miembros a encontrarlo más

Anónimo

En respuesta a v-lid-msft

Hola, ¿alguien puede sugerir lo mejor que podemos hacer en este caso?

En respuesta a Anónimo

Hola @Anónimo,

Lamento haber respondido tan tarde, podemos utilizar lo siguiente para cumplir con sus requisitos.

Test =
VAR selectedtime =
    MAX ( 'Calendar'[Date] )
VAR totalnos =
    CALCULATE (
        COUNT ( ActualAttritionRaw[Attrition Gross/Net] ),
        FILTER (
            ALLSELECTED ( ActualAttritionRaw ),
            AND (
                ActualAttritionRaw[Attrition Gross/Net] = "Net",
                ActualAttritionRaw[Last Working Day] <= selectedtime
            )
        )
    ) + 0
VAR totalbill =
    CALCULATE (
        SUM ( BillableNos[Billable Nos] ),
        FILTER ( ALLSELECTED ( BillableNos ), BillableNos[Month] <= selectedtime )
    ) + 0
VAR starttime =
    MINX (
        FILTER (
            ALL ( ActualAttritionRaw ),
            ActualAttritionRaw[SOW] IN FILTERS ( SOWMaster[SOW] )
        ),
        [Last Working Day]
    )
RETURN
    IF (
        selectedtime < starttime,
        BLANK(),
        IF (
            selectedtime < ( starttime + 365 ),
            FORMAT ( DIVIDE ( totalnos, totalbill, 0 ) * 12, "Percent" ),
            FORMAT (
                CALCULATE (
                    [12 month Attrition Nos] / [12 month Avg Billable No],
                    FILTER ( 'Calendar', 'Calendar'[Date] >= starttime + 365 )
                ),
                "Percent"
            )
        )
    )

1.PNG2.PNG

Por cierto, pbix como adjunto.

Atentamente,

Equipo de apoyo de la comunidad _ Dong Li
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Anónimo

En respuesta a v-lid-msft

Hola Dong Li, Muchas gracias por investigar esto. no puedo abrir el enlace parece que ha caducado. Pero no se preocupe, he usado la fórmula de msg body.

Para ser honesto, no entendí mucho acerca de su fórmula complicada, pero funciona bien con SOW E. Resultados bastante similares para nuestras dos fórmulas, pero falla en SOW F. Nuestro requisito es que la fórmula de los primeros 11 meses sea Promedio de Desgaste Mensual% * 12 ( promedio (18 de enero) * 12, prom (18 de enero, 18 de febrero) * 12, promedio (18 de enero, 18 de febrero, 18 de marzo) * 12, hasta el 18 de noviembre ) y tan pronto como estén disponibles los datos de tendencias de 12 meses; a partir del 18 de diciembre de 12 meses en adelante, la fórmula es la suma de 12 attriones / promedio del número facturable de los últimos 12 meses. Consulte las instantáneas a continuación. 1-Resultados de la SOW E. 2-Cálculo de requisitos reales SOW F

¿También desea saber por qué los porcentajes de Excel y Power BI son ligeramente diferentes entre sí? no dan los mismos resultados.

Formula.pngRequisito de respuesta.jpg

Saludos

Amol

En respuesta a Anónimo

Hola @Anónimo,

¿Qué tal el resultado después de seguir las sugerencias mencionadas en mi publicación original? ¿Podría proporcionar más detalles al respecto si no cumple con sus requisitos?

Atentamente,

Equipo de apoyo de la comunidad _ Dong Li
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

En respuesta a Anónimo

Hola @Anónimo,

Lo siento por no entender claramente su requerimiento, ahora he arreglado mi fórmula, podemos usar la siguiente medida para archivar su requerimiento:

Test =
VAR selectedtime =
    MAX ( 'Calendar'[Date] )
VAR starttime =
    CALCULATE (
        MIN ( 'BillableNos'[Month] ),
        FILTER (
            ALL ( BillableNos ),
            AND (
                AND (
                    'BillableNos'[Billable Nos] > 0,
                    NOT ISBLANK ( BillableNos[Billable Nos] )
                ),
                BillableNos[Sow Name] IN FILTERS ( 'SOWMaster'[SOW] )
            )
        )
    )
VAR starttimemonth =
    DATE ( YEAR ( starttime ), MONTH ( starttime ), 1 )
VAR t =
    ADDCOLUMNS (
        ADDCOLUMNS (
            DISTINCT ( ALLSELECTED ( BillableNos[Month] ) ),
            "MonthBill", CALCULATE (
                SUM ( BillableNos[Billable Nos] ),
                FILTER ( ALLSELECTED ( 'BillableNos' ), [Month] = EARLIER ( [Month] ) )
            ) + 0
        ),
        "MonthNo", CALCULATE (
            COUNT ( ActualAttritionRaw[Attrition Gross/Net] ),
            FILTER (
                ALLSELECTED ( ActualAttritionRaw ),
                AND (
                    ActualAttritionRaw[Attrition Gross/Net] = "Net",
                    AND (
                        MONTH ( ActualAttritionRaw[Last Working Day] ) = MONTH ( [Month] ),
                        YEAR ( ActualAttritionRaw[Last Working Day] ) = YEAR ( [Month] )
                    )
                )
            )
        ) + 0
    )
VAR t1 =
    ADDCOLUMNS (
        t,
        "MonthAtt", IF ( [Month] < starttimemonth, BLANK (), DIVIDE ( [MonthNo], [MonthBill], 0 ) )
    )
RETURN
    IF (
        selectedtime < starttimemonth,
        BLANK (),
        IF (
            selectedtime < ( starttimemonth + 365 ),
            FORMAT (
                AVERAGEX ( FILTER ( t1, [Month] <= selectedtime ), [MonthAtt] ) * 12,
                "Percent"
            ),
            FORMAT (
                DIVIDE (
                    SUMX (
                        FILTER ( t1, AND ( [Month] <= selectedtime, [Month] >= selectedtime - 365 ) ),
                        [MonthNo]
                    ),
                    AVERAGEX (
                        FILTER ( t1, AND ( [Month] <= selectedtime, [Month] >= selectedtime - 365 ) ),
                        [MonthBill]
                    ),
                    0
                ),
                "Percent"
            )
        )
    )

4.PNG5.PNG6.PNG7.PNG

Por cierto, pbix como adjunto.

Atentamente,

Equipo de apoyo de la comunidad _ Dong Li
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Anónimo

En respuesta a v-lid-msft

Hola, muchas gracias por investigar el problema. Ayuda apreciada.

Se han adjuntado archivos de Excel y pbix. tenga en cuenta el siguiente requisito.

1-1st 11 meses tiene una fórmula diferente. Es un porcentaje mensual promedio multiplicado por 12 meses

2-tan pronto como la tendencia de 12 meses esté disponible, se utilizará una fórmula diferente, es decir, la suma de las deserciones de los últimos 12 meses dividida por el no facturable promedio de los últimos 12 meses

3-cada vez que seleccionamos el mes en la cortadora, debería mostrar el porcentaje de los últimos 12 meses en un gráfico. mostrará los datos de los 12 meses anteriores (el primer mes se decide por el primer mes con el mes facturable disponible. El mes que tenga números facturables en cada SOW se considerará como el primer mes facturable).

4-también tenemos que incluir las deserciones pronosticadas en el gráfico resaltado con diferente color o podemos envolver esas 2 columnas con diferente color. Siempre serán los últimos 2 meses.

5-luego tendrá diferentes tipos de análisis como masculino / femenino, ubicación sabia, banda / designación sabia, SOW sabio, grupo sabio, comparación del año actual año anterior, comparación de diferentes procesos, trimestral, etc.

6- Consulte las columnas del archivo de Excel en Columnas de color verde AL a AU. Los primeros 11 meses tienen una fórmula diferente y tan pronto como la tendencia de 12 meses está disponible, cambiamos la fórmula.

7- SI su archivo de referencia PBIX ya he creado 12MonthRolling Attr% medida. Edite esta medida coloque la fórmula DAX para calcular el% de desgaste durante los primeros 11 meses (consulte la fórmula del archivo de Excel Columnas de color verde AL a AU) Esta fórmula DAX también debería funcionar para SOW E y SOW F ya que comienzan a mediados de año (no es necesario que lo hará comenzará en enero; lo decidirá según la disponibilidad del No facturable).

8- Por lo tanto, el mes codificado de forma rígida en la medida 12MonthRolling Attr% debería cambiar dinámicamente de Ene-YY a Nov-YY

por lo tanto, solo 2 números El% de deserción para los primeros 11 meses y la fecha codificada en la medida deben cambiarse dinámicamente durante los primeros 11 meses y después de 11 meses tan pronto como la tendencia de 12 meses esté disponible.

Archivo PBIX y Excel

Gracias

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *