Días promedio para pagar por el cliente

Un usuario Pregunto ✅

QuantusPools

Hola a todos,

Estoy tratando de averiguar qué porcentaje de clientes tenemos que PAGAN dentro de un período determinado (1-30, 31-60, 61-90, 91-121,121 +). Como hay varias órdenes de trabajo, estoy tomando el promedio de DATEDIFF (FECHA DE FACTURA, FECHA DE PAGO, DÍA). Luego quiero colocar a cada cliente DISTINTO en las categorías de envejecimiento mencionadas anteriormente.

Mi problema es que tengo una columna de envejecimiento con la siguiente fórmula.

Envejecimiento =
VAR DATEDIFF = DATEDIFF (‘Registro de facturas'[InvoiceDate], ‘Registro de facturas'[PaymentReceived],DÍA)

REGRESO

Si (DATEDIFF <= 0, "No vencido",
Si (DATEDIFF> 0 && DATEDIFF <= 30, "1-30",
SI (DATEDIFF> = 31 && DATEDIFF <= 60, "31-60",
SI (DATEDIFF> = 61 && DATEDIFF <= 90, "61-90",
SI (DATEDIFF> = 91 && DATEDIFF <= 120, "91-120",
«121+»)))))
Entonces tengo una columna Días para pagar la factura
Días para pagar la factura = if (isblank (‘Registro de facturas'[PaymentReceived]),
dateiff (‘Registro de facturas'[InvoiceDate], hoy (), día),
dateiff (‘Registro de facturas'[PaymentReceived], ‘Registro de facturas'[InvoiceDate],día 1
No puedo hacer que funcione una fórmula en la que tomo el promedio de los «Días para pagar la factura» y lo pongo en los cubos de envejecimiento. ¡Ayudar!

jdbuchanan71

@PiscinasCantidad

Prueba algo como esto.

Aging Bucket =
VAR _AvgDays =
    CALCULATE (
        AVERAGE ( 'Invoice Register'[Days to Pay Invoice] ),
        ALLEXCEPT ( 'Invoice Register', 'Invoice Register'[Customer Number] )
    )
RETURN
    SWITCH (
        TRUE (),
        _AvgDays <= 0, "Not Due",
        _AvgDays <= 30, "1-30",
        _AvgDays <= 60, "31-60",
        _AvgDays <= 90, "61-90",
        _AvgDays <= 120, "91-120",
        "121+"
    )

Si esto resuelve sus problemas, márquelo como el solución. Prestigio 👍 son agradables también.

QuantusPools

En respuesta a jdbuchanan71

@ jdbuchanan71

Gracias por la respuesta. No creo que esté haciendo lo que quiero que esté haciendo. Básicamente, está marcando a casi todos los clientes como «No adeudados» cuando no debería haber casi ninguno en ese estado. Permítanme resumir lo que quiero que haga esto.

1 – Tome el promedio de días que tardó en pagar la factura. Quiero el promedio ya que hay varias órdenes de trabajo. Hay algunas órdenes de trabajo pagadas de 1 a 30 y algunas pagadas de 60 a 90, etc. Si no tomo el promedio, puedo tener el mismo cliente en varios grupos de envejecimiento. No quiero esto. Quiero obtener una línea de base para el historial de pagos de un cliente.

2- Tome el promedio de cada cliente ÚNICO y colóquelo en el cubo de envejecimiento como se describe anteriormente.

No estoy seguro de si mi lógica es correcta al hacer esta fórmula, pero me imagino:

1. Necesito crear un filtro en el cliente que básicamente crea una nueva tabla. (¿CALCULATETABLE funciona para esto?)

2. Luego, promedie los días que les tomó pagar sus facturas en esta nueva tabla ‘virtual’.

3. Coloque cada valor en uno de los depósitos de antigüedad para ver el historial de pagos. Necesito poder filtrar esto por año / mes.

Avísame si eso ayuda a aclarar el problema.

jdbuchanan71

En respuesta a QuantusPools

@PiscinasCantidad

¿Quizás podrías compartir tu .pbix? Cuando realizo una prueba con una muestra, se obtienen los resultados que esperaba.

AgingBuckets.jpg

La fórmula hace lo que usted describe. Filtre a la tabla para el cliente para esa fila y calcule los días promedio para pagar la factura de todo lo que los clientes facturan y luego asigna el depósito.

QuantusPools

En respuesta a jdbuchanan71

@ jdbuchanan71

¿Puedo compartirlo de forma privada? Definitivamente puedo filtrar por cliente, pero me gustaría que funcione en un nivel superior. Básicamente, me gustaría que me mostrara qué porcentaje del TOTAL de clientes (en promedio) cae en cada segmento. Con esto actualmente, puedo filtrar por cliente y ver qué porcentaje de facturas se pagan en cada segmento de antigüedad.

jdbuchanan71

En respuesta a QuantusPools

Para eso, puede usar el depósito de antigüedad en la tabla de facturas de la columna y un DISTINCTCOUNT (Tabla[customer number]) la medida. Sí, puede compartirlo de forma privada, si lo carga en OneDrive o DropBox, puede enviarme un PM con el enlace.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *