Avatar billede OnkelJoakim Novice
09. juli 2002 - 13:24 Der er 20 kommentarer og
1 løsning

Knapper sql og overførsel til en form

Hej alle!

Jeg er i gang med lidt design til en database. Jeg skal lave en formular med nogle knapper. Disse knapper skal udføre en sql-query. Svaret på denne query skal overføres til en underformular, hvor man så kan taste nogle data ind. Hvordan gøres dette?

For at klarlægge det lidt kan jeg fortælle at jeg har nogle tabeller, som ser ud som følgende:

Stamdata:
ID, Licensnummer, navn, adresse ....

InterneTurneringer:
ID, Licensnummer, 3BandeKlubmester, 3BandeKlElite, 3BandeKlMester, 3BandeKlA ....... (Yes/No felter)


Knappen skal KUN lave forespørgsel på en af de InterneTurneringer og skal returnere licensnummeret, hvis feltet er TRUE.


Hansen
Avatar billede terry Ekspert
09. juli 2002 - 13:59 #1
not quite sur ewhat you are trying to do!
FIRST make the tables (I think you have done that) then use the form wizard to create a main form with a sub form the wizard will do this IF your relationships are in place.
I suspect you are trying to filter the records you wnat to see on the sub form! If That is correct then you should try looking at the filter property for the sub form.
Avatar billede OnkelJoakim Novice
09. juli 2002 - 14:32 #2
uhm.

Im trying to make a mainform with perhaps 10 buttons. Each button will have to do a sql-query based upon what tournament i will enter data in. Ie. I will perhaps enter data for the tournament "3BandeKlubmester". I will then have to lookup in the table InterneTurneringer.3BandeKlubmester for those ppl who has signed up for that tournament. The results of that query has 2 b returned to the subform with some fields: Name of player (from stamdata), score, (result database (new table)) and entries (no. of entries to get current score).
I know i also will have to get some kind of a key to differenciate between the different tournaments in the resultdatabase but i think i can figure that out when the other thing is running.

I hope this clears it out a little more.

Hansen
Avatar billede OnkelJoakim Novice
09. juli 2002 - 14:55 #3
hmmm.

I can now c that i will need another subform where i can select between the players who's selected and a subform where i can enter the results :-(

Just a comment

Hansen
Avatar billede OnkelJoakim Novice
09. juli 2002 - 19:28 #4
hmmm. Jeg kan se at jeg bliver nød til at dele spørgsmålet lidt op.

OK. here we go.

Kan man lave en knap på en form, hvor man får denne knap til at udføre en sql-sætning?

ie: "SELECT stamdata.[Intern nummer], stamdata.Navn, InterneTurneringerCarambole.[3 Bande Klubmester]

FROM stamdata INNER JOIN InterneTurneringerCarambole ON stamdata.Licensnummer=InterneTurneringerCarambole.Licensnummer

WHERE (((InterneTurneringerCarambole.[3 Bande Klubmester])=True));


Hvis Jeg får et passende svar vil jeg lave et nyt spørgsmål (med nye points)


\\Hansen
Avatar billede terry Ekspert
09. juli 2002 - 19:35 #5
Yes!
rasmushansen If we knew what you are trying to do the we could make some suggestions.
Avatar billede OnkelJoakim Novice
09. juli 2002 - 20:08 #6
ok. Så kommer hele smøren!

