Su Template de datos de Hire to Retire - Gestión de puestos
Su Template de datos de Hire to Retire - Gestión de puestos
- Atributos recomendados para recopilar y realizar un análisis exhaustivo
- Actividades clave del proceso que debe seguir para lograr un descubrimiento preciso
- Recomendaciones de extracción específicas para Microsoft Dynamics 365 Human Resources
Hire to Retire - Atributos de la gestión de puestos
| Nombre | Descripción | ||
|---|---|---|---|
| Hora del evento EventTime | La marca de tiempo que indica cuándo ocurrió la actividad. | ||
| Descripción La hora del evento, o marca de tiempo, registra la fecha y 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 prácticamente todos los análisis de Process Mining, desde la creación del mapa de procesos hasta el cálculo de KPI de rendimiento como «Average Position Approval Cycle Time». Ayuda a determinar cuándo se producen las demoras y cuánto tarda cada etapa 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 descubrir cuellos de botella del proceso. Dónde obtenerlo Esta información suele encontrarse en tablas de registros del sistema o en los campos «CreatedDateTime» o «ModifiedDateTime» asociados con registros de puestos y Workflows en 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 | El identificador único de un puesto de trabajo específico dentro de la organización. | ||
| Descripción Position ID actúa como identificador principal del caso y vincula todas las actividades y los puntos de datos relacionados con un único puesto organizativo. Esto permite realizar un seguimiento integral de todo el ciclo de vida del puesto, desde su creación y sus modificaciones hasta su desactivación o cierre final. 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, identifican 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 central que conecta todos los eventos relacionados en un único caso del proceso, lo que 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 | El nombre del evento o la tarea específicos que tuvieron lugar en el proceso de gestión del puesto. | ||
| Descripción Este atributo describe un único paso del ciclo de vida del puesto, como «Position Request Initiated», «Position Created In HR System» o «Position Deactivated». Constituye la base del mapa de procesos, ya que muestra la secuencia de eventos. Analizar el nombre de la actividad permite visualizar los flujos del proceso, identificar desviaciones respecto al proceso estándar y calcular los tiempos de transición entre las distintas etapas. Es fundamental para comprender qué ocurrió y en qué orden. Por qué es importante Define las etapas del proceso y permite visualizar los mapas de procesos y analizar el flujo y las variaciones del proceso. Dónde obtenerlo Este atributo se deriva de eventos empresariales, cambios de estado o del historial del Workflow en Microsoft Dynamics 365 Human Resources. No corresponde a un único campo, sino que se construye según el contexto de los datos. Ejemplos Solicitud de puesto iniciadaSolicitud de puesto aprobada por el gerentePuesto creado en el sistema de Recursos HumanosAtributos del puesto modificadosPuesto cerrado | |||
| Centro de costos CostCenter | El centro de costos financiero al que se asignan los gastos del puesto. | ||
| Descripción El centro de costos es una dimensión financiera clave que vincula un puesto con un presupuesto específico o con un área de responsabilidad financiera. Es importante supervisar los cambios en este atributo. Este atributo es fundamental para el panel «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 costos 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 procesos relacionados con los costos y supervisar la coherencia de los datos. Dónde obtenerlo Normalmente se configura 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 | El departamento al que pertenece el puesto. | ||
| Descripción Este atributo especifica el departamento de la organización, como «Finanzas», «Marketing» o «TI», asociado al puesto. Es una dimensión principal para filtrar y agregar los datos del proceso. El análisis por departamento es esencial para el panel «Rendimiento de puestos por departamento». Ayuda a comparar el rendimiento del proceso, identificar cuellos de botella específicos de cada departamento y comprender las tendencias de contratación en las distintas áreas de la empresa. Por qué es importante Permite segmentar el análisis del proceso por unidad de negocio, lo que ayuda a identificar problemas específicos de cada departamento y comparar el rendimiento. Dónde obtenerlo Esta información forma parte de los detalles del puesto. Normalmente se almacena en la entidad HcmPositionDetail y se vincula a la dimensión de unidad operativa. Ejemplos FinanzasTecnologías de la informaciónVentas y marketingRecursos humanosOperaciones | |||
| Estado del puesto PositionStatus | El estado actual o histórico del puesto. | ||
| Descripción Este atributo indica el estado del puesto en un momento determinado, como «Proposed», «Active», «Frozen» o «Closed». Los cambios de estado suelen corresponder a actividades del proceso. Realizar un seguimiento del estado es fundamental para comprender el recorrido del puesto y para Dashboards como «Position Compliance Review Status» y «Stale and Underutilized Positions». Proporciona una vista del estado actual del puesto y ayuda a validar el flujo del proceso. Por qué es importante Proporciona un estado claro para cada puesto, algo esencial para filtrar casos y comprender los resultados. Dónde obtenerlo Consulte la documentación de Microsoft Dynamics 365 Human Resources. Probablemente se deriva de los campos de estado del registro principal Position. Ejemplos PropuestoEn revisiónActivoCongeladoCerrado | |||
| Hora de finalización EndTime | La marca de tiempo que indica cuándo se completó la actividad. | ||
| Descripción EndTime marca la conclusión de una actividad. El tiempo transcurrido entre StartTime y EndTime corresponde al tiempo de procesamiento de esa actividad concreta. Este atributo es esencial para calcular las duraciones a nivel de actividad y comprender dónde se emplea el tiempo dentro del proceso. Por ejemplo, ayuda a determinar cuánto tarda un responsable en aprobar una solicitud de puesto después de que se le haya asignado. 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 derivarse de las marcas de tiempo de eventos posteriores o de campos específicos de «finalización» en los registros de Workflow de Dynamics 365 HR. A menudo, debe inferirse. 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 | El nombre o ID de la persona usuaria que realizó la actividad. | ||
| Descripción Este atributo identifica al empleado o usuario del sistema responsable de un paso concreto del proceso, como el responsable que aprobó una solicitud o el especialista de RR. HH. que creó el puesto en el sistema. El análisis por usuario ayuda a identificar necesidades de formación, comparar el rendimiento entre integrantes del equipo y comprender la distribución de la carga de trabajo. También es clave para las comprobaciones de cumplimiento, ya que garantiza una adecuada segregación de funciones. Por qué es importante Proporciona trazabilidad y permite analizar el rendimiento por persona o equipo, algo fundamental para gestionar los recursos y la formación. Dónde obtenerlo Está asociado al historial del Workflow 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 | El título del puesto asociado a la posición, como «Contable sénior». | ||
| Descripción El título del puesto proporciona un contexto importante sobre el rol y las responsabilidades de la posición. Es diferente del identificador de la posición, ya que varias posiciones pueden compartir el mismo título. En el análisis, este atributo permite agrupar y filtrar por tipo de rol. Resulta útil para el panel «Tendencias de reclasificación de puestos», ya que muestra qué tipos de puestos se reclasifican con mayor frecuencia. Por qué es importante Añade un contexto empresarial esencial y permite analizar los datos por rol, nivel o función. Dónde obtenerlo Esta información se vincula desde el registro «Job» asociado a la posición. Búsquela en entidades como HcmPositionV2Entity o mediante una unión con HcmJobEntity. Ejemplos Analista financiero séniorIngeniero de software IISocio de negocio de Recursos HumanosCoordinador de marketingGerente de logística | |||
| ¿Es retrabajo? IsRework | Indicador que señala si una actividad forma parte de un bucle 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 bucles ineficientes del proceso. Este atributo respalda directamente el panel «Análisis del retrabajo de puestos» y el 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, uno de los principales objetivos de las iniciativas de mejora. Dónde obtenerlo Se calcula a partir de la secuencia de actividades de un caso. Por ejemplo, si «Position Request Approved By Manager» ocurre después de «Position Attributes Modified», puede marcarse como retrabajo. Ejemplos truefalse | |||
| ¿Se aprobó el presupuesto? IsBudgetApproved | Indicador que señala si se aprobó el presupuesto del puesto. | ||
| Descripción Este atributo booleano es true si la actividad «Position Budget Approved» se ha producido en un caso de puesto determinado. Ayuda a analizar el flujo del proceso e identificar los puestos bloqueados a la espera de presupuesto. Este atributo puede utilizarse para filtrar procesos y analizar con mayor eficacia el KPI «Tiempo de ciclo de aprobación del presupuesto del puesto». Ayuda a diferenciar los puestos que han superado el obstáculo presupuestario de los que aún no lo han hecho, algo útil para el análisis de cuellos de botella. Por qué es importante Simplifica el análisis al proporcionar un indicador claro de un hito crítico y ayuda a aislar y medir la fase de aprobación presupuestaria. Dónde obtenerlo Se obtiene durante la transformación de datos comprobando si la actividad «Position Budget Approved» existe en el historial del caso. Ejemplos truefalse | |||
| Familia profesional JobFamily | Agrupación de puestos con funciones similares, como «Ingeniería» o «Finanzas». | ||
| Descripción La familia profesional es una clasificación que agrupa títulos de puestos relacionados. Por ejemplo, «Ingeniero de software» e «Ingeniero de control de calidad» podrían pertenecer a la familia profesional «Ingeniería». Este atributo es esencial para el panel «Tendencias de reclasificación de puestos», ya que permite analizar en un nivel superior qué categorías de puestos cambian con mayor frecuencia. Ofrece una visión más amplia que el análisis de títulos individuales. Por qué es importante Permite analizar los puestos de forma más amplia y por categorías, 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 | El 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 proporciona contexto sobre el origen de la demanda de puestos. El análisis por gerente solicitante puede ayudar a identificar patrones en el volumen de solicitudes, las tasas de aprobación y la calidad de las solicitudes. Añade un nivel de detalle para comprender la carga de trabajo y el cumplimiento del proceso. Por qué es importante Ayuda a rastrear el origen de la demanda de puestos y a 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. Probablemente esta información se captura en los datos de inicio del Workflow. Ejemplos Robert JonesSusan MillerDavid ChenMaria GarciaPaul Williams | |||
| Motivo del rechazo RejectionReason | El motivo indicado cuando se rechaza una solicitud de puesto. | ||
| Descripción Cuando un gerente o el área de Recursos Humanos rechaza una solicitud de puesto, normalmente se registra un 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 comprender por qué se produce el retrabajo. Analizar los motivos de rechazo más frecuentes ayuda a identificar problemas iniciales, como la baja calidad de las solicitudes o unas directrices poco claras, que pueden corregirse para mejorar el proceso. Por qué es importante Proporciona información directa sobre los motivos por los que fallan las solicitudes y permite aplicar mejoras específicas para reducir el retrabajo y las tasas de rechazo. Dónde obtenerlo Consulte la documentación de Microsoft Dynamics 365 Human Resources. Normalmente se captura en los comentarios del Workflow o en un campo específico de código de motivo al producirse el rechazo. Ejemplos Presupuesto no disponibleSolicitud duplicadaPerfil del puesto incorrectoCongelación de contratacionesRealineación estratégica | |||
| Sistema de origen SourceSystem | El 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 el linaje de datos y la resolución de problemas. Ayuda a confirmar que los datos proceden del origen esperado y puede utilizarse para filtrar los análisis de sistemas específicos. Por qué es importante Proporciona contexto sobre el origen de los datos, algo importante para la gobernanza de datos y para los análisis que abarcan varios sistemas empresariales. Dónde obtenerlo Es un valor estático que se añade durante el proceso de extracción y transformación de datos para identificar el origen del conjunto de datos. Ejemplos Microsoft Dynamics 365 Human ResourcesD365 HRDynamicsHR | |||
| Tiempo de ciclo de aprobación ApprovalCycleTime | El tiempo total transcurrido desde que se inicia una solicitud de puesto hasta que recibe la aprobación final. | ||
| Descripción Esta métrica calculada mide la duración desde la actividad «Position Request Initiated» hasta la actividad de aprobación final, que podría ser «Position Request Approved By HR». Es un indicador clave del rendimiento de la fase inicial del proceso de gestión de puestos. Este atributo alimenta directamente el panel y el KPI «Tiempo de ciclo de aprobación del puesto». Proporciona una medida general de la eficiencia del proceso de aprobación y ayuda a seguir el impacto de las iniciativas de mejora a lo largo del tiempo. Por qué es importante Es un KPI fundamental que mide la eficiencia de todo el proceso de aprobación y pone de manifiesto los retrasos para dejar los puestos listos para su creación. Dónde obtenerlo Se calcula a nivel de caso: se identifican las marcas de tiempo de las actividades inicial y final de la fase de aprobación y se calcula la diferencia. Ejemplos P3DT2H15MP10DP1DT12HP5DT6HP2W | |||
| Tipo de puesto PositionType | Clasifica el puesto como de tiempo completo, de tiempo parcial, temporal, etc. | ||
| Descripción Este atributo categoriza el puesto según sus condiciones de empleo. Proporciona contexto adicional para el análisis y la planificación de la fuerza laboral. En el análisis del proceso, filtrar por tipo de puesto puede revelar si determinados tipos siguen rutas de proceso diferentes o tienen tiempos de ciclo más largos. Por ejemplo, los puestos temporales podrían seguir un proceso de aprobación más rápido y simplificado que los puestos permanentes de tiempo completo. Por qué es importante Permite analizar cómo varía el proceso según los distintos tipos de empleo, lo que 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. Compruebe si existe un campo relevante en entidades como HcmPositionV2Entity. Ejemplos Tiempo completoTiempo parcialContratistaPasanteTemporal | |||
| Ubicación Location | La 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 panel «Rendimiento de puestos por departamento» para analizar las tendencias de dotación y el rendimiento del proceso en distintas regiones. Puede ayudar a identificar si los procesos de creación o aprobación de puestos son más lentos en determinadas ubicaciones. Por qué es importante Proporciona un contexto geográfico que 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. Puede formar parte de los detalles del puesto o vincularse mediante el departamento o la entidad jurídica. Ejemplos Nueva York, Estados UnidosLondres, Reino UnidoBerlín, AlemaniaSingapurRemoto | |||
| Última actualización de datos LastDataUpdate | La marca de tiempo de la actualización más reciente de los datos desde el sistema de origen. | ||
| Descripción Este atributo indica cuándo se extrajeron por última vez los datos de Microsoft Dynamics 365 Human Resources. Proporciona contexto sobre la actualidad del análisis. Mostrar esta información en los Dashboards garantiza que las personas usuarias consulten información actualizada. Es un elemento de metadatos clave para cualquier proyecto de Process Mining. Por qué es importante Informa a las personas usuarias sobre la actualidad de los datos, 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 | |||
Hire to Retire - Actividades de la 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. Este evento se infiere cuando un campo de estado del registro del puesto cambia a «Active» o a un estado similar. | ||
| Por qué es importante Es un hito fundamental para medir la preparación de la dotación de personal y la eficiencia de las etapas finales de configuración. Es esencial para el KPI de tiempo promedio hasta la activación del puesto. Dónde obtenerlo Se infiere mediante el seguimiento de la marca de tiempo en la que el campo de estado, como «PositionStatus», del registro del puesto se actualiza a «Active» u «Open». Recopilar Se basa en la fecha en la que se completa el campo ActivationDate del puesto o en el cambio de un campo de estado a «Active». Tipo de evento inferred | |||
| Puesto cerrado | Representa el archivado final del registro del puesto y señala el fin absoluto de su ciclo de vida. Este evento se infiere mediante un cambio de estado a «Closed» o a un estado terminal similar. | ||
| Por qué es importante Es el evento terminal del proceso, permite analizar todo el ciclo de vida de principio a fin y ayuda a identificar puestos obsoletos que deberían cerrarse. Dónde obtenerlo Se infiere de un cambio en un campo de estado a «Closed» en el registro del puesto. Es menos habitual que la desactivación, ya que los registros suelen conservarse por motivos históricos. Recopilar Se infiere de la marca de tiempo en la que un campo de estado se actualiza a «Closed». Tipo de evento inferred | |||
| Puesto creado en el sistema de Recursos Humanos | 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 registro principal del puesto. | ||
| Por qué es importante Un hito fundamental que señala la transición de una solicitud a una entidad organizativa real. Es el punto final del KPI de tiempo de entrega de creación del puesto. Dónde obtenerlo Del campo del sistema «CreatedDateTime» de la tabla principal de puestos, como HcmPosition. Recopilar 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, normalmente después de cubrirse. Se infiere de un cambio de estado a «Inactive» o a un estado similar. | ||
| Por qué es importante Marca una etapa clave al final de la vida activa del puesto. Es fundamental para analizar el tiempo promedio hasta la desactivación del puesto y gestionar con precisión la dotación de personal. Dónde obtenerlo Se infiere de la marca de tiempo en la que se completa el campo «RetirementDate» o en la que un campo de estado del registro del puesto cambia a «Inactive». Recopilar Se basa en la fecha en la que se establece RetirementDate del puesto o en la que un campo de estado cambia a «Inactive». Tipo de evento inferred | |||
| Solicitud de puesto aprobada por Recursos Humanos | Indica la aprobación final del departamento de Recursos Humanos antes de crear formalmente el puesto. Es un evento explícito que se registra al completar la tarea de aprobación de Recursos Humanos en el sistema de Workflow. | ||
| Por qué es importante Marca el final de la fase de aprobación y constituye un hito fundamental para medir el tiempo de ciclo promedio total de aprobación del puesto. Dónde obtenerlo Se registra en las tablas del historial del Workflow, como WorkflowTrackingTable, cuando el representante de Recursos Humanos completa su tarea de aprobación. Recopilar El evento se registra en el historial del Workflow con una marca de tiempo al completar la etapa de aprobación de Recursos Humanos. 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 usuaria envía una nueva solicitud de puesto mediante un formulario específico o un Workflow en Dynamics 365 HR. | ||
| Por qué es importante Este es el punto de partida para medir todo el ciclo de vida del puesto, incluidos KPI fundamentales como el tiempo de ciclo de aprobación del puesto y el plazo 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 de la tabla del historial del Workflow, como WorkflowTrackingStatusTable. Recopilar El evento se registra al enviar un nuevo Workflow de solicitud de puesto. Tipo de evento explicit | |||
| Atributos del puesto modificados | Representa cualquier cambio realizado en atributos clave de un puesto, como el título o el departamento, después de su creación inicial. Normalmente, esta actividad se infiere mediante el seguimiento de 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 retrabajo del proceso. Es esencial para los KPI de frecuencia de cambios de atributos del puesto y tasa de retrabajo. Dónde obtenerlo Se infiere de la tabla SysDatabaseLog si el seguimiento de cambios está habilitado para la tabla de puestos. Como alternativa, es necesario comparar instantáneas históricas de los datos del puesto. Recopilar 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 | Un hito de aprobación clave que confirma la asignación de los fondos necesarios para el nuevo puesto. Normalmente se captura como una etapa de aprobación diferenciada dentro del Workflow de creación del puesto. | ||
| Por qué es importante Aísla la etapa de aprobación financiera, lo que permite analizar las demoras relacionadas con la asignación presupuestaria y respalda el KPI de tiempo de ciclo de aprobación del presupuesto del puesto. Dónde obtenerlo Se registra en las tablas del historial del Workflow, como WorkflowTrackingTable, como una tarea de aprobación completada, normalmente asignada a un rol de finanzas. Recopilar Se obtiene de la marca de tiempo de finalización de la tarea de aprobación presupuestaria en el registro del Workflow. Tipo de evento explicit | |||
| Proceso de contratación iniciado | Señala el traspaso de la gestión del puesto al área de selección. Este evento se infiere cuando se crea una nueva vacante o proyecto de selección y se vincula con el ID de este puesto específico. | ||
| Por qué es importante Conecta el proceso de gestión del puesto con su resultado y permite analizar el tiempo transcurrido entre la activación del puesto y el inicio de las actividades reales de contratación. Dónde obtenerlo Se infiere identificando la fecha de creación de un registro en las tablas de selección o vacantes, como HcmRecruitingRequest, que haga referencia al ID del puesto. Recopilar Se infiere vinculando PositionId con la creación del registro correspondiente en el módulo de selección. Tipo de evento inferred | |||
| Puesto congelado | Indica que un puesto se ha puesto temporalmente en espera, lo que impide cualquier actividad de contratación. Se captura infiriendo un cambio de estado del registro del puesto a «Frozen» o «On Hold». | ||
| Por qué es importante Realiza un seguimiento de las interrupciones en el ciclo de vida del puesto, que pueden afectar a los planes de dotación y los presupuestos. Ayuda a identificar los motivos de las demoras en la contratación. Dónde obtenerlo Se infiere mediante el seguimiento de la marca de tiempo en la que un campo de estado del registro del puesto se actualiza a «Frozen» o a un valor similar. Recopilar Se infiere de la marca de tiempo de un cambio de estado a «Frozen» u «On Hold». Tipo de evento inferred | |||
| Puesto reclasificado | Una actualización significativa en la que cambia la clasificación fundamental del puesto, como su familia profesional o nivel. Normalmente se infiere 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 del KPI de tasa de reclasificación de puestos. Dónde obtenerlo Se infiere de un cambio en el campo «JobId» de la tabla HcmPosition, capturado mediante el registro de la base de datos o comparando las versiones del registro a lo largo del tiempo. Recopilar Se infiere de un cambio registrado en el campo de clasificación profesional del registro del puesto. Tipo de evento inferred | |||
| Puesto revisado para el cumplimiento | Indica que el puesto ha pasado por una comprobación formal de cumplimiento. Puede capturarse 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 políticas normativas e internas. Esta actividad respalda directamente el KPI de tasa de cumplimiento del puesto. Dónde obtenerlo Probablemente se infiere de un campo de estado con marca de tiempo, como «ComplianceReviewStatus», o de un campo booleano «IsComplianceReviewed» en el registro del puesto. Recopilar Se infiere de la marca de tiempo en la que un campo de estado de cumplimiento se actualiza a «Completed» o «Reviewed». Tipo de evento inferred | |||
| Solicitud de puesto aprobada por el gerente | Representa la finalización de la primera línea de aprobación por parte del gerente de contratación. Este evento se registra explícitamente en el historial del Workflow cuando el gerente completa la tarea de aprobación asignada. | ||
| Por qué es importante Permite determinar la duración de la etapa de aprobación inicial y ayuda a identificar cuellos de botella asociados con gerentes o departamentos específicos. Dónde obtenerlo Se registra como un paso completado en las tablas del historial del Workflow, como WorkflowTrackingTable, asociado con la solicitud de puesto. Recopilar Se obtiene de la marca de tiempo de finalización de la etapa de aprobación del gerente en el registro del Workflow. Tipo de evento explicit | |||
| Solicitud de puesto rechazada | Indica que una solicitud de puesto ha sido denegada en una de las etapas de aprobación. Este evento se captura explícitamente en el historial del Workflow cuando una persona aprobadora selecciona la acción «Reject». | ||
| Por qué es importante Pone de manifiesto los fallos del proceso y los ciclos de retrabajo. Analizar los motivos de rechazo ayuda a mejorar la calidad de las solicitudes iniciales y respalda el KPI de tasa de rechazo de solicitudes de puesto. Dónde obtenerlo Se registra con el estado «Rejection» en las tablas del historial del Workflow, como WorkflowTrackingStatusTable, para la solicitud de puesto correspondiente. Recopilar Se obtiene del registro del Workflow cuando una persona aprobadora ejecuta la acción de rechazo. Tipo de evento explicit | |||
Guías de extracción
Pasos
- Vaya al 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 ir al espacio de trabajo «Data management».
- Cree un nuevo proyecto de exportación: Dentro del espacio de trabajo, seleccione el mosaico «Export». En la página del proyecto «Export», haga clic en «New» para crear un proyecto. Proporcione un nombre descriptivo, como «PositionManagement_EventLog_Export», y seleccione un formato de datos. Para la transformación, se recomienda «CSV».
- Añada entidades de datos al proyecto: En el nuevo proyecto, haga clic en «Add entity». Deberá añadir varias entidades para capturar todo el ciclo de vida del puesto. Añada una por una las siguientes entidades clave: «HcmPositionV2», «WorkflowTrackingStatusTable» y «HcmRecruitingRequest». Si el registro de la base de datos está habilitado para los cambios de puestos, añada también «SysDatabaseLog».
- Configure los filtros de las entidades: Para cada entidad, es fundamental aplicar filtros que limiten el alcance de los datos. Seleccione una entidad y haga clic en «Filter». En «HcmPositionV2», filtre por un intervalo de fechas específico utilizando los campos «CreatedDateTime» o «ModifiedDateTime». En «WorkflowTrackingStatusTable», filtre «CONTEXTTABLENAME» para incluir únicamente 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 el trabajo de exportación: Una vez configuradas todas las entidades, los campos y los filtros, haga clic en «Export» en la página principal del proyecto. El sistema creará un paquete de datos con archivos independientes para cada entidad.
- Supervise y descargue el paquete de datos: Puede supervisar el progreso del trabajo en la sección «Job history». Cuando el trabajo finalice correctamente, descargue el paquete de datos, que será un archivo comprimido.
- Extraiga y transforme los datos: Descomprima el paquete descargado. Encontrará archivos CSV independientes 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:
- Cargar el archivo «HcmPositionV2.csv». A partir de este archivo, genere el evento «Position Created In HR System» utilizando «PositionId» y «CreatedDateTime».
- Genere eventos de cambio de estado («Position Activated», «Position Frozen», «Position Deactivated», «Position Closed») 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 con los datos de puestos mediante el ID del registro. A partir de esta unión, genere los eventos del Workflow: «Position Request Initiated», «Position Request Approved By Manager», «Position Budget Approved», «Position Request Approved By HR» y «Position Request Rejected». Deberá asignar el estado del Workflow y el contexto de la etapa al Activity Name correcto.
- Si exportó «SysDatabaseLog.csv», analice este archivo para generar los eventos «Position Attributes Modified» y «Position Reclassified» según los cambios realizados en campos específicos de la tabla HcmPosition.
- Cargue «HcmRecruitingRequest.csv» para generar el evento «Hiring Process Started», identificando cuándo se creó una solicitud de selección para un puesto determinado.
- Ensamble 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 contener las columnas obligatorias «PositionId», «ActivityName» y «EventTime», además de los atributos recomendados que haya podido asignar.
- Dé formato para la carga: Asegúrese de que el archivo CSV final tenga encabezados que coincidan con los nombres de atributos obligatorios y de que la columna «EventTime» utilice un formato de marca de tiempo coherente. El archivo ya estará listo para cargarlo en la herramienta de Process Mining.
Configuración
- Entidades de datos clave: Las principales entidades necesarias para esta extracción son:
HcmPositionV2: Contiene los detalles principales de cada puesto, incluidas las fechas de creación y activación, además de atributos como el puesto de trabajo y el departamento.WorkflowTrackingStatusTable: Proporciona el historial de las instancias de Workflow, incluidos los envíos, las aprobaciones y los rechazos. Es esencial para realizar el seguimiento del proceso de aprobación.HcmRecruitingRequest: Se utiliza para inferir la actividad «Hiring Process Started» cuando una solicitud de selección está vinculada a un puesto.SysDatabaseLog: Entidad opcional, pero muy útil para capturar cambios detallados como «Position Attributes Modified» y «Position Reclassified». Su uso depende de que el registro de la base de datos se haya configurado previamente para la tabla HcmPosition.
- Filtrado por intervalo de fechas: Se recomienda encarecidamente aplicar un filtro de intervalo de fechas a la entidad «HcmPositionV2» basado en el campo «CreatedDateTime». Un intervalo de entre 6 y 12 meses suele ser un buen punto de partida para mantener un volumen de datos manejable.
- Exportaciones incrementales: Para el análisis continuo, considere configurar el proyecto de exportación para realizar 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 «Data management» y permisos de lectura para todas las entidades de datos especificadas. Normalmente se requieren roles como «Data management administrator» o un rol personalizado con privilegios específicos sobre las entidades.
a 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 comenzar, verifique que la función «Bring Your Own Database» (BYOD) esté configurada para su instancia de Microsoft Dynamics 365 Human Resources. Asegúrese de que las entidades de datos necesarias se estén exportando a su base de datos Azure SQL. Entre las entidades clave se incluyen:
HcmPositionV2,HcmPositionDetail,WorkflowTrackingStatusTable,HcmJob,OMOperatingUnityHcmRecruitingRequest. - Conéctese a la base de datos Azure SQL: Utilice una herramienta cliente de SQL, como SQL Server Management Studio (SSMS) o Azure Data Studio, para establecer una conexión con la base de datos Azure SQL 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 proporcionado en la sección «query» de este documento.
- Personalice los parámetros: Modifique las variables de marcador de posición de la consulta. Establezca
@[YourCompanyId]en 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 variará según el volumen de datos y el intervalo de fechas seleccionado.
- Revise los resultados: Cuando finalice la consulta, revise los resultados en el panel correspondiente de su cliente SQL. Compruebe que las columnas
PositionId,ActivityName,EventTimey las demás estén completas según lo esperado. - 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 directamente los resultados en un archivo CSV. Por ejemplo, en SSMS puede hacer clic con el botón derecho en la cuadrícula de resultados y seleccionar «Save Results As...».
- Prepare la carga: Asegúrese de que el archivo CSV exportado utilice codificación UTF-8. Confirme que los encabezados de columna 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 se publiquen desde Dynamics 365 HR en su instancia de BYOD. Entre las entidades críticas para este proceso se incluyen las relacionadas con puestos, detalles de puestos, historial de Workflow, cargos, departamentos y solicitudes de contratación.
- Latencia de datos: Tenga en cuenta que BYOD replica los datos casi en tiempo real, pero no de forma instantánea. Puede producirse un ligero retraso, de unos minutos hasta una hora, entre la realización de 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 su consulta para gestionar el rendimiento y el volumen de datos. Un buen punto de partida suele ser un intervalo de 3 a 6 meses. Aplique filtros a las marcas de tiempo de creación o de eventos dentro de cada bloque
UNION ALL. - Filtro de empresa: Filtre siempre por
DATAREAID(identificador de la entidad legal o de la 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 de Azure, una instancia de BYOD configurada, permisos de lectura en la base de datos Azure SQL de destino y una herramienta cliente SQL adecuada para ejecutar consultas.
- Pasos personalizados de Workflow: La consulta utiliza nombres habituales de pasos de Workflow para las aprobaciones, como 'Approve position request'. Si su organización utiliza nombres personalizados para estos pasos, deberá actualizar los valores de
CONTEXTen las cláusulasWHEREcorrespondientes.
a 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 comenzar?
Aproveche esta plantilla para agilizar la recopilación de datos y obtener información detallada sobre su proceso de gestión de puestos de Hire to Retire. Comience hoy su camino hacia una mayor eficiencia y cumplimiento.
Optimice al instante la gestión de puestos de Hire to Retire
Reduzca un 30 % el tiempo de ciclo de su proceso y elimine los cuellos de botella.
No necesita tarjeta de crédito. Configuración en minutos.