dbenson
¡Novato aquí! Esta parece una pregunta fácil, pero me está costando encontrar la fórmula adecuada aquí.
Tengo una base de datos con los nombres de los empleados, los clientes en los que trabajaron y cuánto les pagamos por trabajar en cada uno de esos clientes. Estoy tratando de hacer un análisis simple para ver los nombres de mis empleados que trabajaron con más de un cliente (y ver en qué clientes exactos están trabajando).
Creo que la mejor manera de representar esto es una tabla de matriz y estaba ejecutando un Distinctcount básico en los empleados para mostrar los valores booleanos sobre si trabajaron en un cliente o no. Esa parte está bien. Sin embargo, no puedo obtener la suma al final para ver si de hecho hicieron más de un cliente, ya que el total general predeterminado será 1 para todos los empleados, ya que Distinctcount parece volver a ejecutarse para el contexto del filtro. La siguiente tabla es la que estoy viendo actualmente. ¿Algún consejo aquí?
Cliente A | Cliente B | Cliente C | Total | |
Empleado A | 1 | 1 | 1 | |
Empleado B | 1 | 1 | 1 | |
Empleado C | 1 | 1 | ||
Empleado D | 1 | 1 |
Sean
En respuesta a Phil_Seamark
@dbenson
Primero debe DESPIVOTAR los datos en el Editor de consultas y luego crear la Matriz
Siga los pasos que se describen a continuación …
¡Buena suerte!
¡Hazme saber si tienes alguna pregunta!
Phil_Seamark
Hola @dbenson,
El total está haciendo lo que pidió al proporcionar un recuento distinto de empleados.
Entonces, en lugar de usar DISTINCTCOUNT, use una medida SUM envuelta en una instrucción IF.
Algo como Measure = IF (SUM (
y esto debería sumarse bien a sus Totales
dbenson
En respuesta a Phil_Seamark
Probé este. Dado que tenemos los montos de pago por empleado por cliente, agregué una fórmula SI de la siguiente manera:
si (suma (PayTable[Pay]> 1,1,0)
Lo coloqué en una tabla de matriz y me dio la misma tabla booleana que la función DistinctCount. Sin embargo, los totales siguen por defecto en 1, incluso bajo esta declaración IF. Probablemente esto se deba a que la fórmula aún se está ejecutando e indica que si hay montos de pago para este empleado, el valor predeterminado es 1 en lugar de hacer una suma.
Phil_Seamark
En respuesta a dbenson
Hola @dbenson,
¿Existe alguna posibilidad de que pueda compartir una pequeña muestra de sus datos? Suficiente para reproducir una matriz.
Sean
En respuesta a Phil_Seamark
¡Sí, necesitamos ver cómo se configuran los datos en la Tabla Vew!
@Phil_Seamark¿algo nuevo que anunciar? ¿o no aun?
De todos modos @dbenson puedes escribir una sola medida para darte totales verticales y horizontales
En azul Empleados por cliente
En rojo, para cuántos clientes trabaja cada empleado y
En rojo, los clientes generales de GT para toda la empresa (para todos los empleados)
Esto se hace con IF (HASONEVALUE (….
¡Pero necesitamos ver algunos datos de muestra!
dbenson
En respuesta a Sean
Gracias por señalar esto también. No me siento muy cómodo entendiendo cómo funcionan los totales y cómo usar la fórmula HASONEVALUE. Hoy compré 2 libros DAX a la hora del almuerzo, así que intentaré jugar un poco más. Sin embargo, hasta ahora todo va bien: solo hacer este informe en Power BI ha salvado a mi departamento de nómina de ejecutar 20 pasos manualmente en Excel.
Sean
En respuesta a Phil_Seamark
@dbenson
Primero debe DESPIVOTAR los datos en el Editor de consultas y luego crear la Matriz
Siga los pasos que se describen a continuación …
¡Buena suerte!
¡Hazme saber si tienes alguna pregunta!
dbenson
En respuesta a Sean
Aprecie la rápida respuesta aquí. Eso funcionaría si pudiera obtener esa tabla dentro del editor de consultas. En este momento, estoy ejecutando la cuenta distinta para obtener los valores booleanos en una tabla de matriz. Actualmente no está en un conjunto de datos que pueda desvincular. ¿Hay algo de magia que se deba hacer en el editor de consultas para llegar allí o en una función de resumen?
Salud,
Sean
En respuesta a dbenson
Lo más probable es que tenga más de 3 clientes, ¡sería mejor si quitara el dinamismo de los datos!
¿Por qué no puede acceder al Editor de consultas? Ficha Modelado – Editar consultas
dbenson
En respuesta a Sean
@Sean @Phil_Seamark
¡Solución encontrada!
El problema que tenía era que estaba ingresando datos sin procesar de una base de datos de transacciones, por lo que cientos de empleados, clientes tenían más de un millón de registros. Por lo tanto, se mostraba un empleado debajo del mismo cliente varias docenas de veces por semana. La tabla que se presentó en la parte superior era un resumen de la matriz de la tabla de transacciones sin procesar y, por lo tanto, era complicado trabajar con ella.
Para entrar en el formato que mostró arriba, hice una agrupación en las consultas y las agrupé para que un empleado solo se mostrara una vez por cliente por semana (que es en lo que estoy aplicando un filtro) que se muestra a continuación en la captura de pantalla (nota que acabo de eliminar la columna de agregación porque no era necesaria; solo quería la lista de nombres por cliente y semana). Una vez hecho esto, hacer la matriz como mostró fue fácil, ya que era solo un recuento. Ejecuté una medida para el recuento para poder aplicar un filtro para eliminar a todos los empleados que solo trabajaron en un cliente y obtuvieron el informe exacto que necesitaba. ¡Gracias por la ayuda chicos!
Phil_Seamark
En respuesta a dbenson
Buen trabajo. ¡Bien hecho!