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
Syndicate_Admin
Administrator
Administrator

Subtabla calculada

Hola

Necesito analizar algunos datos y obtener una salida específica con la que estoy luchando:

Datos brutos
CompañíaIngresosDueño
Cliente A1000Geoff
Cliente B1500Bob
Cliente C2000Steve
Cliente A1000Geoff
Cliente B2000Bob
Cliente A1500Geoff
Cliente B1000Bob
Cliente D3200Geoff

Esta es una muestra de los datos anteriores

Creo que necesito sumar los ingresos por empresa y asignar el "nivel" apropiado en función de la cantidad de ingresos que la empresa tiene en su conjunto.

Por ejemplo, la suma total de los ingresos del cliente A en los datos sin procesar es de £ 3500, lo que los convierte en clientes de nivel 2.

CompañíaIngresosDueñoNivel
Cliente A3500GeoffNivel 2 - £3000-£4000
Cliente B4500BobNivel 3 - £4000 - £5000
Cliente C2000SteveNivel 1 - £0 - £2000
Cliente D3200GeoffNivel 2 - £3000-£4000

Luego necesito una salida que me diga cuántos de cada nivel, cada individuo posee. Bastante seguro de que puedo hacer esto con una tabla de matrices una vez que se hayan realizado los cálculos anteriores.

Nivel 1 - £0 - £2000Nivel 2 - £3000-£4000Nivel 3 - £4000 - £5000
Geoff 2
Bob 1
Steve1

Gracias

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

Aquí hay una manera.

Primero, cree una nueva tabla usando "Ingresar datos" en la cinta de opciones debajo de inicio y escriba:
tire table.png

También he creado tablas de dimensiones para Propietario y Empresa. El modelo se ve así:
model.png

A continuación, cree dos medidas:

Customers by group =
COUNTROWS (
    SUMMARIZE (
        FILTER (
            FTable,
            [Revenue by company] >= SELECTEDVALUE ( Tier[MinThreshold] )
                && [Revenue by company] <= SELECTEDVALUE ( Tier[MaxThreshold] )
        ),
        'Dim Company'[dCompany],
        'Dim Owner'[dOwner]
    )
)

Y para la matriz final:

Count by Group = 
SUMX(Tier, [Customers by group])

Cree la matriz con el campo "Atenuar propietario" como filas y la tabla de niveles Grupos como columnas y agregue la medida [Contar por grupo] para obtener:
result.png

Syndicate_Admin
Administrator
Administrator

@lea_313 ,

Estos son los pasos que puede seguir:

1. Crear tabla calculada.

vyangliumsft_0-1656986690358.png

Table 2 =
var _table1=
SUMMARIZE(
    'Table',
    'Table'[Company],'Table'[Owner],
    "Revenue",
    CALCULATE(SUM('Table'[Revenue]),FILTER(ALL('Table'),
    'Table'[Company]=EARLIER('Table'[Company])&&'Table'[Owner]=EARLIER('Table'[Owner]))))
return
ADDCOLUMNS(
    _table1,
    "Tier",
    SWITCH(
        TRUE(),
        [Revenue] >=0&&[Revenue]<=2000,"Tier 1 - £0 - £2000",
        [Revenue] >2000&&[Revenue]<=4000,"Tier 2 - £3000-£4000",
        [Revenue] >4000&&[Revenue]<=5000,"Tier 3 - £4000 - £5000"
))

vyangliumsft_1-1656986690360.png

2. Crear medida.

Measure =
COUNTX(
    FILTER(ALL('Table 2'),'Table 2'[Owner]=MAX('Table 2'[Owner])&&
    'Table 2'[Tier]=MAX('Table 2'[Tier])),[Owner])

3. Resultado:

vyangliumsft_2-1656986690363.png

Si necesita pbix, haga clic aquí.

Saludos

Liu Yang

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente

Hiya

Gracias por una respuesta tan desatada y un archivo para ayudar también

Parece que estoy recibiendo el nivel equivocado asignado a la cantidad incorrecta de ingresos, vea la foto a continuación

lea_313_0-1657044629777.png

Tabla 2 =
Dónde _table1=
RESUMIR(
'Mytable',
'Mytable'[CompanyId],'Mytable'[OwnerId],'Mytable'[YearId], 'Mytable'[Etapa], 'Mytable'[ProjectCodeId],
"Ingresos",
CALCULAR(SUMA('Mytable'[Ingresos]),FILTRO(TODO('Mytable'),
'Mytable'[CompanyId]=ANTERIOR('Mytable'[CompanyId])&&'Mytable'[OwnerId]=ANTERIOR('Mytable'[OwnerId])&&'Mytable'[YearId]=ANTERIOR('Mytable'[YearId])&&'Mytable'[Etapa]=ANTERIOR('Mytable'[Etapa])&&'Mytable'[ProjectCodeId]=ANTERIOR('Mytable'[ProjectCodeId]))))
devolución
ADICIONES(
_table1,
"Nivel",
INTERRUPTOR(
VERDADERO(),
[Ingresos] >0&&[Ingresos]<=100000,"Nivel 3 - £ 0 - £ 100k",
[Ingresos] >100000&&[Ingresos]<=300000,"Nivel 2 £ 100k - £ 300k",
[Ingresos] >300000&&[Ingresos]<=30000000,"Nivel 1 £ 300k +"
))
Debo añadir que he tenido que añadir 'año' y 'escenario' para poder filtrar por estos en la visual
Cualquier ayuda sería increíble gracias
Syndicate_Admin
Administrator
Administrator

/* Columnas calculadas */

TotalRevenue =
VAR _Company = 'DataTable'[Empresa]
DEVOLUCIÓN
CALCULAR(
SUM(«DataTable»[Ingresos]),
FILTRO(
ALL(«DataTable»),
'DataTable'[Empresa] = _Company
)
)

Nivel =
SI(
[TotalRevenue] < 2000,
"Nivel 1 - 0-2000",
SI(
[TotalRevenue] < 3000,
"Nivel 2 - 2000-3000",
SI(
[TotalRevenue] < 4000,
"Nivel 3 - 3000-4000",
"Nivel 4 - más de 4000"
)
)
)

Puede usar una matriz con propietario en filas, nivel en columnas y un recuento de empresa en valores O crear una tabla calculada a partir de los resultados.

Cuando reemplazo 'tabla de datos' con el nombre de mi tabla y luego la columna en [ ], solo muestra varios errores

lea_313_0-1656533480839.png

Solo tengo un ID de empresa en este conjunto de datos. Esto luego se vincula a una lista maestra de la compañía que mostraría el nombre de su compañía.

Gracias por la ayuda rápida realmente genial

Esas columnas calculadas están en DAX, no en PowerQuery.

Lo siento si no fui claro.

ok genial gracias

Lo siento cuando intento vincular a mis tablas, solo me permite elegir entre medidas previas a la asistencia. No me permitirá elegir ningún nombre de columna

VAR _Company = 'Productdetails'[Empresa] >> No puedo elegir empresa

Gracias

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.