Vanlige formelfeil
Finn ut mer om de vanlige feilene du kan stĂžte pĂ„ med formler i Notion, og hvordan du kan feilsĂžke dem đš
Hvis du er usikker pĂ„ hvordan du fikser feilene i formelen din, kan Notion KI hjelpe deg. Les mer her â
Hvis du ikke har tilgang til en referert database, vil ikke formler kunne beregne pÄlitelig. Dette er fordi formler krever tilgang til kildedatabasen og dens egenskapskonfigurasjoner.
Hvordan fikse det
SĂžrg for at du har tilgang til alle sider og databaser som refereres i formelen din, enten i /knapp eller i database automaseringen.
I motsetning til formegenskaper i databaser, forventer formler i automaseringer en spesifikk returtype fra formlene (f.eks.: dato, tekst, tall, person). Automaseringen vil ellers ikke kunne lagre og utfÞre handlingen pÄ riktig mÄte.
Hvordan fikse det
SÞrg for at formelen returnerer riktig type verdi. Hvis du for eksempel skriver en formel for Ä angi verdien til en Person-egenskap pÄ en side, mÄ formelen returnere en bruker eller en liste over brukere, ikke en dato. Alternativt, hvis du evaluerer en spesifikk betingelse pÄ en egenskap av typen matrise (f.eks.: flervalg), mÄ du sÞrge for Ä bruke .includes i stedet for == i if()-setningen din.
En vanlig Ă„rsak til denne feilen er Ă„ bruke en annen type for Ă„ representere en tom verdi. For eksempel, i en formel som if(Date, Date.dateAdd(1, âdayâ), ""), er returtypen ukjent fordi den enten kan vĂŠre dato eller tekst (pĂ„ grunn av ""). Dette kan lĂžses ved Ă„ bruke empty() for Ă„ representere tomme verdier i stedet, slik at den reparerte formelen ville se ut som if(Date, Date.dateAdd(1, "day"), empty()).
Notion-formler kan bare vĂŠre 15 lag dype. Hver gang en formel refererer til en annen formel eller en Rollup, legges det til et lag. Dette gjelder selv om formelen er i en annen database.
NÄr denne grensen er nÄdd, vil Notion vise en feilmelding.
Hvordan fikse det
Forenkle oppsettet ditt ved Ä kombinere unÞdvendige formler og oppsummeringsfelt til fÊrre egenskaper. Se etter steder der flere formler gjÞr lignende ting, og prÞv Ä slÄ dem sammen til én.
Hvis egendefinerte variabler er definert i samme automaseringhandling, kan de ikke referere til hverandre.
Hvis du for eksempel definerer var1 og var2 i samme handling, vil ikke var2 kunne bruke var1 i definisjonen sin.
Hvordan fikse det
Definer hver variabel i sin egen separate handling (opprett den fĂžrste variabelen, legg til en ny handling i automaseringen din, og definer den neste variabelen separat). Dette sikrer at hver variabel blir riktig gjenkjent.
I dag kan ikke variabler definert i en automasering brukes til Ä filtrere sider i databaser du vil at automaseringen skal utfÞre handlinger pÄ (f.eks.: «Rediger sider som samsvarer med filteret inneholder variabel»).
Hvordan fikse det
Definer en egendefinert variabel som
Denne sidenved Ă„ skriveUtlĂžser sidei formelboksen.Legg til en
Rediger sider i-handling og velg den egendefinerte variabelen fra trinn 1 som mÄl.
NÄr du jobber med relasjoner, Rollup og person-egenskaper i formler, returnerer formlene en liste over sider eller personer. For Ä referere til egenskaper i relasjonen mÄ du definere det fÞrste elementet, ellers vil automaseringen din settes pÄ pause. Du kan ogsÄ stÞte pÄ dette problemet nÄr du lager en formel som bruker map-funksjonen for en relasjonsegenskap.
Hvordan fikse det
Bruk funksjoner som .first() eller .at(0) for Ä hente det fÞrste elementet, eller gÄ gjennom listen over sider med funksjoner som .map() , .filter() , .every(), .some(), .find().
Hvis en formel uventet stÞter pÄ en tom verdi (vanligvis en dato- eller personverdi), vil automaseringen motta en feilmelding og settes pÄ pause automatisk.
Hvordan fikse det
Bruk if eller ifs for Ä sjekke at en egenskap det opereres pÄ har en verdi. I stedet for Date.dateAdd(1, "day") er det for eksempel bedre Ä bruke if(Date, Date.dateAdd(1, "day"), empty()). Dette sikrer at dateAdd bare utfÞres nÄr Date har en verdi, og gir automaseringen beskjed om Ä tÞmme egenskapen som oppdateres nÄr Date ikke er utfylt. Alternativt kan du sette opp en visning med et filter som garanterer at verdien til egenskapen du opererer pÄ eksisterer, og konfigurere automaseringen til kun Ä kjÞre pÄ sider i den visningen.
Hvis formelen din ikke fungerer som forventet, kan det skyldes en syntaksfeil, for eksempel manglende parenteser, feil operatorer eller funksjoner som ikke stĂžttes. For en fullstendig oversikt over formelsyntaks, les denne artikkelen â
