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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
danielpcamara
Helper I
Helper I

Ayuda con DAX - Contar usando dos coluns Date como filtro

Por lo tanto, tengo un conjunto de datos que está redactando una lista de tareas para hacer que puede ser recurrente.

Quiero evry tarea que es Conclud, y que es programa para terminar este mes así que intento:

Concluded Tasks = CALCULATE(
    COUNT(Tasks[Task]),
    FILTER(
        ALL('Calendar'),
        'Calendar'[Mes] = MAX('Calendar'[Mes]) && 
        'Calendar'[Ano] = MAX('Calendar'[Ano])
    ),
    FILTER(
        Tasks,
        Tasks[Conclusion Date] <=  MAX('Calendar'[Data_id])
    )
)

pero entiendo esto:

Sem título.png

cuando esperaba algo como esto (no exactamente esto, pero cerca):

Todas las fechas ar en yyyyMMdd en la tabla Tareas.

Más información:

Mis tablas son:

danielpcamara_0-1605554233007.png

Calendario[Data_id] 1 -> * Tareas[Fecha esperada] (activo)

Calendario[Data_id] 1 -> * Tareas[Fecha de conclusión] (inactivo)

Calendario[Data_id] 1 -> * Tareas[Fecha de referencia] (inactivo)

Calendario[Data_id] 1 -> * Tareas[Fecha de referencia] (activo, solo para el filtro)

Tarea de la tabla de código fuente:

let
    Fonte = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("nZA9C4MwEIb/imR2uA+T0rWFglt3cchgp9SC2v9fFfVCSAIWArnhnvd5uaZRd9fZvkBVqmn4dvNHQDA/fYxY7SMCqrZMMSwMC0NZpgJzjMiSlGO0eDReJCnHmJWRBH+X/ugUMn4nSHQKGeMxdI1344yHMO4JGc9jSIeex2d422k92Mu6Ua6AOjZuVN2Pk3XF81aH3JK7LzMkbHTOtlF8gmp/", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Task = _t, Recurrent = _t, #"Expected Date" = _t, #"Conclusion Date" = _t, #"Reference Date" = _t]),
    #"Valor Substituído" = Table.ReplaceValue(Fonte,"",null,Replacer.ReplaceValue,{"Expected Date", "Conclusion Date", "Reference Date"}),
    #"Tipo Alterado" = Table.TransformColumnTypes(#"Valor Substituído",{{"Task", type text}, {"Recurrent", type logical}, {"Expected Date", type text}, {"Conclusion Date", type text}, {"Reference Date", type text}})
in
    #"Tipo Alterado"

Calendario de la tabla de código fuente:

let
    Fonte = List.Dates(#date(2020,1,1), 365, #duration(1,0,0,0)),
    #"Convertido para Tabela" = Table.FromList(Fonte, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Colunas Renomeadas" = Table.RenameColumns(#"Convertido para Tabela",{{"Column1", "Data"}}),
    #"Tipo Alterado" = Table.TransformColumnTypes(#"Colunas Renomeadas",{{"Data", type date}}),
    #"Personalização Adicionada" = Table.AddColumn(#"Tipo Alterado", "Data_id", each Date.ToText([Data], "yyyyMMdd"), type text),
    #"Ano Inserido" = Table.AddColumn(#"Personalização Adicionada", "Ano", each Date.Year([Data]), Int64.Type),
    #"Mês Inserido" = Table.AddColumn(#"Ano Inserido", "Mes", each Date.Month([Data]), Int64.Type),
    #"Semana do Mês Inserida" = Table.AddColumn(#"Mês Inserido", "Semana do Mês", each Date.WeekOfMonth([Data]), Int64.Type),
    #"Nome do Mês Inserido" = Table.AddColumn(#"Semana do Mês Inserida", "Nome do Mês", each Date.MonthName([Data]), type text)
in
    #"Nome do Mês Inserido"

Tabla de fórmulas DAX Compet:

Compet = 'Calendar'

DAX ejecutando el total de tareas esperadas por mes:

Expected Tasks = CALCULATE(
    COUNT(Tasks[Task]),
    FILTER(
        ALL('Calendar'),
        'Calendar'[Mes] = MAX('Calendar'[Mes]) &&
        'Calendar'[Ano] = MAX('Calendar'[Ano])
    )
)

**EDITAR**

Agregue una segunda imagen que no cargue la 1a vez.

**EDITAR 2**

Agregue una segunda imagen que no cargue la 2a vez.

**EDITAR 3**

Agregue una segunda imagen que no cargue la 3a vez.

2 REPLIES 2
danielpcamara
Helper I
Helper I

Gracias amitchandak. Los "Empleados Actuales" era lo que necesitaba.

Yo resolvo con esto:

Tareas concluidas: IF(
[Tareas esperadas] > 0,
CALCULATE(
COUNTX(
FILTRO(
Tareas
LEFT(Tasks[Fecha esperada],6) - IZQUIERDA(MAX('Calendar'[Data_id]),6) && /* Filtrar tareas de este mes
RELACIONADO('Calendario'[Ano]) á MAX('Calendario'[Ano]) &&*/
Tareas[Fecha de conclusión] <-MAX('Calendario'[Data_id])
),
Tareas[Tarea]
),
CROSSFILTER(
Tareas[Fecha esperada],'Calendario'[Data_id],Ninguno
)
)+0,
BLANK()
)

Y tengo esto:

Sem título3.png

Trato de subir en la pregunta lo que esperabaen 4 veces, pero no funciona, así que voy a tratar aquí de:

Sem título2.png

amitchandak
Super User
Super User

@danielpcamara, no muy claro, lo que quieres lograr. Pero el archivo adjunto después de la firma y HR Blog debe ayudarle a https://community.powerbi.com/t5/Community-Blog/HR-Analytics-Active-Employee-Hire-and-Termination-tr...

Vídeo - https://www.youtube.com/watch?v=e6Y-l_JtCq4

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

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

Top Solution Authors