Gå til innhold

[Løst]To tabeller, en til mange, begrense valg i combobox ved hjelp av distinctrow?


Anbefalte innlegg

Hei

 

Jeg har et lite problem med en database, tror jeg er på rett vei.

For enkelthetsskyld har jeg laget et lite eksempel:

 

En database som skal kunne registrere frukt og grønnt:

Tabell1_Gruppe

Gruppe_ID

Gruppe_navn

 

Tabell2_Mat

Mat_Navn

Gruppe

 

Slik at man kan registerer grupper som "frukt" "grønnsak".

Dette skal inn i et skjema, og ved hjelp av combobox til videre arbeid i en tredjetabell (hva nå enn det er, dårlig eksempel)

 

MEN her er problemet,

Jeg vil ha to comboboxer som henger sammen slik at når jeg velger gruppe = Frukt kommer det opp kun de som er registrert i tabel 2 grønt med gruppe = Frukt.

 

post-74843-1253954221_thumb.jpg

 

Er dette mulig ved hjelp av en DISTINCTROW, slik at ved valg av "frukt", forsvinner alle som er registrert på "grønnsak" ?!?!? og ikke minst, ved innlegging i access, skal denne mysql linjen inn på begge comboboxene eller kun på den siste (som er avhengig av den første?)

 

takker for all hjelp

Lenke til kommentar
Videoannonse
Annonse
Det hjelper ikke med DISTINCT.

 

På klientsiden så må du endre spørringen til mat-dropdown ved valg i gruppe-dropdown ved at spørringen inneholder et WHERE Gruppe=<verdi fra gruppe-dropdown>

 

 

jjaaa se såå.

får til nå å lage avhengige combinasjonsbokser i et skjema, men ikke i tabellene. WHERE statementet får jeg bare til å sette en fast konstant, f.eks ' = 0'.

 

Mulig jeg bare kan ha det i skjema. Har funnet en løsning med VBA, men det er sykt lenge siden jeg gjorde sånt sist.

 

takker for tilbakemelding hvertfall

Lenke til kommentar

Når gruppe er valgt og et event utføres (feks ved klikk på en knapp eller via en listener på elementet), kan du kalle en funksjon som setter opp den neste comboboksen.

Feks:

groupChanged(value)

{

Kjør SELECT * FROM MAT WHERE Gruppe_ID=value; <- Valgt gruppeid fra gruppe-dropdown

Bruk datene til å lage Mat-drowdown;

}

Lenke til kommentar

{

Kjør SELECT * FROM MAT WHERE Gruppe_ID=value; <- Valgt gruppeid fra gruppe-dropdown

Bruk datene til å lage Mat-drowdown;

}

 

jepps, fikk til!

det som er saken er at jeg har 4 tabeller i 4 combiboxre i et 5 skjema. det viste seg at hver av disse måtte få definer "RowSource" før det var "deres" tur, slik at de stod tomme helt til kravene var innfridd, så fikk de relativt innhold.

 

Brukte mye AfterUpdate, Rowsource og fylte inn spørringer etterhvert som kravene fylte seg på.

 

Likar'no! :D

 

Takker for all hjelp ** :D

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...