CSV til organisationsdiagram: skabelon (godkendelsesbeføjelser)
Forvandl en HR-eksport i CSV til et flowchart over, hvem der må underskrive hvad. Kolonnen manager_id bliver en eskaleringstrappe, tre beløbsgrænser sidder på beslutningerne, og selvgodkendelse, orlov og krydsafregning får hver sin rute.
Hvad er CSV til organisationsdiagram: skabelon (godkendelsesbeføjelser)?
En CSV ud af et HR-system er ren tekst og intet andet. Én overskriftsrække, én række pr. person, et komma mellem felterne, et anførselstegn om ethvert felt med et komma i, og hvilket tegnsæt det eksporterende system nu valgte, dengang ingen kiggede. Der er ingen formler i den, intet andet faneblad, ingen celleformatering, ingen sammenflettede overskrifter. Det er noget, der kommer ud af et system, frem for noget, du arbejder i, og derfor ankommer den som regel som en vedhæftet fil ved navn export_20260806.csv og bliver åbnet én gang. Det, den til gengæld bærer, er det eneste, et hierarki har brug for: en kolonne employee_id og en kolonne manager_id, hvis værdi er en anden rækkes employee_id.
Tegnet som et træ er den fil et billede af bemandingen. QueryChart har en dedikeret organisationsdiagrameditor til netop det, og er det, du vil have, kasser og navne og teamstørrelser, så brug den. Denne skabelon er ikke en erstatning for den og foregiver ikke at være det. Spørgsmålet, denne side besvarer, er et andet, og det er det, folk langt oftere kommer til et organisationsdiagram med: en anmodning er oprettet, hvem underskriver den, og hvad sker der, når beløbet er over den persons grænse. Det er en rute gennem hierarkiet frem for en form på det, så det er et flowchart. Referenceforhold bliver til eskaleringskanter, og beslutningerne på dem er beløbsgrænser.
Diagrammet herunder læses fra venstre mod højre, efterhånden som beføjelsen stiger: fem kolonner fra Medarbejder til Direktion, krydset med fire funktionsbaner, så en kasses kolonne siger, hvem der må underskrive på det punkt, og dens bane siger, hvilken del af forretningen der handler. I QueryCharts regnearksvisning er hver af de kasser én række, og kolonnerne er Figur, Bokstekst, Linje til, Linjetekst, Vandret bane og Lodret bane. Linje til rummer rækkenumre og ikke navne: den række, et trin overleverer til, adskilt af kommaer når der er mere end én, og med Linjetekst der bærer etiketterne på grenene i samme rækkefølge. Det er den ene ting, der skal være rigtig, når du former en eksport om i hånden: tallene er placeringer i arket, så at indsætte en række ovenover omnummererer alt nedenunder.
Ti beslutninger og fire slutpunkter. To af de beslutninger findes på grund af, hvad HR-eksporter faktisk indeholder, frem for hvad de burde: en række uden nogen leder navngivet overhovedet, og en anmoder, der viser sig at sidde inde i sin egen godkendelseskæde. To mere findes, fordi en referencelinje og et budget er to forskellige strukturer: en godkender på orlov, og forbrug der lander på et omkostningssted tilhørende en anden direktør. Hver rute ender et navngivet sted: godkendt og registreret, afvist med en begrundelse, trukket tilbage, eller returneret fordi filen aldrig frembragte en godkender.
Hvad dette flowchart dækker
I denne skabelon
- Fem beføjelseskolonner (Medarbejder, Nærmeste leder, Afdelingschef, Direktør og Direktion) krydset med fire funktionsbaner: Anmodende enhed, Økonomi, HR og Direktionssekretariat. En kasses kolonne er det niveau, der må underskrive på det punkt, ikke den afdeling personen hører til.
- Den sammenkobling, hele diagrammet ruter på: "Læs anmoderens række fra HR-eksporten" tager employee_id, full_name, job_title, manager_id og cost_centre, og "Følg manager_id opad for at bygge godkendelseskæden" følger manager_id fra række til række, indtil den når en række, hvis manager_id er tomt.
- Hvad en eksport gør, når en række er forældreløs. "Navngiver rækken en leder?" sender et tomt manager_id til "Bed HR om at rette referencelinjen" og derfra til "Er referencelinjen rettet inden fristen?", som enten kobler sig på kæden igen eller ender ved "Returneret: ingen godkender i referencelinjen".
- To værn, filen ikke kan anvende for dig: "Ligger anmoderen inde i sin egen godkendelseskæde?", hvis overspringsgren hopper direkte til "Eskalér til afdelingschefen", og "Er den navngivne godkender til stede?", hvis orlovsgren går gennem "Send videre til den stedfortræder, der står på godkenderens række".
- Selve eskaleringstrappen: "Inden for den nærmeste leders godkendelsesgrænse?", "Inden for afdelingschefens godkendelsesgrænse?" og "Inden for direktørens godkendelsesgrænse?", hver med en gren over grænsen til næste niveau, og med "Tage den til direktionen eller trække den tilbage?" til sidst, når direktørens grænse er passeret.
- Fire registrerede slutpunkter frem for ét: "Godkendt og registreret på omkostningsstedet", efter at "Ligger forbruget på en anden enheds omkostningssted?" eventuelt har ruteret gennem "Økonomi medunderskriver for det ejende omkostningssted", plus "Afvist med begrundelsen registreret", "Trukket tilbage af anmoderen" og slutpunktet, der returnerer sagen til HR.
Hvornår du skal bruge skabelonen
- Nogen har sendt dig en CSV fra HR- eller lønsystemet og bedt om en godkendelsesmatrix, og du har ingen editor åben og ingen anelse om, hvilke af dens fyrre kolonner der betyder noget.
- Jeres politik for uddelegering af beføjelser angiver beløbene, men ikke ruten, så ingen kan sige, hvilken person en anmodning når frem til, når deres egen leder er over grænsen.
- Anmodninger bliver stiltiende selvgodkendt, fordi anmoderen også er den leder, referencelinjen navngiver, og intet trin i den nuværende proces opdager det.
- Godkendelser går i stå, hver gang nogen er på orlov, fordi stedfortræderen er registreret i HR-systemet og ingen steder i den proces, der læser det.
- En auditor har bedt jer dokumentere, hvem der kunne godkende et givet beløb på en given dato, og det eneste materiale, I har, er et regneark med navne.
Den CSV-fil, der giver dette diagram
Én række pr. trin. Tallene i Linje til er rækkenumre — det er dem, der tegner forbindelserne, og det er den kolonne, de fleste filer mangler.
| # | Figur | Bokstekst | Linje til | Linjetekst | Vandret bane | Lodret bane |
|---|---|---|---|---|---|---|
| 1 | Start | Opret en anmodning på et omkostningssted | 2 | Medarbejder | Anmodende enhed | |
| 2 | Process | Læs anmoderens række fra HR-eksporten | 3 | Medarbejder | Anmodende enhed | |
| 3 | Decision | Navngiver rækken en leder? | 6, 4 | Ja, Nej | Medarbejder | Anmodende enhed |
| 4 | Process | Bed HR om at rette referencelinjen | 5 | Medarbejder | HR | |
| 5 | Decision | Er referencelinjen rettet inden fristen? | 6, 22 | Ja, Nej | Medarbejder | HR |
| 6 | Process | Følg manager_id opad for at bygge godkendelseskæden | 7 | Nærmeste leder | Anmodende enhed | |
| 7 | Decision | Ligger anmoderen inde i sin egen godkendelseskæde? | 8, 12 | Nej, Ja: spring et niveau over | Nærmeste leder | Anmodende enhed |
| 8 | Decision | Er den navngivne godkender til stede? | 10, 9 | Til stede, På orlov | Nærmeste leder | Anmodende enhed |
| 9 | Process | Send videre til den stedfortræder, der står på godkenderens række | 10 | Nærmeste leder | HR | |
| 10 | Decision | Inden for den nærmeste leders godkendelsesgrænse? | 11, 12 | Inden for grænsen, Over grænsen | Nærmeste leder | Anmodende enhed |
| 11 | Approval | Den nærmeste leder underskriver anmodningen | 19 | Nærmeste leder | Anmodende enhed | |
| 12 | Process | Eskalér til afdelingschefen | 13 | Afdelingschef | Anmodende enhed | |
| 13 | Decision | Inden for afdelingschefens godkendelsesgrænse? | 14, 15 | Inden for grænsen, Over grænsen | Afdelingschef | Anmodende enhed |
| 14 | Approval | Afdelingschefen underskriver anmodningen | 19 | Afdelingschef | Anmodende enhed | |
| 15 | Process | Eskalér til direktøren for området | 16 | Direktør | Anmodende enhed | |
| 16 | Decision | Inden for direktørens godkendelsesgrænse? | 17, 18 | Inden for grænsen, Over grænsen | Direktør | Anmodende enhed |
| 17 | Approval | Direktøren underskriver anmodningen | 19 | Direktør | Anmodende enhed | |
| 18 | Decision | Tage den til direktionen eller trække den tilbage? | 20, 25 | Tag den op, Træk tilbage | Direktør | Anmodende enhed |
| 19 | Decision | Ligger forbruget på en anden enheds omkostningssted? | 21, 23 | Ja, Nej | Direktion | Økonomi |
| 20 | Decision | Godkender direktionen? | 19, 24 | Godkendt, Afvist | Direktion | Direktionssekretariat |
| 21 | Approval | Økonomi medunderskriver for det ejende omkostningssted | 23 | Direktion | Økonomi | |
| 22 | Reject | Returneret: ingen godkender i referencelinjen | Medarbejder | HR | ||
| 23 | Success | Godkendt og registreret på omkostningsstedet | Direktion | Økonomi | ||
| 24 | Reject | Afvist med begrundelsen registreret | Direktion | Direktionssekretariat | ||
| 25 | End | Trukket tilbage af anmoderen | Medarbejder | Anmodende enhed |
#,Figur,Bokstekst,Linje til,Linjetekst,Vandret bane,Lodret bane
1,Start,Opret en anmodning på et omkostningssted,2,,Medarbejder,Anmodende enhed
2,Process,Læs anmoderens række fra HR-eksporten,3,,Medarbejder,Anmodende enhed
3,Decision,Navngiver rækken en leder?,"6, 4","Ja, Nej",Medarbejder,Anmodende enhed
4,Process,Bed HR om at rette referencelinjen,5,,Medarbejder,HR
5,Decision,Er referencelinjen rettet inden fristen?,"6, 22","Ja, Nej",Medarbejder,HR
6,Process,Følg manager_id opad for at bygge godkendelseskæden,7,,Nærmeste leder,Anmodende enhed
7,Decision,Ligger anmoderen inde i sin egen godkendelseskæde?,"8, 12","Nej, Ja: spring et niveau over",Nærmeste leder,Anmodende enhed
8,Decision,Er den navngivne godkender til stede?,"10, 9","Til stede, På orlov",Nærmeste leder,Anmodende enhed
9,Process,"Send videre til den stedfortræder, der står på godkenderens række",10,,Nærmeste leder,HR
10,Decision,Inden for den nærmeste leders godkendelsesgrænse?,"11, 12","Inden for grænsen, Over grænsen",Nærmeste leder,Anmodende enhed
11,Approval,Den nærmeste leder underskriver anmodningen,19,,Nærmeste leder,Anmodende enhed
12,Process,Eskalér til afdelingschefen,13,,Afdelingschef,Anmodende enhed
13,Decision,Inden for afdelingschefens godkendelsesgrænse?,"14, 15","Inden for grænsen, Over grænsen",Afdelingschef,Anmodende enhed
14,Approval,Afdelingschefen underskriver anmodningen,19,,Afdelingschef,Anmodende enhed
15,Process,Eskalér til direktøren for området,16,,Direktør,Anmodende enhed
16,Decision,Inden for direktørens godkendelsesgrænse?,"17, 18","Inden for grænsen, Over grænsen",Direktør,Anmodende enhed
17,Approval,Direktøren underskriver anmodningen,19,,Direktør,Anmodende enhed
18,Decision,Tage den til direktionen eller trække den tilbage?,"20, 25","Tag den op, Træk tilbage",Direktør,Anmodende enhed
19,Decision,Ligger forbruget på en anden enheds omkostningssted?,"21, 23","Ja, Nej",Direktion,Økonomi
20,Decision,Godkender direktionen?,"19, 24","Godkendt, Afvist",Direktion,Direktionssekretariat
21,Approval,Økonomi medunderskriver for det ejende omkostningssted,23,,Direktion,Økonomi
22,Reject,Returneret: ingen godkender i referencelinjen,,,Medarbejder,HR
23,Success,Godkendt og registreret på omkostningsstedet,,,Direktion,Økonomi
24,Reject,Afvist med begrundelsen registreret,,,Direktion,Direktionssekretariat
25,End,Trukket tilbage af anmoderen,,,Medarbejder,Anmodende enhedSådan fungerer det
Ret eksporten, før du rører diagrammet
Åbn CSV-filen i en almindelig teksteditor og ikke i et regneark, og se på den første linje. Er felterne adskilt af semikolon, er den eksporteret under en europæisk lokalitet, og de fleste importfunktioner vil læse hele filen som én kolonne. Ser den første overskriftscelle ud som employee_id med et usynligt tegn foran, er det et UTF-8-byteordensmærke, og det vil forhindre overskriften i at matche. Kontrollér, at ethvert felt med et komma i er omsluttet af dobbelte anførselstegn, og at medarbejder-id'er med foranstillede nuller overlevede: en tur gennem et regneark er der, de sædvanligvis dør.
Skær eksporten ned til de fem kolonner, der ruter
employee_id, full_name, job_title, manager_id og cost_centre. Slet intet i kildefilen; tag en kopi. Kontrollér derefter to ting, en trætegning også ville have brug for: at præcis én række har et tomt manager_id, og at intet manager_id navngiver et employee_id, der ikke findes i filen. En leder, der stoppede i sidste måned, står stadig på tolv rækker og er den mest almindelige grund til, at en kæde stopper på halvvejen.
Form den om til editorens kolonner
QueryChart importerer på overskrift, så de kolonner, du skal frembringe, er Figur, Bokstekst, Linje til, Linjetekst, Vandret bane og Lodret bane. Bokstekst er etiketten i kassen, Figur er Proces, Beslutning, Start, Slut, Succes eller Afvist, og de to banekolonner placerer kassen. Linje til er rækkenummeret på det næste trin, adskilt af kommaer ved en beslutning, med Linjetekst der bærer de tilsvarende grenetiketter i samme rækkefølge. Træk filen over på regnearksområdet i et åbent diagram, eller indsæt CSV-teksten i det.
Skriv jeres virkelige beløbsgrænser ind på de tre beslutninger
"Inden for den nærmeste leders godkendelsesgrænse?" og dens to søskende er bevidst uden tal, for beløbene står ikke i nogen HR-eksport: de kommer fra en politik for uddelegering af beføjelser. Skriv beløbet ind i hver beslutnings bokstekst, og notér i boksens kommentar, hvilken version af politikken det kom fra, og hvornår den sidst blev gennemgået. En trappe uden tal på ruter ingenting.
Beslut, hvad en tom stedfortræder betyder
Orlovsgrenen forudsætter, at godkenderens række bærer en værdi i delegate eller acting_manager. Beslut nu, hvad der sker, når den er tom: eskalér automatisk et niveau, eller hold anmodningen tilbage og orientér HR. Begge dele kan forsvares. At lade det være uafklaret betyder, at anmodningen ligger hos en navngiven ejer, som ikke læser den, og det kan ikke skelnes fra at være væk.
Hold det her adskilt fra bemandingens organisationsdiagram
Den samme eksport kan frembringe to ting, og de besvarer hvert sit spørgsmål. Et træ tegnet i QueryCharts organisationsdiagrameditor viser, hvem der refererer til hvem, og hvor mange der sidder under hver leder. Dette flowchart viser, hvordan en anmodning rejser gennem det træ. Forsøg ikke at få ét dokument til at gøre begge dele: træet får beslutningsromber, det ikke kan forklare, og flowchartet får hver eneste medarbejder, der aldrig godkender noget.
Ofte stillede spørgsmål
Hvilke kolonner har HR-eksporten reelt brug for?
Fem. employee_id, en stabil identifikator for hver person. manager_id, som rummer employee_id på den persons leder, og det er den kolonne, hierarkiet lever i. full_name og job_title, som bliver den tekst, folk læser på kasserne. Og cost_centre, som er det, der overhovedet gør beslutningen om krydsafregning besvarlig. Alt andet i en løn- eller HR-eksport (løntrin, startdato, lokation, ansættelsesform, cpr-nummer) er enten uden betydning for ruten eller data, du ikke bør indsætte i et diagram. Tag en kopi af filen, behold de fem, og lad originalen være.
Hvorfor åbner min CSV som én enkelt kolonne?
Fordi feltadskilleren ikke er et komma. Eksporter genereret under en europæisk lokalitet bruger rutinemæssigt et semikolon, da kommaet er decimaltegn der, og en fil fuld af semikolon læst som kommaadskilt er ét felt pr. linje. To andre almindelige årsager: filen blev gemt som UTF-16 frem for UTF-8, så hvert tegn følges af en nulbyte, og intet matcher, eller den første overskriftscelle bærer et byteordensmærke, der i stilhed gør employee_id til en anden tekststreng end employee_id. Åbn filen i en almindelig teksteditor, og se på linje ét, før du giver importen skylden.
Er det det samme som et organisationsdiagram?
Nej, og det er værd at være præcis om forskellen. Et organisationsdiagram er et træ: det besvarer, hvem der refererer til hvem, hvor dyb strukturen er, og hvor mange der sidder under hver leder, og QueryChart har en dedikeret organisationsdiagrameditor, der tegner netop det ud fra den samme eksport. Denne skabelon er et flowchart. Det besvarer et rutespørgsmål: denne anmodning skal godkendes, hvis underskrift har den brug for, og hvor går den hen, når den person er over sin grænse, fraværende eller selv anmoderen. Træet er inputtet. Flowchartet er det, du gør med det. De fleste organisationer har brug for begge, tegnet hver for sig.
Hvad går i stykker, når filen importeres?
Tre ting, og kun én af dem larmer. Kolonnen Linje til rummer rækkenumre frem for trinnavne, så en kant, der peger på en række, som ikke findes, bliver droppet uden nogen besked overhovedet, og kassen står der ganske enkelt uden forbindelse. At indsætte en række omnummererer hver række nedenunder, og derfor er det sikrere at føje til nederst og pege om end at indsætte. Og et figurnavn, editoren ikke genkender, normaliseres til Proces, så en fejlstavet Beslutning bliver til et rektangel med sine grenetiketter stadig hængende på pilene. Kontrollér romberne efter enhver import; det er der, en tavs fejl viser sig først.
Hvordan fastsætter man godkendelsesgrænserne?
Ud fra en nedskrevet politik for uddelegering af beføjelser, ikke ud fra organisationsdiagrammet. Organisationsdiagrammet fortæller dig rækkefølgen af niveauerne; politikken fortæller dig beløbet på hvert af dem, og de to bliver vedligeholdt af forskellige mennesker. Tre praktiske regler. Giv hvert niveau et formuleret beløb, også det øverste, så der ikke findes et beløb, ingen må godkende. Lad intervallerne være uden overlap, så præcis ét niveau er det laveste, der kan underskrive et givet beløb. Og angiv, om en anmodning må deles op, for en politik med en grænse og uden en bestemmelse mod opdeling er en grænse for papirarbejde frem for for forbrug.
