Avatar billede elizabeth Nybegynder
13. december 2004 - 11:15 Der er 9 kommentarer

Inspiration til indtastningsformular

Hej alle,
Jeg har en database, hvor jeg har til en hovedtabel har en masse tilhørende hjælpetabeller, med yderligere information om en specifik post fra hovedtabellen. Rent visningsmæssigt fungerer det fint. Jeg har lavet en formular til den overordnede tabel, og inkluderet hjælpetabellerne i formularen via underformularer placeret i faneblade. Når jeg efter at have oprettet en post i hovedtabellen, vil jeg gerne oprette de yderligere data i hjælpetabellerne. Men hvordan gøres dette smartest? Jeg kunne oprette "tilføj ny post" i hjælpetabellerne, ved at lave en indtastningsformular for hver hjælpetabel, men det er det jeg helst vil undgå, da denne løsning vil være mest tidskrævende for brugeren. Er der en måde til at lave indtastning i flere hjælpetabeller i samme formular? Håber der er nogen der kan hjælpe.
Avatar billede mugs Novice
13. december 2004 - 12:46 #1
Jeg vil råde dig til nøje at på selve designet af databasen. Hvordan ligger dine relationer mellem hovedtabellen og de forskellige hjælpetabeller?

Hvis du f.eks har 2 hjælpetabeller:

TBLbilmærke:
ID (PK)
FLDmærke
FLDmodel

TBLland
ID (PK)
FLDfremstillingsland

I hovedtabellen har du flg. felter
ID
FLDidmærke (combo)
FLDidland (combo)

Træk relationer fra hovedtabellens felter til hver af hjælpetabellerne til de respektive felter. I en forespørgsel henter du alle tabeller ind, og tager FLDidmærke og FLDidland fra hovedtabellen, og fra hjælpetabellerne FLDmærke, FLDmodel og FLDfremstillingsland.

Lav herefter en autoformular på denne forespørgsel. Nu du skifter værdi i dine combo, vil relationerne vise respektive data fra de andre tabeller.

Hvis du ikke er velbevandret i Access i almindelighed og i underformularer / faneblade i særdeleshed, vil jeg fraråde dig brugen af disse.
Avatar billede elizabeth Nybegynder
13. december 2004 - 13:25 #2
Hej mugs,
jeg tror jeg ved nogenlunde hvad du mener, men jeg får ikke tid til at arbejde mere på det før i aften eller i morgen. Så jeg håber det er ok, at du lige må vente lidt på pointene til jeg for det prøvet af.
Avatar billede mugs Novice
13. december 2004 - 13:28 #3
Du afprøver blot, og vender tilbage hvis du har spørgsmål.
Avatar billede mugs Novice
13. december 2004 - 13:30 #4
Hvis du lægger din e-mail, kan jeg senere idag lave et eksempel efter ovenstående med lidt uddybende kommentarer.
Avatar billede elizabeth Nybegynder
13. december 2004 - 16:53 #5
Undskyld jeg svarer så sent men har været væk fra computeren.

Du må da meget gerne lave et eksempel, så jeg har en idé om hvordan det ville se ud. Ellers som jeg skrev før, regner jeg med at jeg først får mulighed for at se på det sent i aften eller i morgen tidligt. Jeg kunne ikke lige se hvordan jeg sender dig en PM, så jeg må vist skrive min mailadresse her:
elizabeth_gregersen[at]yahoo[punktum]dk.
Avatar billede mugs Novice
13. december 2004 - 21:05 #6
Eksempel sendt.

Jeg ser du er ny på eksperten.dk, så velkommen til.

/ Mogens
Avatar billede elizabeth Nybegynder
14. december 2004 - 14:10 #7
Tak for velkomsten.
Så har jeg igen fået lidt tid til at se på mit database projekt. Tak for dit eksempel, men det var ikke helt det jeg havde i tankerne, men jeg har måske heller ikke været hel klar i min forklaring. Så lad mig prøve igen med et eksempel.

Jeg har et kundekartotek med oplysninger om denne, mine hjælpetabeller (som jeg måske ikke skulle kalde hjælpetabeller), ville f.eks. være børn af kunden, kommunikation med kunden (breve, telefoni mv), kundehistorik (adresseskifte mv) osv.
Jeg har temmelig mange af disse "hjælpetabeller", og måske kunne man med fordel gennemse efter oplysninger som er 1-1 med kunde og derefter flytte disse felter over i kundekartoteket, men ellers er de fleste oplysninger vist 1-mange.

Alle disse "hjælpetabeller" indeholder kundens ID som fremmednøgle (hedder det vist). Nå nu en bruger ønsker at udfylde disse oplysninger om kunden ville jeg gerne have at så mange af "hjælpetabellerne" kunne være på samme indtastningsformular. Dette kunne jeg vist bruge forespørgsler til, således at jeg vælger alle de felter jeg ønsker på min indtastningsformular. Bare et spørgsmål til dette. Jeg ville gerne have at brugeren først valgte hvilken kunde og derefter var alle fremmednøgle felterne udfyldt med kundens ID, og derfra kan brugeren indtaste de andre informationer. I de hjælpeformularer der bagefter kun indeholder ID'et og en primærnøgle (altså ingen indtastning), bør derefter slettes.
Avatar billede mugs Novice
15. december 2004 - 00:15 #8
I den forespørgsel der ligger til grund for din formular, skal du have indsat et kriterie. Dette skal gøres i hovedtabellens unikke  felt (PK) for kunden. I forespørgtsens kriteriefelt indtaster du blot:

[]

Herefter vil du få et POPUP vindue der beder dig indtaste den værdi, der svarer til kunden. Du kan gøre det lidt mere brugervenligt ved at indtaste en ledetekst som f.eks.:

[Indtast kundens unikke id]
Avatar billede mugs Novice
15. december 2004 - 00:48 #9
Glemte en enkelt detalje:

Hvis du har mange felter på din formular, kan du lave flere sider og opdele sidernes indhold efter emne. Du skal tænke på din formular som en køkkenrulle der hænger over din skærm og spoler op eller ned afhængig af dit valg af emne.

Du kan så lave nogle kommandoknapper i formularhovedet - foden, der sender dig til den respektive side.
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