Hoppa till huvudinnehåll
HPO Software Steg-för-steg-guider för 4D-databaser och low-code-appar – från din första tabell till en färdig företagsapp.

Vissa länkar på denna webbplats är affiliatelänkar: om du handlar via dem kan vi få en provision utan extra kostnad för dig. Detta påverkar aldrig våra rekommendationer. Se vår affiliatedeklaration för mer information. Ansvarsfriskrivning för affiliate.

Grunderna i 4th Dimension Learning

Om du kommer till 4D (4th Dimension) från FileMaker Pro, är en av de första mentala justeringarna du måste göra den kring värdelistor. FileMaker ger dig en användarvänlig, fristående dialogruta för att bygga dem.

4D ger dig något kraftfullare men med mindre vägledning: List Editor, ett verktyg i designläget som producerar återanvändbara listresurser som du sedan kopplar till formulärobjekt. Den här artikeln går igenom hur värdelistor fungerar i 4D, hur de skiljer sig från FileMakers tillvägagångssätt och de praktiska beslut du kommer att fatta längs vägen.

Viktiga punkter

  • I 4D skapas och lagras värdelistor centralt i List Editor, inte inuti individuella fältdefinitioner som i FileMaker.
  • En 4D-lista är en namngiven resurs; samma lista kan kopplas till många formulärobjekt över många formulär, vilket gör att underhållet sker på ett och samma ställe.
  • Listobjekt stöder formatering per objekt (vanlig, fet, kursiv) och en redigerbar flagga, och varje objekt kan ha underordnade objekt till godtyckligt djup – en hierarkisk struktur som FileMakers platta värdelistor inte erbjuder nativt.
  • FileMakers fyra visningsstilar (Popup List, Popup Menu, Check Boxes, Radio Buttons) motsvaras av 4D-koncept, men endast Popup List är okomplicerad; kryssrutor och alternativknappar kräver betydligt mer arbete.
  • Rätt tidpunkt att bygga en lista är innan du kopplar formulärobjektet som använder den, så att du kan referera till den med namn direkt.

Varför 4D kallar dem “listor” och FileMaker kallar dem “värdelistor”

Terminologin är det första hindret. FileMakers dokumentation och användargränssnitt använder konsekvent Value List. 4D-dokumentationen och det klassiska utbildningsmaterialet från HPO Soft använder List, och du kommer även att se Choice List i äldre referenser och community-inlägg. De beskriver alla samma idé: en namngiven samling av objekt som en användare väljer ifrån när data anges i ett fält.

Namnskillnaden speglar en verklig arkitektonisk skillnad. I FileMaker är en värdelista i huvudsak en egenskap hos fältet eller layoutobjektet – du definierar den i sammanhanget där den används, och FileMaker erbjuder tre källor:

  • En anpassad lista med objekt som du skriver in själv.
  • En lista härledd från fältvärden – unika värden hämtade från poster i den aktuella filen, eller värden som nås genom en relation.
  • En lista baserad på en lista i en annan fil (en relaterad fils värdelista).

4D stöder samma tre källor konceptuellt, men separerar listdefinitionen från listanvändningen. Du definierar listan en gång i List Editor, ger den ett namn, och sedan kan vilket formulärobjekt som helst – en popup, en rullgardinsmeny, en kombinationsruta, en flikpanel, vad som helst – peka på det namnet. Denna separation är det enskilt viktigaste att internalisera, eftersom det förändrar hur du planerar ditt schema och dina formulär.

Skapa en lista i 4D List Editor

Arbetsflödet är kort men värt att göra i rätt ordning.

Relaterat: — Ett enkelt kalkylarksgränssnitt som sitter ovanpå en riktig relationsdatabas, med automatiseringar, vyer och delbara gränssnitt..

  1. Växla till Designläge. Listor är resurser i designfasen, inte data i körtiden.
  2. Öppna menyn Tools och välj List Editor. (I modern 4D finns detta under Design-menyn / Explorer beroende på version, men den klassiska sökvägen är Tools $\rightarrow$ List Editor.)
  3. List Editor-fönstret öppnas med två underfönster: List of Lists till vänster och Current List till höger.
  4. I den vänstra rutan, klicka på Add och skriv ett namn för din nya lista. Välj namnet noggrant – det blir identifieraren du refererar till från formulärobjekt, och att byta namn senare innebär att varje referens måste uppdateras.
  5. Klicka på namnet för att välja det, gå sedan till den högra rutan och ange objekten för listan, ett per rad.

Det är hela skapelseprocessen. Det intressanta är vad du kan göra med varje objekt när det väl finns.

Formatering och redigerbarhet per objekt

Varje listobjekt har sina egna visningsattribut:

  • Vanlig text (standard)
  • Fet
  • Kursiv
  • Fet och kursiv

Eftersom dessa gäller per objekt, kan en enda lista blanda stilar — vilket är användbart för att visuellt flagga ett standardval, ett föråldrat alternativ eller en kategorirubrik inuti listan.

Om du handlar: — En appbyggare med låg kod som ansluts till den bredare Zoho-sviten och priser per användare snarare än per app..

Det finns också en redigerbar flagga per objekt. När ett objekt är markerat som redigerbart kan användaren ändra den posten istället för att vara låst till den fördefinierade texten.

Detta är en subtil men kraftfull skillnad: det låter dig leverera en lista som för det mesta består av ett kontrollerat ordförråd, men tillåter kontrollerade “flyktluckor” för fritext där verksamheten verkligen behöver dem. Använd detta sparsamt – när användare kan redigera listobjekt försvagas dina garantier för datakonsistens, och rapportering på det fältet blir svårare.

Underordnade objekt: hierarkiska listor

Den funktion som mest överraskar FileMaker-veteraner är Add a Child. Varje listobjekt kan ha ett underobjekt, och det underobjektet kan i sin tur ha ett eget underobjekt, och så vidare. Du bygger i praktiken ett träd.

Detta är viktigt eftersom många verkliga affärsordförråd är hierarkiska:

  • Produktkategorier $\rightarrow$ underkategorier $\rightarrow$ SKU:er
  • Regioner $\rightarrow$ länder $\rightarrow$ städer
  • Avdelningar $\rightarrow$ team $\rightarrow$ roller
  • Kontoplan $\rightarrow$ kontogrupper $\rightarrow$ enskilda konton

I FileMaker skulle du vanligtvis modellera detta med en självrelation och en portal, eller platta till det till en enda lista med namngivningskonventioner. I 4D kan du uttrycka hierarkin direkt i listresursen och låta formulärobjektet presentera den som en indragen meny. Det är en genuin fördel för alla som bygger väljare baserade på strukturerad referensdata.

Hur listor fästs vid formulärobjekt

När en lista väl finns bifogar du den till ett formulärobjekt – oftast en popup-lista (kallas även rullgardinsmeny eller popup-meny beroende på objekttyp och version). Mekaniken:

Relaterat: — En databasbyggare utan kod som syftar till portaler, kataloger och interna verktyg – med schablonpris i stället för avgifter per användare..

  • Välj fältet eller variabelobjektet på formuläret i designläge.
  • Öppna objektets lista över Egenskaper.
  • Hitta egenskapen Choice List / List och välj din namngivna lista från väljaren.

Eftersom listan refereras till med namn kan samma lista driva en popup på ett inmatningsformulär, ett sökformulär och ett rapportfilter – alla pekar på en och samma definition. Ändra listan en gång, så uppdateras varje konsument. Det är vinsten med den extra ceremonin i designfasen.

En praktisk varning: om du tar bort eller byter namn på en lista som formulärobjekt refererar till, förlorar dessa objekt sin lista tyst i vissa versioner. Sök efter det gamla namnet i dina formulär innan du byter namn. Behandla listnamn som en del av din applikations offentliga gränssnitt.

Visningsstilar: Vad som kartläggs rent och vad som inte gör det

FileMaker erbjuder fyra visningsstilar för värdelistor. Så här översätts de till 4D i praktiken.

Vårt val: — Den långvariga relationsdatabasplattformen för team som behöver anpassade appar på skrivbordet, webben och mobilen från en enda fil..

