Coda en rijnummers

Coda en rijnummers

Christiaan Huizer
3 min readAug 27, 2020

--

Hoe voorzie je elke rij van een nummer waarmee de positie in de tabel juist wordt weergegeven? Dit artikel is voor gevorderden. Enerzijds omdat de formule lastig is en ook omdat de noodzaak tot deze logica maar duidelijk wordt eens je Coda regelmatig gebruikt. De meeste informatie vind je in het Engels ook hier.

Rijnummers

Elke rij heeft in Coda een eigen nummer en deze nummers zijn oplopend. Je krijgt deze te zien eens je werkt met:

RowId(thisRow)

Echter eens je een rij verplaatst dan ga je zien dat bijvoorbeeld rij 2 op de eerste plaats komt. Dat is op zich logisch, want RowId() is het nummer toegekend aan de rij . Of je een rij nu verplaatst, dat doet er niet toe, het nummer blijft toegekend aan deze rij. Visueel is het wel verwarrend eens je van elke rij wil weten wat nu haar plaats is in de tabel. RowId() is dan niet handig.

Hiernaast zie de twee kolommen. De eerste kolom bevat de RowId en de tweede een formule om ons te vertellen om de hoeveelste rij het gaat in de tabel. De RowID zorgt er voor dat je altijd een unieke verwijzing naar een rij hebt. In voorkomende gevallen kan dat zeer nuttig zijn. Bijvoorbeeld als je processen automatiseert.

De visuele positie

Om direct de positie van een rij een tabel te weten gebruiken we onderstaande formule die van toepassing is op de tabel genaamd rijnummers. Hierin zitten drie functies vervat.

rijnummers.FormulaMap(if(CurrentValue = thisRow, 1, 0)).Find(1, 0)
  • FormulaMap()
  • Een Ifje
  • Find()

De tabel wordt verbonden met de FormulaMap met daarbinnen een Ifje.

Binnen het Ifje staat dat als de CurrentValue (de gevonden waarde) gelijk is aan de ‘deze rij’, dan kies je “1”, anders 0. Vervolgens staat er de functie Find(). In de documentatie wordt deze uitgelegd als het vinden van de speld in de hooiberg. Voor de komma stat de waarde je die zoekt , na de komma waar je zoekt. Met dat er een “0” staat na de komma zoek je overal of nergens. Hier dus overal, dus in de gehele tabel.

Mede daarom beschrijft een medewerker van Coda deze formule als volgt:

it enumerates through each record in table, assigns 1 for the thisRow and then tries to find position of 1 in list.

Complexe formule

Hoewel dit een beknopte formule is, is ze toch complex. Dat komt vooral door het hoge abstractie niveau.

De formule om de visuele positie te tonen kan nog eenvoudiger en daarmee is ze ook sneller.

Find(thisRow , thisTable)

Het mooie van Coda is dat ook als je een formule zelf om altijd een mooie reeks opéénvolgende nummers te hebben, niet (helemaal) snapt, je haar wel kan gebruiken. En de ervaring leert dat wat eerst onduidelijk was, later opeens klip en klaar kan blijken te zijn.

edit. Ik was bezig een stappenplan te maken en daarbij verschoof er weleens een rij. Een taak plaatste ik hoger of later dan eerder gedacht. Echter door de logica van Find(thisrow.thistable) toe te passen met een concatenate had ik een simpele en sterke oplossing. De rode tekst is het gevolg van een taak die meer tijd nam dan voorzien.

Opeenvolgende stappen nummeren

De eenvoudige code in deze is:

Concatenate("stap ",find(thisRow,thisTable))

Zo zijn er allerhande toepassingen.

Succes ermee!

Mijn naam is Christiaan Huizer en ik ben eigenaar van Huizer Automatisatie. In mijn rol als bedrijfsadviseur ben ik actief in het midden- en kleinbedrijf in Wallonië, Brussel, Vlaanderen en Nederland. Mijn klanten vragen me vooral om hun bedrijf voordelig te vereenvoudigen en versnellen. Ik maak daarbij gebruik van tools als AirTable, Coda, Zapier, MailJet en PaperForm.

Huizer Automatisatie over hoe je kan opéénvolgende nummers kan tonen in een tabel

--

--

Christiaan Huizer
Christiaan Huizer

Written by Christiaan Huizer

I write about how to Coda . You find blogs for beginners and experienced makers. I publish about 1 / week. Welcome!

No responses yet