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

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.

Reply
Greg_Deckler
Super User
Super User

Creo que rompí DAX

Así que he estado haciendo un progreso decente en mi pequeño proyecto para llegar a una traducción de tantas funciones de Excel a DAX como sea posible. Luego me encontré con ROMAN. No es bonito, pero un problema solucionable usando un poco de fuerza bruta. Generalmente desarrollo estas cosas como columnas primero y luego las convierto en medidas. Por lo tanto, en forma de columna, esta cosa vuelve en como menos de 5 segundos. Pero, traduciéndola a una medida, incluso si filtro la tabla a un solo valor para convertir, no puedo conseguir que vuelva, simplemente gira. Y, cuando intento guardar el archivo, bueno, he estado esperando más de 30 minutos y todavía está ahorrando. @marcorusso eres la persona más inteligente sobre DAX que conozco, ¿puedes arrojar alguna luz sobre lo que está pasando aquí?

@Mariusz @MFelix@amitchandak@edhans @ImkeF @ImkeF@ImkeF @AllisonKennedy @HotChilli @Ashish_Mathur @VasTg @az38 @parry2k @darlove @VasTg @HotChilli @HotChilli @HotChilli @HotChilli @HotChilli @HotChilli @camargos88 alguien tiene una idea de lo que está pasando? @camargos88

Estos son los pasos para reproducir:

  1. Crear una tabla utilizando la siguiente fórmula: arábigo - GENERATESERIES(1,4000)
  2. Pegue en el código siguiente como una columna calculada, los valores se muestran en menos de 5 segundos
  3. Crear una medida que cambie la línea superior para que sea VAR __Value á MAX('Arabic'[Value])
  4. Ponga 'Arabic'[Value] en una visualización de tabla, establecido en No resumir y filtrar en 1
  5. Poner medir en la mesa visual, verlo girar para siempre
  6. Trate de guardar el archivo, para siempre

Numeral Romano ? 
    VAR __Value á 'árabe'[Valor]
    VAR __Classic 
        DATATABLE(
            "Arabic",INTEGER,
            "Romano",STRING,
            {
                N.o 1, "Yo",
                N.o 4, "IV",
                N.o 5, "V",
                N.o 9, "IX",
                N.o 10, "X",
                40, "XL",
                N.o 50, "L",
                N.o 90, "XC",
                N.o 100, "C",
                400, "CD",
                N.o 500, "D",
                N.o 900, "CM",
                N.o 1000, "M"
            }
        )
    VAR __Concise1 
        DATATABLE(
            "Arabic",INTEGER,
            "Romano",STRING,
            {
                N.o 1, "Yo",
                N.o 4, "IV",
                N.o 5, "V",
                N.o 9, "IX",
                N.o 10, "X",
                40, "XL",
                N.o 45, "VL",
                N.o 50, "L",
                N.o 90, "XC",
                N.o 95, "VC",
                N.o 100, "C",
                400, "CD",
                450, "LD",
                N.o 500, "D",
                N.o 900, "CM",
                N.o 1000, "M"
            }
        )
    VAR __Convert - __Classic
1o dígito
    VAR __1 - __Value
    VAR __1Table - ADDCOLUMNS(__Convert,"Diff",__1 - [Arabic])
    VAR __1Min á MINX(FILTER(__1Table,[Diff] > s0),[Diff])
    VAR __1R de VAR (FILTRO(__1Table,[Diff] - __1Min),[Romano])
    VAR __1A á MAXX(FILTER(__1Table,[Diff] - __1Min),[arabic])
2o dígito
    VAR __2 - __Value - __1A
    VAR __2Table - ADDCOLUMNS(__Convert,"Diff",__2 - [Arabic])
    VAR __2Min - MINX(FILTER(__2Table,[Diff] > s0),[Diff])
    VAR __2R á MAXX(FILTER(__2Table,[Diff] - __2Min),[Romano])
    VAR __2A á MAXX(FILTER(__2Table,[Diff] - __2Min),[Arabic])
3er dígito
    VAR __3 - __Value - __1A - __2A
    VAR __3Table - ADDCOLUMNS(__Convert,"Diff",__3 - [Arabic])
    VAR __3Min á MINX(FILTER(__3Table,[Diff] > s0),[Diff])
    VAR __3R de VAR (FILTRO(__3Table,[Diff] - __3Min),[Romano])
    VAR __3A á MAXX(FILTER(__3Table,[Diff] - __3Min),[arabic])
4o dígito
    VAR __4 - __Value - __1A - __2A - __3A
    VAR __4Table - ADDCOLUMNS(__Convert,"Diff",__4 - [Arabic])
    VAR __4Min - MINX(FILTER(__4Table,[Diff] > s0),[Diff])
    VAR __4R á MAXX(FILTER(__4Table,[Diff] - __4Min),[Romano])
    VAR __4A á MAXX(FILTER(__4Table,[Diff] á __4Min),[arabic])
5o dígito
    VAR __5 - __Value - __1A - __2A - __3A - __4A
    VAR __5Table - ADDCOLUMNS(__Convert,"Diff",__5 - [Arabic])
    VAR __5Min á MINX(FILTER(__5Table,[Diff] > s0),[Diff])
    VAR __5R á MAXX(FILTER(__5Table,[Diff] - __5Min),[Romano])
    VAR __5A á MAXX(FILTER(__5Table,[Diff] - __5Min),[arabic])
6o dígito
    VAR __6 - __Value - __1A - __2A - __3A - __4A - __5A
    VAR __6Table - ADDCOLUMNS(__Convert,"Diff",__6 - [Arabic])
    VAR __6Min á MINX(FILTER(__6Table,[Diff] > s0),[Diff])
    VAR __6R á MAXX(FILTER(__6Table,[Diff] - __6Min),[Romano])
    VAR __6A á MAXX(FILTER(__6Table,[Diff] - __6Min),[arabic])
7o dígito
    VAR __7 - __Value - __1A - __2A - __3A - __4A - __5A - __6A
    VAR __7Table - ADDCOLUMNS(__Convert,"Diff",__7 - [Arabic])
    VAR __7Min - MINX(FILTER(__7Table,[Diff] > s0),[Diff])
    VAR __7R á MAXX(FILTER(__7Table,[Diff] - __7Min),[Romano])
    VAR __7A á MAXX(FILTER(__7Table,[Diff] - __7Min),[arabic])
8o dígito
    VAR __8 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A
    VAR __8Table - ADDCOLUMNS(__Convert,"Diff",__8 - [Arabic])
    VAR __8Min de VAR (FILTRO(__8Table,[Diff] > 0),[Diff])
    VAR __8R - MAXX(FILTER(__8Table,[Diff] - __8Min),[Romano])
    VAR __8A de VAR(FILTER(__8Table,[Diff] á __8Min),[Arabic])
9o dígito
    VAR __9 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A
    VAR __9Table - ADDCOLUMNS(__Convert,"Diff",__9 - [Arabic])
    VAR __9Min á MINX(FILTER(__9Table,[Diff] > s0),[Diff])
    VAR __9R á MAXX(FILTER(__9Table,[Diff] - __9Min),[Romano])
    VAR __9A de VAR(FILTER(__9TABLE,[Diff] - __9Min),[Arabic])
10o dígito
    VAR __10 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A
    VAR __10Table - ADDCOLUMNS(__Convert,"Diff",__10 - [Arabic])
    VAR __10Min á MINX(FILTER(__10Table,[Diff] > s0),[Diff])
    VAR __10R á MAXX(FILTER(__10Table,[Diff] - __10Min),[Romano])
    VAR __10A á MAXX(FILTER(__10Table,[Diff] á __10Min),[arabic])
11o dígito
    VAR __11 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A
    VAR __11Table - ADDCOLUMNS(__Convert,"Diff",__11 - [Arabic])
    VAR __11Min á MINX(FILTER(__11Table,[Diff] > s0),[Diff])
    VAR __11R á MAXX(FILTER(__11Table,[Diff] - __11Min),[Romano])
    VAR __11A á MAXX(FILTER(__11Table,[Diff] - __11Min),[arabic])
12o dígito
    VAR __12 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A
    VAR __12Table - ADDCOLUMNS(__Convert,"Diff",__12 - [Arabic])
    VAR __12Min á MINX(FILTER(__12Table,[Diff] >0),[Diff])
    VAR __12R á MAXX(FILTER(__12Table,[Diff] - __12Min),[Romano])
    VAR __12A á MAXX(FILTER(__12Table,[Diff] - __12Min),[arabic])
13o dígito
    VAR __13 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A
    VAR __13Table - ADDCOLUMNS(__Convert,"Diff",__13 - [Arabic])
    VAR __13Min - MINX(FILTER(__13Table,[Diff] > s0),[Diff])
    VAR __13R á MAXX(FILTER(__13Table,[Diff] - __13Min),[Romano])
    VAR __13A á MAXX(FILTER(__13Table,[Diff] - __13Min),[arabic])
14o dígito
    VAR __14 - __Value - __1A - __2A - __3A __2A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A - __13A
    VAR __14Table á ADDCOLUMNS(__Convert,"Diff",__14 - [Arabic])
    VAR __14Min á MINX(FILTER(__14Table,[Diff] > s0),[Diff])
    VAR __14R á MAXX(FILTER(__14Table,[Diff] - __14Min),[Romano])
    VAR __14A á MAXX(FILTER(__14Table,[Diff] á __14Min),[Arabic])
15o dígito
    VAR __15 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A - __13A - __14A
    VAR __15Table - ADDCOLUMNS(__Convert,"Diff",__15 - [Arabic])
    VAR __15Min á MINX(FILTER(__15Table,[Diff] > s0),[Diff])
    VAR __15R á MAXX(FILTER(__15Table,[Diff] - __15Min),[Romano])
    VAR __15A á MAXX(FILTER(__15Table,[Diff] - __15Min),[arabic])
16o dígito
    VAR __16 - __Value - __1A - __2A - __3A __4A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A - __13A - __14A - __15A
    VAR __16Table - ADDCOLUMNS(__Convert,"Diff",__16 - [Arabic])
    VAR __16Min - MINX(FILTER(__16Table,[Diff] > s0),[Diff])
    VAR __16R á MAXX(FILTER(__16Table,[Diff] - __16Min),[Romano])
    VAR __16A á MAXX(FILTER(__16Table,[Diff] - __16Min),[arabic])
17o dígito
    VAR __17 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A - __13A - __14A - __15A - __16A
    VAR __17Table - ADDCOLUMNS(__Convert,"Diff",__17 - [Arabic])
    VAR __17Min á MINX(FILTER(__17Table,[Diff] > s0),[Diff])
    VAR __17R á MAXX(FILTER(__17Table,[Diff] á __17Min),[Romano])
    VAR __17A á MAXX(FILTRO(__17Table,[Diff] - __17Min),[árabe])
18o dígito
    VAR __18 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A - __13A - __14A - __15A __16A - __17A
    VAR __18Table - ADDCOLUMNS(__Convert,"Diff",__18 - [Arabic])
    VAR __18Min de VAR (FILTRO(__18Table,[Diff] > 0),[Diff])
    VAR __18R á MAXX(FILTER(__18Table,[Diff] - __18Min),[Romano])
    VAR __18A á MAXX(FILTER(__18Table,[Diff] - __18Min),[arabic])
19o dígito
    VAR __19 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A - __11A - __12A - __13A __14A - __14A - __15A __14A - __16A - __17A - __18A
    VAR __19Table - ADDCOLUMNS(__Convert,"Diff",__19 - [Arabic])
    VAR __19Min - MINX(FILTER(__19Table,[Diff] > s0),[Diff])
    VAR __19R á MAXX(FILTRO(__19Table,[Diff] - __19Min),[Romano])
    VAR __19A á MAXX(FILTER(__19Table,[Diff] - __19Min),[arabic])
20o dígito
    VAR __20 - __Value - __1A - __2A - __3A - __4A - __5A - __6A - __7A - __8A - __9A - __10A __11A - __11A - __12A - __13A - __14A - __15A - __16A - __17A - __18A - __19A
    VAR __20Table á ADDCOLUMNS(__Convert,"Diff",__20 - [Arabic])
    VAR __20Min á MINX(FILTER(__20Table,[Diff] > s0),[Diff])
    VAR __20R á MAXX(FILTER(__20Table,[Diff] - __20Min),[Romano])
    VAR __20A de VAR (FILTRO(__20TABLE,[Diff] á __20Min),[Arabic])
devolución
__Value & "," & __1 & "," & __2 & "," & __3 & "," & __4 & "," & __5 & "," & __6 & "," & __7Min & ", " & __8 & ", "
    CONCATENATEX(
        • __1R, __2R, __3R, __4R, __5R, __6R, __7R, __8R, __9R, __10R, __11R, __12R, __13R, __14R, __15R, __16R, __17R, __18R, __19R, __20R,
        [Valor] )


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...
3 REPLIES 3

¡Muy interesante!

Analicé el problema y mi conclusión es que SUMMARIZECOLUMNS tiene un problema con esta medida.

La medida funciona bien con otras funciones de tabla.

Debe abrir un vale de soporte técnico con Microsoft: le sugiero que cree un pequeño archivo de Power BI que reproduzca el problema y abra un vale oficial, para que pueda priorizarse e identificarse en la cadena de soporte técnico de Microsoft, hasta que llegue al equipo de desarrollo. A pesar de que encontramos una solución, esto debe ser arreglado porque me preocupa que pueda afectar a otras expresiones.

Por favor, escríbeme por correo electrónico de forma privada.

Marco

Ugh.... SUMMARIZECOLUMNS().....



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

He publicado el problema aquí: https://community.powerbi.com/t5/Issues/Issue-with-DAX-Measure-Perhaps-a-SUMMARIZECOLUMNS-issue/idi-...


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.