Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
Hola a todos
Soy bastante nuevo en Power Bi y puedo hacer una pregunta tonta. Mi problema es ¿cómo agregar un número de períodos de 12 meses a la tabla del calendario? Como las fechas de la tabla de calendario deben ser únicas, pero los períodos de una columna se superpondrán e inducirán fechas duplicadas. Lo que quiero es hacer una segmentación de períodos para filtrar otras tablas por período.
¡Muchas gracias por su ayuda de antemano!
Hola @kalo1314 ,
Gracias a @AnalyticsWizard y @OwenAuger por sus rápidas respuestas.
Tengo algunas otras ideas que añadir:
Power Query se usa para limpiar los datos originales y es una etapa de preprocesamiento de los datos, por lo que se crea una tabla o columna en Power Query y luego se carga en PBI Desktop y esa tabla y columna es visible, mientras que las columnas calculadas creadas en PBI Desktop son parte del procesamiento después de que los datos se procesan previamente. por lo que no son visibles en Power Query.
Basándonos en su descripción, podemos crear una tabla en PBI Desktop.
Calendar =
var MinDate=...//Your original formula.
var MaxDate=...//Your original formula.
RETURN
ADDCOLUMNS(CALENDAR(MinDate,MaxDate),"Year",YEAR([Date]),"Month_Name",FORMAT([Date],"mmm"),"Month_Number",MONTH([Date]),
"Year_Month",CONCATENATE(YEAR([Date]),CONCATENATE("-",FORMAT([Date],"mmm"))),"Sort_YM",YEAR([Date])*100+MONTH([Date]),
"Period",SWITCH(TRUE(),
MONTH([Date])=1,"Jan - Dec 2023",
MONTH([Date])=2,"Feb 2023 - Jan 2024",
MONTH([Date])=3,"Mar 2023 - Feb 2024",
MONTH([Date])=4,"Apr 2023 - Mar 2024"))
Si he entendido mal sus necesidades, por favor aclare su lógica y los resultados esperados en una respuesta de seguimiento.
Saludos
Neeko Tang
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Querida Neeko Tang,
Muchas gracias por su ayuda. Ahora sé más sobre Power Querry, las columnas calculadas y la función de SWITCH en Dax. He probado su fórmula, pero parece que solo se puede filtrar un mes con el período. Mi resultado deseado es hacer una columna calculada en la tabla del calendario que puede tener un período diferente. Por ejemplo, el primer período puede determinar que la fecha es del 01/01/2023 al 31/12/2023. En caso afirmativo, muestra ''Ene - Dic 2023''. La segunda es un mes después, que es del 01/02/2023 al 31/1/2024. La tercera es del 01/03/2023 al 28/2/2024. La cuarta es del 01/03/2023 al 31/3/2024.
Como puede ver, los períodos tienen fechas superpuestas. No sé cómo usar SWITCH para eso. ¿Podrías darme más ayuda para que pueda ver la salida? Su amabilidad es mucho más apreciada.
¡Le damos la bienvenida a Power BI! Su pregunta sobre cómo agregar períodos de 12 meses a una tabla de calendario para una segmentación de períodos es buena y, desde luego, no es tonta: es un escenario común en muchos contextos analíticos. Esta es una forma estructurada de lograr esto sin causar problemas con fechas duplicadas.
Paso 1: Mejora tu tabla de calendario
En primer lugar, debe ampliar la tabla de calendario para incluir una nueva columna que represente estos períodos de 12 meses. Hay diferentes formas de definir un período de 12 meses, como un año fiscal, una ventana móvil, etc. Para simplificar, supongamos que desea utilizar un año fiscal estándar a partir de enero. Si necesita una configuración diferente, puede ajustarla en consecuencia.
1. Vaya al Editor de Power Query.
2. Selecciona tu tabla de Calendario.
3. Agregue una columna personalizada para definir el año fiscal. Si su año fiscal comienza en enero y termina en diciembre, puede usar directamente el año de la fecha. Sin embargo, si comienza en otro mes, es posible que deba ajustar el año en función de la fecha. A continuación, se muestra un ejemplo sencillo en el que el año fiscal comienza en enero:
if Date.Month([Date]) >= 1 then Date.Year([Date]) else Date.Year([Date]) - 1
4. Asigne a esta columna un nombre como "Año fiscal".
Paso 2: Crear una columna de período
Ahora, debe crear una columna que clasifique cada fecha en un período de 12 meses. Puede usar la columna de año fiscal para ayudar a crear esto. Supongamos que desea etiquetar períodos como "FY 2020-2021".
"FY " & Text.From(Date.Year([Date])) & "-" & Text.From(Date.Year([Date]) + 1)
Esto asignará una etiqueta de período a cada fecha, en función de la lógica del año fiscal.
Paso 3: Crear una segmentación de períodos
Una vez que la tabla de calendario tenga esta nueva columna Período:
1. Vuelva a cargar la tabla en Power BI.
2. Cree una visualización de segmentación.
3. Arrastre la nueva columna Período al campo de segmentación.
Esta segmentación ahora permite a los usuarios seleccionar períodos y filtrará otros objetos visuales o tablas según el período seleccionado. La segmentación controla internamente las fechas superpuestas simplemente enumerando etiquetas de período únicas.
Paso 4: Pruebas
Asegúrese de que la segmentación interactúa correctamente con otros objetos visuales:
- Pruebe seleccionando diferentes períodos y verificando si los datos mostrados en otros gráficos/tablas cambian de acuerdo con el período de 12 meses definido.
Si esta publicación ayuda, considere aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Aprecia tu Kudo 👍
Estimado AnalysticsWizard,
Muchas gracias por su ayuda con paciencia. Estoy tratando de seguir sus pasos, pero me he encontrado con un problema en el primer paso. Esto se debe a que mi tabla de calendario se crea en la vista de datos y no se puede ver en el Editor de Power Query. La tabla de mi calendario se puede ver a continuación:
|
¿Tengo que volver a crearlo en el Editor de Power Query? Mi otra pregunta tonta es: ¿cómo hacerlo? Estoy bastante desconcertado acerca de las columnas creadas en la vista de datos y el editor de Power Query. No sé cuándo debo usar el primero y el segundo. ¿Podrías enseñarme? Muchas gracias.
Estimado Owen Auger,
Gracias por tu interés en ayudarme. Quiero usar la segmentación de períodos para filtrar el cálculo de 12 meses. Hay 4 opciones:
Enero - Dic 2023
Febrero 2023 - Enero 2024
Marzo 2023 - Febrero 2024
Abr 2023 - Mar 2024
Lo uso para filtrar los datos acumulados en dos tablas que se han conectado a la tabla del calendario. Si creo una tabla de períodos para conectarla a la tabla calendarcalendar, la segmentación de datos no puede funcionar correctamente en las dos tablas. Por lo tanto, me pregunto si hay otra forma de crear una segmentación de períodos con la tabla de calendario para hacerlo.
Espero que mi descripción sea clara y tu ayuda pueda resolverlo.
Hola @kalo1314
El método habitual para manejar el período superpuesto es crear una tabla de 'Período' con una relación bidireccional de muchos a uno con la tabla de fechas.
La tabla "Período" puede contener cualquier período arbitrario que se superponga.
Aquí hay un par de publicaciones de blog y videos que muestran cómo manejar esto:
Por favor, vuelva a publicar si es necesario.
Saludos
Hola Owen Auge,
Muchas gracias por su respuesta.
He probado su método antes creando la tabla de períodos para vincularla a la tabla del calendario. Pero cuando uso la tabla de períodos para crear una segmentación de períodos, la segmentación no puede funcionar correctamente. Dado que la tabla de calendario se vincula a dos tablas y los períodos no se pueden vincular, ¿hay alguna otra forma de colocar los datos de período en la tabla de calendario y hacer que el número de períodos sea una segmentación?
¡Agradezco su ayuda adicional!
@kalo1314 ningún problema 🙂
¿Podría darnos un ejemplo de sus necesidades?
p. ej..
Estimado Owen Auger,
Gracias por tu interés en ayudarme. Quiero usar la segmentación de períodos para filtrar el cálculo de 12 meses. Hay 4 opciones:
Enero - Dic 2023
Febrero 2023 - Enero 2024
Marzo 2023 - Febrero 2024
Abr 2023 - Mar 2024
Lo uso para filtrar los datos acumulados en dos tablas que se han conectado a la tabla del calendario. Si creo una tabla de períodos para conectarla a la tabla calendarcalendar, la segmentación de datos no puede funcionar correctamente en las dos tablas. Por lo tanto, me pregunto si hay otra forma de crear una segmentación de períodos con la tabla de calendario para hacerlo.
Espero que mi descripción sea clara y tu ayuda pueda resolverlo.
Check out the October 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.