Opprette kraftige dynamiske selvrelasjoner i FileMaker

Filemakers evne til å lage effektive raske og skitne databaser til alle slags formål gjør det til et vanskelig verktøy å gi opp. Brukerens evne til å forme den stadig nærmere behov fra en så grov og klar start kan bety at ingen andre verktøy selv kommer i nærheten som et databaseutviklingskjøretøy etter førstevalg.

En av dens største dyder er å skape fleksible forhold som vokser dynamisk med informasjonen som mates inn. Jeg skal demonstrere ved å bruke illustrasjonen under i et enkelt URL-repository.


Illustrasjon 1: konseptvisning

Bortsett fra å opprette et permanent, bærbart lagringssted av lenker, er det pene med denne ekstremt enkle løsningen imidlertid at når du legger til den, oppdateres kategorilisten i rullegardinmenyen 1 dynamisk for å gi virkemidlene informasjonen vises i "portal" (i FileMaker parlance) ved 2 filtreres og vises.

En portal er effektivt et vindu til relaterte data i en annen tabell, her relatert til kategorien 'nyheter'. Hvis utvalget her hadde vært for musikk, ville portalen inneholdt en liste over nettadresser som oppfyller beskrivelsen.

Ved 3-tiden vil du klikke på "visning" -lenken for Sydney Morning Herald levere til skjermen relatert til den valgte posten, sett under Illustrasjon 2, rediger visning, mens;

Kl. 4, når du klikker på "lansering" for en av disse postene, vil den aktuelle URL-en i nettleseren startes.


Illustrasjon 2: rediger visning

Illustrasjon 2 viser hva som skjer når du kaller frem en post fra portalen ved å klikke på "visning" for å legge til dine egne kommentarer eller notasjoner.

Denne applikasjonen kan brukes til å lagre enhver dynamisk oppdateringsliste, selvfølgelig, ikke bare URL-er. Det kan brukes som en enkel kontaktleder, for eksempel å skille arbeid fra sosiale bekjente, og så videre. Og på samme måte, hvis kontaktadministrasjon var bruken den ble brukt til, i stedet for å starte en URL, kan du dynamisk generere en e-post til den valgte mottakeren, starte e-postprogrammet ditt, rett fra FileMakers standard innebygde liste over forhåndsskriptet kommandoer.

Det er en ekstra fortjeneste i denne formen for bokmerkehåndtering ved at den er sikker: ingen andre trenger noen gang å vite hva du holder på, og du kan låse filen med et lett anvendt passord.

Denne løsningen bruker bare en tabell, fem felt, ett enkelt opprettet layout, et enkelt et-trinns skript og et enkelt forhold som relaterer tabellens poster til seg selv. Som vanlig, innen FileMaker, er det mulig å skjule katten på mange måter, men dette er de viktigste nødvendighetene for en helt gjennomførbar løsning.

Ok, så her bygger du det.

Trinn 1: Lag først tabellen


Illustrasjon 3: feltoppretting

Når du setter opp bordet ditt, inviterer FileMaker deg til å opprette felt som de fleste, som vist ovenfor, er selvforklarende. Den eneste som kanskje trenger forsterkning er gCategory, så navngitt fordi det er et globalt felt - det vil si at den har en midlertidig verdi, og dens formål er utelukkende å knytte et forhold til andre data, avhengig av hvilken verdi som mates til den i det øyeblikket. På oppsettene over er gCategory ganske enkelt merket som 'Kategori'.

Trinn 2: Lag dataforholdet som er selvforbundende


Illustrasjon 4: relasjonsdefinisjon

I relasjonsgrafikken, kobler vi deretter gCategory til kategori ved å klikke og dra fra 'gCategory' i venstre tabell til 'Category' ovenfor i samme tabell. Dette genererer automatisk den andre 'tabellforekomsten' avbildet til høyre, som standard merket 'URLs 2'.

Trinn 3: Lag og formater enkeltoppsettet

I sin layoutmodus muliggjør FileMaker oppretting av utallige layouter etter brukerens oppførsel, som hver i det vesentlige filtrerer visningen av data som finnes i en database. Det vil si at vi kan definere en listevisning for å se alle poster samtidig, eller en layout for å se på og endre en post om gangen. I denne oppsettet, derimot vist på Illustrasjon 2, mens vi ser på en enkelt post, ser vi også alle de andre den er relatert til fra definisjonen gjennom portalen.


Illustrasjon 5: definisjon av layoutinnhold

I layoutmodus blir felt og portaler ganske enkelt dratt og slipp og formatert på oppsettet ved hjelp av verktøyene i venstre meny.

Teksten for "visning" og "lansering" legges til ved hjelp av tekstverktøyet, og disse er definert som "knapper" for å starte sine respektive handlinger. Knapphandlingene velges med et enkelt høyreklikk, enten for å ta brukeren til gjeldende post, eller starte URL-adressen i en ekstern nettleser. Ettersom dette er forhåndsinnstilte alternativer, er det ikke behov for ytterligere scripting for å oppnå det nødvendige resultatet.


Illustrasjon 6: definisjon av enkel manusknapp

Trinn 4: Definer gCategory-verdilisten


Illustrasjon 7: definisjon av verdiliste

På dette stadiet bruker vi kommandoen Definer verdilister for å definere kategorilisten. gCategoryer bruker denne listen til å filtrere vårt syn, gjennom portalen, av nettstedsadresser i databasen. Denne listen presenterer verdiene som en enkelt forekomst av hver unike verdi som inngår i kategorifeltet i datatabellen.

Trinn 5: Database i bruk: Lag nye poster med eksisterende kategoriverdier

Den enkleste måten å opprette en ny post som arver en eksisterende kategoriverdi, er ganske enkelt å skrive inn feltet Nettstednavn inne i portalen ved å bruke den neste tomme raden. Hvis muligheten til å gjøre dette ikke har blitt deaktivert, arver oppføringen den overordnede kategorien til verdien som for øyeblikket er inneholdt i gCategory.

Trinn 6: Lag nye poster med nye kategoriverdier


Illustrasjon 8: layouttekst lagt til som skriptknapp

For å lage en ny post og en ny kategoriverdi oppretter vi et enkelt totrinns script i FileMakers ScriptMaker-modul. Oppsettteksten 'opprett post i en ny kategori' defineres med et enkelt høyreklikk som knappen som aktiverer den.


Illustrasjon 9: enkel definisjon av ny skriptoppretting

Instruksjonen 'Gå til felt' sikrer at du havner på rett sted for å gå inn i den nye kategorien når skriptet kjøres.

Kort oppsummert

Og det er så enkelt som det. Jada, det er mange måter å pynte og legge kompleksitet og raffinement til denne løsningen, men jeg har nå brukt dette på mange måter i sin elementære form, og fortsetter å finne nye applikasjoner for nære varianter av den. Jeg er sikker på at du vil finne mye mer.

© Copyright 2021 | pepebotifarra.com