Promociones para empleados

Un usuario Pregunto ✅

yaman123

Hola,

Necesito ayuda con una consulta para mostrar promociones de empleados dentro de un mes seleccionado.

Tengo una tabla de fechas que se usa como un segmento para mostrar los datos de ese mes. Se utiliza MAX (fecha).

Tengo una tabla de promociones con NOMBRE, EMP NO, FECHA DE INICIO, FECHA DE FINALIZACIÓN, TÍTULO DEL TRABAJO, VÁLIDO DESDE, VÁLIDO HASTA.

Los empleados pueden tener más de una línea en esta tabla si ha habido un cambio en su trabajo, por lo tanto, los campos de fecha válida desde y válida hasta se completan con la fecha de inicio y finalización de ese puesto de trabajo en particular.

En respuesta a yaman123

Hola @ yaman123,

Entonces puedes seguir algunos pasos de la siguiente manera.

1. Cree una columna «Mes» en la tabla «Fecha».

month = MONTH('Date'[Date])

2. cree una medida y arrástrela al filtro de la tabla visual. (es 1)

Measure = 

var x1=SELECTEDVALUE('Date'[month])

var x2=MAXX('Table 3',MONTH('Table 3'[FROM DATE]))

return

IF(x2>=x1-6&&x2<=x1,1,0)
Resultado:
0128.gif

Espero que eso sea lo que estabas buscando.

Atentamente,

Yuna

Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Hola @ yaman123,

Según su descripción, puede seguir algunos de los siguientes pasos.

  1. Crea una tabla calculada.
Table 3 =

SUMMARIZE (

    'Table 2',

    'Table 2'[EMP NO ],

    'Table 2'[NAME],

    "OLD ROLE", MAXX ( FILTER ( 'Table 2', YEAR ( 'Table 2'[VALID TO] ) < 3000 ), [JOB TITLE] ),

    "NEW ROLE", MAXX ( FILTER ( 'Table 2', YEAR ( 'Table 2'[VALID TO] ) > 3000 ), [JOB TITLE] ),

    "FROM DATE", MAX ( 'Table 2'[VALID FROM] )

)

2. Cree una medida.

Measure =

var x1=SELECTEDVALUE('Date'[Date].[Month])

return

IF(MAXX('Table 3',[FROM DATE].[Month])=x1,1,0)

3. Cree un objeto visual de tabla y arrastre la medida a «filtros en este objeto visual».

v-yuaj-msft_0-1610953159957.png

Resultado:

v-yuaj-msft_1-1610953159963.png

Espero que eso sea lo que estabas buscando.

Atentamente,

Yuna

Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

yaman123

En respuesta a v-yuaj-msft

¿O si puedo mostrar los cambios de los últimos 6 meses en su lugar?

yaman123

En respuesta a v-yuaj-msft

Hola @ v-yuaj-msft

Gracias por esto

Pero mi medida devuelve todos ceros para todos los empleados. Tengo una tabla de fechas separada que no está vinculada a ninguna de las tablas que estoy usando y estoy usando la columna MonthYear para seleccionar un período de fecha.

En respuesta a yaman123

Hola @ yaman123,

¿Recibiste la siguiente tabla?

v-yuaj-msft_0-1611110379433.png

¿O puede compartir algunas capturas de pantalla sobre el problema, por favor? Esto no ayuda mucho.

Agregue también la captura de pantalla de error a la que se enfrenta.

Atentamente,

Yuna

yaman123

En respuesta a v-yuaj-msft

Hola,

He creado la tabla con esta consulta

Tabla 3 =
RESUMIR(
‘Promociones y Traslados’,
‘Promociones y traslados'[EMP_NO],
‘Promociones y traslados'[INTERNAL_DISPLAY_NAME],
«PAPEL ANTIGUO», MAXX (FILTRO (‘Promociones y transferencias’, AÑO (‘Promociones y transferencias'[VALID_TO]) <3000), 'Promociones y transferencias'[JOB_TITLE]),
«NUEVO PAPEL», MAXX (FILTRO (‘Promociones y transferencias’, AÑO (‘Promociones y transferencias'[VALID_TO])> 3000), ‘Promociones y transferencias'[JOB_TITLE]),
«FROM DATE», MAX (‘Promociones y transferencias'[VALID_FROM])
)
He creado una medida en la tabla creada:
Medida =
VAR x1 = SELECTEDVALUE (‘Fecha'[Date].[Month])
regreso
IF (MAXX (‘Tabla 3’, ‘Tabla 3′[FROM DATE].[Month]) = x1,1,0)
Recibo los resultados adjuntos cuando selecciono agosto de 2020. Mi columna de medida siempre se muestra como ‘0’ en lugar de mostrar ‘1’ para el mes seleccionado. Se muestran todos los empleados en lugar de las promociones de ese mes
Capture.JPG

En respuesta a yaman123

Hola @ yaman123,

Dijiste que «tengo un tabla de fechas separada No enlazado a cualquiera de las tablas que estoy usando y estoy usando el Mes año columna para seleccionar un período de fecha. «El campo que utilicé en la segmentación es la columna» Fecha «.

v-yuaj-msft_0-1611219337356.png

el archivo adjunto

Atentamente,

Yuna

yaman123

En respuesta a v-yuaj-msft

Entonces, ¿necesitaría usar la columna de fecha en lugar de la columna de mes y año de la tabla de fechas?

En respuesta a yaman123

Hola @ yaman123,

Puedes probarlo y si hay algún problema, no dudes en hacérmelo saber.😊

Atentamente,

Yuna

yaman123

En respuesta a v-yuaj-msft

Hola @ v-yuaj-msft

Usé la columna de la fecha y funcionó. ¿Pero también me muestra todos los empleados que comenzaron ese mes en lugar de solo promociones?

En respuesta a yaman123

Hola @ yaman123,

Quizás no entiendo lo que realmente estás tratando de hacer.

¿Puede compartir algunas capturas de pantalla sobre el problema y el resultado deseado, por favor? Esto no ayuda mucho.

Agregue también la captura de pantalla de error a la que se enfrenta.

Atentamente,

Yuna

yaman123

En respuesta a v-yuaj-msft

Hola @ v-yuaj-msft

Me gustaría mostrar solo promociones para cada empleado que haya tenido una promoción, y no mostrar todos los empleados que comenzaron en ese mes.

He adjuntado lo que esperaba ver.

Esto muestra a los empleados que han tenido una promoción desde enero de 2020 y este informe se ejecutó en agosto de 2020

Capture.JPG

En respuesta a yaman123

Hola @ yaman123,

Dijiste que solo quieres mostrar a los empleados promocionados. En el ejemplo que proporcionó anteriormente, ¿solo necesita mostrar las líneas «B» y «D»?

v-yuaj-msft_0-1611726932831.png

Si este es solo el caso, una nueva tabla calculada puede resolver el problema.

Table 3 = 

var x1=SUMMARIZE (

'Table 2',

'Table 2'[EMP NO ],

'Table 2'[NAME],

"OLD ROLE", MAXX ( FILTER ( 'Table 2', YEAR ( 'Table 2'[VALID TO] ) < 3000 ), [JOB TITLE] ),

"NEW ROLE", MAXX ( FILTER ( 'Table 2', YEAR ( 'Table 2'[VALID TO] ) > 3000 ), [JOB TITLE] ),

"FROM DATE", MAX ( 'Table 2'[VALID FROM] )

)

return

FILTER(x1,[OLD ROLE]<>BLANK())

Atentamente,

Yuna

yaman123

En respuesta a v-yuaj-msft

Hola @ v-yuaj-msft

Sí, quiero mostrar solo promociones, por lo que si los empleados tenían un rol anterior y un rol nuevo. También me gustaría mostrar los últimos 6 meses de promociones. Por ejemplo, si ejecuto el informe de enero de 2021, me gustaría mostrar las promociones de agosto de 2020 a enero de 2021 cuando selecciono enero de 2021 en el selector de fechas.

En respuesta a yaman123

Hola @ yaman123,

Entonces puedes seguir algunos pasos de la siguiente manera.

1. Cree una columna «Mes» en la tabla «Fecha».

month = MONTH('Date'[Date])

2. cree una medida y arrástrela al filtro de la tabla visual. (es 1)

Measure = 

var x1=SELECTEDVALUE('Date'[month])

var x2=MAXX('Table 3',MONTH('Table 3'[FROM DATE]))

return

IF(x2>=x1-6&&x2<=x1,1,0)
Resultado:
0128.gif

Espero que eso sea lo que estabas buscando.

Atentamente,

Yuna

Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

yaman123

En respuesta a v-yuaj-msft

hI @ v-yuaj-msft

¿Puede esto funcionar con Mes Año en lugar de mes? Estoy usando una columna Mes Año en la tabla de fechas para el resto del informe y me gustaría mantenerla constante en todo momento.

Tengo esta fórmula que creó la columna mes año

Mes Año = FORMATO ([Date], «mmmm») & «» & año ([Date])

En respuesta a yaman123

Hola @ yaman123,

No creo que la columna «mes año» que proporcionó pueda reemplazar la columna «mes». La columna «Mes año» es de tipo «Texto» distinto del tipo «número entero». Será mejor que divida la columna y transforme el tipo de «texto» en «Número entero». O puede recrear una columna de mes como la anterior.

Espero que eso sea lo que estabas buscando.

Atentamente,

Yuna

Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

yaman123

En respuesta a v-yuaj-msft

¿Puede esto funcionar con Max (fecha, fecha) porque el informe se ejecuta a fin de mes?

En respuesta a yaman123

Hola @ yaman123,

Hice la prueba de acuerdo con su solicitud y, lamentablemente, falló.

Espero que eso sea lo que estabas buscando.

Atentamente,

Yuna

Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

yaman123

En respuesta a v-yuaj-msft

No hay problema. ¡Gracias por tu ayuda!

yaman123

Hola @amitchandak

Tengo el siguiente conjunto de datos. Válido para puede estar en blanco si el empleado todavía está en la empresa.

EMP NO NOMBRE TÍTULO PROFESIONAL VÁLIDA DESDE VÁLIDO HASTA
1001 A GERENTE 19/05/2020 31/12/9999
1002 B GERENTE DE RECURSOS HUMANOS 01/08/2012 31/07/2020
1002 B SOCIO EMPRESARIAL DE RRHH 01/08/2020 31/12/9999
1003 C LÍDER DEL EQUIPO AP 01/05/2020 31/12/9999
1004 D ADMINISTRADOR 10/01/2019 31/10/2020
1004 D ADMINISTRADOR DEL CONTRATO 11/01/2020 31/12/9999

Me gustaría mostrar lo siguiente cuando, por ejemplo, se seleccione agosto de 2020:

EMP NO NOMBRE ANTIGUO PAPEL NUEVO ROL PARTIR DE LA FECHA
1002 B GERENTE DE RECURSOS HUMANOS SOCIO EMPRESARIAL DE RRHH 01/08/2020

Tengo una tabla de fechas que se usa para seleccionar el año del mes y no está vinculada a ninguna tabla. Utilizo MAX (DATE) en las medidas para extraer los datos de ese período.

Deja un comentario

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