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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
aschillinger20
Helper II
Helper II

Contar nuevos clientes durante el período de tiempo

Estoy luchando para averiguar lo que parece una tarea simple. Me gustaría mostrar una tarjeta que muestra el número de "nuevos clientes" en un período de tiempo determinado. Puedo generar una lista de cuentas en una tabla mediante lo siguiente:

isFirstOrder ?
IF( CALCULATE(MIN('Sales Data'[invoice_date]),ALLEXCEPT('Sales Data','Sales Data'[Customer]))-MAX('Sales Data'[invoice_date]), 1, BLANK())
Sólo quiero mostrar el número de nuevos clientes en una tarjeta. Cualquier ayuda sería muy apreciada.
11 REPLIES 11
Ashish_Mathur
Super User
Super User

Hola

Yo haría esto

  1. Cree una tabla de calendario y escriba fórmulas de columna calculadas para extraer año, nombre de mes y número de mes. Ordenar el nombre del mes por el número de mes
  2. Cree una relación desde la columna Invoice_date de la tabla de datos de ventas hasta la columna Fecha de la tabla de calendario
  3. En la tabla/filtro/cortador, arrastre Año y mes desde la Tabla de calendarios
  4. Escriba estas medidas:

Fecha de la primera interacción : Calculate(min('Sales Data'[invoice_date]),Datesbetween(Calendar[Date],minx(all(Calendar),Calendar[Date]),max(Calendar[Date])))

Nuevos clientes: Countrows(filter(values('Sales Data'[Customer]),[Fecha de la primera interacción]>-min(calendar[Fecha])))

Espero que esto ayude.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

@Ashish_Mathur Por alguna razón, esto reporta un número que es mucho más alto de lo que debería ser. Construí una visualización de tabla para ver los datos de "fecha de la primera interacción" y definitivamente me muestra la primera fecha que encuentra por cliente. Así que creo que esa medida está funcionando como se esperaba. El conteo manual de nuevos clientes a partir de abril de 2020 hay 5. cuando dejo caer "Nuevos Clientes" en una tarjeta que viene con 136.

Trabajaré en la construcción de un libro de pruebas que pueda compartir mañana.

Hola

Asegúrese de que la selección Año y Mes esté configurada para interactuar con el objeto visual de la tarjeta. Si todavía no ayuda, entonces comparte el enlace desde donde puedo descargar tu archivo PBI con mis fórmulas ya escritas en ese archivo.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

Después de volver a trabajar la solución de Ashish ahora está funcionando como debería! ¡Gracias! Marcaré esto como resuelto.

De nada.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

Suena bien @aschillinger20



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting
edhans
Super User
Super User

Considere este pseudo-código porque acabo de lanzar algo de lógica juntos. Necesitaría datos para realmente clavar esto y asegurarme de que tenía la lógica ALL* donde pertenece, pero este es el flujo lógico que trabajaría.

  1. varMinnvoiceDate obtiene la fecha de factura más temprana para un cliente
  2. CustomerCount solo filtra la tabla donde la fecha máxima de la factura es la fecha varMinInvoice y cuenta las filas.

Una vez más, necesitaría ver datos. Estoy pensando a medias ahora que COUNTROWS necesita ser reemplazado por un iterador COUNTX.

New Customer Count =
VAR varMinInvoiceDate =
    MINX(
        ALLEXCEPT(
            'Sales Data',
            'Sales Data'[Customer]
        ),
        'Sales Data'[invoice_date]
    )
VAR CustomerCount =
    COUNTROWS(
        FILTER(
            ALLEXCEPT(
                'Sales Data',
                'Sales Data'[Customer]
            ),
            'Sales Data'[invoice_date] = varMinInvoiceDate
        )
    )
RETURN
    CustomerCount



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

En primer lugar, gracias por la respuesta rápida!! Es humillante saber lo rápido que otros pueden agarrar estas cosas.

Con Countrows obtengo un total de 1 para el mes de abril cuando debe ser 4. He intentado Countx, pero estoy recibiendo el siguiente error:

"Demasiados argumentos se pasaron a la función COUNTX, el argumento mínimo para la función es 2."

Sólo tiene que añadir la fecha de la factura. CountX tiene el siguiente formato
• COUNTX(Tabla, Expresión). Simplemente coloque la fecha de la factura o similar en la expresión. Sólo está contando cuántas veces aparece la expresión.

Para ayudar más, realmente necesitaríamos algunos datos.

Cómo obtener una buena ayuda rápidamente. Ayúdanos a ayudarte.
Cómo obtener respuesta rápida a su pregunta
Cómo proporcionar datos de ejemplo en el foro de Power BI



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

@edhans : Después de trabajar con esto un poco usando "filas de recuento" si configuro una matriz con año como la columna, mes como la fila, y "nuevo número de clientes" como el valor. Veo que abril de 2020 muestra correctamente 5. Si descargo "nuevo número de clientes" en una tarjeta y agrego segmentación de datos para el año y el mes, muestra 145 por alguna razón.

Construiré una mesa rápida que puedo compartir. Realmente aprecio la ayuda hasta ahora!!

Esta es la razón por la que uso DAX Studio para este tipo de cosas. Es difícil ver por qué algo devuelve resultados inesperados solo en Power BI Desktop, pero DAX Studio es otra curva de aprendizaje. Lo que haría sin embargo es devolver la tabla que vepara lo que está poniendo en la tarjeta antes de contar los datos.

Esperando sus datos de muestra.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

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.