FileMaker visningsstil4D-ekvivalentSvårighet i 4D
Popup ListPopup / dropdown list-objektEnkelt – den rekommenderade utgångspunkten
Popup MenuPopup-menyobjektRättframt
Check BoxesKryssrutaobjekt bundet till en listaBetydligt mer komplext; kräver vanligtvis flera objekt eller ett värdelistfält
Radio ButtonsRadioknappgruppBetydligt mer komplext; byggs vanligtvis av enskilda radioobjekt

Den ärliga sammanfattningen, och den som det ursprungliga HPO Soft-materialet gör: endast Popup-listan beskrivs här, eftersom det är vägen med minst motstånd. Värdelistor med kryssrutor och radioknappar är möjliga i 4D, men de är mycket mer omfattande än sina FileMaker-motsvarigheter. Om du migrerar en FileMaker-lösning och den lutar sig tungt mot värdelistor med kryssrutor, avsätt ordentligt med tid för den konverteringen – det är inte en en-till-en-port.

Att välja rätt listkälla

Innan du öppnar listredigeraren, bestäm var objekten kommer ifrån. Detta beslut styr allt nedströms.

  • Statisk anpassad lista – du skriver in objekten. Bäst för små, stabila ordförråd: statuskoder, hälsningsfraser, prioritetsnivåer, ja/nej/okänt. Snabbt att bygga, ingen kostnad vid körning, men varje ändring kräver redigering i designläge och en ny driftsättning.
  • Lista härledd från fältvärden – objekten kommer från de unika värden som redan finns i ett fält. Bäst när vokabulären är datadriven och växer organiskt, t.ex. ett fält för “kundtyp” som fylls i av andra delar av systemet. Avvägningen: listan är bara så ren som dina data, och den kan inte erbjuda värden som ännu inte finns i någon post.
  • Lista baserad på en annan fil / relaterad lista – objekten kommer från en relaterad tabell eller en annan fils lista. Bäst för delad referensdata (en central uppslagstabell över avdelningar, valutor eller produktlinjer) som flera delar av applikationen måste vara överens om. Detta är det mest underhållbara alternativet för allt som förändras över tid, eftersom du uppdaterar källtabellen, inte listan.

En användbar tumregel: om mer än ett formulär behöver listan, eller om listan kommer att ändras utan en kodrelease, driv den från data snarare än att skriva in den manuellt. Statiska listor är till för saker som är genuint fixerade – och genuint fixerade saker är sällsyntare än vad folk tror.

Praktisk vägledning och vanliga fallgropar

Några hårt vunna vanor gör listarbete i 4D mycket mindre smärtsamt:

  • Namnge listor med ett prefix och ett syfte. Något som lst_Status_Order eller lst_Region_Sales berättar för en framtida underhållare vad listan är till för och var den används. Undvik generiska namn som List1.
  • Bygg listan före formulärobjektet. Om du skapar popup-objektet först kommer du att redigera objektets egenskaper två gånger.
  • Håll statiska listor korta. En statisk lista med femtio poster är en underhållsbörda; det är en datadriven lista i förklädnad.
  • Var medveten om redigerbara objekt. Varje redigerbart objekt är ett hål i din datavalidering. Dokumentera varför varje sådant existerar.
  • Använd underordnade objekt för äkta hierarkier, inte för dekoration. Indrag som inte återspeglar en riktig förälder-barn-relation förvirrar användarna mer än det hjälper.
  • Se upp för föräldralösa referenser. När du fasar ut en lista, grep-sök dina formulär efter dess namn innan du tar bort den.

För ett bredare sammanhang om hur 4D passar in i landskapet för low-code och snabb applikationsutveckling är plattformens egen dokumentation och community-forum de auktoritativa källorna; 4D-utvecklardokumentationen täcker det nuvarande List Editor-gränssnittet, som har utvecklats sedan det klassiska HPO Soft-materialet skrevs. För bakgrund om den relationsmodell som ligger till grund för tabeller, fält och uppslagningar, se Wikipedia-artikeln om relationsmodellen, och för den allmänna kategorin av verktyg som detta arbete tillhör, är Wikipedia-översikten över low-code development platforms en användbar orientering.

