Su Template de datos para contratación a jubilación: gestión de puestos
Su Template de datos para contratación a jubilación: gestión de puestos
- Atributos recomendados para un análisis exhaustivo
- Actividades clave del proceso que debe seguir para descubrirlo con precisión
- Instrucciones de extracción específicas para Microsoft Dynamics 365 Human Resources
Atributos de contratación a jubilación: gestión de puestos
| Nombre | Descripción | ||
|---|---|---|---|
| Hora del evento EventTime | Marca de tiempo que indica cuándo tuvo lugar la actividad. | ||
| Descripción La hora del evento, o marca de tiempo, registra la fecha y la hora exactas en que se completó una actividad. Es fundamental para ordenar cronológicamente los eventos y calcular duraciones y tiempos de ciclo. Este atributo se utiliza en casi todos los análisis de Process Mining, desde la creación del mapa del proceso hasta el cálculo de KPI de rendimiento, como el «Tiempo medio de ciclo de aprobación del puesto». Ayuda a determinar cuándo se producen los retrasos y cuánto tarda cada paso del proceso. Por qué es importante Esta marca de tiempo es esencial para ordenar los eventos, calcular todas las métricas basadas en el tiempo y detectar cuellos de botella en el proceso. Dónde obtenerlo Esta información suele encontrarse en las tablas de registros del sistema o en los campos «CreatedDateTime» o «ModifiedDateTime» asociados a los registros de puestos y flujos de trabajo de Dynamics 365 HR. Ejemplos 2023-04-15T09:00:00Z2023-04-15T14:35:10Z2023-04-18T11:21:05Z2023-05-02T16:45:00Z2024-01-10T10:00:00Z | |||
| ID del puesto PositionId | Identificador único de un puesto de trabajo concreto dentro de la organización. | ||
| Descripción El ID del puesto es el identificador principal del caso y vincula todas las actividades y los datos relacionados con un mismo puesto de la organización. Permite hacer un seguimiento integral de todo su ciclo de vida, desde la creación y las modificaciones hasta la desactivación o el cierre. En el análisis de procesos, este ID es esencial para reconstruir el recorrido de cada puesto. Permite crear Dashboards que supervisan los tiempos de ciclo, detectan cuellos de botella en las aprobaciones y analizan las variantes del proceso desde la solicitud hasta el cierre. Por qué es importante Es el identificador principal que conecta todos los eventos relacionados en un único caso del proceso y permite analizar el ciclo de vida completo del puesto. Dónde obtenerlo Normalmente, corresponde al campo HcmPosition.PositionId de Microsoft Dynamics 365 Human Resources. Puede encontrarse en entidades de datos como HcmPositionV2Entity. Ejemplos POS001234MKT-0056FIN-SR-ANALYST-02HRBP-EAST-01IT-DEV-9876 | |||
| Nombre de la actividad ActivityName | Nombre del evento o la tarea concreta que tuvo lugar durante el proceso de gestión de puestos. | ||
| Descripción Este atributo describe un paso del ciclo de vida del puesto, como «Solicitud de puesto iniciada», «Puesto creado en el sistema de RR. HH.» o «Puesto desactivado». Es la base del mapa del proceso, ya que muestra la secuencia de eventos. Analizar el nombre de la actividad permite visualizar los flujos del proceso, detectar desviaciones respecto al proceso estándar y calcular los tiempos de transición entre los distintos pasos. Es fundamental para comprender qué ocurrió y en qué orden. Por qué es importante Define los pasos del proceso y permite visualizar los mapas de procesos y analizar sus flujos y variaciones. Dónde obtenerlo Este atributo se obtiene de los eventos de negocio, los cambios de estado o el historial del flujo de trabajo en Microsoft Dynamics 365 Human Resources. No corresponde a un único campo, sino que se construye a partir del contexto de los datos. Ejemplos Solicitud de puesto iniciadaSolicitud de puesto aprobada por la persona responsablePuesto creado en el sistema de RR. HH.Atributos del puesto modificadosPuesto cerrado | |||
| Centro de coste CostCenter | Centro de coste financiero al que se asignan los gastos del puesto. | ||
| Descripción El centro de coste es una dimensión financiera clave que vincula un puesto con un presupuesto específico o un área de responsabilidad financiera. Es importante supervisar los cambios en este atributo. Este atributo es fundamental para el Dashboard «Comprobación de coherencia de los datos del puesto», que analiza los cambios en atributos clave después de la creación. También se utiliza para analizar los costes y presupuestos relacionados con los puestos por unidad financiera. Por qué es importante Vincula el puesto con los datos financieros, lo que permite analizar los costes del proceso y supervisar la coherencia de los datos. Dónde obtenerlo Suele configurarse como una dimensión financiera en el registro del puesto. Consulte la configuración de dimensiones financieras en Dynamics 365. Ejemplos CC-1001-FINCC-2500-ITCC-4510-SALESCC-7000-OPSCC-9002-HR | |||
| Departamento DepartmentName | Departamento al que pertenece el puesto. | ||
| Descripción Este atributo especifica el departamento de la organización asociado al puesto, como «Finanzas», «Marketing» o «TI». Es una dimensión principal para filtrar y agregar datos del proceso. El análisis por departamento es esencial para el Dashboard «Rendimiento de puestos por departamento». Permite comparar el rendimiento del proceso, detectar cuellos de botella específicos de cada departamento y entender las tendencias de contratación en distintas áreas de la empresa. Por qué es importante Permite segmentar el análisis del proceso por unidad de negocio, detectar problemas específicos de cada departamento y comparar el rendimiento. Dónde obtenerlo Esta información forma parte de los detalles del puesto. Suele almacenarse en la entidad HcmPositionDetail y vincularse a la dimensión de unidad operativa. Ejemplos FinanzasTecnología de la informaciónVentas y marketingRecursos humanosOperaciones | |||
| Estado del puesto PositionStatus | Estado actual o histórico del puesto. | ||
| Descripción Este atributo indica el estado del puesto en un momento determinado, por ejemplo, «Propuesto», «Activo», «Congelado» o «Cerrado». Los cambios de estado suelen corresponder a actividades del proceso. Hacer un seguimiento del estado es fundamental para entender la trayectoria del puesto y consultar Dashboards como «Estado de la revisión de cumplimiento de puestos» y «Puestos inactivos y subutilizados». Ofrece una instantánea del estado actual del puesto y ayuda a validar el flujo del proceso. Por qué es importante Indica claramente el estado de cada puesto, algo esencial para filtrar casos y entender los resultados. Dónde obtenerlo Consulte la documentación de Microsoft Dynamics 365 Human Resources. Es probable que este dato se derive de los campos de estado del registro principal del puesto. Ejemplos PropuestoEn revisiónActivoCongeladoCerrado | |||
| Hora de finalización EndTime | Marca de tiempo que indica cuándo se completó la actividad. | ||
| Descripción EndTime marca el final de una actividad. El tiempo transcurrido entre StartTime y EndTime corresponde al tiempo de procesamiento de esa actividad. Este atributo es esencial para calcular la duración de cada actividad y entender en qué se emplea el tiempo dentro del proceso. Por ejemplo, permite determinar cuánto tarda un gerente en aprobar una solicitud de puesto una vez que se le asigna. Por qué es importante Permite calcular los tiempos de procesamiento de las actividades, algo fundamental para analizar en detalle el rendimiento y los cuellos de botella. Dónde obtenerlo Puede obtenerse de las marcas de tiempo de eventos posteriores o de campos específicos de «finalización» en los registros del flujo de trabajo de Dynamics 365 HR. A menudo, hay que inferirlo. Ejemplos 2023-04-15T09:05:12Z2023-04-15T15:00:00Z2023-04-19T09:00:00Z2023-05-03T10:00:00Z2024-01-10T10:05:00Z | |||
| Nombre de usuario UserName | Nombre o ID del usuario que realizó la actividad. | ||
| Descripción Este atributo identifica al empleado o usuario del sistema responsable de un paso del proceso, como el gerente que aprobó una solicitud o el especialista de RR. HH. que creó el puesto en el sistema. El análisis por usuario ayuda a detectar necesidades de formación, comparar el rendimiento entre integrantes del equipo y entender cómo se distribuye la carga de trabajo. También es clave para las comprobaciones de cumplimiento y para garantizar una adecuada segregación de funciones. Por qué es importante Permite asignar responsabilidades y analizar el rendimiento de cada persona o equipo, algo fundamental para gestionar los recursos y la formación. Dónde obtenerlo Se asocia al historial del flujo de trabajo o a los registros de auditoría de Dynamics 365 HR. Puede estar vinculado mediante un User ID de la entidad HcmWorker. Ejemplos John SmithJane DoeSYSTEMHRAdmin01MGR-FINANCE | |||
| Título del puesto JobTitle | Título del cargo asociado al puesto, como «Contador sénior». | ||
| Descripción El título del puesto aporta información importante sobre el cargo y las responsabilidades asociadas. Se diferencia del ID del puesto, ya que varios puestos pueden tener el mismo título. En el análisis, este atributo permite agrupar y filtrar por tipo de cargo. Resulta útil en el Dashboard «Tendencias de reclasificación de puestos» para identificar qué tipos de cargos se reclasifican con mayor frecuencia. Por qué es importante Aporta contexto empresarial clave y permite analizar los datos por cargo, nivel o función. Dónde obtenerlo Esta información se vincula desde el registro «Job» asociado al puesto. Búsquela en entidades como HcmPositionV2Entity o mediante una unión con HcmJobEntity. Ejemplos Analista financiero séniorIngeniero de software IISocio de RR. HH.Coordinador de marketingGerente de logística | |||
| Es retrabajo IsRework | Indicador que señala si una actividad forma parte de un ciclo de retrabajo. | ||
| Descripción Este indicador booleano se establece en true si una actividad representa un paso que se repite en el proceso, como una nueva aprobación después de modificar atributos. Ayuda a cuantificar los ciclos ineficientes del proceso. Este atributo contribuye directamente al Dashboard «Análisis de retrabajo en puestos» y al KPI «Tasa de retrabajo en la creación de puestos». Al marcar el retrabajo, los analistas pueden filtrar y medir fácilmente la frecuencia y el impacto de las ineficiencias del proceso. Por qué es importante Identifica y cuantifica explícitamente el retrabajo del proceso, un objetivo prioritario de las iniciativas de mejora. Dónde obtenerlo Se calcula a partir de la secuencia de actividades de un caso. Por ejemplo, si «Solicitud de puesto aprobada por el gerente» ocurre después de «Atributos del puesto modificados», puede marcarse como retrabajo. Ejemplos truefalse | |||
| Familia de puestos JobFamily | Agrupación de puestos con funciones similares, como «Ingeniería» o «Finanzas». | ||
| Descripción La familia de puestos es una clasificación que agrupa títulos de puestos relacionados. Por ejemplo, «Ingeniero de software» e «Ingeniero de control de calidad» pueden pertenecer a la familia de puestos «Ingeniería». Este atributo es esencial para el Dashboard «Tendencias de reclasificación de puestos», ya que permite analizar a un nivel más general qué categorías de puestos cambian con mayor frecuencia. Ofrece una perspectiva más amplia que el análisis de títulos individuales. Por qué es importante Permite analizar los puestos por categorías más amplias, algo útil para la planificación estratégica de la fuerza laboral y el análisis de tendencias. Dónde obtenerlo Forma parte de la configuración de puestos en Dynamics 365 HR. Busque campos relacionados con «Job family» o «Job function» en HcmJobEntity. Ejemplos IngenieríaFinanzas y contabilidadVentasRecursos humanosGestión de productos | |||
| Gerente solicitante RequestingManager | Gerente que inició la solicitud del puesto. | ||
| Descripción Este atributo identifica al gerente de contratación o responsable del departamento que inició el proceso al solicitar un puesto nuevo o de reemplazo. Esta información permite saber de dónde surge la demanda de puestos. El análisis por gerente solicitante ayuda a detectar patrones en el volumen de solicitudes, las tasas de aprobación y la calidad de las solicitudes. También aporta más detalle para entender la carga de trabajo y el cumplimiento del proceso. Por qué es importante Permite rastrear el origen de la demanda de puestos y analizar las métricas del proceso desde la perspectiva del gerente de contratación. Dónde obtenerlo Consulte la documentación de Microsoft Dynamics 365 Human Resources. Es probable que esta información se registre al iniciar el flujo de trabajo. Ejemplos Robert JonesSusan MillerDavid ChenMaria GarciaPaul Williams | |||
| Motivo del rechazo RejectionReason | Motivo indicado cuando se rechaza una solicitud de puesto. | ||
| Descripción Cuando un gerente o el área de RR. HH. rechaza una solicitud de puesto, suele registrar el motivo. Puede deberse a restricciones presupuestarias, información incorrecta o un cambio de estrategia. Este atributo es fundamental para calcular el KPI «Tasa de rechazo de solicitudes de puestos» y entender por qué se repite el trabajo. Analizar los motivos de rechazo más frecuentes ayuda a detectar problemas en etapas anteriores, como solicitudes de baja calidad o pautas poco claras, que pueden corregirse para mejorar el proceso. Por qué es importante Permite saber directamente por qué se rechazan las solicitudes y aplicar mejoras específicas para reducir el retrabajo y la tasa de rechazo. Dónde obtenerlo Consulte la documentación de Microsoft Dynamics 365 Human Resources. El motivo suele registrarse en los comentarios del flujo de trabajo o en un campo específico de código de motivo al rechazar la solicitud. Ejemplos Presupuesto no disponibleSolicitud duplicadaPerfil del puesto incorrectoCongelación de contratacionesReorientación estratégica | |||
| Presupuesto aprobado IsBudgetApproved | Indicador que señala si se aprobó el presupuesto del puesto. | ||
| Descripción Este atributo booleano es true si se produjo la actividad «Presupuesto del puesto aprobado» en un caso determinado. Ayuda a analizar el flujo del proceso y a detectar los puestos que están esperando la aprobación del presupuesto. Este atributo permite filtrar procesos y analizar con mayor eficacia el KPI «Tiempo de ciclo de aprobación del presupuesto del puesto». Ayuda a distinguir los puestos que ya superaron la etapa presupuestaria de los que aún no lo han hecho, algo útil para analizar los cuellos de botella. Por qué es importante Simplifica el análisis al indicar claramente un hito clave y permite aislar y medir la etapa de aprobación del presupuesto. Dónde obtenerlo Se obtiene durante la transformación de datos, comprobando si la actividad «Presupuesto del puesto aprobado» aparece en el historial del caso. Ejemplos truefalse | |||
| Sistema de origen SourceSystem | Sistema del que se extrajeron los datos. | ||
| Descripción Este atributo identifica el origen de los datos del proceso. En esta vista, normalmente sería «Microsoft Dynamics 365 Human Resources». En entornos con varios sistemas, este campo es fundamental para rastrear el origen de los datos y resolver problemas. Ayuda a confirmar que los datos proceden de la fuente prevista y permite filtrar los análisis por sistema. Por qué es importante Aporta contexto sobre el origen de los datos, algo importante para la gobernanza de datos y los análisis que abarcan varios sistemas empresariales. Dónde obtenerlo Valor estático añadido durante el proceso de extracción y transformación de datos para indicar el origen del conjunto de datos. Ejemplos Microsoft Dynamics 365 Human ResourcesD365 HRDynamicsHR | |||
| Tiempo de ciclo de aprobación ApprovalCycleTime | Tiempo total desde que se inicia una solicitud de puesto hasta que se aprueba definitivamente. | ||
| Descripción Esta métrica calculada mide el tiempo transcurrido desde la actividad «Solicitud de puesto iniciada» hasta la actividad de aprobación final, que podría ser «Solicitud de puesto aprobada por RR. HH.». Es un indicador clave del rendimiento de la etapa inicial del proceso de gestión de puestos. Este atributo alimenta directamente el Dashboard y el KPI «Tiempo de ciclo de aprobación de puestos». Ofrece una medida general de la eficiencia del proceso de aprobación y permite hacer un seguimiento del impacto de las iniciativas de mejora a lo largo del tiempo. Por qué es importante Es un KPI fundamental para medir la eficiencia de todo el proceso de aprobación y destacar directamente las demoras que impiden preparar los puestos para su creación. Dónde obtenerlo Se calcula a nivel de caso: se buscan las marcas de tiempo de las actividades de inicio y fin de la fase de aprobación y se calcula la diferencia. Ejemplos P3DT2H15MP10DP1DT12HP5DT6HP2W | |||
| Tipo de puesto PositionType | Clasifica el puesto como de tiempo completo, tiempo parcial, temporal, etc. | ||
| Descripción Este atributo clasifica el puesto según las condiciones de empleo. Aporta contexto adicional para analizar y planificar la fuerza laboral. En el análisis del proceso, filtrar por tipo de puesto puede revelar si ciertos tipos siguen rutas distintas o tienen tiempos de ciclo más largos. Por ejemplo, los puestos temporales podrían tener un proceso de aprobación más rápido y sencillo que los puestos permanentes de tiempo completo. Por qué es importante Permite analizar cómo varía el proceso según el tipo de empleo y contribuye a la planificación de la fuerza laboral y a la optimización del proceso. Dónde obtenerlo Esta información suele estar disponible en el registro del puesto en Dynamics 365 HR. Busque un campo pertinente en entidades como HcmPositionV2Entity. Ejemplos Tiempo completoTiempo parcialContratistaPasanteTemporal | |||
| Ubicación Location | Ubicación física o geográfica del puesto. | ||
| Descripción Este atributo especifica dónde se encuentra el puesto, ya sea en una oficina, ciudad o país. Es otra dimensión importante para filtrar y segmentar los datos del proceso. La ubicación se utiliza directamente en el Dashboard «Rendimiento de puestos por departamento» para analizar las tendencias de dotación de personal y el rendimiento del proceso en distintas regiones. Puede ayudar a detectar si la creación o aprobación de puestos tarda más en ciertas ubicaciones. Por qué es importante Aporta contexto geográfico y permite analizar el rendimiento y las tendencias del proceso en distintas ubicaciones. Dónde obtenerlo Consulte la documentación de Microsoft Dynamics 365 Human Resources. Este dato puede formar parte de los detalles del puesto o estar vinculado mediante el departamento o la entidad jurídica. Ejemplos Nueva York, EE. UU.Londres, Reino UnidoBerlín, AlemaniaSingapurRemoto | |||
| Última actualización de datos LastDataUpdate | Marca de tiempo de la actualización más reciente de datos del sistema de origen. | ||
| Descripción Este atributo indica cuándo se extrajeron los datos por última vez de Microsoft Dynamics 365 Human Resources. Permite saber si el análisis se basa en datos recientes. Mostrar esta información en los Dashboards confirma a los usuarios que están consultando datos actualizados. Es un metadato clave en cualquier proyecto de Process Mining. Por qué es importante Indica a los usuarios si los datos son recientes, algo fundamental para tomar decisiones basadas en el análisis. Dónde obtenerlo Esta marca de tiempo se genera y almacena durante el proceso de extracción, transformación y carga (ETL) de datos. Ejemplos 2024-05-21T02:00:00Z2024-05-20T02:00:00Z2024-05-19T02:00:00Z | |||
Actividades de contratación a jubilación: gestión de puestos
| Actividad | Descripción | ||
|---|---|---|---|
| Puesto activado | Marca el momento en que un puesto queda oficialmente abierto y puede comenzar la contratación. Se infiere cuando un campo de estado del registro del puesto cambia a «Activo» o a un estado similar. | ||
| Por qué es importante Es un hito clave para medir si el puesto está listo para cubrirse y la eficiencia de las etapas finales de configuración. Es esencial para el KPI de tiempo medio hasta la activación del puesto. Dónde obtenerlo Se infiere al registrar la marca de tiempo en que un campo de estado del registro del puesto, como «PositionStatus», se actualiza a «Activo» o «Abierto». Capturar Se basa en la fecha en que se completa el campo ActivationDate del puesto o en el cambio de un campo de estado a «Activo». Tipo de evento inferred | |||
| Puesto cerrado | Representa el archivado definitivo del registro del puesto y marca el final absoluto de su ciclo de vida. Se infiere cuando el estado cambia a «Cerrado» o a otro estado final. | ||
| Por qué es importante Es el evento final del proceso. Permite analizar todo el ciclo de vida de principio a fin y ayuda a detectar puestos obsoletos que deberían cerrarse. Dónde obtenerlo Se infiere a partir de un cambio del campo de estado del registro del puesto a «Cerrado». Es menos habitual que la desactivación, ya que los registros suelen conservarse como referencia histórica. Capturar Se infiere a partir de la marca de tiempo en que un campo de estado se actualiza a «Cerrado». Tipo de evento inferred | |||
| Puesto creado en el sistema de RR. HH. | Este evento marca la creación oficial del registro del puesto en Dynamics 365 HR. Se obtiene de la marca de tiempo de creación del propio registro principal del puesto. | ||
| Por qué es importante Hito fundamental que marca el paso de una solicitud a una entidad organizativa real. Es el punto final para calcular el KPI de tiempo de creación del puesto. Dónde obtenerlo Se obtiene del campo del sistema «CreatedDateTime» de la tabla principal de puestos, como HcmPosition. Capturar Se extrae del campo del sistema CreatedDateTime de la tabla HcmPosition. Tipo de evento explicit | |||
| Puesto desactivado | El puesto deja de estar activo y se elimina de la estructura organizativa activa, a menudo después de cubrirlo. Se infiere cuando su estado cambia a «Inactivo» o a un estado similar. | ||
| Por qué es importante Marca un paso clave al final de la vida activa del puesto. Es fundamental para analizar el tiempo medio hasta la desactivación del puesto y gestionar con precisión la plantilla. Dónde obtenerlo Se infiere a partir de la marca de tiempo en que se completa el campo «RetirementDate» o en que un campo de estado del registro del puesto cambia a «Inactivo». Capturar Se basa en la fecha en que se establece RetirementDate para el puesto o en que un campo de estado cambia a «Inactivo». Tipo de evento inferred | |||
| Solicitud de puesto aprobada por RR. HH. | Indica la aprobación final del departamento de Recursos Humanos antes de que se cree formalmente el puesto. Este evento se registra explícitamente cuando se completa la tarea de aprobación de RR. HH. en el sistema de flujos de trabajo. | ||
| Por qué es importante Marca el final de la fase de aprobación y es un hito clave para medir el tiempo medio de ciclo de aprobación del puesto. Dónde obtenerlo Se registra en las tablas del historial del flujo de trabajo, como WorkflowTrackingTable, cuando la persona representante de RR. HH. completa la tarea de aprobación. Capturar El evento se registra con una marca de tiempo en el historial del flujo de trabajo cuando se completa el paso de aprobación de RR. HH. Tipo de evento explicit | |||
| Solicitud de puesto iniciada | Marca el inicio formal del ciclo de vida de la gestión de puestos. Este evento suele registrarse cuando una persona envía una solicitud de puesto mediante un formulario específico o un flujo de trabajo de Dynamics 365 HR. | ||
| Por qué es importante Este es el punto de partida para medir todo el ciclo de vida del puesto, incluidos KPI clave como el tiempo de ciclo de aprobación del puesto y el tiempo de creación del puesto. Dónde obtenerlo Se obtiene de la marca de tiempo de creación del registro de solicitud de puesto o del registro de inicio en la tabla del historial del flujo de trabajo, como WorkflowTrackingStatusTable. Capturar El evento se registra cuando se envía un nuevo flujo de trabajo de solicitud de puesto. Tipo de evento explicit | |||
| Atributos del puesto modificados | Representa cualquier cambio en los atributos clave de un puesto, como el título o el departamento, después de su creación inicial. Por lo general, esta actividad se infiere a partir del seguimiento de los cambios en el registro de la base de datos del sistema. | ||
| Por qué es importante Una frecuencia elevada de esta actividad puede indicar una baja calidad de los datos o trabajo repetido en el proceso. Es un dato esencial para los KPI de frecuencia de cambios en los atributos del puesto y tasa de trabajo repetido. Dónde obtenerlo Se infiere a partir de la tabla SysDatabaseLog si el seguimiento de cambios está habilitado para la tabla de puestos. Otra opción es comparar instantáneas históricas de los datos de los puestos. Capturar Se infiere al detectar operaciones de actualización en campos clave de la tabla HcmPosition mediante el registro de la base de datos. Tipo de evento inferred | |||
| Presupuesto del puesto aprobado | Hito de aprobación clave que confirma que se han asignado los fondos necesarios para el nuevo puesto. Suele registrarse como un paso de aprobación independiente en el flujo de trabajo de creación del puesto. | ||
| Por qué es importante Aísla la etapa de aprobación financiera para analizar los retrasos relacionados con la asignación del presupuesto y facilita el seguimiento del KPI de tiempo de ciclo de aprobación del presupuesto del puesto. Dónde obtenerlo Se registra como una tarea de aprobación completada en las tablas del historial del flujo de trabajo, como WorkflowTrackingTable. A menudo, se asigna a un puesto del área de finanzas. Capturar Se obtiene de la marca de tiempo de finalización de la tarea de aprobación del presupuesto en el registro del flujo de trabajo. Tipo de evento explicit | |||
| Proceso de contratación iniciado | Indica el traspaso de la gestión de puestos al área de selección de personal. Se infiere cuando se crea una nueva vacante o un proyecto de contratación vinculado al ID de este puesto. | ||
| Por qué es importante Conecta el proceso de gestión de puestos con su resultado y permite analizar el tiempo entre la activación del puesto y el inicio de las actividades de contratación. Dónde obtenerlo Se infiere al identificar la fecha de creación de un registro en las tablas de selección de personal o de vacantes, como HcmRecruitingRequest, que haga referencia al ID del puesto. Capturar Se infiere al vincular PositionId con la creación de un registro correspondiente en el módulo de selección de personal. Tipo de evento inferred | |||
| Puesto congelado | Indica que el puesto se ha suspendido temporalmente y que no se puede realizar ninguna actividad de contratación. Se infiere cuando el estado del registro del puesto cambia a «Congelado» o «En espera». | ||
| Por qué es importante Registra las interrupciones en el ciclo de vida del puesto, que pueden afectar los planes de dotación de personal y los presupuestos. Ayuda a identificar los motivos de los retrasos en la contratación. Dónde obtenerlo Se infiere al registrar la marca de tiempo en que un campo de estado del registro del puesto se actualiza a «Congelado» o a un valor similar. Capturar Se infiere a partir de la marca de tiempo de un cambio de estado a «Congelado» o «En espera». Tipo de evento inferred | |||
| Puesto reclasificado | Actualización importante en la que cambia la clasificación fundamental del puesto, como su familia profesional o nivel. Por lo general, se infiere a partir de un cambio en el campo «Job» del registro del puesto. | ||
| Por qué es importante Ayuda a analizar los cambios en la estructura organizativa y la estabilidad de las definiciones de los puestos. Es la actividad clave para calcular el KPI de tasa de reclasificación de puestos. Dónde obtenerlo Se infiere a partir de un cambio en el campo «JobId» de la tabla HcmPosition, registrado en el historial de la base de datos o detectado al comparar las versiones del registro a lo largo del tiempo. Capturar Se infiere a partir de un cambio registrado en el campo de clasificación profesional del registro del puesto. Tipo de evento inferred | |||
| Puesto revisado para comprobar el cumplimiento | Indica que el puesto ha pasado por una comprobación formal de cumplimiento. Puede registrarse mediante un cambio de estado, una tarea de lista de comprobación completada o la actualización de un campo personalizado. | ||
| Por qué es importante Es fundamental para supervisar el cumplimiento de las normativas y políticas internas. Esta actividad contribuye directamente al KPI de tasa de cumplimiento de los puestos. Dónde obtenerlo Probablemente se infiere a partir de un campo de estado con marca de tiempo, como «ComplianceReviewStatus», o de un campo booleano «IsComplianceReviewed» en el registro del puesto. Capturar Se infiere a partir de la marca de tiempo en que un campo de estado de cumplimiento se actualiza a «Completado» o «Revisado». Tipo de evento inferred | |||
| Solicitud de puesto aprobada por la persona responsable | Representa la finalización de la aprobación de primera línea por parte de la persona responsable de contratación. Este evento se registra explícitamente en el historial del flujo de trabajo cuando dicha persona completa la tarea de aprobación asignada. | ||
| Por qué es importante Permite medir la duración de la aprobación inicial y detectar cuellos de botella relacionados con responsables o departamentos concretos. Dónde obtenerlo Se registra como un paso completado en las tablas del historial del flujo de trabajo, como WorkflowTrackingTable, asociado a la solicitud de puesto. Capturar Se obtiene de la marca de tiempo de finalización del paso de aprobación de la persona responsable en el registro del flujo de trabajo. Tipo de evento explicit | |||
| Solicitud de puesto rechazada | Indica que una solicitud de puesto se ha rechazado en una de las etapas de aprobación. Este evento se registra explícitamente en el historial del flujo de trabajo cuando una persona aprobadora selecciona la acción «Rechazar». | ||
| Por qué es importante Permite detectar fallos del proceso y ciclos de trabajo repetido. Analizar los motivos del rechazo ayuda a mejorar la calidad de las solicitudes iniciales y a hacer seguimiento del KPI de tasa de rechazo de solicitudes de puesto. Dónde obtenerlo Se registra con el estado «Rechazo» en las tablas del historial del flujo de trabajo, como WorkflowTrackingStatusTable, para la solicitud de puesto correspondiente. Capturar Se obtiene del registro del flujo de trabajo cuando una persona aprobadora ejecuta la acción de rechazo. Tipo de evento explicit | |||
Guías de extracción
Pasos
- Abra el espacio de trabajo de gestión de datos: Inicie sesión en Microsoft Dynamics 365 Human Resources. Utilice la barra de búsqueda principal para abrir el espacio de trabajo «Gestión de datos».
- Cree un nuevo proyecto de exportación: En el espacio de trabajo, seleccione el mosaico «Exportar». En la página del proyecto «Exportar», haga clic en «Nuevo» para crear un proyecto. Asígnele un nombre descriptivo, como «PositionManagement_EventLog_Export», y seleccione un formato de datos. Se recomienda «CSV» para la transformación.
- Añada entidades de datos al proyecto: En el nuevo proyecto, haga clic en «Añadir entidad». Deberá añadir varias entidades para capturar todo el ciclo de vida del puesto. Añada una por una estas entidades clave: «HcmPositionV2», «WorkflowTrackingStatusTable» y «HcmRecruitingRequest». Si el registro de la base de datos está habilitado para los cambios en los puestos, añada también «SysDatabaseLog».
- Configure los filtros de las entidades: Es fundamental aplicar filtros a cada entidad para limitar el alcance de los datos. Seleccione una entidad y haga clic en «Filtrar». En «HcmPositionV2», filtre por un intervalo de fechas específico mediante los campos «CreatedDateTime» o «ModifiedDateTime». En «WorkflowTrackingStatusTable», filtre «CONTEXTTABLENAME» para incluir solo los Workflows relacionados con puestos.
- Seleccione los campos de cada entidad: Asegúrese de exportar todos los campos necesarios para la transformación posterior. En «HcmPositionV2», incluya «PositionId», «CreatedDateTime», «ActivationDate», «RetirementDate», «ModifiedDateTime», «JobId» y «DepartmentNumber». En «WorkflowTrackingStatusTable», incluya «ContextRecId», «WorkflowTrackingStatus», «CreatedDateTime» y «UserId».
- Ejecute la exportación: Cuando haya configurado todas las entidades, los campos y los filtros, haga clic en «Exportar» en la página principal del proyecto. El sistema creará un paquete de datos con archivos separados para cada entidad.
- Supervise y descargue el paquete de datos: Puede supervisar el progreso del trabajo en la sección «Historial de trabajos». Cuando termine correctamente, descargue el paquete de datos, que será un archivo comprimido.
- Extraiga y transforme los datos: Descomprima el paquete descargado. Encontrará archivos CSV separados para cada entidad. Estos archivos contienen datos sin procesar, no el Registro de eventos final. Debe utilizar un script externo, por ejemplo, con Python y pandas o PowerShell, para procesarlos.
- Implemente la lógica de transformación: El script debe realizar las siguientes acciones:
- Cargue el archivo «HcmPositionV2.csv». A partir de este archivo, genere el evento «Puesto creado en el sistema de RR. HH.» mediante «PositionId» y «CreatedDateTime».
- Genere eventos de cambio de estado («Puesto activado», «Puesto congelado», «Puesto desactivado» y «Puesto cerrado») interpretando los campos de estado o los campos de fecha, como «ActivationDate» y «RetirementDate», de «HcmPositionV2.csv».
- Cargue el archivo «WorkflowTrackingStatusTable.csv». Una estos datos a los datos de los puestos mediante el ID del registro. A partir de ahí, genere los eventos del flujo de trabajo: «Solicitud de puesto iniciada», «Solicitud de puesto aprobada por el responsable», «Presupuesto del puesto aprobado», «Solicitud de puesto aprobada por RR. HH.» y «Solicitud de puesto rechazada». Deberá asociar el estado del flujo de trabajo y el contexto del paso con el nombre de actividad correspondiente.
- Si exportó «SysDatabaseLog.csv», analice este archivo para generar los eventos «Atributos del puesto modificados» y «Puesto reclasificado» a partir de los cambios en campos específicos de la tabla HcmPosition.
- Cargue «HcmRecruitingRequest.csv» para generar el evento «Proceso de contratación iniciado» identificando cuándo se creó una solicitud de contratación para un puesto determinado.
- Reúna el Registro de eventos final: El script debe combinar todos los eventos generados a partir de las distintas fuentes en un único archivo CSV. Este archivo debe incluir las columnas obligatorias: «PositionId», «ActivityName» y «EventTime», además de los atributos recomendados que haya podido asociar.
- Prepare el archivo para cargarlo: Asegúrese de que el archivo CSV final tenga encabezados que coincidan con los nombres de atributos obligatorios y que la columna «EventTime» utilice un formato de marca de tiempo uniforme. El archivo ya estará listo para cargarse en la herramienta de Process Mining.
Configuración
- Entidades de datos clave: Las principales entidades necesarias para esta extracción son:
HcmPositionV2: Contiene información básica de cada puesto, incluidas las fechas de creación y activación, y atributos como el puesto de trabajo y el departamento.WorkflowTrackingStatusTable: Proporciona el historial de las instancias del flujo de trabajo, incluidos los envíos, las aprobaciones y los rechazos. Es esencial para seguir el proceso de aprobación.HcmRecruitingRequest: Se utiliza para inferir la actividad «Proceso de contratación iniciado» cuando una solicitud de contratación está vinculada a un puesto.SysDatabaseLog: Entidad opcional que permite registrar cambios detallados, como «Atributos del puesto modificados» y «Puesto reclasificado». Su uso depende de que el registro de la base de datos esté configurado previamente para la tabla HcmPosition.
- Filtrado por intervalo de fechas: Se recomienda encarecidamente aplicar un filtro de fechas a la entidad «HcmPositionV2» basado en el campo «CreatedDateTime». Un intervalo de 6 a 12 meses suele ser un buen punto de partida para mantener un volumen de datos manejable.
- Exportaciones incrementales: Para realizar análisis continuos, considere configurar el proyecto de exportación para que haga exportaciones incrementales. Así solo se extraerán los registros que hayan cambiado desde la última ejecución, lo que reducirá considerablemente el tiempo de procesamiento.
- Requisitos previos: La persona que ejecute la exportación debe tener un rol de seguridad con permisos suficientes para acceder al espacio de trabajo «Gestión de datos» y permisos de lectura para todas las entidades de datos especificadas. Normalmente se requiere un rol como «Administrador de gestión de datos» o un rol personalizado con privilegios específicos para las entidades.
Consulta de ejemplo sql
/*
This extraction uses the Dynamics 365 Data Management Framework. The 'query' is defined by configuring an export project via the user interface, not by running a script directly against the database.
A post-processing script is required to transform the output of this configuration into a final event log.
*/
-- Data Export Project Configuration --
Project Name: PositionManagement_EventLog_Export
Data Format: CSV
-- Entity 1: Positions --
Source Entity: HcmPositionV2
Fields to Export:
- PositionId
- CreatedDateTime (Used for 'Position Created In HR System' event)
- ActivationDate (Used for 'Position Activated' event)
- RetirementDate (Used for 'Position Deactivated' / 'Position Closed' event)
- ModifiedDateTime (Can be used for 'Position Attributes Modified' if SysDatabaseLog is not available)
- JobId (Used for 'Position Reclassified' event and 'JobTitle' attribute)
- DepartmentNumber (Used for 'DepartmentName' attribute)
- [Other fields for attributes like CostCenter, PositionStatus]
-- Entity 2: Workflow History --
Source Entity: WorkflowTrackingStatusTable
Fields to Export:
- ContextRecId (The record ID, used to link back to the HcmPosition record)
- ContextTableName (Filter this for 'HcmPosition')
- WorkflowTrackingStatus (Values like 'Submitted', 'Approved', 'Rejected')
- CreatedDateTime (Timestamp for the workflow event)
- UserId (The user who performed the action)
- [Workflow step name or ID field if available, to differentiate approval types]
-- Entity 3: Recruitment Requests --
Source Entity: HcmRecruitingRequest
Fields to Export:
- PositionId
- CreatedDateTime (Used for 'Hiring Process Started' event)
- RecruitingId
-- Entity 4: Database Change Log (Optional) --
Source Entity: SysDatabaseLog
Fields to Export:
- RefRecId (The record ID of the changed record)
- RefTableId (The table ID, filter for HcmPosition)
- CreatedDateTime (Timestamp of the change)
- [Fields indicating the old and new values, if available] Pasos
- Confirme los requisitos previos: Antes de empezar, compruebe que la función «Bring Your Own Database» (BYOD) esté configurada en su instancia de Microsoft Dynamics 365 Human Resources. Asegúrese de que las entidades de datos necesarias se exporten a su Azure SQL Database. Entre las entidades clave se incluyen:
HcmPositionV2,HcmPositionDetail,WorkflowTrackingStatusTable,HcmJob,OMOperatingUnityHcmRecruitingRequest. - Conéctese a Azure SQL Database: Utilice una herramienta cliente de SQL, como SQL Server Management Studio (SSMS) o Azure Data Studio, para conectarse a Azure SQL Database, que sirve como destino de BYOD.
- Identifique el esquema de la base de datos: Una vez conectado, familiarícese con el esquema de la base de datos. Las entidades de datos de D365 HR se replican como tablas. Tenga en cuenta que los nombres de las tablas de la base de datos BYOD pueden no coincidir exactamente con los nombres de las entidades, aunque suelen ser muy similares.
- Cargue la consulta SQL: Abra una nueva ventana de consulta en su cliente SQL y pegue el script SQL completo que se proporciona en la sección «query» de este documento.
- Personalice los parámetros: Modifique las variables de marcador de posición de la consulta. Asigne a
@[YourCompanyId]la entidad jurídica específica, por ejemplo, «USMF», que desea analizar. Ajuste el intervalo de fechas en las cláusulasWHERE, por ejemplo,CREATEDDATETIME >= '2023-01-01', para limitar la extracción al periodo deseado. - Ejecute la consulta: Ejecute la consulta SQL completa en la base de datos BYOD. El tiempo de ejecución dependerá del volumen de datos y del intervalo de fechas seleccionado.
- Revise los resultados: Cuando termine la consulta, revise los resultados en el panel de resultados de su cliente SQL. Compruebe que las columnas
PositionId,ActivityName,EventTimey las demás estén completas según lo previsto. - Exporte a CSV: Exporte todo el conjunto de resultados a un archivo CSV. La mayoría de los clientes SQL incluyen una función para guardar los resultados directamente en un archivo CSV. Por ejemplo, en SSMS puede hacer clic con el botón derecho en la cuadrícula de resultados y seleccionar «Guardar resultados como...».
- Prepare el archivo para cargarlo: Asegúrese de que el archivo CSV exportado utilice la codificación UTF-8. Compruebe que los encabezados de las columnas coincidan exactamente con los atributos obligatorios (
PositionId,ActivityName,EventTime, etc.) para cargarlo sin problemas en la herramienta de Process Mining.
Configuración
- Entidades de datos BYOD: Asegúrese de que todas las entidades de datos necesarias estén publicadas desde Dynamics 365 HR en su instancia BYOD. Entre las entidades esenciales para este proceso se incluyen las de puestos, detalles de puestos, historial del flujo de trabajo, puestos de trabajo, departamentos y solicitudes de contratación.
- Latencia de los datos: Tenga en cuenta que BYOD replica los datos casi en tiempo real, pero no de forma instantánea. Puede haber un ligero retraso, de unos minutos hasta una hora, entre una transacción en D365 HR y la aparición de los datos en Azure SQL Database.
- Filtrado por intervalo de fechas: Es fundamental aplicar filtros de fecha a la consulta para controlar el rendimiento y el volumen de datos. Un intervalo de 3 a 6 meses suele ser un buen punto de partida. Aplique filtros a las marcas de tiempo de creación o de evento en cada bloque
UNION ALL. - Filtro de empresa: Filtre siempre por
DATAREAID(entidad jurídica o ID de empresa) para asegurarse de analizar los datos de la unidad organizativa correcta. La consulta proporcionada incluye el marcador de posición@[YourCompanyId]para este fin. - Requisitos previos: Este método requiere una suscripción activa a Azure, una instancia BYOD configurada, permisos de lectura en Azure SQL Database de destino y una herramienta cliente SQL adecuada para ejecutar consultas.
- Pasos personalizados del flujo de trabajo: La consulta utiliza nombres habituales para los pasos de aprobación del flujo de trabajo, como «Aprobar solicitud de puesto». Si su organización utiliza nombres personalizados para estos pasos, deberá actualizar los valores
CONTEXTen las cláusulasWHEREcorrespondientes.
Consulta de ejemplo sql
SELECT
p.POSITIONID AS PositionId,
'Position Request Initiated' AS ActivityName,
w.CREATEDDATETIME AS EventTime,
w.CREATEDDATETIME AS EndTime,
w.USERID AS UserName,
dept.NAME AS DepartmentName,
pd.DESCRIPTION AS JobTitle,
'Initiated' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM WorkflowTrackingStatusTable w
JOIN HcmPositionV2 p ON w.REFRECID = p.RECID
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE w.TRACKINGSTATUS = 1 -- Submitted
AND w.CONTEXT LIKE '%Create position request%'
AND p.DATAREAID = '[YourCompanyId]'
AND w.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Request Approved By Manager' AS ActivityName,
w.CREATEDDATETIME AS EventTime,
w.CREATEDDATETIME AS EndTime,
w.USERID AS UserName,
dept.NAME AS DepartmentName,
pd.DESCRIPTION AS JobTitle,
'Pending Budget' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM WorkflowTrackingStatusTable w
JOIN HcmPositionV2 p ON w.REFRECID = p.RECID
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE w.TRACKINGSTATUS = 5 -- Approval
AND w.CONTEXT LIKE '%Manager approval%'
AND p.DATAREAID = '[YourCompanyId]'
AND w.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Budget Approved' AS ActivityName,
w.CREATEDDATETIME AS EventTime,
w.CREATEDDATETIME AS EndTime,
w.USERID AS UserName,
dept.NAME AS DepartmentName,
pd.DESCRIPTION AS JobTitle,
'Pending HR' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM WorkflowTrackingStatusTable w
JOIN HcmPositionV2 p ON w.REFRECID = p.RECID
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE w.TRACKINGSTATUS = 5 -- Approval
AND w.CONTEXT LIKE '%Budget approval%'
AND p.DATAREAID = '[YourCompanyId]'
AND w.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Request Approved By HR' AS ActivityName,
w.CREATEDDATETIME AS EventTime,
w.CREATEDDATETIME AS EndTime,
w.USERID AS UserName,
dept.NAME AS DepartmentName,
pd.DESCRIPTION AS JobTitle,
'Approved' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM WorkflowTrackingStatusTable w
JOIN HcmPositionV2 p ON w.REFRECID = p.RECID
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE w.TRACKINGSTATUS = 5 -- Approval
AND w.CONTEXT LIKE '%HR approval%'
AND p.DATAREAID = '[YourCompanyId]'
AND w.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Request Rejected' AS ActivityName,
w.CREATEDDATETIME AS EventTime,
w.CREATEDDATETIME AS EndTime,
w.USERID AS UserName,
dept.NAME AS DepartmentName,
pd.DESCRIPTION AS JobTitle,
'Rejected' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM WorkflowTrackingStatusTable w
JOIN HcmPositionV2 p ON w.REFRECID = p.RECID
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE w.TRACKINGSTATUS = 3 -- Rejection
AND p.DATAREAID = '[YourCompanyId]'
AND w.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Created In HR System' AS ActivityName,
p.CREATEDDATETIME AS EventTime,
p.CREATEDDATETIME AS EndTime,
p.CREATEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Created' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE p.DATAREAID = '[YourCompanyId]'
AND p.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Attributes Modified' AS ActivityName,
p.MODIFIEDDATETIME AS EventTime,
p.MODIFIEDDATETIME AS EndTime,
p.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Modified' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE p.MODIFIEDDATETIME > p.CREATEDDATETIME
AND p.DATAREAID = '[YourCompanyId]'
AND p.MODIFIEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Reviewed For Compliance' AS ActivityName,
pd.MODIFIEDDATETIME AS EventTime,
pd.MODIFIEDDATETIME AS EndTime,
pd.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Compliance Reviewed' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE pd.[YourComplianceStatusField] = 'Reviewed' -- This requires a custom field indicating compliance review
AND p.DATAREAID = '[YourCompanyId]'
AND pd.MODIFIEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Reclassified' AS ActivityName,
p.MODIFIEDDATETIME AS EventTime,
p.MODIFIEDDATETIME AS EndTime,
p.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Reclassified' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE p.MODIFIEDDATETIME > p.CREATEDDATETIME -- This is an inference. See known limitations.
AND p.DATAREAID = '[YourCompanyId]'
AND p.MODIFIEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Activated' AS ActivityName,
pd.VALIDFROM AS EventTime,
pd.VALIDFROM AS EndTime,
pd.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Active' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE pd.VALIDFROM >= '[StartDate]'
AND p.DATAREAID = '[YourCompanyId]'
UNION ALL
SELECT
hr.POSITIONID AS PositionId,
'Hiring Process Started' AS ActivityName,
hr.CREATEDDATETIME AS EventTime,
hr.CREATEDDATETIME AS EndTime,
hr.CREATEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Recruiting' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmRecruitingRequest hr
JOIN HcmPositionV2 p ON hr.POSITIONID = p.POSITIONID
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE hr.DATAREAID = '[YourCompanyId]'
AND hr.CREATEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Frozen' AS ActivityName,
pd.MODIFIEDDATETIME AS EventTime, -- Assuming a status change triggers modification time
pd.MODIFIEDDATETIME AS EndTime,
pd.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Frozen' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE p.[YourPositionStatusField] = 'Frozen' -- Requires a dedicated status field on the position
AND p.DATAREAID = '[YourCompanyId]'
AND pd.MODIFIEDDATETIME >= '[StartDate]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Deactivated' AS ActivityName,
pd.VALIDTO AS EventTime,
pd.VALIDTO AS EndTime,
pd.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Inactive' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE pd.VALIDTO < '2154-12-31' -- D365 often uses this far-future date for 'never expires'
AND pd.VALIDTO >= '[StartDate]'
AND p.DATAREAID = '[YourCompanyId]'
UNION ALL
SELECT
p.POSITIONID AS PositionId,
'Position Closed' AS ActivityName,
pd.MODIFIEDDATETIME AS EventTime, -- Assuming a status change triggers modification time
pd.MODIFIEDDATETIME AS EndTime,
pd.MODIFIEDBY AS UserName,
dept.NAME AS DepartmentName,
j.DESCRIPTION AS JobTitle,
'Closed' AS PositionStatus,
pd.DEFAULTDIMENSIONDISPLAYVALUE AS CostCenter
FROM HcmPositionV2 p
JOIN HcmPositionDetail pd ON p.POSITIONID = pd.POSITIONID
LEFT JOIN HcmJob j ON p.JOBID = j.JOBID
LEFT JOIN OMOperatingUnit dept ON pd.DEPARTMENT = dept.OMOPERATINGUNITNUMBER
WHERE p.[YourPositionStatusField] = 'Closed' -- Requires a dedicated status field on the position
AND p.DATAREAID = '[YourCompanyId]'
AND pd.MODIFIEDDATETIME >= '[StartDate]' ¿Listo para empezar?
Utilice este Template para agilizar la recopilación de datos y obtener conclusiones detalladas sobre el proceso de gestión de puestos de contratación a jubilación. Empiece hoy mismo a mejorar la eficiencia y el cumplimiento.
Optimice ahora la gestión de puestos de contratación a jubilación
Reduzca un 30 % el tiempo de ciclo del proceso y elimine los cuellos de botella.
No se requiere tarjeta de crédito. Configuración en minutos.