Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hola
Tengo dos tablas, una con suscripciones actuales y otra con suscripciones caducadas vinculadas por memberID. Necesito comprobar desde las suscripciones actuales que se han renovado y no es un nuevo miembro. Para ello, quiero comprobar si hay suscripciones en la tabla Caducada, donde la fecha de finalización se encuentra entre la fecha de inicio de la suscripción actual: 1 día y -1 mes. A continuación, debo usar los resultados como parte de una tabla dinámica donde la fila será el tipo de suscripción y la columna será la fecha de inicio.
Este es un ejemplo de mi salida requerida
Renovaciones | Fecha de renovación | |||
Septiembre | Octubre | |||
Tipo | Total renovado | Elevación aplicada | Total renovado | Elevación aplicada |
Coche | ||||
De | ||||
Motocicleta |
A continuación se muestra mi consulta dax, pero sigo recibiendo "se proporcionó una tabla de varios valores donde se esperaba un solo valor"
Solved! Go to Solution.
Hola, @nicole1995
Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.
Suscripción actual:
Suscripción caducada:
Puede crear una medida como se indica a continuación.
Result =
var t =
ADDCOLUMNS(
ALL('Current Subscriptions'),
"Result",
var _startdate = [StartDate]
var _date = EOMONTH(_startdate,-1)
var _d = DATE(YEAR(_date),MONTH(_date),DAY(_startdate))
return
COUNTROWS(
FILTER(
ALL('Expired Subscriptions'),
[MemberID]=EARLIER('Current Subscriptions'[MemberID])&&
[EndDate]>=_d&&
[EndDate]<=_startdate-1
)
)
)
var _result =
SUMX(
SUMMARIZE(
'Current Subscriptions',
'Current Subscriptions'[Type],
'Current Subscriptions'[StartDate].[Month],
"Re",
SUMX(
FILTER(
t,
[Type]=SELECTEDVALUE('Current Subscriptions'[Type])&&
'Current Subscriptions'[StartDate].[Month]=EARLIER('Current Subscriptions'[StartDate].[Month])
),
[Result]
)
),
[Re]
)
return
IF(
ISBLANK(_result),
0,
_result
)
Resultado:
Saludos
Allan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola, @nicole1995
Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.
Suscripción actual:
Suscripción caducada:
Puede crear una medida como se indica a continuación.
Result =
var t =
ADDCOLUMNS(
ALL('Current Subscriptions'),
"Result",
var _startdate = [StartDate]
var _date = EOMONTH(_startdate,-1)
var _d = DATE(YEAR(_date),MONTH(_date),DAY(_startdate))
return
COUNTROWS(
FILTER(
ALL('Expired Subscriptions'),
[MemberID]=EARLIER('Current Subscriptions'[MemberID])&&
[EndDate]>=_d&&
[EndDate]<=_startdate-1
)
)
)
var _result =
SUMX(
SUMMARIZE(
'Current Subscriptions',
'Current Subscriptions'[Type],
'Current Subscriptions'[StartDate].[Month],
"Re",
SUMX(
FILTER(
t,
[Type]=SELECTEDVALUE('Current Subscriptions'[Type])&&
'Current Subscriptions'[StartDate].[Month]=EARLIER('Current Subscriptions'[StartDate].[Month])
),
[Result]
)
),
[Re]
)
return
IF(
ISBLANK(_result),
0,
_result
)
Resultado:
Saludos
Allan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@nicole1995 - DATEADD devolverá una columna de valores. Tratar:
CALCULATE(
COUNTROWS('CurrentSubscriptions'),
FILTRO(
'ExpiredSubscriptions',
'ExpiredSubscriptions'[EndDate] <- ('CurrentSubscriptions'[StartDate].[ Fecha] -1) * 1.
&& 'ExpiredSubscriptions'[EndDate] >- EOMONT('CurrentSubscriptions'[StartDate].[ Fecha],-1)
))
Hola @Greg_Deckler
Gracias por su respuesta rápida.
He probado la consulta, pero no me deja filtrar entre dos tablas. ¿Hay algo que me estoy perdiendo?
@nicole1995 - Oh, probablemente necesite un agregador alrededor de una referencia de columna (MAX, MIN, etc.) o MAXX(RELATEDTABLE(...) ...)
@nicole1995 , ¿Puede compartir datos de ejemplo y salida de ejemplo en formato de tabla? O una muestra de pbix después de eliminar datos confidenciales.
Un enfoque en este blog debería ayudar
Se une a dos fechas a la misma tabla de fechas. Aquí, en una fecha podemos tener -1
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.