gwtham90
Tengo una tabla de hechos llamada Datos y una tabla de dimensiones llamada DM_AgeGrouping. Estos tienen el siguiente aspecto y se unen en la columna RecordID. Tenga en cuenta que he incluido solo 2 registros en «DM_AgeGrouping» para el ID de registro en la tabla de datos
DM_Agrupación de edades
ID de registro | DEFENSOR | OID | Agrupación por edad | Bit de registro válido |
12 | 36 | 324 | 3-5 | 1 |
12 | 36 | 324 | 6-11 | 0 |
12 | 34 | 324 | 12-14 | 0 |
12 | 35 | 324 | 15-19 | 0 |
12 | 36 | 324 | 20-29 | 0 |
13 | 36 | 324 | 3-5 | 0 |
13 | 36 | 324 | 6-11 | 1 |
13 | 34 | 324 | 12-14 | 0 |
13 | 35 | 324 | 15-19 | 0 |
13 | 36 | 324 | 20-29 | 0 |
Datos
ID de registro | DEFENSOR | OID | Agrupación por edad | Duración de la estancia | TratamientoAmbiente |
12 | 36 | 324 | 3-5 | 1 | 6 |
13 | 36 | 324 | 6-11 | 2 | 4 |
14 | 34 | 324 | 12-14 | 3 | 2 |
15 | 35 | 324 | 15-19 | 4 | 46 |
dieciséis | 36 | 324 | 20-29 | 5 | 6 |
17 | 36 | 324 | 3-5 | 7 | 2 |
18 | 43 | 386 | 6-11 | 8 | 6 |
19 | 23 | 345 | 12-14 | 10 | 7 |
20 | 39 | 345 | 15-19 | 50 | 2 |
Tengo medidas simples que SUMAN el bit de registro válido para un grupo de edad en la tabla DM_agegrouping. Es como sigue:
AgeGroup = CALCULATE(sum(DM_AgeGrouping[ValidrecordBit]))
OageGroup = CALCULATE(sum(DM_AgeGrouping[ValidrecordBit]) ,ALL(Data[FID]))
NageGroup = CALCULATE(sum(DM_AgeGrouping[ValidrecordBit]),ALL(Data[FID],Data[OID]))
Cuando creo una tabla visual que consta de [AgeGrouping],[**bleep**egroup],[Oagegroup],[Nagegroup]. Obtengo el resultado esperado. Cada combinación de grupo de edad y bit válido existe y la medida SUMA correctamente los bits de registro válidos.
Visual de la tabla de resultados
Agrupación por edad | Grupo de edad | GrupoOage | Grupo Nage |
12-14 | 2 | 2 | 2 |
15-19 | 2 | 2 | 2 |
20-29 | 1 | 1 | 1 |
3-5 | 2 | 2 | 2 |
6-11 | 2 | 2 | 2 |
Total | 9 | 9 | 9 |
Cuando uso rebanadoras para «OID» y «FID» como FID = 36 y OID = 324, obtengo el resultado esperado a continuación, que tiene valores correctos para F/O/N ageGroup.
Con filtros/Slicers (FID = 36 y OID = 324)
Agrupación por edad | Grupo de edad | GrupoOage | Grupo Nage |
12-14 | 0 | 1 | 2 |
15-19 | 0 | 1 | 2 |
20-29 | 1 | 1 | 1 |
3-5 | 2 | 2 | 2 |
6-11 | 1 | 1 | 2 |
Total | 4 | 6 | 9 |
PERO cuando uso otros filtros/rebanadores con la combinación anterior, como incluir el dropdown «LengtheOFstay» entre 1 y 7
No obtengo el resultado esperado para N/O columnas DAX de grupos de edad. Según tengo entendido, esto se debe a que la función AutoExist no opera en columnas en diferentes tablas y crea efectivamente una unión cruzada.
Salida que estoy obteniendo con filtros/rebanadoras (FID = 36 y OID = 324 y «LengtheOFstay» entre 1 y 7)
Agrupación por edad | Grupo de edad | GrupoOage | Grupo Nage |
12-14 | 0 | 0 | 0 |
15-19 | 0 | 0 | 0 |
20-29 | 1 | 1 | 1 |
3-5 | 2 | 2 | 2 |
6-11 | 1 | 1 | 1 |
Total | 4 | 4 | 4 |
¿Cómo puedo escribir la medida para obtener el siguiente resultado donde muestra los valores correctos de los grupos de edad N y O?
He encontrado muchos artículos que explican esta «característica», pero nada que explique cómo solucionarlo.
Resultado deseado Visual
Agrupación por edad | Grupo de edad | GrupoOage | Grupo Nage |
12-14 | 0 | 1 | 1 |
15-19 | 0 | 1 | 1 |
20-29 | 1 | 1 | 1 |
3-5 | 2 | 2 | 2 |
6-11 | 1 | 1 | 1 |
Total | 4 | 6 | 6 |
En simple, para la duración de la estadía entre 1 y 7, tenemos 6 ID de registro totales con diferentes FID y OID, no necesito ningún grupo de edad para mostrar 6 para el FID/OID seleccionado.
v-lionel-msft
Hola @gwtham90,
Descubrí que sus datos de muestra no coinciden con el objeto visual de la tabla de salida, así que para sus datos de muestra, ¿cuál es su salida esperada?
Atentamente,
Lionel Chen
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución. para ayudar a los otros miembros a encontrarlo más rápidamente.