Avatar billede webhelpers Praktikant
18. juli 2001 - 16:02 Der er 33 kommentarer og
1 løsning

HJÆÆÆÆÆÆÆÆÆÆLP!!!!!!!

Det kan være en stor overskrift hjælper på mit behov for opmærksomhed.....

Mit problem er, at jeg ikke kan få rapporten til at filtrere ordentligt. Jeg har en kundeformular som kan komme frem med nogle resultater på baggrund af en søgning. Her er det så meningen at man skal kunne udskrive resultatet fra søgningen. Til denne opgave har jeg lavet en rapport, men hvordan får jeg den til KUN at indeholde resultatet fra søgningen? Jeg har lavet et filter der ser således ud: SELECT Final.*
FROM Final WHERE [Forms]![Kunder].[ID] Like [Final].ID]; Det fungerer også ok, bortset fra at den kun viser en post, nemlig den første der matcher....
Please help me.....jeg er ved at blive gammel
Avatar billede Jman Praktikant
18. juli 2001 - 16:07 #1
du skal lave en loop indtil der ikker er flere
Avatar billede mugs Novice
18. juli 2001 - 16:13 #2
Et gæt:

Jeg tror fejlen ligger i, at du refererer til formularen, og den viser jo kun een post nemlig.

[Forms]![Kunder].[ID] er = [Final].[]

Indtast et kriterie i forespørgslen, og jeg er ret sikker på dir problem er løst.

Mvh / Mugs 
Avatar billede webhelpers Praktikant
18. juli 2001 - 16:13 #3
Tak, men hvordan gør man det i SQL??
Avatar billede mugs Novice
18. juli 2001 - 16:15 #4
Prøv at indtaste som nævnt, Forespørgslen vil generere en SQL-sætning, som du herefter kan se ved at klikke på Vis og vælge SQL. Måske kan det bringe dig videre.

Mugs
Avatar billede webhelpers Praktikant
18. juli 2001 - 16:15 #5
Svaret var egentlig til Jer begge mugs og superior
Avatar billede webhelpers Praktikant
18. juli 2001 - 16:28 #6
<mugs
Hvis jeg opsætter kriteriet som du har skrevet: [Forms]![Kunder].[ID] = [Final].[], dukker der en boks der spørger hvilken værdi Final.[] skal have, så det virker altså ikke - hvis jeg altså har gjort som du mener.
Avatar billede mugs Novice
18. juli 2001 - 16:39 #7
Så har jeg ikke forklaret mig tydelig nok.

Linien jeg skrev [Forms] o.s.v. var kun beregnet til at fortælle at det på v. side af = skal være det samme, som det på h. side.

Ådn forespørgslen i designvisning, sæt markøren i feltet kundeid (eller hvad det nu hedder) og skriv hvad feltet skal være = med.

Hvis det fungere, går vi et skridt videre, så det bliver muligt at indtaste kriteriet i formularen.

I stedet for kriteriet sætter du i forespørgslens felt:

[Indtast kundeID] eller hvad du nu vil. Når forespørgslen køres, vil der poppe en dialogboks op i din formular, der beder indtaste Kundeid.

når det fungerer, så går vi et skridt videre, og laver en indtastning, der omfatter noget Between. Men den skal jeg lige tænke lidt over.

Et forslag mere. Tag en pause - du har flere jern i ilden.


Mvh / Mugs 
Avatar billede webhelpers Praktikant
18. juli 2001 - 16:53 #8
Mange jern i ilden - grundet de er ved at være brændt i begge ender. Jeg har siddet med problemerne i lang tid, så nu tager jeg dem alle sammmen.

Din løsning har er jeg med på. Og så langt er jeg også kommet. Men hvad vil du bruge between til i forbindelse med en rapportvisning?
Avatar billede webhelpers Praktikant
18. juli 2001 - 17:15 #9
Jeg skal lige være sikker på i har fat i det jeg mener. Jeg ønsker et forslag til hvordan min SQL skal se ud, så min rapport kan vise mere en et resultat. Indtil videre ser den således ud:
SELECT Final.*
FROM Final
WHERE [Final].[ID]=[Forms]![Kunder].[ID];
Avatar billede webhelpers Praktikant
18. juli 2001 - 17:17 #10
Det kan lige noteres at det er en SQL-forespørgsel som rapporten kalder ved åbning.
Avatar billede mugs Novice
18. juli 2001 - 17:19 #11
Din rapport er baseret på en forespørgsel, og i forespørgslen kan du indsætte en funktion \"Between\" der returnerer de poster der ligger indenfor et givet værdiområde, f.eks. poster mellem 2 datoer.

For at gøre forvirringen total, kan du også indtaste i forespørgslen:

Between [formularnavn]![feltnavn] And [formularnavn]![feltnavn]

på den måde kan du oprette en formular, der ved hjælp af 2 ubundne tekstfelter indsætter kriterier i forespørgslen. Men lad det ligge indtil du har fået det til at virke på den mest simple måde.

