cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Post Patron
Post Patron

Ayuda de la fórmula DAX

Necesitaría ayuda para crear DAX y diseñar modelos de datos.

Tabla1:

fecha de iniciofecha de finalizaciónUnidadValor $
1/1/20101/1/2011A100
1/3/20101/3/2011B200
1/4/20101/4/2011C300
1/5/20101/5/2011D100
así sucesivamenteasí sucesivamente
hasta 2020hasta 2022

if (Seleccione la fecha >-fecha de inicio y seleccione la fecha<-fecha de finalización ,"y","n") y, a continuación, filtre el conjunto de datos a "Y" .

El usuario selecciona cualquier fecha del calendario en la segmentación de datos, por lo que se basa en que se deben mostrar los datos de la tabla 1.

Ejemplo si el usuario selecciona 1/2/2010, los datos deben mostrarse como a continuación en función de si es más condición.

1/1/20101/1/2011A100

8 REPLIES 8
Community Support
Community Support

Hola @ja832153 ,

Compruebe la fórmula a continuación.

Measure = 
IF (
    ISFILTERED ( 'CALENDAR'[Date] ),
    IF (
        SELECTEDVALUE ( 'CALENDAR'[Date] ) >= SELECTEDVALUE ( 'Table'[start date] )
            && SELECTEDVALUE ( 'CALENDAR'[Date] ) <= SELECTEDVALUE ( 'Table'[end date] ),
        "y",
        "n"
    ),
    IF (
        TODAY () >= SELECTEDVALUE ( 'Table'[start date] )
            && TODAY () <= SELECTEDVALUE ( 'Table'[end date] ),
        "y",
        "n"
    )
)

1.PNG

Sin embargo, no se admite que la segmentación de fecha se muestre como visual de calendario.

Es posible que deba usar objetos visuales personalizados en su lugar.

Saludos

Jay

Community Support Team _ Jay
If this post helps, then please consider Accept it as the solution to help the other members find it.

@v-jayw-msft Gracias por ayudarme en esto.

He escrito DAX que abosutely funcionando bien también agregó Min(Date) para habilitar la opción de calendario en la segmentación de fecha.

var _max á MIN('Date'[Date])
var _today - SELECTEDVALUE('Date'[Date],TODAY())
devolución
SI (
ISFILTERED ( 'Fecha'[Fecha] ),
CALCULATE(value,FILTER('Table1',_max>'[DATE2] && _max<'[DATE1])),
CALCULATE(value,FILTER('Table1',TODAY()>'[DATE2] && TODAY()<'[DATE1]))
)

cuando ejecuté el informe haciendo clic en borrar los filtros, mostrando los valores predeterminados a la fecha de hoy. Pero el valor de la segmentación de datos sigue mostrándose como valor Min(Date), en mi caso se muestra como 1/1/2010.

¿Hay alguna manera de pasar la fecha de hoy a la segmentación de datos como valor predeterminado.

Super User IV
Super User IV

@ja832153


Cree la siguiente medida y reemplace los nombres y columnas de tabla correctos. Agregue una segmentación de datos para las fechas y hála seleccionar de una sola vez.

Measure1 = 
VAR __DateSelected = MAX('Calendar'[Date]) Return
IF(
    __DateSelected >= max(Table[StartDate]) && __DateSelected <= max(Table[EndDate]) ,
    1,
    0
)


Inserte un objeto visual de tabla en el lienzo, agregue Fecha de inicio, Fecha de finalización y otros campos que necesite, Vaya al panel Filtro y agregue la nueva medida y establezca como igual a 1.

________________________

Si mi respuesta fue útil, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla

Haga clic en el icono Thumbs-Up si le gusta esta respuesta 🙂

Youtube Linkedin

Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Website   YouTube    LinkedIn
Post Patron
Post Patron

No hay ninguna relación entre la fecha y la tabla 1. ¿Funciona esta fórmula?

@amitchandak gracias, la fórmula está funcionando. Pero hay un par de desafíos.

1) El defult establecido en la fecha de hoy

2) El usuario necesita la opción de calendario en la segmentación de datos.

He pasado por debajo de Video en You tube. esta solución alternativa está funcionando, pero cómo combinar estos dos formuals.

https://www.youtube.com/watch?v=zhWtU0DynCk

Mi fórmula como la siguiente para establecer como valor predeterminado en la fecha de hoy.

ESCRITO ?
var _max - SELECTEDVALUE('Date'[Date],TODAY())
devolución
calculate([WRITTEN PREMIMUM], filter('Active Policy', _max>'[DATE2] && _max<'[DATE1]))

@amitchandak - ¿Puedes ayudarme en esto?

@ja832153 , si no hay ninguna relación entre la fecha y la tabla. Funcionará mejor. Es posible que todos o todos los elegidos no sean necesarios en ese caso



Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
Dashboard of My Blogs !! YouTube Channel !! Connect on Linkedin

Proud to be a Super User!

Super User IV
Super User IV

@ja832153 , Pruebe una medida como.

Medida
var _max á maxx(allselected(Date), Date[Date])
devolución
calculate(sum(Table[Value]), filter(Table, Table[Start Date] <-_max && Table[End Date] >-_max))

o usar todo lo elegido

Medida
var _max á maxx(allselected(Date), Date[Date])
devolución
calculate(sum(Table[Value]), filter(all(Table), Table[Start Date] <-_max && Table[End Date] >-_max))



Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
Dashboard of My Blogs !! YouTube Channel !! Connect on Linkedin

Proud to be a Super User!

Helpful resources

Announcements
secondImage

Experience what’s next for Power BI

Join us for an in-depth look at the new Power BI features and capabilities at the free Microsoft Business Applications Launch Event.

secondImage

Power BI Women

Join our monthly meetings and learning sessions.

secondImage

Congratulations!

We are excited to announce the Power BI Super Users!

secondImage

The largest Power BI virtual conference

100+ sessions, 100+ speakers, Product managers, MVPs, and experts. All about Power BI. Attend online or watch the recordings.

Top Solution Authors