Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Me gustaría poder replicar esta salida en Power Bi
Cualquier ayuda sería apreciada, col T a Y están en una sola tabla.
Cualquier ayuda sería apreciada.
Hola
Este código M funciona
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlXSUYpMTSwCUgamuoYGukYGhmZAjqGBUqwOirQhsrQpuqwRsqwRuqyBoa6BGUjWHMgxwStroRQbCwA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Interval = _t, Period = _t, #"Interval Start" = _t, #"Repeat in contract term" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Interval", Int64.Type}, {"Period", type text}, {"Interval Start", type date}, {"Repeat in contract term", Int64.Type}}),
#"Duplicated Column" = Table.DuplicateColumn(#"Changed Type", "Repeat in contract term", "Repeat in contract term - Copy"),
#"Added Custom" = Table.AddColumn(#"Duplicated Column", "Custom", each {1..[Repeat in contract term]}),
#"Expanded Custom" = Table.ExpandListColumn(#"Added Custom", "Custom"),
#"Subtracted from Column" = Table.TransformColumns(#"Expanded Custom", {{"Custom", each _ - 1, type number}}),
#"Inserted Multiplication" = Table.AddColumn(#"Subtracted from Column", "Multiplication", each [Interval] * [Custom], type number),
#"Added Custom1" = Table.AddColumn(#"Inserted Multiplication", "Custom.1", each Date.AddYears([Interval Start],[Multiplication])),
#"Removed Columns" = Table.RemoveColumns(#"Added Custom1",{"Repeat in contract term", "Multiplication"}),
#"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Repeat in contract term - Copy", "Repeat in contract term"}}),
#"Added Prefix" = Table.TransformColumns(#"Renamed Columns", {{"Custom", each "Date " & Text.From(_, "en-IN"), type text}}),
#"Replaced Value" = Table.ReplaceValue(#"Added Prefix","Date 0","Interval Start Date",Replacer.ReplaceText,{"Custom"}),
#"Pivoted Column" = Table.Pivot(Table.TransformColumnTypes(#"Replaced Value", {{"Custom", type text}}, "en-IN"), List.Distinct(Table.TransformColumnTypes(#"Replaced Value", {{"Custom", type text}}, "en-IN")[Custom]), "Custom", "Custom.1")
in
#"Pivoted Column"
Espero que esto ayude.
Hola Ashish, ¿hay alguna manera de modificar el guión para que calcule las fechas de vencimiento a partir de una frecuencia diferente? ¿Los intervalos no son solo años sino también meses?
Estoy seguro de que se puede hacer, pero creo que eso haría que el código M fuera más complicado y largo.
Entendido, aprecia tu ayuda para resolver esto por mí. Si podemos probar el Código M extendido, sería genial. ¿Lo haría más fácil si el intervalo fuera solo mths? podríamos cambiar el intervalo de años a meses?
Podemos intentarlo. Muestre un conjunto de datos donde yu tenga diferentes períodos de intervalo y también muestre el resultado esperado con mucha claridad.
Este es el resultado final que estoy buscando
Esa imagen no aparece correctamente cuando hago clic en ella: el fondo es negro y, por lo tanto, no se puede ver. Además, comparta los datos de origen en un formulario que se pueda pegar en un archivo de MS Excel.
Este es el resultado que quiero, por alguna razón obtengo un error meassge al intentar pegar en la tabla?
Falta la columna Repetir en términos de contrato. Muestre esa columna también (será en años o columnas). mostrar claramente el resultado esperado.
El col repetido es el número de col que se crea, este valor cambiará dependiendo del número de veces que se repita la secuencia en el plazo del contrato (por ejemplo, un contrato de 10 años con un intervalo mensual se repetirá 120 veces, es decir, 120 columnas / fechas)
Gracias Ashish, immnot que familiarizado con el código M, estoy asumiendo que simplemente cambio la sección de origen?
Eres nosotros. Sí.
gracias por su ayuda
Tomando la primera fila como ejemplo, ¿por qué la fecha de vencimiento1 debería ser el 4/10/2021 si están espaciadas en un intervalo de 5 años? Debe ser el 5/10/2021 y la fecha de vencimiento 2 debe ser el 5/10/2026 no el 3/10/2026. No se debe multiplicar 365 por 5 para llegar a los 1825 días. Simplemente debe agregar 5 años a las fechas para llegar al resultado final, a menos que tenga razones para agregar 1825 días, no 5 años.
Hágame saber la lógica, luego puedo proporcionar la fórmula DAX adecuada.
Hola, gracias por la rápida respuesta, simplemente multiplicar años por 365 en excel fue la forma más sencilla de hacerlo, el resultado final no es tan sensual. Dicho esto, aprecie si puede optimizar el calc en Dax.
El resultado final que necesito es la fecha de vencimiento progresiva basada en el intervalo que se muestra en columnas separadas
Además, el intervalo en cada fila puede cambiar entre años, 3M, 6M, 1W
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |