Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola
hay 3 empresas y muchos clientes. Me gustaría ver a los clientes que no son alcanzados por cada empresa y contar números, etc. . . esta es la mesa que tengo.
Nombre_cliente | Companyname |
Aaa | A |
Aaa | B |
Bbb | C |
Ccc | A |
Ccc | B |
Ccc | C |
Ddd | A |
Ddd | C |
Eee | B |
el resultado que quiero ver es: Los clientes que llegaron las 3 empresas.
Resultado 1:
Companyname | IsNotCovering |
A | Bbb |
A | Eee |
B | Bbb |
B | Ddd |
C | Aaa |
C | Eee |
Resultado 2: La empresa "B" cubre pero C no:
Companyname | IsNotCovering |
C | Aaa |
C | Eee |
Resultado 3: todas las empresas con los clientes que no están cubriendo.
Companyname | IsNotCovering |
A | Bbb |
A | Eee |
B | Bbb |
B | Ddd |
C | Aaa |
C | Eee |
Me gustaría hacerlo usando la medida DAX, nueva columna. sin usar el Panel de filtro. (o tal vez también no usar Slicer (Si es posible.))
Hice búsquedas en los foros de Google y Power BI. pero no encontró lo que quería.
Solved! Go to Solution.
@datatuv , Probar como
no vendido al cliente, esto dará una mesa, se puede utilizar en una medida -todas las empresas con los clientes que no están cubriendo.
new Table (crossjoin(distinct(Table[CustomerName]),distinct(Table[CompanyName])), Table)
Los clientes alcanzados por las 3 empresas.
Measure á countx(filter(summarize(Table, Table[CustomerName] ,"_1", distinctCOUNT(Table[CompanyName]) ,"_2", calculate(distinctCOUNT(Table[CompanyName]), all(Table))),[_1]-[_2]),[Nombre_cliente])
Resultado 2: La empresa "B" cubre pero C no:
nueva Tabla 2 á except(summarize(filter(Table,Table[CompanyName] ?"B"),Table[CustomerName]),summarize(filter(Table,Table[CompanyName] ?"C"),Table[Nombre_Cliente]))
measure á calculate(count(Table[CustomerName]), filter(Table,Table[CustomerName] in except(summarize(filter(Table,Table[CompanyName] ?"B"),Table[CustomerName]),summarize(table,Table,Table[CompanyName] ?"C"),Table[CustomerName])) && Table[CompanyName] ?"B")
@datatuv , Probar como
no vendido al cliente, esto dará una mesa, se puede utilizar en una medida -todas las empresas con los clientes que no están cubriendo.
new Table (crossjoin(distinct(Table[CustomerName]),distinct(Table[CompanyName])), Table)
Los clientes alcanzados por las 3 empresas.
Measure á countx(filter(summarize(Table, Table[CustomerName] ,"_1", distinctCOUNT(Table[CompanyName]) ,"_2", calculate(distinctCOUNT(Table[CompanyName]), all(Table))),[_1]-[_2]),[Nombre_cliente])
Resultado 2: La empresa "B" cubre pero C no:
nueva Tabla 2 á except(summarize(filter(Table,Table[CompanyName] ?"B"),Table[CustomerName]),summarize(filter(Table,Table[CompanyName] ?"C"),Table[Nombre_Cliente]))
measure á calculate(count(Table[CustomerName]), filter(Table,Table[CustomerName] in except(summarize(filter(Table,Table[CompanyName] ?"B"),Table[CustomerName]),summarize(table,Table,Table[CompanyName] ?"C"),Table[CustomerName])) && Table[CompanyName] ?"B")
Wow. Muchas gracias, señor. Todo funciona como magia.
/*
¿Podría decirme qué hace la última medida? el resultado es 2. pero no estoy muy seguro de que eso sea contar.
este -> medida - calculate(count(Table[CustomerName]), filter(Table,Table[CustomerName] in except(summarize(filter(Table,Table[CompanyName] ?"B"),Table[CustomerName]),summarize(Table,Table[CompanyName] ?"C"),Table[CustomerName])) && Table[CompanyName] ?"B")
*/ - Tengo éste. Si no me equivoco, esta es la medida a contar: "Resultado 2: La empresa "B" cubre pero C no:"
Editar:
no vendido al cliente, esto dará una mesa, se puede utilizar en una medida -todas las empresas con los clientes que no están cubriendo.
NewTable ? EXCEPT(CROSSJOIN(DISTINCT('Table'[CustomerName]),DISTINCT('Table'[CompanyName])), 'Table')
¿Cómo puedo añadir un filtro a esto? por ejemplo,
1. Mostrar una lista de todas las empresas (excepto la empresa C) con los clientes que no están cubriendo.
2. Me gustaría mostrar una lista de todos los Nombres de Cliente visitados por todas las Empresas excepto la Empresa "C"