Jeg har 1 formular, hvor alle data er samlet. (se: http://www.abc72.dk/temp/Stamdata.bmp)  Her kan f. eks skrives navn, adresse, postnummer og byen bliver slået op automatisk. Man kan endvidere tilmelde personen til nogle interne turneringer og eksterne turneringer. Disse turneringer tilmeldes man til ved at sætte et "flueben" ud for denne turnering.

Når man skal taste løbende resultater ind for en given turnering vil jeg have alle Interne turneringer samlet på én formular. Selve "Main"-formularen skal udføre en sql-query alt afhængig af hvilken knap (turnering) man vil taste resultater ind for. (Se: http://www.abc72.dk/temp/resultatskema.bmp ) Sql-sætningen skal KUN returnere de personer, som er tilmeldt turneringen. Derefter skal man kunne indtaste de løbende resultater.

Ydermere skal jeg kunne skelne mellem de forskellige turneringstyper i resultattabellen (kun EN tabel til ALLE resultater uafhængigt af turneringstypen)

Jeg håber dette giver et bedre indblik på sagen.

Databasen ligger her: http://www.abc72.dk/temp/db5.mdb  (4 mb)

Jeg vil gerne tilføje flere points til en løsning. Evt ændringer er også ok. Jeg ved bare ikke hvor mange points det kræver. giv eventuel selv et forslag på points.

PS: Det skal IKKE bruges til web'et men lokalt i billardklubben


Hansen
Avatar billede terry Ekspert
09. juli 2002 - 20:33 #7
hansen>I have now downloaded the database but it still isnt easy to help you. You have a number of tables named InternTurneringerKegler... so it isnt easy to guess which one needs to be used for each button.

I have had a look at the relationships diagram but it desont help much!
Avatar billede OnkelJoakim Novice
09. juli 2002 - 23:56 #8
hmmm.

Terry> Der er 3 Interne turneringstyper (Pocket, Kegler og Carambole), som man kan tilmelde sig til. Alle felter i disse tabeller har en Yes/No værdi. Disse værdier vil jeg bruge til at checke om der er nogle personer som har tilmeldt sig til en turnering. Tabellerne skal IKKE bruges til andet.

Når en spiller er tilmeldt til en turnering kan han så spille de turneringer. Det er disse resultater, som jeg skal holde styr på. Hvis Eks. en spiller spiller 1 kamp med 500 points i 20 indgange i "Kegler klubmester", skal man i en formmular kunne indtaste disse data. Men da man IKKE skal lede efter spillere i indtastningsformularen, som ikke har tilmeldt sig til "Kegler klubmester", skal der kun forekomme spillere for denne turnering.

Har samme spiller også spillet en anden turnering (eks. Kegler Distance), skal man bruge knappen (Distance Kegler (mangler vidst)) til at lave denne søgning på HVEM som er tilmeldt denne turnering og disse data skal så også gemmes i samme resultatTabel.

Jeg er nærmest lidt ærgelig over at jeg ikke har fået beskrevet problemet ordentlig og at det ikke er løst. Hvis det er helt umuligt at løse vil du få de point for dine hurtige svar og din hidtidige arbejdsindsats


Hansen
Avatar billede terry Ekspert
10. juli 2002 - 09:27 #9
rasmushansen>I havent forgotten you, it was just getting late!
IF others dont answer this question then I will take a look as soon as I get some time, I'm at work at the momnet so it will be first when I get home!
I am SURE we can find a solution but first its just a case of understanding FULLY what it is you want. It is also necessary for me to understand what you have made so far!
Avatar billede OnkelJoakim Novice
10. juli 2002 - 12:21 #10
Jeg bliver nok nød til at beskrive databasens formål helt fra start.

Vi er en billardklub i Albertslund, som vil lagre vores data i en database. Disse data består af følgende:

Licensnummer (fødselsdag + 0  eks. 1305710 = 13. maj 1971 og et 0 hvis flere har fødselsdag samme dag)
Intern licensnummer ( 3 cifre )
Navn
Adresse
Postnummer
By
telefonnummer (fastnet)
mobilnummer
    Eksterne snit (Årssnit)
3 Bande carambole (eks: 0,479)
1 Bande Fri          (eks: 0,70)
Fri              (eks: 1,30)
Kegler            (eks: 18,25)

Spillervest ( til ekstern brug )
Startbog    ( til ekstern brug - Her står de eksterne snit i )


Årssnitene bliver ændret en gang hvert år


Hvert medlem har derudover mulighed for at låne nogle nøgler til forskellige formål. Disse er:

Hoveddørsnøgle          (kræver et depositium på 500 kr fra spillern)
Depotnøgle (kun til bestyrelsesmedlemmer)
Køskabsnøgle + køskab (køskabet har et nummer - 100 kr i depositium)


Når medlemmerne spiller dagligt i klubben er der forskellige turneringer, som de kan tilmelde sig til. Disse turneringer er sæsonpræget. Sæsonen er delt op i 2. Sommerturneringer og vinterturneringer. Alle turneringerne er følgende:

----------------------------------
Interne turneringer
----------------------------------

3 bande klasse Elite
3 bande klasse Mester
3 bande klasse A
3 Bande klasse B
3 Bande klasse C

3 Bande Handikap ( her spilles 30 indgange )
3 Bande distance ( her spilles til en beregnet distance. Distancen er årssnit i 3 bande x 30 )
3 Bande sommer  ( 30 indgange )
3 Bande Klubmester ( her spilles til 50 points )
3 Bande cup      ( Her spiller begge spillere til deres beregnede distance vinderen går videre )

Fri Kl Elite
Fri Klasse Mester
Fri Klasse A
Fri Klasse B
Fri klasse C

Fri Handikap
Fri Distance
Fri sommer
Fri klubmester


Kegler Klasse Elite
Kegler Klasse Mester
Kegler Klasse A
Kegler klasse B
Kegler Klasse C
Kegler Klasse D
Kegler Klasse E

Kegler Handikap
Kegler Distance
Kegler Sommer
Kegler Klubmester
Kegler Cup


----------------------------------
Eksterne turneringer
----------------------------------
Spillerne kan i løbet af sommeren ( inden 1. juni ) tilmedle sig til nogle eksterne turneringer. Disse er som følgende:

4 mands hold i Kegler og / eller 3 Bande carambole (her er det divisioner)
2 mands hold i Kegler og / eller 3 Bande carambole
individuelle klasser (eks: 3 bande klasse A og / eller kegler klasse A) Man kan tilmelde sig til alle de eksterne turneringer som er tilgængelige fra SJBU's side (billard-unionen) Det er normalt alle de turneringer som vi selv tilbyder internt til spillerene
Oldboys turneringer ( kegler, fri 3 bande, 1 bande )


Problemet for mig er at finde en fornuftig løsning til at truneringslederen kan indtaste de løbende resultater for de INTERNE TURNERINGER. Designet af dette er derfor vigtigt da han hele tiden skal finde den spiller som han vil taste resultatet ind for samt finde den rigtige turnering. Disse data vil jeg gerne (hvis muligt) samle i EN tabel (resultattabel).
Turneringslederen sidder faktisk en en seddel hvorpå der står et navn, turneringstype (eks 3 bande sommer), et antal indgange (hvor mange gange han har brugt til at opnå hans points) samt en score. Disse data bliver kun indtastet en gang hver uge. Der vil typisk være 100 spillelister af denne type, som skal tastes ind.
Det jeg havde forsøgt på var at lave en formular med et antal knapper på. Disse knapper skulle fungere som en slags genvej mellem de forskellige turneringstyper. Det kan godt være at det er en dårlig løsning som jeg var kommet frem til så hvis der er en bedre løsning til dette problem er jeg mere end villig til at acceptere dette.


Jeg håber at dette vil hjælpe.

Hansen
Avatar billede OnkelJoakim Novice
10. juli 2002 - 13:18 #11
Terry> Jeg er ked af det, men jeg tror at min DB trænger til en kræftig oprydning i form af en normalisering. Jeg er i øjeblikket dybt begravet i "Elmasri & Navathe's" Fundamentals of Database Systems :-)

Hvis du stadigvæk har lidt blod på tanden er du velkommen. Du har helt sikkert fortjent dine points. no matter what.

Hansen
Avatar billede terry Ekspert
10. juli 2002 - 13:24 #12
Hi Hansen>Yes it may help if it was normalized but I think we can find a solution as it is.
Your new explanation hopefully helps some, so I will see what I can do when I get home this evening.
mvh
Terry
Avatar billede terry Ekspert
11. juli 2002 - 09:59 #13
Hi Hansen!
Can you send the dB to dktebrsa@europe.lego.com, I'm at work at the moment and dont seem tobe able to download it!

Compact it first and if possible ZIP it. You can compact it in the tools + database utilities menu.
I have had a quick look at it but there are still a few things I need to know and I just want to take another look first!
Avatar billede OnkelJoakim Novice
11. juli 2002 - 10:24 #14
Sure :o)

ISP is updating 2day.

\\Hansen
Avatar billede terry Ekspert
11. juli 2002 - 10:33 #15
ISP ?
Avatar billede OnkelJoakim Novice
11. juli 2002 - 10:53 #16
woops... meant domain-provider (www.abc72.dk). Their servers r down from 9.00 to 16.00. Luckily im using another provider for my mails

\\Hansen
Avatar billede terry Ekspert
11. juli 2002 - 11:17 #17
OK!
I am just putting something together for you to look at, very simpel, just to see what you think!
Avatar billede OnkelJoakim Novice
11. juli 2002 - 11:44 #18
sounds cool.

PS: i'll b gone for 1-2 hours from now.  :-(

\\Hansen
Avatar billede OnkelJoakim Novice
11. juli 2002 - 11:50 #19
btw. U can catch me on messenger ( if ya on it ). Im registred with my email.

\\Hansen
Avatar billede OnkelJoakim Novice
11. juli 2002 - 18:33 #20
Problem løst :))))
Avatar billede terry Ekspert
12. juli 2002 - 08:26 #21
rasmus>If you have any questions then you can contact me at me work address
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