Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
Tengo la siguiente tabla:
¿Cuál es la mejor manera de convertir las columnas Inicio y Fin en un continuo de fechas de manera que pueda graficar de forma sencilla los consumos e importes por día? Y de la misma manera poder agrupar también por semana, mes o año.
He construido una tabla calendario, cuya columna Fecha (creada con AUTOCALENDAR) he relacionado con Inicio. No sé si puede ser de ayuda.
Un saludo y gracias por adelantado.
De acuerdo con su descripción, creo una muestra.
Aquí está mi solución.
1.Cree una tabla de fecha, no establezca una relación entre las dos tablas.
Date = CALENDARAUTO()
2.Crear dos medidas.
Consumption Measure =
MAXX (
FILTER (
'Table',
MAX ( 'Date'[Date] ) >= 'Table'[Start]
&& MAX ( 'Date'[Date] ) <= 'Table'[End]
),
'Table'[Consumption]
)
Importe Measure =
MAXX (
FILTER (
'Table',
MAX ( 'Date'[Date] ) >= 'Table'[Start]
&& MAX ( 'Date'[Date] ) <= 'Table'[End]
),
'Table'[Importe]
)
Poner Fecha de la tabla Fecha en el eje X, Concepto en la leyenda y medir en el eje Y, obtener el resultado.
Adjunto mi muestra a continuación para su referencia.
Saludos
Equipo de apoyo a la comunidad _ kalyj
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
¿Cuál es el objetivo de la tabla obtenida a través de FILTER()?
Si la implemento por sí sola, aparece vacía:
¿Es posible que MAX('Calendario'[Fecha]) (final de año del año en curso) sea menor o igual que 'Suministros'[Fin]?
Muchísimas gracias por tu respuesta, increíble el nivel de detalle. Voy a intentar implementarla y te comento.
¿Le importaría aceptar las respuestas útiles como soluciones? Entonces somos capaces de cerrar el hilo. Más personas que tienen el mismo requisito encontrarán la solución rápidamente y se beneficiarán aquí, ¡gracias!
Saludos
Equipo de apoyo a la comunidad _ kalyj
Power Query puede crear filas de fecha a partir de las columnas de fecha de inicio y finalización, pero ¿cómo se supone que se distribuyen esos números? ¿Se dividirán por el número de días de principio a fin para que obtenga la cantidad diaria?
Sí, básicamente es lo que pretendo, obtener un ratio diario, que luego pueda ser agrupado a niveles superiores (mensual, anual), porque es imposible saber si un día hubo más o menos consumo. Simplemente sé que para un determinado periodo (los días entre Inicio y Fin) hubo X consumo que supuso Y gasto.
Este es un ejemplo de M Script que genera fechas mediante las columnas Fechas de inicio y finalización.
let
Source = Table.FromRows(
Json.Document(
Binary.Decompress(
Binary.FromText(
"dZBBDoAgDAT/wtnEdhHavsX4/29IBJM14I2SSTu755m07qI7BJq21F6Cd6iWrq0BwYAzgA5kAuA0lOgAGGDa8wNA6U+FTtjCITNdSgcOlsy0wccG+5O0Om9AWZzgosBC7nMKOcghtG9g4EM7FgAbu8wpPj34qNr/JKssmhSOOSQ5OjizxaIHHqL1cN0=",
BinaryEncoding.Base64
),
Compression.Deflate
)
),
let
_t = ((type nullable text) meta [Serialized.Text = true])
in
type table [Start = _t, End = _t, Value = _t]
),
#"Changed Type" = Table.TransformColumnTypes(
Source,
{{"Start", type date}, {"End", type date}, {"Value", Int64.Type}}
),
#"Added Custom" = Table.AddColumn(
#"Changed Type",
"Number of Days",
each Duration.Days([End] - [Start]) + 1,
Int64.Type
),
#"Added Custom1" = Table.AddColumn(
#"Added Custom",
"Dates",
each List.Dates([Start], [Number of Days], #duration(1, 0, 0, 0)),
type list
),
#"Expanded Dates" = Table.ExpandListColumn(#"Added Custom1", "Dates"),
#"Changed Type1" = Table.TransformColumnTypes(#"Expanded Dates", {{"Dates", type date}}),
#"Added Custom2" = Table.AddColumn(
#"Changed Type1",
"New Value",
each [Value] / [Number of Days],
type number
),
#"Removed Other Columns" = Table.SelectColumns(
#"Added Custom2",
{"Start", "End", "Dates", "New Value"}
)
in
#"Removed Other Columns"
Entiendo que la única manera de procesar esto es en la fase de consulta, con Power Query; ¿no hay posibilidad con DAX?
Check out the September 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |