Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

¿Por qué la flecha de avance es mucho más rápida que los botones "+"?

Estoy haciendo exactamente lo mismo.

  • ¿Por qué la flecha de desglose es tan rápida?
  • ¿Por qué el "+" se cuelga? El visual no se cargará en un espacio de trabajo premium... Es una locura.GIF 8-1-2022 12-35-57 PM.gif
3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

No espero que nadie pueda entender por qué las consultas son diferentes. Pero hombre... cuando haces clic en ese botón +, pagas por ello.

Syndicate_Admin
Administrator
Administrator

¡Las consultas dax son diferentes!

El desglose:

Consulta DAX
DEFINIR
VAR __DS0FilterTable =
TREATAS({"AutoZone"}, 'Nombre del cliente'[Nombre comercial Mayor])

VAR __DS0FilterTable2 =
TREATAS({"Recibir",
"Confirmado"}, 'Tabla RM_KEY'[Estado de retorno])

VAR __DS0FilterTable3 =
TREATAS({"Ajuste de stock",
"Ascensores"}, 'Tabla RM_KEY'[Tipo de retorno])

VAR __DS0FilterTable4 =
TREATAS({"AM"}, 'Nombre del cliente'[AM/OE/IC])

VAR __DS0FilterTable5 =
TREATAS(
{"'Nombre del cliente'[Nombre comercial mayor]",
"'Nombre del cliente'[Customer Name_ MT]"},
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Campos]
)

VAR __DS0FilterTable6 =
FILTER(KEEPFILTERS(VALUES('Tabla de fechas'[Año])), 'Tabla de fechas'[Año] > 2020)

VAR __DS0FilterTable7 =
TREATAS({"Y"}, 'tabla RM_KEY'[RM Flag])

VAR __DS0FilterTable8 =
TREATAS({"N",
BLANK()}, 'Partes'[ddp_flag])

VAR __DS0Core =
RESUMIRCOLUMNAS(
ROLLUPADDISSUBTOTAL(
'Nombre del cliente' [Nombre comercial major], "IsGrandTotalRowTotal",
'Nombre del cliente'[Customer Name_ MT], "IsDM1Total"
),
__DS0FilterTable,
__DS0FilterTable2,
__DS0FilterTable3,
__DS0FilterTable4,
__DS0FilterTable5,
__DS0FilterTable6,
__DS0FilterTable7,
__DS0FilterTable8,
"v_InventoryValue_RM", '1. Medidas»[$InventoryValue_RM],
"RM_Qty", '1. Medidas»[RM_Qty],
"Credit_Value_RM", '1. Medidas»[Credit_Value_RM],
"v_Scrap", '1. Medidas»[$Scrap],
"Returns_Processed_Qty", 'Returns - RT'[Returns_Processed_Qty],
"Credit_Value_RT", 'Returns - RT'[Credit_Value_RT],
"Returns_Qty_Delta", '1. Medidas»[Returns_Qty_Delta],
"Customer_Credit_Value_Delta", '1. Medidas»[Customer_Credit_Value_Delta],
"v_InventoryValue_RT", 'Returns - RT'[$InventoryValue_RT],
"Inventory_Value_Delta", '1. Medidas»[Inventory_Value_Delta],
"MinReturn_Status", IGNORE(CALCULATE(MIN('tabla RM_KEY'[Estado de retorno])))
)

VAR __DS0CoreTableByDM1 =
SELECTCOLUMNS(
KEEPFILTERS(FILTER(KEEPFILTERS(__DS0Core), [IsDM1Total] = TRUE)),
"IsGrandTotalRowTotal", [IsGrandTotalRowTotal],
"'Nombre del cliente'[Nombre comercial mayor]", 'Nombre del cliente'[Nombre comercial Mayor],
"SortBy_DM1_0", [v_InventoryValue_RM]
)

DONDE __DS0PrimaryWithSortColumns =
NATURALLEFTOUTERJOIN(
__DS0Core,
__DS0CoreTableByDM1
)

VAR __DS0PrimaryWindowed =
TOPN(
502,
__DS0PrimaryWithSortColumns,
[IsGrandTotalRowTotal],
0,
[SortBy_DM1_0],
0,
'Nombre del cliente' [Nombre comercial principal],
1,
[IsDM1Total],
0,
[v_InventoryValue_RM],
0,
'Nombre del cliente'[Customer Name_ MT],
1
)

VAR __DS0CoreNoInstanceFiltersNoTotals =
FILTER(KEEPFILTERS(__DS0Core), AND([IsGrandTotalRowTotal] = FALSE, [IsDM1Total] = FALSE))

EVALUAR
GROUPBY(
__DS0CoreNoInstanceFiltersNoTotals,
"MinRM_Qty", MINX(CURRENTGROUP(), [RM_Qty]),
"MaxRM_Qty", MAXX(CURRENTGROUP(), [RM_Qty]),
"Minv_InventoryValue_RM", MINX(CURRENTGROUP(), [v_InventoryValue_RM]),
"Maxv_InventoryValue_RM", MAXX(CURRENTGROUP(), [v_InventoryValue_RM]),
"MinCredit_Value_RM", MINX(CURRENTGROUP(), [Credit_Value_RM]),
"MaxCredit_Value_RM", MAXX(CURRENTGROUP(), [Credit_Value_RM]),
"Minv_Scrap", MINX(CURRENTGROUP(), [v_Scrap]),
"Maxv_Scrap", MAXX(CURRENTGROUP(), [v_Scrap]),
"MinReturns_Processed_Qty", MINX(CURRENTGROUP(), [Returns_Processed_Qty]),
"MaxReturns_Processed_Qty", MAXX(CURRENTGROUP(), [Returns_Processed_Qty]),
"MinCredit_Value_RT", MINX(CURRENTGROUP(), [Credit_Value_RT]),
"MaxCredit_Value_RT", MAXX(CURRENTGROUP(), [Credit_Value_RT]),
"MinReturns_Qty_Delta", MINX(CURRENTGROUP(), [Returns_Qty_Delta]),
"MaxReturns_Qty_Delta", MAXX(CURRENTGROUP(), [Returns_Qty_Delta]),
"MinCustomer_Credit_Value_Delta", MINX(CURRENTGROUP(), [Customer_Credit_Value_Delta]),
"MaxCustomer_Credit_Value_Delta", MAXX(CURRENTGROUP(), [Customer_Credit_Value_Delta]),
"Minv_InventoryValue_RT", MINX(CURRENTGROUP(), [v_InventoryValue_RT]),
"Maxv_InventoryValue_RT", MAXX(CURRENTGROUP(), [v_InventoryValue_RT]),
"MinInventory_Value_Delta", MINX(CURRENTGROUP(), [Inventory_Value_Delta]),
"MaxInventory_Value_Delta", MAXX(CURRENTGROUP(), [Inventory_Value_Delta])
)

EVALUAR
__DS0PrimaryWindowed

ORDENAR POR
[IsGrandTotalRowTotal] DESC
[SortBy_DM1_0] DESC
'Nombre del cliente' [Nombre comercial principal],
[IsDM1Total] DESC
[v_InventoryValue_RM] DESC
'Nombre del cliente'[Customer Name_ MT]


Consulta DAX
DEFINIR
VAR __DS0FilterTable =
TREATAS(
{"'Nombre del cliente'[Nombre comercial mayor]",
"'Nombre del cliente'[Customer Name_ MT]"},
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Campos]
)

VAR __DS0Core =
CALCULABLE(
RESUMIR(
«2. Devoluciones-Abiertas: Catagories»,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Campos catagories],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Order],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories]
),
KEEPFILTERS(__DS0FilterTable)
)

VAR __DS0BodyLimited =
TOPN(
152,
__DS0Core,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Order],
1,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Campos catagories],
1,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories],
1
)

EVALUAR
__DS0BodyLimited

ORDENAR POR
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Order],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Campos catagories],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories]

El botón +:

Consulta DAX
DEFINIR
VAR __DS0FilterTable =
TREATAS({"Recibir",
"Confirmado"}, 'Tabla RM_KEY'[Estado de retorno])

VAR __DS0FilterTable2 =
TREATAS({"Ajuste de stock",
"Ascensores"}, 'Tabla RM_KEY'[Tipo de retorno])

VAR __DS0FilterTable3 =
TREATAS({"AM"}, 'Nombre del cliente'[AM/OE/IC])

VAR __DS0FilterTable4 =
TREATAS(
{"'Nombre del cliente'[Nombre comercial mayor]",
"'Customer Name'[Customer Name_ MT]",
"'Piezas'[Catálogo #]"},
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Campos]
)

VAR __DS0FilterTable5 =
FILTER(KEEPFILTERS(VALUES('Tabla de fechas'[Año])), 'Tabla de fechas'[Año] > 2020)

VAR __DS0FilterTable6 =
TREATAS({"Y"}, 'tabla RM_KEY'[RM Flag])

VAR __DS0FilterTable7 =
TREATAS({"N",
BLANK()}, 'Partes'[ddp_flag])

VAR __DS0CoreNoInstanceFilters =
SELECTCOLUMNS(
KEEPFILTERS(
FILTRO(
KEEPFILTERS(
RESUMIRCOLUMNAS(
ROLLUPADDISSUBTOTAL(
'Nombre del cliente' [Nombre comercial major], "IsGrandTotalRowTotal",
'Nombre del cliente'[Customer Name_ MT], "IsDM1Total",
'Piezas'[Catálogo #], "IsDM3Total"
),
__DS0FilterTable,
__DS0FilterTable2,
__DS0FilterTable3,
__DS0FilterTable4,
__DS0FilterTable5,
__DS0FilterTable6,
__DS0FilterTable7,
"v_InventoryValue_RM", '1. Medidas»[$InventoryValue_RM],
"RM_Qty", '1. Medidas»[RM_Qty],
"Credit_Value_RM", '1. Medidas»[Credit_Value_RM],
"v_Scrap", '1. Medidas»[$Scrap],
"Returns_Processed_Qty", 'Returns - RT'[Returns_Processed_Qty],
"Credit_Value_RT", 'Returns - RT'[Credit_Value_RT],
"Returns_Qty_Delta", '1. Medidas»[Returns_Qty_Delta],
"Customer_Credit_Value_Delta", '1. Medidas»[Customer_Credit_Value_Delta],
"v_InventoryValue_RT", 'Returns - RT'[$InventoryValue_RT],
"Inventory_Value_Delta", '1. Medidas»[Inventory_Value_Delta],
"MinReturn_Status", CALCULATE(MIN('tabla RM_KEY'[Estado de retorno])),
"HasDataOpen_SO", IGNORAR(
CALCULATE(NOT(ISEMPTY('Open SO')))
),
"HasDataPK_Table", IGNORAR(
CALCULATE(NOT(ISEMPTY('PK Table')))
),
"HasDataFill_Rate_Shipments", IGNORAR(
CALCULATE(NOT(ISEMPTY('Fill Rate Shipments')))
),
"HasDataInvoiced_Dollars", IGNORAR(
CALCULATE(NOT(ISEMPTY('Dólares facturados')))
),
"HasDataForecast", IGNORE(
CALCULATE(NOT(ISEMPTY('Forecast')))
),
"HasDataReturns___RT", IGNORAR(
CALCULATE(NOT(ISEMPTY('Returns - RT')))
),
"HasDataReturns___RM", IGNORAR(
CALCULATE(NOT(ISEMPTY('Devoluciones - RM')))
)
)
),
OR(
OR(
OR(
OR(
OR(
OR(
OR(
OR(
OR(
OR(
NO(ISBLANK([v_InventoryValue_RM])),
NO(ISBLANK([RM_Qty]))
),
NO(ISBLANK([Credit_Value_RM]))
),
NO(ISBLANK([v_Scrap]))
),
NO(ISBLANK([Returns_Processed_Qty]))
),
NO(ISBLANK([Credit_Value_RT]))
),
NO(ISBLANK([Returns_Qty_Delta]))
),
NO(ISBLANK([Customer_Credit_Value_Delta]))
),
NO(ISBLANK([v_InventoryValue_RT]))
),
NO(ISBLANK([Inventory_Value_Delta]))
),
OR(
OR(
OR(
OR(
OR(OR([HasDataOpen_SO], [HasDataPK_Table]), [HasDataFill_Rate_Shipments]),
[HasDataInvoiced_Dollars]
),
[HasDataForecast]
),
[HasDataReturns___RT]
),
[HasDataReturns___RM]
)
)
)
),
"'Nombre del cliente'[Nombre comercial mayor]", 'Nombre del cliente'[Nombre comercial Mayor],
"'Nombre del cliente'[Customer Name_ MT]", 'Customer Name'[Customer Name_ MT],
"'Piezas'[Catálogo #]", 'Piezas'[Catálogo #],
"IsGrandTotalRowTotal", [IsGrandTotalRowTotal],
"IsDM1Total", [IsDM1Total],
"IsDM3Total", [IsDM3Total],
"v_InventoryValue_RM", [v_InventoryValue_RM],
"RM_Qty", [RM_Qty],
"Credit_Value_RM", [Credit_Value_RM],
"v_Scrap", [v_Scrap],
"Returns_Processed_Qty", [Returns_Processed_Qty],
"Credit_Value_RT", [Credit_Value_RT],
"Returns_Qty_Delta", [Returns_Qty_Delta],
"Customer_Credit_Value_Delta", [Customer_Credit_Value_Delta],
"v_InventoryValue_RT", [v_InventoryValue_RT],
"Inventory_Value_Delta", [Inventory_Value_Delta],
"MinReturn_Status", [MinReturn_Status]
)

VAR __DS0Core =
FILTRO(
KEEPFILTERS(__DS0CoreNoInstanceFilters),
OR(
OR(
OR([IsGrandTotalRowTotal], AND(NOT([IsGrandTotalRowTotal]), [IsDM1Total])),
Y(
AND(NOT([IsDM1Total]), [IsDM3Total]),
'Nombre del cliente'[Nombre comercial principal] EN {"AutoZone"}
)
),
Y(
AND(NOT([IsDM3Total]), 'Customer Name'[Business Name Major] EN {"AutoZone"}),
('Nombre del cliente'[Nombre comercial principal], 'Nombre del cliente'[Name_ MT]) EN {("AutoZone", "AUTOZONE VDP")}
)
)
)

VAR __DS0CoreTableByDM1 =
SELECTCOLUMNS(
KEEPFILTERS(
FILTER(KEEPFILTERS(__DS0Core), AND([IsDM1Total] = TRUE, [IsDM3Total] = TRUE))
),
"IsGrandTotalRowTotal", [IsGrandTotalRowTotal],
"'Nombre del cliente'[Nombre comercial mayor]", 'Nombre del cliente'[Nombre comercial Mayor],
"SortBy_DM1_0", [v_InventoryValue_RM]
)

VAR __DS0CoreTableByDM3 =
SELECTCOLUMNS(
KEEPFILTERS(FILTER(KEEPFILTERS(__DS0Core), [IsDM3Total] = TRUE)),
"IsGrandTotalRowTotal", [IsGrandTotalRowTotal],
"'Nombre del cliente'[Nombre comercial mayor]", 'Nombre del cliente'[Nombre comercial Mayor],
"IsDM1Total", [IsDM1Total],
"'Nombre del cliente'[Customer Name_ MT]", 'Customer Name'[Customer Name_ MT],
"SortBy_DM3_0", [v_InventoryValue_RM]
)

DONDE __DS0PrimaryWithSortColumns =
NATURALLEFTOUTERJOIN(
NATURALLEFTOUTERJOIN(
__DS0Core,
__DS0CoreTableByDM1
),
__DS0CoreTableByDM3
)

VAR __DS0PrimaryWindowed =
TOPN(
502,
__DS0PrimaryWithSortColumns,
[IsGrandTotalRowTotal],
0,
[SortBy_DM1_0],
0,
'Nombre del cliente' [Nombre comercial principal],
1,
[IsDM1Total],
0,
[SortBy_DM3_0],
0,
'Nombre del cliente'[Customer Name_ MT],
1,
[IsDM3Total],
0,
[v_InventoryValue_RM],
0,
'Piezas'[Catálogo #],
1
)

VAR __DS0CoreNoInstanceFiltersNoTotals =
FILTRO(
KEEPFILTERS(__DS0CoreNoInstanceFilters),
AND(AND([IsGrandTotalRowTotal] = FALSE, [IsDM1Total] = FALSE), [IsDM3Total] = FALSE)
)

EVALUAR
GROUPBY(
__DS0CoreNoInstanceFiltersNoTotals,
"MinRM_Qty", MINX(CURRENTGROUP(), [RM_Qty]),
"MaxRM_Qty", MAXX(CURRENTGROUP(), [RM_Qty]),
"Minv_InventoryValue_RM", MINX(CURRENTGROUP(), [v_InventoryValue_RM]),
"Maxv_InventoryValue_RM", MAXX(CURRENTGROUP(), [v_InventoryValue_RM]),
"MinCredit_Value_RM", MINX(CURRENTGROUP(), [Credit_Value_RM]),
"MaxCredit_Value_RM", MAXX(CURRENTGROUP(), [Credit_Value_RM]),
"Minv_Scrap", MINX(CURRENTGROUP(), [v_Scrap]),
"Maxv_Scrap", MAXX(CURRENTGROUP(), [v_Scrap]),
"MinReturns_Processed_Qty", MINX(CURRENTGROUP(), [Returns_Processed_Qty]),
"MaxReturns_Processed_Qty", MAXX(CURRENTGROUP(), [Returns_Processed_Qty]),
"MinCredit_Value_RT", MINX(CURRENTGROUP(), [Credit_Value_RT]),
"MaxCredit_Value_RT", MAXX(CURRENTGROUP(), [Credit_Value_RT]),
"MinReturns_Qty_Delta", MINX(CURRENTGROUP(), [Returns_Qty_Delta]),
"MaxReturns_Qty_Delta", MAXX(CURRENTGROUP(), [Returns_Qty_Delta]),
"MinCustomer_Credit_Value_Delta", MINX(CURRENTGROUP(), [Customer_Credit_Value_Delta]),
"MaxCustomer_Credit_Value_Delta", MAXX(CURRENTGROUP(), [Customer_Credit_Value_Delta]),
"Minv_InventoryValue_RT", MINX(CURRENTGROUP(), [v_InventoryValue_RT]),
"Maxv_InventoryValue_RT", MAXX(CURRENTGROUP(), [v_InventoryValue_RT]),
"MinInventory_Value_Delta", MINX(CURRENTGROUP(), [Inventory_Value_Delta]),
"MaxInventory_Value_Delta", MAXX(CURRENTGROUP(), [Inventory_Value_Delta])
)

EVALUAR
__DS0PrimaryWindowed

ORDENAR POR
[IsGrandTotalRowTotal] DESC
[SortBy_DM1_0] DESC
'Nombre del cliente' [Nombre comercial principal],
[IsDM1Total] DESC
[SortBy_DM3_0] DESC
'Nombre del cliente'[Customer Name_ MT],
[IsDM3Total] DESC
[v_InventoryValue_RM] DESC
'Piezas'[Catálogo #]


Consulta DAX
DEFINIR
VAR __DS0FilterTable =
TREATAS(
{"'Nombre del cliente'[Nombre comercial mayor]",
"'Customer Name'[Customer Name_ MT]",
"'Piezas'[Catálogo #]"},
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Campos]
)

VAR __DS0Core =
CALCULABLE(
RESUMIR(
«2. Devoluciones-Abiertas: Catagories»,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Campos catagories],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Order],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories]
),
KEEPFILTERS(__DS0FilterTable)
)

VAR __DS0BodyLimited =
TOPN(
152,
__DS0Core,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Order],
1,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Campos catagories],
1,
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories],
1
)

EVALUAR
__DS0BodyLimited

ORDENAR POR
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories Order],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Campos catagories],
«2. Devoluciones-Abiertas: Catagories»[2. Devoluciones-Abierto: Catagories]

Syndicate_Admin
Administrator
Administrator

Interesante, nunca me di cuenta de eso, aunque no uso el desglose a menudo. Puede usar la funcionalidad del analizador de rendimiento en Power BI Desktop para ver si las consultas DAX generadas son diferentes.

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

Top Solution Authors