Avatar billede xzaboo Praktikant
17. december 2004 - 15:08 Der er 13 kommentarer og
1 løsning

Forspørgsel/Filter i allerede defineret formular.

hej

jeg er igang med at lave en database og skulle gerne bruge lidt hjælp til  forespørgelse / filter.  det jeg ikke kan finde en løsning på er hvordan jeg får vist resultaterne af en forespørgsel/filter  i en allerede defineret formular.
Dette filter/forspørgsel skal aktiveres via nogle kommandaknapper, og må ikke åbne nye vinduer/formularer/tabeller.
Avatar billede mugs Novice
17. december 2004 - 15:15 #1
Me.FilterOn = True
Avatar billede xzaboo Praktikant
17. december 2004 - 15:24 #2
Mange tak, men forstår jeg ikke lige. er det den værdi jeg skal indsætte for [knap]_Click() ? eller og hvor henne er det foruddefinerede filter gemt ? Det skal ikke være sådan at man opretter et nyt filter hver eneste gang, de skal helst ligge gemt enten som nogle forespørgsler eller hvad det nu end er !?
Avatar billede mugs Novice
17. december 2004 - 15:58 #3
Hvis du har et felt i din formular der hedder f.eks kundeemne, så kan du filtrere efter dette felt med denne:

Me.filter = "kundeemne = '" & Me!kundeemne & "'"
Me.FilterOn = True
Avatar billede xzaboo Praktikant
17. december 2004 - 17:25 #4
Jeg tror jeg har forklaret mig lidt forkert, fordi det du fortæller mig virker ikke helt rigtigt.
Jeg har lavet en formular hvor der indgår en masse felter med oplysninger fra en del forskellige tabeller. Det jeg nu gerne vil, er at jeg har en knap i min fodnote, hvorpå jeg kan aktivere en forespørgsel/filter, som viser alle poster fra fx, Dags Dato, Igår, Imorgen eller Mandag osv.
Alle disse ovenstående "filtre" skal så vises i den samme formular hvor knappen er, og ikke i en ny formular/tabel/vindue.

Det jeg derfor ikke kan forstå, er hvordan jeg gemmer et af disse filtre/forspørgsler, som jeg kan så bagefter kan få til at blive vist i min formular med knappen, og ikke i et nyt vindue.

Mvh. Stefen
Avatar billede mugs Novice
17. december 2004 - 17:32 #5
Min kode åbner ikke en ny formular, men filtrerer poster i den aktive formular. Men jeg kan iøvrigt anbefale dig thomasjepsen's funktion fra hans hjemmeside. Den hedder noget i stil med "Filter- of søgefunktion" og ligger her.

http://www.nyholm.dk/makeiteasy/Home.asp?ContentID=30&MenuItemID=25
Avatar billede xzaboo Praktikant
17. december 2004 - 17:44 #6
Okay, mange tak..
Det jeg bare ikke forstår ved:

Me.filter = "kundeemne = '" & Me!kundeemne & "'"
Me.FilterOn = True

er at jeg ikke kan se hvor jeg f.eks. skal indtaste den "dato" jeg gerne vil se?
Avatar billede mugs Novice
17. december 2004 - 17:47 #7
Den filtrerer efter den post markøren står i. Er markøæren placeret i en post med datoen 2004-12-17 og du trykker på knappen med koden, vil formularen blive filtreret efter denne dato.
Avatar billede mugs Novice
17. december 2004 - 17:53 #8
En rettelse. Hvid du vil filtrere efter en dato er syntaksen lidt anderledes:

Me.filter = "dato = #" & Me!dato & "#"
Me.FilterOn = True

Hvor dato er navnet på feltet både i tabellen og i formularen.
Avatar billede mugs Novice
17. december 2004 - 18:00 #9
Hvis du vil filtrere efter et datofelt:

Dags dato:
Me.filter = "dato = #" & Date & " # "
Me.FilterOn = True

