Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more.
Get startedGrow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.
Estimada comunidad
Tengo el siguiente problema
Hay múltiples proyectos (más de 200). Cada proyecto tiene una disciplina múltiple y cada disciplina tiene diferentes tareas en el conjunto de datos original. Consulte los datos de muestra a continuación. Me gustaría resumir los datos en una tabla y luego en un diagrama de Gant: Nombre del proyecto, Nombre de la disciplina, Fecha de inicio, Fecha de finalización. Por lo tanto, la tabla debe usar la fecha de inicio anterior como fecha de inicio de resumen y la fecha de finalización más tardía como fecha de finalización de resumen, cuál es la fecha más temprana y la fecha más tardía según disicpline
Soy nuevo en DAX e intenté usar esta fórmula, pero parece que no funciona:
Estos son los datos originales:
Nombre del proyecto | Nombre | Disciplina | Empezar | Terminar | MI |
Rampa A | |||||
Gran Carretera | Rampa A - Inicio de trabajo físico | Rampa A | 13-nov-24 | ||
Gran Carretera | Rampa A - Finalización de la obra física | Rampa A | 7-dic-25 | 2026 | |
Gran Carretera | Rampa A - Finalización de defectos | Rampa A | 10-feb-26 | ||
Gran Carretera | Rampa A - Preparación operativa | Rampa A | 15-Abr-26 | ||
Acceso B | |||||
Gran Carretera | Acceso B - Inicio de la obra física | Acceso B | 7-Mar-23 | ||
Gran Carretera | Acceso B - Finalización de la obra física | Acceso B | 7-Mar-23 | 28-Ago-25 | 2026 |
Gran Carretera | Acceso B- Finalización de defectos | Acceso B | 16-nov-25 | ||
Unidad de control | |||||
Gran Carretera | Unidad de control - Inicio de trabajo físico | Unidad de control | 22-Ago-24 | ||
Gran Carretera | Unidad de control - Finalización de la obra física | Unidad de control | 22-Ago-24 | 31-Mar-25 | 2025 |
Gran Carretera | Unidad de control - Eliminación de defectos | Unidad de control | 1-Nov-24 | 28-Abr-25 | 2026 |
Gran Carretera | Unidad de control - Disponibilidad operativa | Unidad de control | 15-sep-25 | ||
Paisaje vial | |||||
Avenida Holt | Paisaje de la carretera - Inicio de la obra física | Paisaje vial | 16-ene-23 | ||
Avenida Holt | Paisaje vial - Finalización de la obra física | Paisaje vial | 16-ene-23 | 11-Ago-23 | 2024 |
Avenida Holt | Paisaje de carreteras - Finalización de defectos | Paisaje vial | 14-feb-24 | ||
Avenida Holt | Paisaje vial - Preparación operativa | Paisaje vial | 14-feb-24 | 14-feb-24 | |
Tanque de aguas pluviales | |||||
Avenida Holt | Tanque de aguas pluviales - Inicio del trabajo físico | Tanque de aguas pluviales | 1-Mar-22 | ||
Avenida Holt | Tanque de aguas pluviales - Finalización del trabajo físico | Tanque de aguas pluviales | 31-Mar-23 | 2023 | |
Avenida Holt | Finalización de defectos del tanque de aguas pluviales | Tanque de aguas pluviales | 31-dic-24 | ||
Avenida Holt | Tanque de aguas pluviales: preparación operativa | Tanque de aguas pluviales | 1-Mar-25 |
La tabla resumida debería ser así:
Nombre del proyecto | Nombre | Empezar | Terminar | MI |
Gran Carretera | Rampa A | 13-nov-24 | 15-Abr-26 | 2027 |
Gran Carretera | Acceso B | 7-Mar-23 | 16-nov-25 | 2026 |
Gran Carretera | Unidad de control | 22-Ago-24 | 15-sep-25 | 2026 |
Avenida Holt | Paisaje vial | 16-ene-23 | 14-feb-24 | 2024 |
Avenida Holt | Tanque de aguas pluviales | 1-Mar-22 | 1-Mar-25 | 2025 |
Y resuma gant visual de la siguiente manera:
¿Alguien puede ayudarme con esto?
Hola
Este código M funciona
let
Source = Excel.CurrentWorkbook(){[Name="Data"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Project Name", type text}, {"Name", type text}, {"Discipline", type text}, {"Start", type date}, {"Finish", type date}, {"FY", Int64.Type}}),
#"Filtered Rows" = Table.SelectRows(#"Changed Type", each [Project Name] <> null and [Project Name] <> ""),
#"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each [Name] <> null and [Name] <> ""),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows1",{"Name"}),
#"Grouped Rows" = Table.Group(#"Removed Columns", {"Project Name", "Discipline"}, {{"Start", each List.Min([Start]), type nullable datetime}, {"End", each List.Max([Finish]), type nullable datetime}})
in
#"Grouped Rows"
No sé cómo obtener el FY.
Gracias, lo intentaré.
por ahora creé dos columnas, fecha de inicio de resumen y fecha de finalización de resumen con filtro de proyecto y disciplina:
Hola V-Jianpeng-MSFT
Gracias por su respuesta. No puedo crear una nueva tabla porque tengo que agregar más columnas/valor del conjunto de datos actual a mi objeto visual una vez que se ordena el resumen de inicio temprano y finalización tardía. Y tampoco hay un ID / cpde único para hacer una relación entre conjuntos de datos o tablas. Es posible que tenga que crear varias columnas en mi conjunto de datos actual. ¿Alguna idea?
Estoy probando con este DAX :
Hola @Narsis
Gracias por su respuesta. Si no puede crear una nueva tabla de cálculo. Puede crear una medida de la siguiente manera:
start date =
VAR _table = CALCULATETABLE (
SUMMARIZE (
FILTER ( 'Table', 'Table'[Name] <> BLANK () ),
'Table'[Project Name],
'Table'[Discipline],
"start", CALCULATE ( MIN ( 'Table'[Start] ) ),
"Finish", CALCULATE ( MAX ( 'Table'[Finish] ) ),
"FY", VAR _maxday = MAX ( 'Table'[Finish] ) RETURN YEAR ( _maxday )
)
)
VAR _project_name = SELECTEDVALUE('Table'[Project Name])
VAR _discipline = SELECTEDVALUE('Table'[Discipline])
RETURN CALCULATE(
MAX([Start]),
FILTER(_table,
'Table'[Discipline]=_discipline&&'Table'[Project Name]=_project_name
)
)
End date =
VAR _table = CALCULATETABLE (
SUMMARIZE (
FILTER ( 'Table', 'Table'[Name] <> BLANK () ),
'Table'[Project Name],
'Table'[Discipline],
"start", CALCULATE ( MIN ( 'Table'[Start] ) ),
"Finish", CALCULATE ( MAX ( 'Table'[Finish] ) ),
"FY", VAR _maxday = MAX ( 'Table'[Finish] ) RETURN YEAR ( _maxday )
)
)
VAR _project_name = SELECTEDVALUE('Table'[Project Name])
VAR _discipline = SELECTEDVALUE('Table'[Discipline])
RETURN CALCULATE(
MAX([Finish]),
FILTER(_table,
'Table'[Discipline]=_discipline&&'Table'[Project Name]=_project_name
)
)
Usa estas dos medidas en tu diagrama de Gantt:
Cómo obtener respuestas rápidas a tu pregunta
Si no ayuda, proporcione más detalles con la salida deseada y el archivo pbix sin información de privacidad (o algunos datos de muestra).
Saludos
Jianpeng Li
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola, @Narsis
En función de la descripción, puede probar las siguientes expresiones DAX:
Table 2 =
CALCULATETABLE (
SUMMARIZE (
FILTER ( 'Table', 'Table'[Name] <> BLANK () ),
'Table'[Project Name],
'Table'[Discipline],
"start", CALCULATE ( MIN ( 'Table'[Start] ) ),
"Finish", CALCULATE ( MAX ( 'Table'[Finish] ) ),
"FY", VAR _maxday = MAX ( 'Table'[Finish] ) RETURN YEAR ( _maxday )
)
)
El cuadro resumen es el siguiente:
A continuación, puede utilizar estos campos en el diagrama de Gant de la siguiente manera:
Puede buscar el diagrama de Gantt que desee en el mercado visual:
He proporcionado el archivo PBIX utilizado esta vez a continuación.
Cómo obtener respuestas rápidas a tu pregunta
Si no ayuda, proporcione más detalles con la salida deseada y el archivo pbix sin información de privacidad (o algunos datos de muestra).
Saludos
Jianpeng Li
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Ask questions in Eventhouse and KQL, Eventstream, and Reflex.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |