Jouw datatemplate voor Hire to Retire - Positiebeheer
Jouw datatemplate voor Hire to Retire - Positiebeheer
- Aanbevolen attributen voor een grondige analyse
- Belangrijke procesactiviteiten om te volgen voor een nauwkeurige ontdekking
- Extractiegids specifiek voor Microsoft Dynamics 365 Human Resources
Hire to Retire - attributen voor functiebeheer
| Naam | Beschrijving | ||
|---|---|---|---|
| Functie-ID PositionId | De unieke identificatie van een specifieke functie binnen de organisatie. | ||
| Beschrijving De Position ID is de primaire case-identificatie. Hiermee koppel je alle activiteiten en datapunten aan één organisatorische positie. Zo kun je de volledige levenscyclus van een positie volgen, van het aanmaken en wijzigen tot deactivering of sluiting. Bij procesanalyse is deze ID essentieel om de route van elke positie te reconstrueren. Je kunt er dashboards mee maken die doorlooptijden volgen, knelpunten in goedkeuringen identificeren en procesvarianten van aanvraag tot sluiting analyseren. Waarom dit belangrijk is Dit is de centrale identificatie die alle gerelateerde gebeurtenissen aan één procescase koppelt. Zo kun je de volledige levenscyclus van een positie analyseren. Waar je het vindt Dit is meestal het veld HcmPosition.PositionId in Microsoft Dynamics 365 Human Resources. Je vindt het in data-entiteiten zoals HcmPositionV2Entity. Voorbeelden POS001234MKT-0056FIN-SR-ANALYST-02HRBP-EAST-01IT-DEV-9876 | |||
| Naam van activiteit ActivityName | De naam van de specifieke gebeurtenis of taak die in het proces voor positiebeheer heeft plaatsgevonden. | ||
| Beschrijving Dit attribuut beschrijft één stap in de levenscyclus van een positie, zoals 'Position Request Initiated', 'Position Created In HR System' of 'Position Deactivated'. Het vormt de basis van de procesmap en laat de volgorde van gebeurtenissen zien. Door de naam van de activiteit te analyseren, kun je procesflows visualiseren, afwijkingen van het standaardproces identificeren en overgangstijden tussen stappen berekenen. Dit is essentieel om te begrijpen wat er is gebeurd en in welke volgorde. Waarom dit belangrijk is Het definieert de processtappen, zodat je procesmaps kunt visualiseren en de procesflow en varianten kunt analyseren. Waar je het vindt Dit attribuut is afgeleid uit bedrijfsevents, statuswijzigingen of workflowhistorie in Microsoft Dynamics 365 Human Resources. Het is geen afzonderlijk veld, maar wordt samengesteld op basis van de context van de data. Voorbeelden Positieaanvraag gestartPositieaanvraag goedgekeurd door managerPositie aangemaakt in HR-systeemPositieattributen gewijzigdPositie gesloten | |||
| Tijdstip van gebeurtenis EventTime | De timestamp die aangeeft wanneer de activiteit plaatsvond. | ||
| Beschrijving De Event Time, oftewel timestamp, legt de exacte datum en tijd vast waarop een activiteit is afgerond. Dit is belangrijk om gebeurtenissen chronologisch te ordenen en duur en doorlooptijden te berekenen. Dit attribuut wordt in vrijwel elke process mining-analyse gebruikt, van het opbouwen van de procesmap tot het berekenen van prestatie-KPI's zoals de gemiddelde doorlooptijd van goedkeuring van een positie. Het helpt je te bepalen wanneer vertragingen ontstaan en hoe lang elke processtap duurt. Waarom dit belangrijk is Deze timestamp is essentieel voor het ordenen van gebeurtenissen, het berekenen van alle tijdsgebonden meetwaarden en het vinden van procesknelpunten. Waar je het vindt Deze informatie staat meestal in systeemlogtabellen of in velden zoals 'CreatedDateTime' en 'ModifiedDateTime' die in Dynamics 365 HR aan positie- en workflowrecords zijn gekoppeld. Voorbeelden 2023-04-15T09:00:00Z2023-04-15T14:35:10Z2023-04-18T11:21:05Z2023-05-02T16:45:00Z2024-01-10T10:00:00Z | |||
| Afdeling DepartmentName | De afdeling waartoe de positie behoort. | ||
| Beschrijving Dit attribuut geeft de organisatorische afdeling aan, zoals 'Finance', 'Marketing' of 'IT', die aan de positie is gekoppeld. Het is een belangrijke dimensie om procesdata te filteren en te groeperen. Analyse per afdeling is belangrijk voor het dashboard 'Departmental Position Throughput'. Zo kun je procesprestaties vergelijken, afdelingsspecifieke knelpunten vinden en wervingstrends in verschillende delen van de organisatie begrijpen. Waarom dit belangrijk is Hiermee kun je processen per bedrijfsonderdeel analyseren, zodat je afdelingsspecifieke problemen vindt en prestaties kunt vergelijken. Waar je het vindt Deze informatie maakt deel uit van de positiedetails. Ze wordt meestal opgeslagen in de HcmPositionDetail-entiteit en gekoppeld aan de dimensie van de bedrijfseenheid. Voorbeelden FinanciënInformatietechnologieSales en marketingHuman ResourcesBedrijfsvoering | |||
| Eindtijd EndTime | De timestamp die aangeeft wanneer de activiteit is afgerond. | ||
| Beschrijving EndTime markeert het einde van een activiteit. De verstreken tijd tussen StartTime en EndTime is de verwerkingstijd van die specifieke activiteit. Dit attribuut is nodig om doorlooptijden per activiteit te berekenen en te begrijpen waar tijd binnen het proces wordt besteed. Zo kun je bijvoorbeeld bepalen hoe lang een manager nodig heeft om een positieaanvraag goed te keuren nadat die aan de manager is toegewezen. Waarom dit belangrijk is Hiermee kun je verwerkingstijden per activiteit berekenen. Dat vormt de basis voor een gedetailleerde analyse van prestaties en knelpunten. Waar je het vindt Dit kan worden afgeleid uit timestamps van volgende events of uit specifieke 'completion'-velden in workflowlogs binnen Dynamics 365 HR. Vaak moet de waarde worden afgeleid. Voorbeelden 2023-04-15T09:05:12Z2023-04-15T15:00:00Z2023-04-19T09:00:00Z2023-05-03T10:00:00Z2024-01-10T10:05:00Z | |||
| Functietitel JobTitle | De titel van de functie die aan de positie is gekoppeld, zoals 'Senior Accountant'. | ||
| Beschrijving De functietitel geeft belangrijke context over de rol en verantwoordelijkheden van de positie. De functietitel verschilt van de Position ID, omdat meerdere posities dezelfde functietitel kunnen hebben. In analyses kun je met dit attribuut groeperen en filteren op type functie. Het is nuttig voor het dashboard 'Position Reclassification Trends', waarmee je ziet welke soorten functies het vaakst opnieuw worden ingedeeld. Waarom dit belangrijk is Het voegt belangrijke bedrijfscontext toe, zodat je kunt analyseren op functierol, niveau of functie. Waar je het vindt Deze informatie komt uit de record 'Job' die aan de Position is gekoppeld. Zoek deze in entiteiten zoals HcmPositionV2Entity of door een koppeling te maken met HcmJobEntity. Voorbeelden Senior financieel analistSoftware-engineer IIHR-businesspartnerMarketingcoördinatorLogistiek manager | |||
| Gebruikersnaam UserName | De naam of ID van de gebruiker die de activiteit heeft uitgevoerd. | ||
| Beschrijving Dit attribuut identificeert de medewerker of systeemgebruiker die verantwoordelijk is voor een bepaalde processtap, zoals de manager die een aanvraag goedkeurt of de HR-specialist die de positie in het systeem aanmaakt. Door per gebruiker te analyseren, zie je welke training nodig is, kun je prestaties van teamleden vergelijken en krijg je inzicht in de verdeling van de werklast. Het attribuut is ook belangrijk voor compliancecontroles, zodat functiescheiding goed wordt toegepast. Waarom dit belangrijk is Het zorgt voor duidelijke verantwoordelijkheid en maakt prestatieanalyse per persoon of team mogelijk. Dat is belangrijk voor middelenbeheer en training. Waar je het vindt Gekoppeld aan workflowhistorie of audittrailrecords in Dynamics 365 HR. De koppeling kan via een User ID uit de HcmWorker-entiteit worden gelegd. Voorbeelden John SmithJane DoeSYSTEMHRAdmin01MGR-FINANCE | |||
| Kostenplaats CostCenter | De financiële kostenplaats waaraan de kosten van de positie worden toegewezen. | ||
| Beschrijving De kostenplaats is een belangrijke financiële dimensie die een positie koppelt aan een specifiek budget of verantwoordelijkheidsgebied. Wijzigingen in dit attribuut zijn belangrijk om te monitoren. Dit attribuut is belangrijk voor het dashboard 'Position Data Consistency Check', dat wijzigingen in belangrijke attributen na het aanmaken analyseert. Je gebruikt het ook om kosten en budgetten voor posities per financiële eenheid te analyseren. Waarom dit belangrijk is Het koppelt de positie aan financiële data, zodat je kosten in het proces kunt analyseren en de dataconsistentie kunt monitoren. Waar je het vindt Dit wordt meestal als financiële dimensie op de positierecord ingesteld. Raadpleeg de configuratie van financiële dimensies in Dynamics 365. Voorbeelden CC-1001-FINCC-2500-ITCC-4510-SALESCC-7000-OPSCC-9002-HR | |||
| Positiestatus PositionStatus | De huidige of historische status van de positie. | ||
| Beschrijving Dit attribuut geeft de status van de positie op een bepaald moment aan, zoals 'Proposed', 'Active', 'Frozen' of 'Closed'. Statuswijzigingen komen vaak overeen met activiteiten in het proces. Door de status te volgen, krijg je inzicht in het traject van de positie. Dit is ook nuttig voor dashboards zoals 'Position Compliance Review Status' en 'Stale and Underutilized Positions'. De status geeft een momentopname van de huidige toestand van de positie en helpt om de procesflow te controleren. Waarom dit belangrijk is Het geeft elke positie een duidelijke status. Dat is nodig om cases te filteren en resultaten te begrijpen. Waar je het vindt Raadpleeg de documentatie van Microsoft Dynamics 365 Human Resources. Waarschijnlijk wordt dit afgeleid uit statusvelden op de centrale Position-record. Voorbeelden VoorgesteldIn beoordelingActiefBevrorenGesloten | |||
| Aanvragende manager RequestingManager | De manager die de aanvraag voor de positie heeft gestart. | ||
| Beschrijving Dit attribuut identificeert de hiring manager of het afdelingshoofd dat het proces startte door een nieuwe positie of vervangende positie aan te vragen. Deze informatie laat zien waar de vraag naar posities vandaan komt. Door te analyseren op aanvragende manager zie je patronen in aanvraagvolumes, goedkeuringspercentages en de kwaliteit van aanvragen. Het geeft extra inzicht in werkdruk en het volgen van het proces. Waarom dit belangrijk is Het helpt je de oorsprong van de vraag naar posities te achterhalen en procesmetrics vanuit het perspectief van de hiring manager te analyseren. Waar je het vindt Raadpleeg de documentatie van Microsoft Dynamics 365 Human Resources. Deze informatie wordt waarschijnlijk vastgelegd in de data waarmee de workflow wordt gestart. Voorbeelden Robert JonesSusan MillerDavid ChenMaria GarciaPaul Williams | |||
| Bronsysteem SourceSystem | Het systeem waaruit de data is geëxtraheerd. | ||
| Beschrijving Dit attribuut identificeert de herkomst van de procesdata. Voor deze weergave is dat meestal 'Microsoft Dynamics 365 Human Resources'. In omgevingen met meerdere systemen is dit veld belangrijk voor data lineage en het oplossen van problemen. Je kunt ermee controleren of de data uit de verwachte bron komt en analyses voor specifieke systemen filteren. Waarom dit belangrijk is Het geeft context over de herkomst van de data. Dat is belangrijk voor datagovernance en analyses over meerdere bedrijfssystemen heen. Waar je het vindt Dit is een statische waarde die tijdens het extractie- en transformatieproces aan de data wordt toegevoegd om de herkomst van de dataset aan te geven. Voorbeelden Microsoft Dynamics 365 Human ResourcesD365 HRDynamicsHR | |||
| Budget goedgekeurd IsBudgetApproved | Een vlag die aangeeft of het budget voor de positie is goedgekeurd. | ||
| Beschrijving Dit boolean-attribuut is true als de activiteit 'Position Budget Approved' voor een bepaalde positiecase heeft plaatsgevonden. Het helpt je de procesroute te analyseren en posities te vinden die op budgetgoedkeuring wachten. Je kunt dit attribuut gebruiken om processen te filteren en de KPI 'Position Budget Approval Cycle Time' gerichter te analyseren. Zo maak je onderscheid tussen posities waarvoor het budget is goedgekeurd en posities waarvoor dat nog niet is gebeurd. Dat is nuttig bij bottleneckanalyse. Waarom dit belangrijk is Het maakt de analyse eenvoudiger met een duidelijke vlag voor een belangrijke mijlpaal. Zo kun je de fase van budgetgoedkeuring afzonderlijk meten. Waar je het vindt Dit wordt tijdens de datatransformatie afgeleid door te controleren of de activiteit 'Position Budget Approved' in de casehistorie voorkomt. Voorbeelden truefalse | |||
| Doorlooptijd goedkeuring ApprovalCycleTime | De totale tijd vanaf het starten van een aanvraag voor een positie tot de definitieve goedkeuring. | ||
| Beschrijving Deze berekende metric meet de tijd tussen de activiteit 'Position Request Initiated' en de laatste goedkeuringsactiviteit, bijvoorbeeld 'Position Request Approved By HR'. Het is een belangrijke prestatie-indicator voor het eerste deel van het proces voor positiemanagement. Dit attribuut vult het dashboard en de KPI 'Position Approval Cycle Time' rechtstreeks. Het geeft op hoofdlijnen aan hoe efficiënt het goedkeuringsproces verloopt en laat zien welk effect verbeterinitiatieven in de loop van de tijd hebben. Waarom dit belangrijk is Het is een belangrijke KPI voor de efficiëntie van het volledige goedkeuringsproces. Je ziet er direct mee waar vertraging ontstaat voordat posities kunnen worden aangemaakt. Waar je het vindt Dit wordt op case-niveau berekend door de timestamps van de start- en eindactiviteiten van de goedkeuringsfase te vinden en het verschil te berekenen. Voorbeelden P3DT2H15MP10DP1DT12HP5DT6HP2W | |||
| Is herstelwerk IsRework | Een vlag die aangeeft of een activiteit onderdeel is van een herstelwerklus. | ||
| Beschrijving Deze boolean-vlag krijgt de waarde true als een activiteit een stap is die opnieuw wordt uitgevoerd, bijvoorbeeld een nieuwe goedkeuring nadat attributen zijn gewijzigd. Zo kun je inefficiënte proceslussen kwantificeren. Dit attribuut ondersteunt rechtstreeks het dashboard 'Position Rework Analysis' en de KPI 'Rework Rate on Position Creation'. Met deze vlag kunnen analisten herstelwerk eenvoudig filteren en de frequentie en impact van inefficiënties meten. Waarom dit belangrijk is Het identificeert en kwantificeert herstelwerk in het proces. Dat is een belangrijk aangrijpingspunt voor procesverbetering. Waar je het vindt Dit wordt berekend op basis van de volgorde van activiteiten binnen een case. Als 'Position Request Approved By Manager' bijvoorbeeld na 'Position Attributes Modified' plaatsvindt, kan dit als herstelwerk worden gemarkeerd. Voorbeelden truefalse | |||
| Jobfamilie JobFamily | Een groep functies met vergelijkbare werkzaamheden, zoals 'Engineering' of 'Finance'. | ||
| Beschrijving Een jobfamilie is een classificatie waarin verwante functietitels worden gegroepeerd. Zo kunnen 'Software Engineer' en 'QA Engineer' allebei onder de jobfamilie 'Engineering' vallen. Dit attribuut is belangrijk voor het dashboard 'Position Reclassification Trends'. Je kunt hiermee op een hoger niveau analyseren welke functiecategorieën het vaakst veranderen. Dat geeft een breder beeld dan een analyse van afzonderlijke functietitels. Waarom dit belangrijk is Je kunt posities op categorieniveau analyseren. Dat helpt bij strategische personeelsplanning en trendanalyse. Waar je het vindt Dit maakt deel uit van de jobconfiguratie in Dynamics 365 HR. Zoek op de HcmJobEntity naar velden die te maken hebben met 'Job family' of 'Job function'. Voorbeelden EngineeringFinanciën en boekhoudingSalesHuman ResourcesProductmanagement | |||
| Laatste data-update LastDataUpdate | De timestamp van de meest recente data-update vanuit het bronsysteem. | ||
| Beschrijving Dit attribuut geeft aan wanneer de data voor het laatst uit Microsoft Dynamics 365 Human Resources is geëxtraheerd. Het geeft context bij de actualiteit van de analyse. Door deze informatie in dashboards te tonen, weten gebruikers dat ze actuele informatie bekijken. Het is een belangrijk stuk metadata voor elk process mining-project. Waarom dit belangrijk is Het laat gebruikers zien hoe actueel de data is. Dat is belangrijk voor beslissingen op basis van de analyse. Waar je het vindt Deze timestamp wordt gegenereerd en opgeslagen tijdens het data-extractie-, transformatie- en laadproces (ETL). Voorbeelden 2024-05-21T02:00:00Z2024-05-20T02:00:00Z2024-05-19T02:00:00Z | |||
| Locatie Location | De fysieke of geografische locatie van de positie. | ||
| Beschrijving Dit attribuut geeft aan waar de positie is gevestigd. Dat kan een kantoor, stad of land zijn. Het is ook een belangrijke dimensie om procesdata te filteren en te segmenteren. Location wordt rechtstreeks gebruikt in het dashboard 'Departmental Position Throughput' om personeelsontwikkelingen en procesprestaties in verschillende regio's te analyseren. Zo kun je zien of het aanmaken of goedkeuren van posities op bepaalde locaties langer duurt. Waarom dit belangrijk is Het geeft geografische context, zodat je procesprestaties en trends op verschillende locaties kunt analyseren. Waar je het vindt Raadpleeg de documentatie van Microsoft Dynamics 365 Human Resources. Dit kan onderdeel zijn van de positiedetails of via de afdeling of juridische entiteit zijn gekoppeld. Voorbeelden New York, VSLonden, VKBerlijn, DuitslandSingaporeOp afstand | |||
| Reden van afwijzing RejectionReason | De reden die wordt opgegeven wanneer een aanvraag voor een positie wordt afgewezen. | ||
| Beschrijving Wanneer een manager of HR een aanvraag voor een positie afwijst, wordt vaak een reden vastgelegd. Dat kan komen door budgetbeperkingen, onjuiste informatie of een gewijzigde strategie. Dit attribuut is belangrijk voor het berekenen van de KPI 'Position Request Rejection Rate' en om te begrijpen waarom herstelwerk ontstaat. Door de meest voorkomende afwijsredenen te analyseren, vind je problemen eerder in het proces, zoals aanvragen van lage kwaliteit of onduidelijke richtlijnen. Die kun je vervolgens aanpakken om het proces te verbeteren. Waarom dit belangrijk is Het laat direct zien waarom aanvragen mislukken. Zo kun je gerichte procesverbeteringen doorvoeren en herstelwerk en afwijzingen verminderen. Waar je het vindt Raadpleeg de documentatie van Microsoft Dynamics 365 Human Resources. Dit wordt vaak vastgelegd in workflowopmerkingen of in een apart veld voor de reden van afwijzing. Voorbeelden Budget niet beschikbaarDubbele aanvraagOnjuist functieprofielWervingsstopStrategische heroriëntatie | |||
| Type positie PositionType | Geeft aan of de positie fulltime, parttime, tijdelijk enzovoort is. | ||
| Beschrijving Dit attribuut deelt de positie in op basis van de arbeidsvoorwaarden. Het geeft extra context voor personeelsanalyse en -planning. In een procesanalyse kan filteren op positietype laten zien of bepaalde typen posities een andere procesroute of langere doorlooptijden hebben. Tijdelijke posities kunnen bijvoorbeeld sneller worden goedgekeurd dan vaste fulltimeposities. Waarom dit belangrijk is Je kunt analyseren hoe het proces verschilt per type dienstverband. Dat helpt bij personeelsplanning en procesoptimalisatie. Waar je het vindt Deze informatie staat meestal op de positierecord in Dynamics 365 HR. Controleer entiteiten zoals HcmPositionV2Entity op een relevant veld. Voorbeelden FulltimeParttimeContractorStagiairTijdelijk | |||
Hire to Retire - activiteiten voor functiebeheer
| Activiteit | Beschrijving | ||
|---|---|---|---|
| Positie aangemaakt in HR-systeem | Deze gebeurtenis markeert het formeel aanmaken van het positierecord in Dynamics 365 HR. De gebeurtenis wordt vastgelegd op basis van de aanmaaktimestamp van het primaire positierecord. | ||
| Waarom dit belangrijk is Een belangrijke mijlpaal die de overgang markeert van aanvraag naar een daadwerkelijke organisatorische eenheid. Dit is het eindpunt voor de KPI voor de doorlooptijd van het aanmaken van een positie. Waar je het vindt Afkomstig uit het systeemveld 'CreatedDateTime' in de hoofdpositietabel, zoals HcmPosition. Vastleggen Geëxtraheerd uit het systeemveld CreatedDateTime in de tabel HcmPosition. Eventtype explicit | |||
| Positie geactiveerd | Dit markeert het moment waarop een positie officieel openstaat en de werving kan beginnen. De gebeurtenis wordt afgeleid uit een statusveld op het positierecord dat verandert naar 'Active' of een vergelijkbare status. | ||
| Waarom dit belangrijk is Dit is een belangrijke mijlpaal voor het meten van de gereedheid voor personeelswerving en de efficiëntie van de laatste inrichtingsstappen. De activiteit is essentieel voor de KPI voor de gemiddelde tijd tot activering van een positie. Waar je het vindt Afgeleid door de timestamp te volgen waarop het statusveld, zoals 'PositionStatus', op het positierecord wordt bijgewerkt naar 'Active' of 'Open'. Vastleggen Gebaseerd op de datum waarop het veld ActivationDate van de positie wordt ingevuld of een statusveld verandert naar 'Active'. Eventtype inferred | |||
| Positie gedeactiveerd | De positie is niet langer actief en wordt uit de actieve organisatiestructuur verwijderd, vaak nadat de positie is ingevuld. Dit wordt afgeleid uit een statuswijziging naar 'Inactive' of een vergelijkbare status. | ||
| Waarom dit belangrijk is Dit markeert een belangrijke stap aan het einde van de actieve levensduur van de positie. De activiteit is belangrijk voor het analyseren van de gemiddelde tijd tot deactivering van een positie en voor een correcte registratie van de formatie. Waar je het vindt Afgeleid uit de timestamp waarop het veld 'RetirementDate' wordt ingevuld of een statusveld op het positierecord verandert naar 'Inactive'. Vastleggen Gebaseerd op de datum waarop RetirementDate van de positie wordt ingesteld of een statusveld verandert naar 'Inactive'. Eventtype inferred | |||
| Positie gesloten | Dit staat voor de definitieve archivering van het positierecord en markeert het absolute einde van de levenscyclus. De gebeurtenis wordt afgeleid uit een statuswijziging naar 'Closed' of een vergelijkbare eindstatus. | ||
| Waarom dit belangrijk is Dit is de eindgebeurtenis van het proces. Hiermee kun je de volledige levenscyclus van begin tot eind analyseren en verouderde posities vinden die moeten worden gesloten. Waar je het vindt Afgeleid uit een wijziging van een statusveld naar 'Closed' op het positierecord. Dit komt minder vaak voor dan deactivering, omdat records vaak voor historische doeleinden worden bewaard. Vastleggen Afgeleid uit de timestamp waarop een statusveld wordt bijgewerkt naar 'Closed'. Eventtype inferred | |||
| Positieaanvraag gestart | Dit markeert het formele begin van de levenscyclus van positiebeheer. Meestal wordt deze gebeurtenis vastgelegd wanneer een gebruiker via een speciaal formulier of een workflow in Dynamics 365 HR een nieuwe positieaanvraag indient. | ||
| Waarom dit belangrijk is Dit is het startpunt voor het meten van de volledige levenscyclus van een positie, inclusief belangrijke KPI's zoals de doorlooptijd van goedkeuring van een positie en de doorlooptijd voor het aanmaken van een positie. Waar je het vindt Vastgelegd op basis van de aanmaaktimestamp van een record voor een positieaanvraag of het initiatierecord in de tabel met workflowhistorie, zoals WorkflowTrackingStatusTable. Vastleggen De gebeurtenis wordt vastgelegd wanneer een nieuwe workflow voor een positieaanvraag wordt ingediend. Eventtype explicit | |||
| Positieaanvraag goedgekeurd door HR | Dit staat voor de definitieve goedkeuring door de afdeling Human Resources voordat de positie formeel kan worden aangemaakt. De gebeurtenis wordt expliciet vastgelegd wanneer de HR-goedkeuringstaak in het workflowsysteem is afgerond. | ||
| Waarom dit belangrijk is Dit markeert het einde van de goedkeuringsfase en is een belangrijke mijlpaal voor het meten van de gemiddelde doorlooptijd van goedkeuring van een positie. Waar je het vindt Vastgelegd in de tabellen met workflowhistorie, zoals WorkflowTrackingTable, wanneer de HR-medewerker de goedkeuringstaak afrondt. Vastleggen De gebeurtenis wordt met een timestamp in de workflowhistorie vastgelegd zodra de HR-goedkeuringsstap is afgerond. Eventtype explicit | |||
| Budget voor positie goedgekeurd | Een belangrijke goedkeuringsmijlpaal die bevestigt dat het benodigde budget voor de nieuwe positie is toegewezen. Meestal wordt dit vastgelegd als een afzonderlijke goedkeuringsstap in de workflow voor het aanmaken van een positie. | ||
| Waarom dit belangrijk is Hiermee is de financiële goedkeuringsfase afzonderlijk te analyseren. Je ziet vertragingen bij de toewijzing van budget en kunt de KPI voor de doorlooptijd van budgetgoedkeuring voor een positie ondersteunen. Waar je het vindt Vastgelegd in de tabellen met workflowhistorie, zoals WorkflowTrackingTable, als een afgeronde goedkeuringstaak, vaak toegewezen aan een financiële rol. Vastleggen Vastgelegd op basis van de voltooiingstimestamp van de budgetgoedkeuringstaak in het workflowlog. Eventtype explicit | |||
| Positie bevroren | Dit geeft aan dat een positie tijdelijk is stilgezet, waardoor wervingsactiviteiten niet kunnen doorgaan. Dit wordt vastgelegd door een statuswijziging op het positierecord af te leiden naar 'Frozen' of 'On Hold'. | ||
| Waarom dit belangrijk is Volgt onderbrekingen in de levenscyclus van een positie, die personeelsplannen en budgetten kunnen beïnvloeden. Zo zie je waardoor werving vertraging oploopt. Waar je het vindt Afgeleid door de timestamp te volgen waarop een statusveld op het positierecord wordt bijgewerkt naar 'Frozen' of een vergelijkbare waarde. Vastleggen Afgeleid uit de timestamp van een statuswijziging naar 'Frozen' of 'On Hold'. Eventtype inferred | |||
| Positie gecontroleerd op compliance | Dit geeft aan dat een positie een formele compliancecontrole heeft ondergaan. Je kunt dit vastleggen via een statuswijziging, een afgeronde checklisttaak of een bijgewerkt aangepast veld. | ||
| Waarom dit belangrijk is Belangrijk om naleving van wettelijke en interne beleidsregels te monitoren. Deze activiteit ondersteunt rechtstreeks de KPI voor het nalevingspercentage van positiebeheer. Waar je het vindt Waarschijnlijk afgeleid uit een veld met timestamp, zoals 'ComplianceReviewStatus', of uit een booleaans veld 'IsComplianceReviewed' op het positierecord. Vastleggen Afgeleid uit de timestamp waarop een complianceveld wordt bijgewerkt naar 'Completed' of 'Reviewed'. Eventtype inferred | |||
| Positie opnieuw ingedeeld | Een belangrijke wijziging waarbij de fundamentele classificatie van een positie, zoals de job family of het niveau, verandert. Meestal wordt dit afgeleid uit een wijziging in het veld 'Job' op het positierecord. | ||
| Waarom dit belangrijk is Helpt veranderingen in de organisatiestructuur en de stabiliteit van functieomschrijvingen te analyseren. Dit is de belangrijkste activiteit voor de KPI voor het herindelingspercentage van posities. Waar je het vindt Afgeleid uit een wijziging in het veld 'JobId' in de tabel HcmPosition, vastgelegd via het databaselog of door recordversies in de tijd te vergelijken. Vastleggen Afgeleid uit een vastgelegde wijziging in het veld voor functieclassificatie op het positierecord. Eventtype inferred | |||
| Positieaanvraag afgewezen | Dit geeft aan dat een positieaanvraag in een van de goedkeuringsfasen is afgewezen. De gebeurtenis wordt expliciet vastgelegd wanneer een goedkeurder de actie 'Reject' kiest. | ||
| Waarom dit belangrijk is Hiermee worden procesfouten en herstelrondes zichtbaar. Door afwijsredenen te analyseren, kun je de kwaliteit van eerste aanvragen verbeteren en de KPI voor het afwijzingspercentage van positieaanvragen ondersteunen. Waar je het vindt Vastgelegd met de status 'Rejection' in de tabellen met workflowhistorie, zoals WorkflowTrackingStatusTable, voor de betreffende positieaanvraag. Vastleggen Vastgelegd in het workflowlog wanneer een goedkeurder de afwijsactie uitvoert. Eventtype explicit | |||
| Positieaanvraag goedgekeurd door manager | Dit staat voor de afronding van de eerste goedkeuringsronde door de hiring manager. De gebeurtenis wordt expliciet vastgelegd in de workflowhistorie wanneer de manager de toegewezen goedkeuringstaak afrondt. | ||
| Waarom dit belangrijk is Hiermee meet je de duur van de eerste goedkeuringsstap en zie je welke managers of afdelingen voor knelpunten zorgen. Waar je het vindt Vastgelegd als een afgeronde stap in de tabellen met workflowhistorie, zoals WorkflowTrackingTable, gekoppeld aan de positieaanvraag. Vastleggen Vastgelegd op basis van de voltooiingstimestamp van de goedkeuringsstap door de manager in het workflowlog. Eventtype explicit | |||
| Positieattributen gewijzigd | Dit staat voor elke wijziging in belangrijke attributen van een positie, zoals titel of afdeling, na het eerste aanmaken. Meestal wordt deze activiteit afgeleid door wijzigingen in het databaselog van het systeem te volgen. | ||
| Waarom dit belangrijk is Een hoge frequentie van deze activiteit kan wijzen op een slechte datakwaliteit of herstelwerk in het proces. De activiteit is belangrijk voor de KPI's voor de frequentie van wijzigingen in positieattributen en het herstelwerkpercentage. Waar je het vindt Afgeleid uit de tabel SysDatabaseLog als wijzigingsregistratie voor de positietabel is ingeschakeld. Een andere mogelijkheid is het vergelijken van historische snapshots van de positiedata. Vastleggen Afgeleid door updatebewerkingen op belangrijke velden van de tabel HcmPosition via het databaselog te detecteren. Eventtype inferred | |||
| Wervingsproces gestart | Dit markeert de overdracht van positiebeheer naar recruitment. De gebeurtenis wordt afgeleid wanneer een nieuwe vacature of een nieuw wervingsproject wordt aangemaakt en aan deze specifieke Position ID wordt gekoppeld. | ||
| Waarom dit belangrijk is Verbindt het proces voor positiebeheer met het resultaat ervan. Zo kun je de tijd tussen het activeren van de positie en de start van de daadwerkelijke wervingsactiviteiten analyseren. Waar je het vindt Afgeleid door de aanmaakdatum te bepalen van een record in de tabellen voor recruitment of vacatures, zoals HcmRecruitingRequest, dat verwijst naar de Position ID. Vastleggen Afgeleid door PositionId te koppelen aan het aanmaken van een bijbehorend record in de recruitmentmodule. Eventtype inferred | |||
Extractiegidsen
Stappen
- Ga naar de Data Management Workspace: Log in bij Microsoft Dynamics 365 Human Resources. Gebruik de hoofdzoekbalk om naar de workspace 'Data management' te gaan.
- Maak een nieuw exportproject: Selecteer in de workspace de tegel 'Export'. Klik op de pagina van het 'Export'-project op 'New' om een nieuw project te maken. Geef het project een duidelijke naam, zoals 'PositionManagement_EventLog_Export', en selecteer een dataformaat. Voor transformaties raden we 'CSV' aan.
- Voeg data-entiteiten toe aan het project: Klik in je nieuwe project op 'Add entity'. Je moet meerdere entiteiten toevoegen om de volledige levenscyclus van een positie vast te leggen. Voeg de volgende belangrijke entiteiten één voor één toe: 'HcmPositionV2', 'WorkflowTrackingStatusTable' en 'HcmRecruitingRequest'. Als database logging voor wijzigingen aan posities is ingeschakeld, voeg je ook 'SysDatabaseLog' toe.
- Configureer filters voor entiteiten: Pas voor elke entiteit filters toe om de omvang van de data te beperken. Selecteer een entiteit en klik op 'Filter'. Filter voor 'HcmPositionV2' op een specifieke periode met de velden 'CreatedDateTime' of 'ModifiedDateTime'. Filter voor 'WorkflowTrackingStatusTable' het veld 'CONTEXTTABLENAME' zodat alleen workflows voor posities worden opgenomen.
- Selecteer velden voor elke entiteit: Zorg dat je alle benodigde velden exporteert voor de latere transformatie. Neem voor 'HcmPositionV2' 'PositionId', 'CreatedDateTime', 'ActivationDate', 'RetirementDate', 'ModifiedDateTime', 'JobId' en 'DepartmentNumber' op. Neem voor 'WorkflowTrackingStatusTable' 'ContextRecId', 'WorkflowTrackingStatus', 'CreatedDateTime' en 'UserId' op.
- Voer de exporttaak uit: Als alle entiteiten, velden en filters zijn ingesteld, klik je op de hoofdpagina van het project op 'Export'. Het systeem maakt een datapakket met afzonderlijke bestanden voor elke entiteit.
- Controleer en download het datapakket: Je kunt de voortgang volgen in het gedeelte 'Job history'. Zodra de taak succesvol is afgerond, download je het datapakket. Dit is een gecomprimeerd bestand.
- Pak de data uit en transformeer deze: Pak het gedownloade pakket uit. Je vindt afzonderlijke CSV-bestanden voor elke entiteit. Deze bestanden bevatten ruwe data, niet het uiteindelijke event log. Je moet een extern script gebruiken, bijvoorbeeld Python met pandas of PowerShell, om de bestanden te verwerken.
- Implementeer de transformatieregels: Je script moet de volgende acties uitvoeren:
- Laad het bestand 'HcmPositionV2.csv'. Genereer vanuit dit bestand de activiteit 'Position Created In HR System' met 'PositionId' en 'CreatedDateTime'.
- Genereer activiteiten voor statuswijzigingen ('Position Activated', 'Position Frozen', 'Position Deactivated', 'Position Closed') door statusvelden of datumvelden zoals 'ActivationDate' en 'RetirementDate' uit 'HcmPositionV2.csv' te interpreteren.
- Laad het bestand 'WorkflowTrackingStatusTable.csv'. Koppel deze data aan de positiegegevens met de record-ID. Genereer hiermee de workflowactiviteiten 'Position Request Initiated', 'Position Request Approved By Manager', 'Position Budget Approved', 'Position Request Approved By HR' en 'Position Request Rejected'. Je moet de workflowstatus en de context van de stap koppelen aan de juiste Activity Name.
- Als je 'SysDatabaseLog.csv' hebt geëxporteerd, analyseer je dit bestand om de activiteiten 'Position Attributes Modified' en 'Position Reclassified' te genereren op basis van wijzigingen in specifieke velden van de HcmPosition-tabel.
- Laad 'HcmRecruitingRequest.csv' om de activiteit 'Hiring Process Started' te genereren. Zoek hiervoor het moment waarop voor een bepaalde positie een recruitmentaanvraag is aangemaakt.
- Stel het uiteindelijke event log samen: Je script moet alle gegenereerde activiteiten uit de verschillende bronnen combineren in één CSV-bestand. Dit bestand moet de vereiste kolommen bevatten: 'PositionId', 'ActivityName' en 'EventTime', aangevuld met aanbevolen attributen die je hebt kunnen koppelen.
- Maak het bestand klaar voor upload: Zorg dat het uiteindelijke CSV-bestand kopteksten heeft die overeenkomen met de vereiste attribuutnamen en dat de kolom 'EventTime' één consistent timestamp-formaat gebruikt. Het bestand is nu klaar om naar de process mining-tool te uploaden.
Configuratie
- Belangrijkste data-entiteiten: De belangrijkste entiteiten voor deze extractie zijn:
HcmPositionV2: Bevat de kerngegevens van elke positie, waaronder aanmaakdatums, activeringsdatums en attributen zoals functie en afdeling.WorkflowTrackingStatusTable: Bevat de geschiedenis van workflowinstanties, waaronder indieningen, goedkeuringen en afwijzingen. Deze entiteit is nodig om het goedkeuringsproces te volgen.HcmRecruitingRequest: Wordt gebruikt om de activiteit 'Hiring Process Started' af te leiden wanneer een recruitmentaanvraag aan een positie is gekoppeld.SysDatabaseLog: Een optionele maar krachtige entiteit voor het vastleggen van gedetailleerde wijzigingen, zoals 'Position Attributes Modified' en 'Position Reclassified'. Het gebruik hiervan hangt ervan af of database logging vooraf is geconfigureerd voor de HcmPosition-tabel.
- Filteren op periode: We raden sterk aan om voor de entiteit 'HcmPositionV2' een periodefilter toe te passen op basis van het veld 'CreatedDateTime'. Een periode van 6 tot 12 maanden is vaak een goed startpunt voor een beheersbare hoeveelheid data.
- Incrementele exports: Configureer voor doorlopende analyses eventueel incrementele exports. Hiermee haal je alleen records op die sinds de vorige run zijn gewijzigd, waardoor de verwerkingstijd aanzienlijk afneemt.
- Vereisten vooraf: De gebruiker die de export uitvoert, moet een beveiligingsrol hebben met voldoende rechten voor toegang tot de workspace 'Data management' en leesrechten voor alle opgegeven data-entiteiten. Rollen zoals 'Data management administrator' of een aangepaste rol met specifieke rechten voor entiteiten zijn meestal nodig.
a Voorbeeldquery 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] Stappen
- Controleer de vereisten vooraf: Controleer voordat je begint of de functie 'Bring Your Own Database' (BYOD) is geconfigureerd voor jouw Microsoft Dynamics 365 Human Resources-instantie. Zorg dat de vereiste data-entiteiten naar je Azure SQL Database worden geëxporteerd. Belangrijke entiteiten zijn:
HcmPositionV2,HcmPositionDetail,WorkflowTrackingStatusTable,HcmJob,OMOperatingUnitenHcmRecruitingRequest. - Maak verbinding met Azure SQL Database: Gebruik een SQL-client zoals SQL Server Management Studio (SSMS) of Azure Data Studio om verbinding te maken met de Azure SQL Database die als BYOD-doel dient.
- Bekijk het databaseschema: Maak na het verbinden kennis met het databaseschema. De D365 HR-data-entiteiten zijn als tabellen gerepliceerd. Let op: tabelnamen in de BYOD-database komen mogelijk niet exact overeen met de namen van de entiteiten, maar lijken er meestal sterk op.
- Laad de SQL-query: Open een nieuw queryvenster in je SQL-client en plak het volledige SQL-script uit het gedeelte 'query' van dit document.
- Pas parameters aan: Wijzig de placeholdervariabelen in de query. Stel
@[YourCompanyId]in op de specifieke juridische entiteit, bijvoorbeeld 'USMF', die je wilt analyseren. Pas de periode in deWHERE-clausules aan, bijvoorbeeldCREATEDDATETIME >= '2023-01-01', om de extractie tot de gewenste periode te beperken. - Voer de query uit: Voer de volledige SQL-query uit op de BYOD-database. De uitvoeringstijd hangt af van de hoeveelheid data en de geselecteerde periode.
- Controleer de resultaten: Bekijk na afloop de uitvoer in het resultatenvenster van je SQL-client. Controleer of de kolommen
PositionId,ActivityName,EventTimeen andere kolommen naar verwachting zijn gevuld. - Exporteer naar CSV: Exporteer de volledige resultatenset naar een CSV-bestand. De meeste SQL-clients hebben een ingebouwde functie om resultaten rechtstreeks als CSV-bestand op te slaan. In SSMS kun je bijvoorbeeld met de rechtermuisknop op het resultatengrid klikken en 'Save Results As...' selecteren.
- Maak het bestand klaar voor upload: Zorg dat het geëxporteerde CSV-bestand UTF-8-codering gebruikt. Controleer of de kolomkoppen exact overeenkomen met de vereiste attributen (
PositionId,ActivityName,EventTimeenzovoort) voor een probleemloze upload naar de process mining-tool.
Configuratie
- BYOD-data-entiteiten: Zorg dat alle benodigde data-entiteiten vanuit Dynamics 365 HR naar je BYOD-instantie zijn gepubliceerd. Belangrijke entiteiten voor dit proces zijn die voor posities, positiedetails, workflowgeschiedenis, functies, afdelingen en recruitmentaanvragen.
- Datavertraging: Houd er rekening mee dat BYOD bijna realtime repliceert, maar niet onmiddellijk. Tussen een transactie in D365 HR en het verschijnen van de data in de Azure SQL Database kan een kleine vertraging zitten, van enkele minuten tot een uur.
- Filteren op periode: Het is belangrijk om datumfilters op je query toe te passen om de prestaties en hoeveelheid data beheersbaar te houden. Een periode van 3 tot 6 maanden is een gebruikelijk startpunt. Pas filters toe op aanmaakdatums of timestamps van activiteiten binnen elk
UNION ALL-blok. - Bedrijfsfilter: Filter altijd op
DATAREAID, de ID van de juridische entiteit of het bedrijf, zodat je data uit de juiste organisatie-eenheid analyseert. De query bevat hiervoor de placeholder@[YourCompanyId]. - Vereisten vooraf: Voor deze methode heb je een actief Azure-abonnement, een geconfigureerde BYOD-instantie, leesrechten op de betreffende Azure SQL Database en een geschikte SQL-client nodig.
- Aangepaste workflowstappen: De query gebruikt gangbare namen voor goedkeuringsstappen, zoals 'Approve position request'. Als je organisatie aangepaste namen gebruikt, moet je de
CONTEXT-waarden in de bijbehorendeWHERE-clausules aanpassen.
a Voorbeeldquery 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]' Klaar om aan de slag te gaan?
Gebruik deze template om je dataverzameling efficiënter te maken en waardevolle inzichten te krijgen in je Hire to Retire-proces voor position management. Zet vandaag de stap naar hogere efficiëntie en betere compliance.
Hire to Retire-position management meteen optimaliseren
Verlaag je doorlooptijd met 30% en elimineer knelpunten.
Geen creditcard nodig. Je bent binnen enkele minuten klaar.