dags dato -1 (igår):
Me.filter = "dato = #" & Date - 1 & " # "
Me.FilterOn = True

dagsdato +1 (imorgen):

Me.filter = "dato = #" & Date + 1 & " # "
Me.FilterOn = True
Avatar billede xzaboo Praktikant
17. december 2004 - 18:33 #10
Okay, mange tak.. det lyder/ser alt sammen meget godt ud :D
Det vil jeg så prøve lige at arbejde videre med !
Avatar billede xzaboo Praktikant
22. december 2004 - 13:34 #11
Hej igen mugs.
Jeg har nu fået brugt de her filtre du har givet mig, men kunne samtidigt godt tænke mig at få denne kommando til at sortere efter nogle bestemte felter samtidigt med.
ex.
Når jeg trykker på "Dags dato", så skal den først prioritere at vise efter Dato, næstefter skal den vise efter SagsID, så efter Klokken, og til sidst efter LæsID.
Håber du lige vil give et ekstra lille bidrag til løsningen på dette.
Avatar billede mugs Novice
22. december 2004 - 14:10 #12
Jeg er ikke klar over, om du kan sætte flere OrderBy i en formular. Jeg tror blot den vil ændre dorteringen. Men hvorfor sorterer du ikke blot i forespørgslen i stedet for? Der kan du sortere på lige så mange felter du vil.
Avatar billede xzaboo Praktikant
26. december 2004 - 13:10 #13
Jeg er ikke helt klar over hvilken forespørgsel du mener?
Jeg har opdaget, at hvis jeg kigget under fanen DATA for egenskaberne på formularen, så har jeg set at de har lavet et felt som hedder 'SorterEfter'. Med denne tænkte jeg så på, om jeg ikke kunne indtaste den førnævnte rækkefølge, som skal gælde som næsteprioritet efter de idag, igår eller imorgen knapper/filtre du har hjulpet med. Dette kan jeg bare ikke få til at virke, men er det fordi at jeg ikke bare kan skrive navnene på de filter (adskilt med et komma), men i stedet skal skrive en SQL sætning?

Steffen..
Avatar billede mugs Novice
26. december 2004 - 17:03 #14
Jeg mener den forespørgsel, hvorfra formularen får sine data.

Jeg vil gætte på, at din formular får data fra en tabel. Dette er der såpdan setm ikke noget i vejen for. Men får din formular data fra en forespørgsel, får du en langt mere dynamisk database. I en forespørgsel kan su sortere efter flere felter. Du kan lave beregninger i udtryk og maget mere. Ligeledes kan du inkludere flere tabeller.

Hvis jeg har ret, vil jeg anbefale dig, at du ændre formularen, så den modtager data fra en forespørgsel:

Åbn db i databasevinduet > Fanen Forespørgsler > Ny > I dialogboksen dobbeltklikker du på de tabeller der skal indgå i forespørgslen > Luk dialogboksen > Dobbeltklik på hgvert enkelt felt der skal med i forespørgslen (Du skal jo medtage alle felter, der indgår i formularen).

Når du har gjort dette, skal du åbne din formular i designvisning og højreklikke på et mørkegråt område. IKKE Detaljesektionen, fornularhoved eller -fod. Nederst klikker du på egenskaber > Fanen Data og her skifter du påsokilde til den forespørgsel du netop hat oprettet.

Når dette fungerer, kan du se på sorteringen i forespørgslen. Du åbner den i Forespørgselsdesign. Access starter sorteringen fra venstre, så det felt du først vil sortere på, flytter du helt til venstre og sætter en sortering, derefter flytter du det flet du vil sortere på som 2. prioritet hen, så det ligger lige til højre for det første felt og sætter en sortering, og sådan bliver du ved indtil du har den sortering du ønsker.

Dine "sorteringsfelter"  behøver ikke at ligge lige efter hinanden, blot skal din "2. sorteringsfelt" ligge til højre for det første felt, og din "3. prioriteringsfelt" til højre for din 2. prioritet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester