Sådan definerer du forbindelser i et flowchart i CSV
Sådan skriver du kolonnerne Linje til og Linjetekst i en CSV-fil: rækkeplaceringer frem for trinnavne, navne på grenene parret efter placering, kommaet der deler en etiket i to, og hvad det gør at indsætte en række.
I en CSV er en forbindelse en rækkeplacering i kolonnen Linje til, og dens etiket er den tilsvarende post i Linjetekst: to kolonner med almindelig tekst parret efter placering, uden id'er og uden anførselstegn til at beskytte sig.
Kort fortalt
- Linje til rummer rækkeplaceringer, hvor den første datarække er 1, adskilt af kommaer: "7,6,21".
- Linjetekst rummer navnene på grenene i samme rækkefølge, parret efter placering.
- Et komma inde i navnet på en gren læses som en gren mere, og anførselstegn redder det ikke.
- At indsætte eller slette en række nummererer hver eneste placering under den om.
- Et tal, der er lavere end rækkens eget, er en lovlig pil bagud, ikke en fejl.
To kolonner bærer hver eneste pil i filen
En CSV har ingen måde at udtrykke en henvisning på. Det er en flad liste af poster med et skilletegn mellem felterne, og intet i formatet lader den ene post henvise til den anden. Så et flowchart skrevet som CSV må selv opfinde henvisningen, og QueryCharts konvention er den enklest mulige: kolonnen Linje til rummer placeringen af den række, du peger på, hvor den første datarække tælles som 1, adskilt af kommaer når et trin fører flere steder hen, og kolonnen Linjetekst rummer etiketterne til de pile i samme rækkefølge.
Det er hele mekanismen. "5,4" i Linje til tegner to pile, til den femte og den fjerde datarække i filen; "Ja,Nej" i Linjetekst sætter Ja på den første og Nej på den anden. Parringen sker efter placering, ikke efter navn, hvilket betyder, at de to celler skal holdes i takt i hånden, og at ingen af dem kan validere den anden. Byt rundt på rækkefølgen, og filen importeres stadig, diagrammet tegnes stadig, og det siger det modsatte af det, du mente.
Placeringer er også grunden til, at en CSV med forbindelser er skrøbelig på en måde, et Excel-ark med formler ikke er. Der er ingen forankring, ingen relativ henvisning, ingen id-kolonne, der gør arbejdet. Indsæt en række midt i eksporten, og enhver placering under den forskydes med én, mens hver eneste celle i Linje til over den bliver ved med at pege på det gamle tal. Kommer dine rækker ud af et system, der sorterer dem om, så læs /da/guides/strukturer-csv-til-flowcharts, før du skriver en eneste værdi i Linje til, for rækkefølgen er skemaet.
Eksemplet herunder er et beslutningstræ for ret til refusion: 25 rækker, hvoraf fire deler sig i tre, og én peger bagud. Det er den form, man får, når en virkelig afgørelsespolitik skrives som en fil frem for tegnet. Åbn regnearkspanelet under lærredet, og læs kolonnen Linje til op mod pilene, eller åbn /da/templates/csv-til-beslutningstrae og redigér cellerne direkte.
Linje til og Linjetekst på et beslutningstræ med 25 rækker
Et træ for ret til refusion i fire faser. Åbn regnearkspanelet for at læse forbindelseskolonnerne op mod de pile, de tegner.
Rækker og figurer, endnu ingen pile
De første syv rækker bærer Bokstekst og Figur og intet andet: et Start, et Input der registrerer ordrenummeret, og fem romber, der ender ved "Er varen fysisk eller digital?". Lærredet viser syv løse kasser. Hvert eneste spørgsmål i politikken er skrevet ned, og ikke ét af dem har en svarvej, for Linje til er stadig tom.
Linje til peger på rækkeplaceringer
Nu er placeringerne udfyldt. "Findes ordren i systemet?" har Linje til 5,4 og deler sig i to; "Er varen fysisk eller digital?" står med 8,11 og deler træet op i den fysiske og den digitale gren. Bemærk, at 5,4 ikke er sorteret: rækkefølgen i cellen er forfatterens rækkefølge, og det er den rækkefølge, Linjetekst bliver matchet op imod.
Linjetekst navngiver udgangene
"Hvor gammel er ordren?" parrer 7,6,21 med "Inden for 30 dage,31 til 90 dage,Over 90 dage": tre placeringer, tre etiketter, matchet fra venstre mod højre. Ingen af de etiketter indeholder et komma, og det er bevidst frem for heldigt. Række 14, "Ombytning eller refusion?", peger på 19,12, og 12 ligger over den: en pil bagud til "Beregn det fulde refusionsbeløb", der ser ud som en fejl og er præcis rigtig.
Slutpunkter og baner
De sidste rækker er de fem måder, dette træ kan ende på: en Afvist-række, "Anmodning lukket uden svar" som et Slut, og tre Succes-rækker til refusionen, tilgodebeviset og ombytningen. Deres celler i Linje til er tomme, og det er sådan, et afsluttende trin erklæres i CSV: en manglende værdi, ikke et nøgleord. De to banekolonner placerer derefter alle 25 rækker på tværs af Anmodning til Udbetaling og Kunde til Økonomi uden at røre en eneste forbindelse.
Sådan fungerer det
Fastlæg rækkefølgen, før du skriver nogen placeringer
Linje til henviser til placeringer i filen, så filens rækkefølge er bærende. Sortér eksporten én gang, præcis som du vil have den, og hold så op med at sortere den. Kommer rækkerne fra et system, der sorterer om ved hvert udtræk, så frys dem i en arbejdskopi først, ellers adresserer de tal, du skriver i dag, andre trin i morgen.
Nummerér datarækkerne fra 1 under overskriften
Overskriftsrækken er ikke en datarække og tæller ikke med. Det første trin i filen er placering 1, det næste er 2, og så videre nedad. Skriv de tal i en hjælpekolonne, mens du arbejder; importen har ikke brug for den, men det har du, for du er ved at skrive tyve henvisninger i hånden.
Skriv trinnene med én efterfølger først
Gå filen igennem oppefra og ned, og giv hvert trin, der bare fører videre, ét tal i Linje til. Det går hurtigt, det er svært at gøre forkert, og det efterlader kun forgreningerne til eftertanke. Lad cellen stå tom på et trin, der reelt afslutter processen: en tom Linje til er det, der gør en række afsluttende.
Skriv forgreningerne som kommaadskilte placeringer
Læg hvert mål i én celle på hver beslutning: 7,6,21 betyder tre udgange. Mellemrum omkring kommaerne trimmes væk, så "7, 6, 21" er i orden. Det, der betyder noget, er rækkefølgen, for du er ved at skrive en anden liste, der skal flugte med den post for post.
Skriv Linjetekst i samme rækkefølge
Til en Linje til på 7,6,21 skriver du Linjetekst som Inden for 30 dage,31 til 90 dage,Over 90 dage. Læs dem som par, før du går videre: første placering med første etiket, anden med anden. Intet kontrollerer det for dig, og et ombyttet par giver et diagram, der er selvsikkert og troværdigt forkert.
Træk filen ind, og læs pilene tilbage
Træk .csv-filen over på et nyt diagrams regnearksområde, eller indsæt teksten i det: der er ingen importguide og intet trin med kolonnekobling, for overskriftsnavnene matches direkte. Følg derefter to eller tre grene på lærredet op mod politikken. Placeringer uden for intervallet og udgange uden etiket springer med det samme i øjnene ved den størrelse.
Faldgruber du skal undgå
Et komma inde i navnet på en gren
Linjetekst deles ved kommaer, efter CSV-læseren allerede har fjernet feltets anførselstegn, så "Ja, med godkendelse fra teamlederen" bliver til to grene: "Ja" og "med godkendelse fra teamlederen". At sætte cellen i anførselstegn hjælper ikke, for anførselstegnene blev opbrugt af CSV-laget, og delingen sker bagefter. Skriv etiketten uden kommaet: "Ja med godkendelse fra teamlederen", eller med en tankestreg.
At indsætte en række uden at nummerere om
Placeringer er absolutte, så at tilføje ét trin i midten forskyder hver række under det med én, mens hver eksisterende værdi i Linje til bliver ved med at pege på det gamle tal. Diagrammet tegnes stadig; pilene lander bare ét trin for tidligt. Tilføj nye trin i bunden af filen, hvor de ikke nummererer noget om, eller nummerér bevidst om, og læs hele kolonnen igennem igen.
To lister af forskellig længde
Tre placeringer og to etiketter efterlader den tredje pil uden navn; to placeringer og tre etiketter smider den overskydende væk. Ingen af delene giver en lyd fra sig. Tæl kommaerne i begge celler, hver gang en beslutning har mere end to udgange: dette træ har fire rækker, der deler sig i tre, og det er der, det sker.
At antage, at et tal bagud er en tastefejl
En værdi i Linje til, der er lavere end den række, den står på, tegner en pil tilbage op gennem diagrammet, og det er en normal sløjfe: en omarbejdningsvej, en genindsendelse, en fælles beregning nået fra to sider. "Ombytning eller refusion?", der peger på 12 i eksemplet, er en af dem. Ryd dem ikke op, fordi de ser mærkelige ud; se /da/guides/lav-flowchart-fra-csv for, hvordan den færdige fil ser ud.
Åbn beslutningstræet, og læs dets kolonne Linje til
Åbn refusionstræet som dit eget diagram, erstat derefter rækkerne med dine egne, og lad forbindelseskolonnerne stå, som de er.
Relaterede guides
Ofte stillede spørgsmål
Hvorfor rækkeplaceringer frem for en id-kolonne?
Fordi en CSV, der kommer ud af et andet system, sjældent har en stabil nøgle, du kan bruge, og dem, den har, er som regel post-id'er frem for trin-id'er. Rækkeplaceringen er altid til rådighed, altid unik og kræver ingen aftale med den, der producerede eksporten. Prisen er, at placeringen kun betyder noget, så længe rækkefølgen holder, og det er derfor, rækkefølgen betyder mere i et CSV-flowchart end i noget andet format.
Tæller jeg overskriftsrækken med, når jeg nummererer placeringer?
Nej. Placering 1 er den første datarække, lige under overskriften. Det snubler folk over, når de læser placeringer af i et regneark, hvor overskriften er række 1 og det første trin er række 2: alt er forskudt med én i forhold til filen. Lander alle pilene ét trin for tidligt, er det som regel forklaringen.
Kan et trin pege på mere end to rækker?
Ja, og beslutningstræer gør det rutinemæssigt. I eksemplet har "Hvilken stand er varen i?" tre udgange, og "Godkender teamlederen udbetalingen?" har tre, hvoraf den ene er en afvisning. Læg alle placeringerne i den ene celle adskilt af kommaer og lige så mange etiketter i Linjetekst. Der er ingen grænse, der betyder noget i praksis; læsbarheden giver op længe før formatet gør.
Hvad sker der, hvis Linje til navngiver en række, der ikke findes?
Forbindelsen droppes, og der bliver ikke sagt noget. En placering ud over filens slutning, et blankt felt hvor der skulle stå et tal, eller et efterladt tal fra en version af eksporten med flere rækker i giver alle det samme resultat: en pil, der simpelthen ikke er der. Det er den fejl, man skal kontrollere for efter enhver ændring af filens længde, og den hurtigste kontrol er at tælle pile ud af hver beslutning på lærredet.
Kan jeg bruge trinnets navn i Linje til i stedet for et tal?
Nej: kolonnen læses som placeringer. Navne ville i øvrigt være tvetydige i de fleste virkelige filer: dette træ har to rækker, der begge begynder med "Godkender teamlederen", og flere, der læses som varianter af det samme spørgsmål. Et tal er utvetydigt af konstruktion, og det er grunden til, at identiteten er placeringen og ikke teksten.
