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.
Hola a todos.
Hay una lista de ramas, se calculan diferentes indicadores para ellas. ¿Es posible hacer que se calculen ciertos indicadores para ciertas ramas? Cuando la segmentación de datos seleccionaba una rama, ¿se mostraban las líneas con medidas para esa rama? Intenté KEEPFILTERS pero deja la línea con el indicador vacío, pero necesita desaparecer.
Por ejemplo, parte de una mesa grande
Rama | Suma |
Sucursal1, ventas | 100 |
Sucursal1, ventas | 150 |
Sucursal2, ventas | 200 |
Sucursal2, ventas | 250 |
Sucursal3, ventas | 110 |
Sucursal1, gastos | 50 |
Sucursal1, gastos | 60 |
Sucursal2, gastos | 80 |
Sucursal3, gastos | 35 |
Resultado: no se debe considerar la medida de ventas para 3, solo el gasto
Medidas | Suma |
Rama1 | |
Ventas | 250 |
Gasto | 110 |
Rama2 | |
Ventas | 450 |
Gasto | 80 |
Rama3 | |
Gasto | 35 |
Solved! Go to Solution.
Primero debe dividir la columna Sucursal en 2: una para Sucursal y la otra para ventas / gastos. Puede usar este código en Power Query:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcipKzEvOMNRRKE7MSS1WUFBQ0lEyNDBQitXBIWeKLGeEImdkgEcORZ8xqpmGaPalVhSk5hWnQmRN8UmaodkIlQTKWKDZh6LN2FQpNhYA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Branch = _t, Sum = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Branch", type text}, {"Sum", Int64.Type}}),
#"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Branch", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Branch.1", "Branch.2"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Branch.1", type text}, {"Branch.2", type text}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Branch.1", "Branch"}, {"Branch.2", "Type"}}),
#"Trimmed Text" = Table.TransformColumns(#"Renamed Columns",{{"Type", Text.Trim, type text}}),
#"Cleaned Text" = Table.TransformColumns(#"Trimmed Text",{{"Type", Text.Clean, type text}}),
#"Filtered Rows" = Table.SelectRows(#"Cleaned Text", each true)
in
#"Filtered Rows"
Para obtener esta estructura:
Lo ideal es crear tablas de dimensiones para rama y tipo (recomendado). Así es como se ve el modelo:
Luego, con estas medidas:
Sum Amount = SUM(FactTable[Sum])
Exc br3 sales =
SUMX (
FactTable,
CALCULATE (
IF (
MAX ( 'Dim Branch'[dBranch] ) = "Branch3"
&& MAX ( 'Dim Type'[dType] ) = "sales",
BLANK (),
[Sum Amount]
)
)
)
Obtendrá lo siguiente:
He adjuntado el archivo PBIX de ejemplo
Primero debe dividir la columna Sucursal en 2: una para Sucursal y la otra para ventas / gastos. Puede usar este código en Power Query:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcipKzEvOMNRRKE7MSS1WUFBQ0lEyNDBQitXBIWeKLGeEImdkgEcORZ8xqpmGaPalVhSk5hWnQmRN8UmaodkIlQTKWKDZh6LN2FQpNhYA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Branch = _t, Sum = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Branch", type text}, {"Sum", Int64.Type}}),
#"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Branch", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Branch.1", "Branch.2"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Branch.1", type text}, {"Branch.2", type text}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Branch.1", "Branch"}, {"Branch.2", "Type"}}),
#"Trimmed Text" = Table.TransformColumns(#"Renamed Columns",{{"Type", Text.Trim, type text}}),
#"Cleaned Text" = Table.TransformColumns(#"Trimmed Text",{{"Type", Text.Clean, type text}}),
#"Filtered Rows" = Table.SelectRows(#"Cleaned Text", each true)
in
#"Filtered Rows"
Para obtener esta estructura:
Lo ideal es crear tablas de dimensiones para rama y tipo (recomendado). Así es como se ve el modelo:
Luego, con estas medidas:
Sum Amount = SUM(FactTable[Sum])
Exc br3 sales =
SUMX (
FactTable,
CALCULATE (
IF (
MAX ( 'Dim Branch'[dBranch] ) = "Branch3"
&& MAX ( 'Dim Type'[dType] ) = "sales",
BLANK (),
[Sum Amount]
)
)
)
Obtendrá lo siguiente:
He adjuntado el archivo PBIX de ejemplo
Proporcione datos de muestra o un archivo PBIX, y una descripción del resultado esperado
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 |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |