Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Icon for Administrator rankAdministrator
5 years ago
Solved

POWERBI DAX

amulyaaregunta_0-1615239332274.png

CONVIERTA LA COLUMNA ANTERIOR EN VALORES DECIMALES QUE AHORA ESTÁN EN FORMA HEXADECIMAL, COMO POR EJEMPLO 0x40 debe obtener el valor 64 ( sustituyendo 0x al espacio). SÓLO QUIERO EN DAX NO EN POWER QUERY O M.

  • Allí @amulyaaregunta

    Descargar ejemplo PBIX con código

    ¿Sólo necesita esta conversión para números hexagonal de 2 dígitos? Este código solo funciona durante 2 dígitos como se muestra en el ejemplo, pero se puede ampliar para obtener más dígitos.

    En primer lugar, cree una nueva tabla

    HexTable = {
                    ("0", 0),
                    ("1", 1),
                    ("2", 2),
                    ("3", 3),
                    ("4", 4),
                    ("5", 5),
                    ("6", 6),
                    ("7", 7),
                    ("8", 8),
                    ("9", 9),
                    ("A", 10),
                    ("B", 11),
                    ("C", 12),
                    ("D", 13),
                    ("E", 14),
                    ("F", 15)
                    }
    

    Cambie el nombre de la columna de texto Hexadecimal y la columna numérica Decimal

    A continuación, cree una columna en la tabla que contenga el hexadecimal: cambie las instrucciones VAR con 'Table'[Hex] para que coincida con sus propios nombres de tabla y columna.

    HexToDecimal = 
    
    VAR _FirstHexDigit = RIGHT('Table'[Hex],1)
    VAR _SecondHexDigit = MID('Table'[Hex],3,1)
    
    RETURN 
    
    LOOKUPVALUE('HexTable'[Decimal],'HexTable'[Hex], _SecondHexDigit)*16 + LOOKUPVALUE('HexTable'[Decimal],'HexTable'[Hex], _FirstHexDigit)
    

    hextod.png

    saludos

    Phil

2 Replies

  • Allí @amulyaaregunta

    Descargar ejemplo PBIX con código

    ¿Sólo necesita esta conversión para números hexagonal de 2 dígitos? Este código solo funciona durante 2 dígitos como se muestra en el ejemplo, pero se puede ampliar para obtener más dígitos.

    En primer lugar, cree una nueva tabla

    HexTable = {
                    ("0", 0),
                    ("1", 1),
                    ("2", 2),
                    ("3", 3),
                    ("4", 4),
                    ("5", 5),
                    ("6", 6),
                    ("7", 7),
                    ("8", 8),
                    ("9", 9),
                    ("A", 10),
                    ("B", 11),
                    ("C", 12),
                    ("D", 13),
                    ("E", 14),
                    ("F", 15)
                    }
    

    Cambie el nombre de la columna de texto Hexadecimal y la columna numérica Decimal

    A continuación, cree una columna en la tabla que contenga el hexadecimal: cambie las instrucciones VAR con 'Table'[Hex] para que coincida con sus propios nombres de tabla y columna.

    HexToDecimal = 
    
    VAR _FirstHexDigit = RIGHT('Table'[Hex],1)
    VAR _SecondHexDigit = MID('Table'[Hex],3,1)
    
    RETURN 
    
    LOOKUPVALUE('HexTable'[Decimal],'HexTable'[Hex], _SecondHexDigit)*16 + LOOKUPVALUE('HexTable'[Decimal],'HexTable'[Hex], _FirstHexDigit)
    

    hextod.png

    saludos

    Phil

  • @PhilipTreacy

    Todavía soy nuevo en este Power BI. Solo una pregunta, ¿cómo agrego otros 2 dígitos al sintex de conversión de Hexdec?

    Ejemplo: d2da

    Saludos

    Johan