11 Filtrering

Hvordan filtrere?

Ofte kan man ha bruk for å avgrense forekomstene i en rapport på bestemte måter, slik at rapporten f.eks. bare viser en bestemt gruppe eller kategori av dem som ble tatt med i det opprinnelige utplukket. Dette kan man gjøre ved hjelp av Filtrer-kommandoen under Rapportmenyen.

Når denne velges, åpnes følgende dialog:

Filtreringsdialog

Utplukkskriterium konstrueres som en setning

Man spesifiserer utplukkskriteriene i det øverste vinduet. Kriteriene formuleres som logiske uttrykk (operasjoner og funksjoner) over variablene i tabellen, f.eks. som i eksemplet hvor man bare vil ha med studienivå = 300 og første undervisningsår senere enn år 2000. Et utplukkskriterium konstrueres altså som en setning ved å klikke på aktuelle funksjoner, relasjoner og kolonner eller ved å skrive det inn manuelt i vinduet.

Setninger kan kombineres til et sammensatt utplukkskriterium ved de logiske operatorerene AND (og) og OR (og/eller) (anførselstegnene benyttes ikke rundt disse). Et kombinert utplukkskriterium som f.eks. karaktertall >= 2 AND karaktertall <= 3 gir altså et utplukk av resultater i karakterområdet fra og med 2 til og med 3.

Funksjoner

Et stort antall funksjoner kan spesifiseres med rapportens variable som argumenter. De aktuelle funksjonene er listet opp i vinduet Functions.

Et utplukkskriterium som f.eks Mid(etternavn,1,2) = 'HA' gir alle med etternavn som begynner på 'HA'. Her benyttes funksjonen Mid(s,start,len) hvor s er tekstfeltet, start er startposisjonen (her første bokstav) og len (lengde) er antall karakterer til høyre fom. startposisjonen.

Ønsker man å finne alle tekstverdier som inneholder en bestemt sekvens, f.eks alle etternavn som inneholder bokstavene 'sen', kan man f.eks bruke Pos-funksjonen på følgende måte: pos(etternavn, 'sen', 1) >=1. Pos-funksjonen undersøker her om etternavnet inneholder sekvensen 'sen' f.o.m. posisjon 1, og den returnerer hvilke posisjon sekvensen begynner i, og verdien 0 hvis sekvensen ikke finnes. Når man så spesifiserer at 'sen'-posisjonen skal være større eller lik 1 får man altså ut de radene hvor etternavnet inneholder 'sen'.

En annen måte å søke på tekststrenger er ved hjelp av jokertegn. Tegnet % angir en vilkårlig tekststreng. Uttrykket etternavn LIKE '%sen' finner alle etternavn som slutter på sen. Tegnet _ angir ett villkårlig tegn. Uttrykket fornavn LIKE '_rne'  finner alle fornavn som hvor første tegn er ukjent og tegn 2-4 er rne, så Arne, Urne, Ørne vil være gyldige treff her.

Tekstverdier angis med enkle anførselstegn, f.eks. 'Hansen'. Tallverdier angis uten dette, f.eks. fodselsdato =161276.

Ønsker man å filtrere på datoer må strengen man skriver inn være på riktig format, da må man bruke funksjonen date. F.eks. dato_brev_sendt = date('30.04.2020')

Relasjoner

Skrivemåten for parenteser og for relasjonsoperatorene mindre enn, større enn, mindre eller lik og større eller lik er angitt nederst til venstre i dialogboksen. Man kan klikke på ønsket tegn. I tillegg kan man benytte likhetsoperatoren = og ulikhetsoperatoren <> mellom variable og variabelverdier.

Kolonner

Kolonnene i rapporten listes opp i vinduet Columns. Noen ganger kan dette være flere enn de som synes i rapporten. Det er da felt som hører til den aktuelle tabellen i databasen, men som ikke er tatt med i rapportens resultat. De kan likevel brukes for filtrering.

En siste sjekk

Ved store og kompliserte uttrykk kan det lønne seg å trykke Verify-knappen for å sjekke at uttrykket er gyldig oppbygd. (Det er selvsagt ingen sjekk på at den gjør det man virkelig ønsker).

Når man klikker på OK forsvinner dialogboksen og utplukket utføres.

Kort om hvordan filtrer-funksjonen fungerer

Åpner man Filtrerfunksjonen på ny mens man er i den samme resultatfilen, vil det sist angitte utplukkskriteriet stå uendret. Sletter man dette, får man hele resultatfilen tilbake. Filtrer-funksjonen sletter altså ingen data, den bare skjuler data for fremvisning i resultatfilen. Uttrykket man filtrerer med lagres heller ikke for senere bruk.

Når rapporten er kjørt, resultatfilen er inspisert og evtuelt sortert om eller filtrert, kan man skrive den ut på papir. Man gir kommandoen Skriv ut, enten fra menyen, via printer-ikonet eller som tastekombinasjonen Ctrl+P.

Dette starter en standard Windowsdialog hvor man oppgir hvilken printer man ønsker og (vanligvis) en rekke utskriftsparametre.

Emneord: Filtrering, Filter
Publisert 27. feb. 2014 13:15 - Sist endret 29. mars 2022 05:03