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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Anonymous
Not applicable

Por favor, ayúdame a añadir algunos filtros a algunas funciones

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_clienteCompanyname
AaaA
AaaB
BbbC
CccA
CccB
CccC
DddA
DddC
EeeB

el resultado que quiero ver es: El nombre de la lista de clientes que alcanzaron las 3 empresas. y también por 2 empresas o 1. sin usar el Panel de filtro. (o tal vez también no usar Slicer (Si es posible.))

Estas son las consultas que @amitchandak (gracias a @amitchandak) lo ha escrito para mí. están funcionando muy bien. pero me gustaría añadir algunos filtros a ella. pero me está costando averiguar cómo.

Este es el enlace original de cómo estas funciones salieron a la venta para aquellos que están interesados: Haga clic aquí

1. no vendido a los clientes, esto dará una mesa, se puede utilizar en una medida -todas las empresas con los clientes que no están cubriendo. ¿Cómo puedo añadir un filtro a esto? por ejemplo, me gustaría excluir a la empresa "2" de aquí. para mostrar sólo no a los clientes cubiertos por la empresa "1" y la empresa"2"
new Table (crossjoin(distinct(Table[CustomerName]),distinct(Table[CompanyName])), Table)

2. El número de clientes alcanzados por las 3 empresas. (¿Cómo puedo añadir un filtro adicional?
Measure á countx(filter(summarize(Table, Table[CustomerName] ,"_1", distinctCOUNT(Table[CompanyName]) ,"_2", calculate(distinctCOUNT(Table[CompanyName]), all(Table))),[_1]-[_2]),[Nombre_cliente])

3. Me gustaría mostrar una lista de todos los Nombres de Cliente visitados por todas las Empresas excepto la Empresa "C"

1 ACCEPTED SOLUTION

@datatuv
No veo la necesidad de usar la función except() o si malinterpreto su requisito, intente:

NewTable3 = CALCULATETABLE(DISTINCT('Table'[CustomerName]),FILTER('Table','Table'[CompanyName]<>"A" && 'Table'[CompanyName]<>"B"))

Si no funciona, muestre la tabla de salida esperada de la muestra.


Paul Zheng _ Equipo de apoyo de la comunidad
Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

6 REPLIES 6
amitchandak
Super User
Super User

@datatuv, en primer lugar, ya que no se utiliza en la mayoría de los , deben responder al filtro

En primer lugar se puede añadir calculatetable

new Table -except(crossjoin(distinct(calculatetable(Table[CustomerName], filter(Table,Table[] ?<Condition>)) ),distinct(calculatetable(Table[CustomerName], filter(Table,Table[] ?<Condition>))),calculatetable(Table, filter(Table,<condition>))

en el segundo en resumen se puede utilizar el filtro

resume(filter(Table, <condition>

para el 3er uno puede tener filtro Tabla[NombreDeEmí] <>"C"

Además, consulte

https://www.sqlbi.com/articles/from-sql-to-dax-joining-tables/

Anonymous
Not applicable

Muchas gracias, Sir @amitchandak !

Tengo la segunda y la tercera. También leeré ese enlace tan pronto como sea posible.

Por favor, ayúdame con la primera función. Traté de mover los corchetes bastante. pero aún teniendo errores.

Capture.PNG

este es mi archivo pbix

Otra vez. Muchas gracias, señor

@datatuv, es necesario cambiar el nombre de la unión cruzada. No hay mismo nombre de columna, intente seleccionar columna

Table3 = except(crossjoin(
    distinct(
        SELECTCOLUMNS(filter('Table','Table'[CompanyName] <>"C"),"CompanyName",'Table'[CompanyName])),
    distinct(
        SELECTCOLUMNS( filter('Table','Table'[CompanyName] <>"C"),"CustomerName",'Table'[CustomerName]))),
        calculatetable('Table', filter('Table','Table'[CompanyName]<>"C")))
Anonymous
Not applicable

@amitchandak .

Todavía me está dando un error.
¿Podrías por favor echar un vistazo a mi archivo pbix? la tabla en la que estoy trabajando se llama: "table3".

este es el enlace de archivo!

@datatuv
No veo la necesidad de usar la función except() o si malinterpreto su requisito, intente:

NewTable3 = CALCULATETABLE(DISTINCT('Table'[CustomerName]),FILTER('Table','Table'[CompanyName]<>"A" && 'Table'[CompanyName]<>"B"))

Si no funciona, muestre la tabla de salida esperada de la muestra.


Paul Zheng _ Equipo de apoyo de la comunidad
Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

esto está funcionando perfectamente. esto es exactamente lo que estaba buscando. ¡Muchas gracias!

¡Que tenga un buen día, señor!

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

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

Top Solution Authors