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

Necesita ayuda para identificar clientes repetidos durante un período de tiempo dinámico

Hola

Estoy tratando de calcular el porcentaje de nuevos bookers vs bookers de repetición.

Nuestra fecha de conducción variable es la "Primera fecha de pago". Por lo tanto, necesito que el cálculo se ajuste a medida que cambia el primer intervalo de fechas de pago.

La forma en que sabemos que un huésped ha viajado antes se basa en su fecha de finalización.

La pregunta que quiero responder es, para todos los primeros pagos recibidos entre X / XX / XXXX - X / XX / XXXX, ¿cuántos clientes ya habían completado AL MENOS un viaje?

Usando esta pequeña muestra, si el Primer rango de fechas de pago fuera 9/1/2017 - 9/1/2019, solo las filas en azul serían elegibles, y mi respuesta sería 1. Id. de cliente 98076 HIZO una reserva en mi rango consultado y completó 2 ya.

Así que supongo que necesito un DISTINCTCOUNT de identificadores de cliente que, en un intervalo de fechas de primer pago dado, tienen fechas de finalización en otras filas que son anteriores a las fechas en el intervalo de fecha de primer pago.



Identificador de clientefecha finalCódigo de viajeestadoFecha del primer pago
123451/1/2017XA908completado3/17/2016
123452/18/2021BA807completado7/1/2020
123455/11/2023XA908Reservados6/1/2021
123454/1/2015SA306completado3/1/2014
980766/10/2018FA432completado9/23/2017
980764/3/2019BA999completado7/17/2018
980764/3/2020BA346completado6/7/2019
43562/20/2020SA456completado8/3/2019
1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Allí, @apmulhearn

Primero crear una tabla de calendario

Calendar = 
var _min=MIN('Table'[First Payment Date])
var _max=MAX('Table'[First Payment Date])
return
CALENDAR(_min,_max)

a continuación, cree dos medidas.

_isResult = 
var _payInRange=MAX('Table'[First Payment Date])in DATESBETWEEN('Calendar'[Date],MIN('Calendar'[Date]),MAX('Calendar'[Date]))
var _endInRange=MAX('Table'[End Date])in DATESBETWEEN('Calendar'[Date],MIN('Calendar'[Date]),MAX('Calendar'[Date]))
var _if=IF(_payInRange&&_endInRange,1,0)
return
    _if
_distinctcountID = 
CALCULATE (
    DISTINCTCOUNT ( 'Table'[ClientID] ),
    FILTER ( ALL ( 'Table' ), [_isResult] = 1 )
)

así que podemos mostrarlo con una tarjeta visual.

resultado:

vangzhengmsft_0-1627021788030.png

Consulte el archivo adjunto a continuación para obtener más detalles

Espero que esto ayude.

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

View solution in original post

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

Allí, @apmulhearn

Primero crear una tabla de calendario

Calendar = 
var _min=MIN('Table'[First Payment Date])
var _max=MAX('Table'[First Payment Date])
return
CALENDAR(_min,_max)

a continuación, cree dos medidas.

_isResult = 
var _payInRange=MAX('Table'[First Payment Date])in DATESBETWEEN('Calendar'[Date],MIN('Calendar'[Date]),MAX('Calendar'[Date]))
var _endInRange=MAX('Table'[End Date])in DATESBETWEEN('Calendar'[Date],MIN('Calendar'[Date]),MAX('Calendar'[Date]))
var _if=IF(_payInRange&&_endInRange,1,0)
return
    _if
_distinctcountID = 
CALCULATE (
    DISTINCTCOUNT ( 'Table'[ClientID] ),
    FILTER ( ALL ( 'Table' ), [_isResult] = 1 )
)

así que podemos mostrarlo con una tarjeta visual.

resultado:

vangzhengmsft_0-1627021788030.png

Consulte el archivo adjunto a continuación para obtener más detalles

Espero que esto ayude.

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

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.