cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
caruso1058
Microsoft
Microsoft

Indefinido

Estoy intentando crear un diagrama de Gantt, sin embargo, necesito proporcionar fechas de finalización a mi modelo. La fecha de finalización de una tarea es la fecha de inicio de la otra tarea, por lo que estoy buscando una función DAX que me permita construir esta lógica:

ProyectoPuertaFecha_inicialFinish_Date

A123

Principio

1/1/20203/1/2020

A123

Parcial3/1/20206/1/2020
A123Principalmente6/1/202010/1/2020
A123Final10/1/202010/1/2020

No estoy seguro de qué DAX formual puedo escribir para devolver la fecha Finsh.
Toda la ayuda es muy apreciada.

2 ACCEPTED SOLUTIONS
edhans
Super User
Super User

Hola @caruso1058 - ver esta medida:

edhans_0-1600723021421.png

Finish Date = 
VAR varCurrentDate = MAX('Table'[Start_Date])
VAR varNextDate = 
CALCULATE(
    MIN('Table'[Start_Date]),
    FILTER(
        All('Table'),
        'Table'[Start_Date] > varCurrentDate
    )
)
RETURN
IF(
    ISBLANK(varNextDate),
    varCurrentDate,
    varNextDate
    )

Esto devolverá la fecha mínima por encima de la fecha actual, a menos que no haya una fecha siguiente, en cuyo caso se repetirá la fecha actual.

Una nota @caruso1058 - no especificó, pero supongo que desea que esto sea por proyecto. Tenga en cuenta la sustitución de ALL() por ALLEXCEPT()

edhans_0-1600724339459.png

Así que se puede ver que la fecha del 1 de abril de 2020 no impactó el proyecto A123.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

View solution in original post

Hola

Pruebe esta fórmula de columna calculada

•calculate(min(data[project schedule]),filter(data,data[project]-earlier(data[project])&&&data[project schedule]>earlier(data[project schedule])))

Espero que esto ayude.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

View solution in original post

9 REPLIES 9
caruso1058
Microsoft
Microsoft

Hola @edhans ,

¡Muchas gracias por su ayuda con esto! Me gusta su táctica, pero parece que me está metiendo en un problema con esta lógica, ya que sólo devuelve la fecha MAX dentro de mi conjunto de datos... parece ser un error tipográfico, ya que no estamos programando tan lejos en el futuro todavía, pero divacío.

De todos modos, el problema que estoy teniendo es doble, uno es extraer la última fecha de tarea, segundo es agrupar esta lógica por cada proyecto.

Screenshot 2020-09-21 144234.png

Hola

Pruebe esta fórmula de columna calculada

•calculate(min(data[project schedule]),filter(data,data[project]-earlier(data[project])&&&data[project schedule]>earlier(data[project schedule])))

Espero que esto ayude.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

@Ashish_Mathur,
¡Eso funciona perfectamente como una columna calculada! ¡Muchas gracias!

De nada.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
edhans
Super User
Super User

Hola @caruso1058 - ver esta medida:

edhans_0-1600723021421.png

Finish Date = 
VAR varCurrentDate = MAX('Table'[Start_Date])
VAR varNextDate = 
CALCULATE(
    MIN('Table'[Start_Date]),
    FILTER(
        All('Table'),
        'Table'[Start_Date] > varCurrentDate
    )
)
RETURN
IF(
    ISBLANK(varNextDate),
    varCurrentDate,
    varNextDate
    )

Esto devolverá la fecha mínima por encima de la fecha actual, a menos que no haya una fecha siguiente, en cuyo caso se repetirá la fecha actual.

Una nota @caruso1058 - no especificó, pero supongo que desea que esto sea por proyecto. Tenga en cuenta la sustitución de ALL() por ALLEXCEPT()

edhans_0-1600724339459.png

Así que se puede ver que la fecha del 1 de abril de 2020 no impactó el proyecto A123.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

Hola @edhans ,

¡Tienes razón! Ahora veo que esto funciona como Medida. Estaba tratando de escribir esto como una columna calculada, pero creo que la medida va a funcionar muy bien!

Sin embargo, ahora tengo curiosidad... ¿Sabes la razón por la que esto funciona como un meausre pero no como una columna calculada?

¿Qué lógica tendría que actualizarse para que esto funcione como una columna calculada?

@caruso1058 puede funcionar como una columna calculada, pero no como está escrito. En general, intente evitar columnas calculadas. Hay momentos para usarlos, pero es raro. Normalmente se prefiere obtener datos del sistema de origen, crear columnas en Power Query o Medidas DAX a las columnas calculadas. Vea estas referencias:
Columnas calculadas frente a medidas en DAX
Columnas y medidas calculadas en DAX
Diferencias de almacenamiento entre columnas calculadas y tablas calculadas
Vídeo de SQLBI sobre medidas frente a columnas calculadas
Creación de una tabla de fechas dinámicas en Power Query, no en columnas calculadas

Para el escenario que está haciendo, definitivamente desea una medida.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

He visto muchos videos de ADN empresarial y hacen el mismo caso que, las medidas son mucho más eficientes en comparación con las columnas calcáuadas.
Investigaré los recursos que proporcionó para explorar esto más a fondo.

Gracias un montón por su ayuda !!

Me alegro de ser de ayuda @caruso1058. Las columnas calculadas son muy "Excel Like" por lo que la gente salta sobre ellas, incluido yo mismo en mis primeros días de Power BI.

Pero he aprendido que deben evitarse excepto en casos de uso muy específicos.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

Helpful resources

Announcements
August 1 episode 9_no_dates 768x460.jpg

The Power BI Community Show

Watch the playback when Priya Sathy and Charles Webb discuss Datamarts! Kelly also shares Power BI Community updates.

Power BI Dev Camp Session 24 without aka link and time 768x460.jpg

Ted's Dev Camp - July 28, 2022

Watch Session 24 of Ted's Dev Camp along with past sessions!

Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

Top Solution Authors