Var listor passar in i det större bygget

Värdelistor är steg sex i en sekvens som ser ut så här: skapa en databas → ange databasegenskaper → definiera tabeller → definiera datafält → bygg formulär → skapa värdelistor → ange exempeldata. Lägg märke till att listor kommer efter formulär och före exempeldata. Den ordningen är avsiktlig och värd att respektera: du vill ha dina formulärobjekt på plats så att du kan koppla listor till dem, men du vill att listorna ska vara färdiga innan du börjar ange exempelposter, eftersom det är vid inmatning av exempeldata som du kommer att upptäcka om dina listor faktiskt täcker de verkliga fallen.

Om du hoppar framåt och anger exempeldata först, kommer du att märka att du måste mata in poster på nytt varje gång du förfinar en lista. Gör listorna först, fyll sedan i data.

Vanliga frågor

Vad är skillnaden mellan en värdelista i FileMaker och en lista i 4D?

FileMaker definierar värdelistor i sammanhanget för det fält eller layoutobjekt som använder dem, och erbjuder tre källor: anpassade objekt, värden från poster eller en relation, och en lista från en annan fil. 4D separerar definitionen från användningen: du skapar en namngiven lista en gång i listredigeraren och kopplar sedan det namnet till valfritt antal formulärobjekt. 4D-metoden innebär mer arbete i början men är mycket mer underhållbar när många formulär delar samma ordförråd.

Kan 4D skapa värdelistor med kryssrutor och alternativknappar som FileMaker?

Ja, men det är betydligt mer komplext än i FileMaker. FileMaker låter dig välja “Check Boxes” eller “Radio Buttons” som visningsstil direkt på en värdelista. I 4D kräver det vanligtvis flera formulärobjekt eller ett värdelistasfält för att uppnå samma beteende, och det ursprungliga HPO Soft-utbildningsmaterialet täcker medvetet endast popuplistan av denna anledning. Planera för extra tid om du migrerar en FileMaker-lösning som är beroende av kryssrutelistor.

Vad är underordnade objekt i en 4D-lista, och när ska jag använda dem?

Ett underordnat objekt är ett underobjekt kapslat under ett överordnat listobjekt, och kapslingen kan fortsätta till vilket djup som helst. Använd dem när ditt ordförråd är genuint hierarkiskt – produktkategorier och underkategorier, regioner och städer, avdelningar och team. Använd dem inte enbart för visuell gruppering, eftersom indrag antyder en förälder-barn-relation som användarna förväntar sig ska betyda något.

Ska jag använda en statisk lista eller en datadriven lista?

Använd en statisk anpassad lista för små, stabila ordförråd som sällan ändras, till exempel statuskoder eller prioritetsnivåer. Använd en lista härledd från fältvärden eller från en relaterad fil när ordförrådet växer över tid eller delas mellan flera formulär. En bra regel: om listan kommer att ändras utan en kodrelease, eller om mer än ett formulär behöver den, låt den drivas av data istället för att skriva in objekten för hand.

Vad gör alternativet “redigerbart” på ett listobjekt?

Genom att markera ett listobjekt som redigerbart kan användaren ändra posten istället för att vara begränsad till den fördefinierade texten. Det är användbart när du vill ha ett i huvudsak kontrollerat ordförråd med några få kontrollerade fritext-utrymningsluckor. Använd det sparsamt, eftersom redigerbara objekt försvagar dina garantier för datakonsistens och gör rapportering på det fältet mindre förutsägbar.

När i byggprocessen ska jag skapa mina värdelistor?

Skapa listor efter att dina formulär finns men innan du anger exempeldata. Du behöver formulärobjekten på plats så att du kan koppla listor till dem via namn, och du vill att listorna ska vara färdiga innan inmatning av exempeldata så att du inte behöver mata in poster på nytt varje gång du förfinar en lista. Genom att följa sekvensen – tabeller, fält, formulär, listor och sedan exempeldata – sparar du mycket omarbetning.


Prova FileMaker gratis i 45 dagar

Den långvariga relationsdatabasplattformen för team som behöver anpassade appar på skrivbordet, webben och mobilen från en enda fil.