Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola
Tengo una pregunta complicada que esperaba obtener ayuda sobre:
Hay dos tablas, una tabla de eventos de iniciación y una tabla de programación que estoy usando. Usando la tabla de eventos de iniciación, necesito usar la Fecha de vigencia para buscar en la tabla Programación para determinar qué grupo de programación buscar y, a continuación, el registro de fila con el que buscar, luego, una vez que se determine, use la Fecha completada de la tabla Evento de inicio, para determinar si es antes o después de una columna Fecha bloqueada
A continuación se muestra un enlace a un archivo PBIX de muestra, junto con una captura de pantalla del resultado deseado. Uno de los grupos de programación no tiene un número de período y buscará en una columna diferente a la de los otros grupos (consulte pbix para obtener más información)
Archivo PBIX = haga clic aquí
Resultado deseado:
Cualquier dirección sería muy útil.
Gracias
¿Te ayuda el método de @DataInsights ? Si es así, por favor marque su respuesta como un alma para cerrar el caso. De lo contrario, proporcione más detalles con el resultado deseado.
Cómo obtener respuestas a su pregunta rápidamente
Saludos
Equipo de apoyo a la comunidad _ Polly
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Pruebe estas columnas calculadas en la tabla Evento de inicio:
Period Number =
VAR vGroup = 'Initiation Event'[Group]
VAR vEffDate = 'Initiation Event'[Effective Date]
VAR vTable =
FILTER (
Schedule,
Schedule[Group] = vGroup
&& vEffDate >= Schedule[Period Start Date]
&& vEffDate <= Schedule[Period End Date]
)
VAR vResult =
IF ( NOT 'Initiation Event'[Group] = "D1", MAXX ( vTable, Schedule[Period Number] ) )
RETURN
vResult
Period =
VAR vGroup = 'Initiation Event'[Group]
VAR vEffDate = 'Initiation Event'[Effective Date]
VAR vTable =
FILTER (
Schedule,
Schedule[Group] = vGroup
&& vEffDate >= Schedule[Period Start Date]
&& vEffDate <= Schedule[Period End Date]
)
VAR vResult =
MAXX ( vTable, Schedule[Period] )
RETURN
vResult
Locked Date =
VAR vGroup = 'Initiation Event'[Group]
VAR vPeriodNumber = 'Initiation Event'[Period Number]
VAR vPeriod = 'Initiation Event'[Period]
VAR vResult =
SWITCH (
vGroup,
"D1",
VAR vTableD1 =
FILTER ( Schedule, Schedule[Group] = vGroup && Schedule[Period] = vPeriod )
VAR vLockedDateD1 =
MAXX ( vTableD1, Schedule[Locked Date] )
RETURN
vLockedDateD1,
VAR vTableOther =
FILTER (
Schedule,
Schedule[Group] = vGroup && Schedule[Period Number] = vPeriodNumber
)
VAR vLockedDateOther =
MAXX ( vTableOther, Schedule[Locked Date] )
RETURN
vLockedDateOther
)
RETURN
vResult
Completed Before Locked Date =
IF ( 'Initiation Event'[Completed Date] < 'Initiation Event'[Locked Date], "Yes", "No" )