Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers!
Enter the sweepstakes now!Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.
¡Hola a todos!
Necesito incluir una lista de materiales de varios niveles en mi modelo de datos.
Tengo un maestro de artículos que contiene todos los atributos de cada elemento:
Artículo | Unidad | Attr1 | Attr2 | Attr3 | Attr4 |
A1 | |||||
A2 |
Entonces tengo una lista de materiales como:
Elemento principal | Artículo infantil | Valor | Unidad |
A1 | A2 | X | X |
A1 | A3 | X | X |
A2 | A4 | X | X |
Como puede ver, el maestro de elementos tiene todos los elementos primarios y secundarios.
Ahora, ¿cómo vincularía esa lista de materiales del maestro de artículos?
Asumo que necesito una relación con el elemento principal Y con el elemento secundario, pero solo uno puede estar activo.
¿Alguien tiene alguna sugerencia?
Hola @joshua1990
Tienes al menos dos opciones aquí.
La nueva tabla de Power Query ahora le permitiría hacer que su tabla de DIM de elemento filtre su número de artículo aquí como una relación de 1 a muchos y, a continuación, simplemente usaría algo como esto para obtener elementos primarios/secundarios específicos:
Parent Totals =
SUMX(
FILTER(
'Table',
'Table'[Item Attribute] = "Parent Item"
),
'Table'[Value]
)
La transformación de código M completa está a continuación, pero básicamente acabo de seleccionar las columnas Padre/Hijo, hice clic con el botón derecho y seleccioné COLUMNAS UNPIVOT seleccionadas.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcjRU0lFyNAISIIalpVKsDkzQGEiAJCwsIIIgtqMJkABJmJsrxcYCAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Parent Item" = _t, #"Child Item" = _t, Value = _t, Unit = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Parent Item", type text}, {"Child Item", type text}, {"Value", Int64.Type}, {"Unit", Int64.Type}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Value", "Unit"}, "Item Atribute", "Item Number"),
#"Reordered Columns" = Table.ReorderColumns(#"Unpivoted Columns",{"Item Atribute", "Item Number", "Value", "Unit"})
in
#"Reordered Columns"
1) En Power Query, seleccione Nueva fuente y, a continuación, Consulta en blanco
2) En la cinta de opciones Inicio, seleccione el botón "Editor avanzado"
3) Retire todo lo que ve, luego pegue el código M que le he dado en esa caja.
4) Pulse Hecho
5) Consulte este artículo si necesita ayuda para usar este código M en su modelo.
DAX is for Analysis. Power Query is for Data Modeling
Proud to be a Super User!
MCSA: BI ReportingDAX no admite jerarquías de forma nativa. Sin embargo, puede hacer cosas como listas de materiales, tiene que crear algunas columnas calculadas para que funcionen. Aquí está el patrón para ese problema, que incluye ejemplos de código y una explicación paso a paso.
Help when you know. Ask when you don't!
Check out the April 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.