cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Satélites activos por año

¡Hola!

Tengo una lista de satélites que se ve así. La primera columna es el nombre del satélite, la segunda es la fecha de lanzamiento, la tercera es el comienzo de la vida y la última es el final esperado de la vida.

Lo que quiero hacer es encontrar una medida que calcule los satélites activos cada año. Por ejemplo, para 2022 tendría que serlo (satélites activos en 2021 + satélites planificados con BoL 2022 - satélites retirados con EoL en 2022). Y luego el resultado de eso se usaría para los de 2023 y así sucesivamente.

Mi idea es tener una cortadora con los años y poder ver los satélites activos en el año seleccionado en una visualización de tarjeta.

¿Alguna idea?

¡¡Muchas gracias!!

Nombre Fecha de lanzamiento BoL EoL

ABS-22/6/201420142029
ABS-2A6/15/201620162031
ABS-3A3/2/201520152030
ABS-43/13/200420042019
ABS-69/26/199919992023
ABS-79/4/199919992020
AII-Bravo4/29/202120212026
AII-Charlie1/24/202120212026
AISat-16/30/201420142029
AISSat-17/12/201020102013
AISSat-27/8/201420142017
Al Yah-31/25/201820182031
1 ACCEPTED SOLUTION
Ivancito111
Resolver I
Resolver I

Hola, estimado favor revisa si esto te soluciona el problema, por lo que entendi los activos son los que se encuentra con igual o menos EoL a este año, es decir que segun tu data  si vemos los activos en el año 2022 serian 8. 

Ivancito111_0-1637598228093.png

 

 

Para este valor yo realice un slicer dinamico sin conexion a la tabla con los datos y una medida para que cuente dependiendo de lo seleccionado en el Slicer.

 

Tabla Slicer:

SlicerYearEol = 
DISTINCT(
    SELECTCOLUMNS(
        CALENDAR( DATE( MIN('Table'[Eol]),01,01), DATE( MAX('Table'[Eol]),01,01)),
        "year", YEAR([Date])
    )
)

 

Medida: 

Measure = 
Var __Count = 
    COUNTROWS( 
        FILTER('Table',
        'Table'[Eol] >= SELECTEDVALUE(SlicerYearEol[year])
    )
)

RETURN 
__Count

 

Si esto te ayuda y te resuelve el problema, favor aceptar como solucion.

Saludos.

View solution in original post

4 REPLIES 4
Ivancito111
Resolver I
Resolver I

Hola, estimado favor revisa si esto te soluciona el problema, por lo que entendi los activos son los que se encuentra con igual o menos EoL a este año, es decir que segun tu data  si vemos los activos en el año 2022 serian 8. 

Ivancito111_0-1637598228093.png

 

 

Para este valor yo realice un slicer dinamico sin conexion a la tabla con los datos y una medida para que cuente dependiendo de lo seleccionado en el Slicer.

 

Tabla Slicer:

SlicerYearEol = 
DISTINCT(
    SELECTCOLUMNS(
        CALENDAR( DATE( MIN('Table'[Eol]),01,01), DATE( MAX('Table'[Eol]),01,01)),
        "year", YEAR([Date])
    )
)

 

Medida: 

Measure = 
Var __Count = 
    COUNTROWS( 
        FILTER('Table',
        'Table'[Eol] >= SELECTEDVALUE(SlicerYearEol[year])
    )
)

RETURN 
__Count

 

Si esto te ayuda y te resuelve el problema, favor aceptar como solucion.

Saludos.

View solution in original post

Nevermind @Ivancito111 I got it!. Your measure works perfectly! 

¡@Syndicate_Admin !

Gracias por su respuesta. Parece que debería funcionar, pero no puedo implementarlo.

¿Creas la segmentación de datos dinámica con una nueva medida? o ¿es otra característica?

Había creado una tabla con los años de interés, y luego la agregué a una visualización de segmentación de datos. Lo que no sé es cómo insertar esta selección de segmentación de datos en la medida que estás proponiendo. Quiero decir en esta parte

SELECTEDVALUE(SlicerYearEol[year])

Así es como calculé la tabla con los años

Años = SELECCIONARCOLUMNAS (GENERACIONES ( MIN (Satélites[BoL]), MÁXIMO (Satélites[EoL]) ),"Año", [Valor])
Siento que estoy cerca, pero aún no

Primero te pido una disculpa por lo poco explicativo que fui anteriormente, ahora procurare explicar cada cosa que hago para que se pueda entender.

 

1. Crear la tabla con los años: 

 

Esto lo realizo con la necesidad de poder ver los satelites activos durante ese periodo, por ejemplo si escogemos ver los del 2022 deberiamos ver todos los que tienen un Eol mayor al año actual, ya que como tu explicaste la data esos serian los activos, corrigeme si me equivoco.

 

Para realizar esto yo realizo lo siguiente

Ivancito111_0-1637605191441.png

 

Yo pincho en New Table desde la vista de Data, y pongo el siguiente codigo

 

SlicerYearEol = 
DISTINCT(
    SELECTCOLUMNS(
        CALENDAR( DATE( MIN('Table'[Eol]),01,01), DATE( MAX('Table'[Eol]),01,01)),
        "year", YEAR([Date])
    )
)

 

Como puedes ver me lanza la data de los años desde el minino Eol al Maximo Eol. En este caso el minimo Eol es 2013 y el maximo es 2031.

 

2. Agrego un Slicer con la nueva tabla (SlicerYearEol):

 

Ivancito111_1-1637605348603.png

 

3. Crear la medida para saber la cantidad

 

Yo creo esta medida

 

Measure = 
Var __Count = 
    COUNTROWS( 
        FILTER('Table',
        'Table'[Eol] >= SELECTEDVALUE(SlicerYearEol[year])
    )
)

RETURN 
__Count

Esto en pocas palabras cuenta dependiendo de lo seleccionado en el SlicerYearEol, que como nos dimos cuenta antes son todos los años entre el minimo Eol y el maximo Eol.

 

4. Probar

 

Luego simplemente hago uso del Slicer y funciona como te explique.

 

Ivancito111_2-1637605476744.png

 

Cualquier consulta no dudes en comentar este mensaje.

Si esta solucion aplica para tu requerimiento no olvides aceptarla como solucion para que todos tengan mejor acceso a este.

 

Saludos,

 

Helpful resources

Announcements
Power BI December 2021 Update_carousel 768x460.jpg

Check it Out!

Click here to read more about the December 2021 Updates!

User Group Leader Meeting January 768x460.png

Calling all User Group Leaders!

Don't miss the User Group Leader meetings on January, 24th & 25th, 2022.

Jan 2022 Dev Camp 768x460 copy.png

Power BI Dev Camp- January 27th, 2022

Mark your calendars and join us for our next Power BI Dev Camp!

Top Kudoed Authors