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

Use DAX para crear una tabla dentro de una medida en lugar de crear tablas externas que no sean óptimas

Hola a todos, soy bastante nuevo en DAX, pero trabajando en un conjunto de datos grande y, por lo tanto, dispuesto a resolver problemas dentro de DAX Measures en lugar de crear tablas compatibles.

Necesito calcular anidado por cancelaciones de período de cierto plan y dividir ese número por las ventas totales de dicho plan.

He creado un modelo de soporte que examina mis dos tablas de datos (Total Sales &Details of Success Plan) y conectado las tablas de búsqueda que necesitaré para profundizar en los niveles individuales, por lo que Employee_Lookup, Date_Lookup y Calendar_Table.

Vale la pena decir que ambas tablas de datos ya tienen DateKeys en ellas que contienen Emp_Num&&datekey por lo que la coincidencia debe ser bastante simple.

Estoy atascado cuando se trata de DAX Language en sí, sin embargo, estoy pensando, hay una manera de crear una tabla dentro de una medida DAX que agrupará los resultados por Id. Me encantaría tener 4 medidas diferentes para 4 cubos diferentes que necesito. Pero hasta ahora ni siquiera puedo estar llegando allí, ya que cada fórmula DAX que escribo espera una referencia de tabla....

He creado una medida para bucket las cancelaciones como un comienzo, utilizando la función VAR que va así para ver cuál son mis buckets de duración de cancelación:

Cubos de cancelación =
Cancelaciones VAR = [# Duración de cancelaciones]
devolución
SWITCH (
CIERTO (),
ISBLANK([duración #Cancellations]), BLANK(),
Cancelaciones <= 30, "Cancelado <30 Días",
Cancelaciones <- 60, "Cancelados 31-60 Días",
Cancelaciones <= 90, "Cancelados 61-90 Días",
Cancelaciones > 90, "Cancelado 90+"
)

Ahora lo que quiero hacer es dividir cada uno de estos buckets por ventas totales por agente.

Las ventas totales también son una medida lista. No estoy muy seguro de cómo seguir con esto en absoluto.

Estaba pensando en crear medidas separadas para contar cuántos se han cancelado en cada uno de estos cubos, que serían 4 medidas, y luego otras 4 medidas para calcular el % de estos cubos en las ventas.

Pero incluso cuando lo hago me encontré con un problema (supongo que es porque la medida de cubos de cancelación es una cadena de texto y no estoy demasiado seguro de qué función de DAX usar para eso.

Cualquier ayuda sería apreciada.

8 REPLIES 8
Syndicate_Admin
Administrator
Administrator

Ahí, @aggiebrown

Sugiero tener una mesa de agrupación (tabla separada) como la de abajo.

A continuación, puede crear una medida para filtrar la tabla de hechos por la columna de cancelación.

Traté de crear un archivo pbix de ejemplo como se muestra a continuación.

Picture6.png

Picture7.png

Total de ventas por grupo =
SUMX (
FILTRO (
VALORES ( ventas[Cliente] ),
COUNTROWS (
FILTRO (
'agrupación',
CALCULATE ( SUM ( sales[Cancelled within] ) >= 'grouping'[Min]
&& CALCULATE ( SUM ( sales[Cancelled within] ) <= 'grouping'[Max]
)
) > 0
),
CALCULATE ( SUMA ( ventas[Ventas] ) )
)

Hola, mi nombre es Jihwan Kim.


Si este post ayuda, entonces considere aceptarlo como la solución para ayudar a otros miembros a encontrarlo más rápido, y dar un gran pulgar hacia arriba.


Linkedin: linkedin.com/in/jihwankim1975/

Twitter: twitter.com/Jihwan_JHKIM

Gracias por eso, eso funcionaría, pero el conjunto de datos es tan grande que estoy tratando de crear medidas en lugar de crear aún más tablas.

¿Hay alguna forma de crear diferentes medidas para contar diferentes grupos / buckets basados en texto?

Ahí, @aggiebrown

Gracias por sus comentarios.

Es bastante difícil para mí mencionar sin ver su archivo pbix de ejemplo.

Creé mi archivo pbix de ejemplo y una forma de segmentar mis datos de ejemplo es crear una tabla de agrupación.

Sin crear una tabla de agrupación, no puedo categorizar mis datos de ejemplo, pero solo puedo marcar los datos.

Agradezco su ayuda en esto, el conjunto de datos en el que estoy trabajando actualmente tiene un tamaño de 2 GB, por lo que no está interesado en crear aún más tablas que se actualizarán todos los días con el propósito de un pequeño cálculo. :$

Lo que estoy buscando es una fórmula DAX que me permita crear una tabla dentro de la medida, agruparla por nombre de agente y por buckets Variaciones, y devolver un recuento como resultado.

Eso es lo que tengo en la cabeza al menos. Para ello creé un modelo independiente dentro del conjunto de datos, que solo examina lineup (lista de empleados con DateKeys, etc.), Account_Lookup y tabla Calendario.

Mis dos tablas de datos que necesito usar para esta medida son tabla de planes de éxito y tabla de reserva (ventas).

aggiebrown_0-1622029757433.png

¿Alguna idea de cómo abordar esto sin crear una mesa?

No @aggiebrown,

No tengo claro su requisito, ¿desea obtener el ( número derecuento) porcentaje de por cubo en general? ¿Podría proporcionar algunos datos de ejemplo (excluir datos confidenciales) en la tabla de planes de éxito y la tabla de reservas (ventas) y su resultado esperado con ejemplos específicos? Sí, gracias.

Por otro lado, revise el contenido en los siguientes enlaces y compruebe si pueden ayudarle.

Agregación y integración en DAX con Power BI

Tabla agregada en Power BI: uso de la función GroupBy en DAX

Saludos

@yingyinr muchas gracias por su respuesta.

A continuación encontrará los datos de muestra. La tabla inferior es el resultado que voy a requerir, simplemente no puedo obtener la agregación correcta para que cuente.

Su ayuda sería apreciada.

Datos de ejemplo

Syndicate_Admin
Administrator
Administrator

@aggiebrown , parece que desea utilizar esta medida como una dimensión, para lo cual tiene que crear una tabla con estos valores y unirlos con esta medida en la función de filtro de una nueva medida.

Refiérase si mi video puede ayudar en esto

https://youtu.be/CuczXPj0N-k

@amitchandak - gracias por su sugerencia. Probablemente debería haber mencionado en el tema, tengo un DataSet bastante grande en el que estoy trabajando, así que estoy buscando llegar al resultado final con el lenguaje DAX en lugar de tablas adicionales. Cualquier ayuda / ideas sería apreciada 🙂

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.