Mugs
Avatar billede webhelpers Praktikant
18. juli 2001 - 17:31 #12
Rapporten skal ikke kunne vise, hvad der ligger ml. indtastningen i 2 ubundne tekstfelter. Den skal kunne vise resultatet af søgningen...

Between-muligheden har jeg fået til at virke, men det er en anden del af min database (joh, du læste rigtigt - der er noget i min database der virker 8o) )
Avatar billede maydk Nybegynder
18. juli 2001 - 17:47 #13
Kan du bruge det her til noget???
<%
strsql = \"select * from final\"
set rs = conn.execute(strsql)

do

Response.write rs(\"Kunder\") & \"<br>\"

rs.moveNext

Loop while Not rs.EOF
conn.close
set conn = nothing
%>
Avatar billede webhelpers Praktikant
18. juli 2001 - 18:02 #14
<maydk
Det kan godt være, men VBA har jeg ikke har så fantastisk meget forstand på.
Men jeg gemmer koden, og prøver den af iaften, hvis jeg kan finde ud af at bruge VBA
Avatar billede maydk Nybegynder
18. juli 2001 - 18:09 #15
...så kan jeg forestille mig at du gerne vil have databaseforbindelsen med!
<%
Set Conn = Server.createobject(\"ADODB.connection\")
dsn = \"driver={microsoft access driver (*.mdb)}; dbq=\" & server.mappath (\"undermappe/final.mdb\")
Conn.open dsn

strsql = \"select * from final\"
set rs = conn.execute(strsql)

do

Response.write rs(\"Kunder\") & \"<br>\"

rs.moveNext

Loop while Not rs.EOF
conn.close
set conn = nothing
%>
Good Luck
Avatar billede webhelpers Praktikant
18. juli 2001 - 18:19 #16
Undskyld med i hvilket sprog har du skrevet koden i? Det ligner ikke umiddelbart helt noget jeg har set før, men jeg er selvfølgelig også rookie.
Avatar billede maydk Nybegynder
18. juli 2001 - 18:28 #17
Jeg har muligvis blandet mig et sted jeg ikke skulle??? Jeg syntes bare det lignede hinanden. Men det er Visual Basic i ASP.
Avatar billede webhelpers Praktikant
18. juli 2001 - 18:39 #18
Næj, det tror jeg ikke du har, men det er bare ikke lige det jeg er ude efter, desværre.
Avatar billede fdata Forsker
18. juli 2001 - 19:06 #19
Du skriver \"filter\"; men du mener vel, at du har en postkilde, der hedder:
  SELECT Final.*
  FROM Final
  WHERE [Final].[ID]=[Forms]![Kunder].[ID];
Du behøver ikke et filter.
Avatar billede fdata Forsker
18. juli 2001 - 19:08 #20
... og så forudsætter det selvfølgelig, at alle Final-posternes ID-felt er lig med kundeformens ID. Din navngivning er nemlig en anelse atypisk  ;o)
Avatar billede webhelpers Praktikant
18. juli 2001 - 19:17 #21
Hej fdata
Kan det ikke komme ud på ét, for et filter er jo på baggrund af en SQL-forespørgsel eller hva\'?
Hvis jeg ikke skal benytte et filter, hvad skal jeg så bruge i rapporten før den viser formularens resultatet fra søgningen?

Det hele er i én tabel. final.ID er fra den bagvedliggende tabel, og kunder.id er fra formularen kunder.
Avatar billede fdata Forsker
18. juli 2001 - 20:02 #22
Der er to varianter:

1:
Postkilde:
  SELECT Final.*
  FROM Final
  WHERE [Final].[ID]=[Forms]![Kunder].[ID];

2:
Postkilde:
  SELECT Final.*
  FROM Final
og filter:
  ID=[Forms]![Kunder].[ID];

Avatar billede webhelpers Praktikant
18. juli 2001 - 20:06 #23
fdata har du en SQL-sætning der kan vise alle poster, hvor final.id=forms!kunder.id, istedet for kun én som den gør nu?? Eller ligger problemet måske et andet sted???
Avatar billede terry Ekspert
18. juli 2001 - 20:30 #24
If you have made a report which shows ALL records from the table final, then you can open the report with a filter from your form. If you add a button to the form, a wizard will create the code necessary to open the report. You can then modify it so that it looks something like this.



Dim stWhere as string
Dim stDocName as String


stDocName = \"YouReportName\"
stWhere = \"[Final].[ID]= \" & [Forms]![Kunder].[ID]

DoCmd.OpenReport stDocName, acPreview, ,stWhere
Avatar billede webhelpers Praktikant
18. juli 2001 - 21:17 #25
>terry
Tak for det, men det hjalp desværre heller ikke. Jeg har prøvet at skrive din kode ved knappen i formularen, men det åbner bare en rapport der viser alle poster, uden filter. SÅ prøvede jeg med din kode i forbindelse med åbning af rapporten, men her viser den stadig kun én post....
Avatar billede fdata Forsker
18. juli 2001 - 22:43 #26
Har du prøvet at oprette en forespørgsel med SQL udtrykket? Viser den flere poster?

Hvis JA, kan du jo basere rapporten på forespørgslen.

Hvis NEJ, har du et data-problem. Så må du checke, om det virkelig er [Final].[ID], der skal måles op mod [Forms]![Kunder].[ID]




Avatar billede webhelpers Praktikant
18. juli 2001 - 22:58 #27
Ja min SQL-forespørgsel som hedder SELECT Final.*
FROM Final WHERE [Final].[Navnet] Like [Forms]![Kunder].[Navnet]; viser de rigtige poster i formularen.
Jeg søger fx. på \'grøn\' som navn i en søgemenu, og Sql-forespørgslen viser mig så 16 hits i en formular, når jeg så åbner rapporten baseret på præcis samme sql-forespørgsel dukker der nu kun 6 hits op!.....Det er som om rapporten ser bort fra de hits, hvor navnet adskiller sig fra det første hit. Meget mærkeligt.

Avatar billede webhelpers Praktikant
18. juli 2001 - 23:05 #28
Jeg kan tilføje at den finder følgende poster i søgningen på \'grøn\': grønlandsfly A/S, grønlandsfly A/S, grønlandsfly A/S, grønlandsfly A/S, grønlandsfly A/S, grønlandsfly Hjemmestyre, grønlandsfly Hjemmestyre, grønlandsfly A/S, grønlands sundhedsvæsen + 7 andre. Når jeg åbner rapporten vil den kun vise de poster som hedder grønlandsfly A/S. Den udelader altså grønlandsfly hjemmestyre og grønlands sundhedsvæsen + nogle andre poster som ikke er grøndlandsfly A/S.
Avatar billede webhelpers Praktikant
18. juli 2001 - 23:10 #29
Når resultatet af søgningen kommer frem med de 16 hits, har jeg en knap som viser udskriften af disse(rapporten). Men hvis postvælgeren står i første post ex. postnr. 1 som er grønlandsfly A/S, viser rapporten kun de poster som er grønlandsfly. Går jeg til en anden post end grønlandsfly A/S, som fx grønlands hjemmestyre, ja så viser rapporten kun poster som er grønlands hjemmestyre. Der må altså være noget galt med min rapport eller SQL i rapporten. Men Hvad?? Puha mand, det her trækker i langdrag. Jeg er sgu\' glad for at i kæmper videre for at hjælpe mig.
Avatar billede terry Ekspert
19. juli 2001 - 08:10 #30
numsi> send your database to tbs@io.dk and I will take a look.
Avatar billede fdata Forsker
19. juli 2001 - 18:18 #31
Hvis jeg forstår dig rigtigt:
Du søger i formularen på \"grøn\" og får 16 hits; men rapporten viser kun de poster, der svarer til den markerede post.
Det er vel også rigtigt. Din rapport er jo baseret på:
  [Final].[ID]=[Forms]![Kunder].[ID]
Kunder.ID er vel her f.eks. \"Grønlandsfly A/S\"

Hvis du vil printe alle 16 poster, må du basere rapporten på den samme udvælgelse, nemlig:
  [Final].[Navnet] Like [Forms]![Kunder].[Navnet]

.. eller hvad?

(Vi har ikke noget mod at kæmpe for dig. Det er det, eksperten er til for. Næste gang kæmper du måske for en af os. Selv Terry kunne have problemer - med noget andet end Access - right, mate?)
Avatar billede webhelpers Praktikant
19. juli 2001 - 23:54 #32
fdata>
Jep, du har ret. Rapporten skal baseres på samme udvælgelse, og det fik mig til at tænke hvad der kunne være fejlen, derfor får du mine points, selvom der er mange der har givet en stor hjælp.

Fejlen er, at rapportens åbning og derved kørsel af udvælgelsen (forespørgslen) sker via et tryk \'udskriv\' knappen i den formular der viser resultatet af søgningen. Og når jeg står og kigger på resultat ét ud af 16 i formularen Kunder og kører forspørgslen, vil Forms.Kunder.Navnet jo være den aktuelle post jeg kigger på, nemlig grønlandsfly A/S og ikke \'grøn\'.......derfor viser rapporten kun poster med grønlandsfly A/S - en rigtig dum tænkefejl. Løsningen på problemet er derfor at rapporten skal åbnes samtidig med resultaterne af søgningen(Kunder), fordi på den måde vil Kunder.Navnet nemlig være det samme i formularen Kunder henholdsvis i rapporten. Håber jeg kunne forklare det forståeligt.
Tak for kampen.
Avatar billede mugs Novice
20. juli 2001 - 00:18 #33
Hvoraf vi vel er nogle, der har lært at analysere problemet lidt bedre, inden vi kaster os ud i \"gode forslag\".

Mugs
Avatar billede webhelpers Praktikant
20. juli 2001 - 11:20 #34
Arh, jeg synes nu I var en stor hjælp. Når jeg sidder og kigger på indlæg fra min side, kan jeg godt se, at jeg har lidt problemer med at formulere problemet ordentligt. Hænger nok også lidt sammen med at jeg er rookie på dette område.
Jeg er stadig imponeret over din fight mugs, og sætter stor pris på den. Det er dejligt at vide at ekspertens brugere kæmper så hårdt for at hjælpe.
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