Avatar billede bravida Nybegynder
24. september 2004 - 16:45 Der er 25 kommentarer og
1 løsning

Access formular

Mit problem består i hvordan jeg lige skal gøre dette. Prøver så godt jeg kan at beskrive dette.
Jeg har en Formular som hedder ”Musik aftalebekræftelse” den har relation til 3 tabeller.
Nu har jeg så oprettet en ny Formular som hedder ” Forespørgsel arrangement” den har også relation til de samme 3 tabeller.
Det som jeg så gerne vil er når en ”Forespørgsel arrangement” bliver godkendt skal den kunne flyttes over i Formular ” Musik aftalebekræftelse” og derefter slettes fra ”Forespørgsel arrangement” Håber på lidt hjælp.
Avatar billede ricky Nybegynder
24. september 2004 - 17:29 #1
lav et statusfelt i en af tabellerne
1 = godkendt
2 = ikke godkendt
og filtrér så efter om det er den ene eller anden formular.
(kan også laves med et boolean (ja/nej) felt)
Avatar billede bravida Nybegynder
24. september 2004 - 17:35 #2
ricky - forstår ikke lige hvad du mener
Avatar billede ricky Nybegynder
24. september 2004 - 18:37 #3
hmm.. så er det nok fordi at jeg ikke forstår hvad du mener :)

sådan som jeg læser det - du vil gerne have 2 formularer baseret på de samme tabeller - men udvalgt og præsenteret efter om der er en aftale eller ej.

er det korrekt ?
Avatar billede bravida Nybegynder
24. september 2004 - 19:38 #4
Prøver at uddybe det lidt mærmere. I den formular som hedder "Musik aftalebekræftelse" der indskriver jeg nye indgået aftaler.
Så har jeg oprettet en ny formular "Forespørgsel arrangement" hvor alt bliver skrevet ind, på samme måde som var det i "Musik aftalebekræftelse" men da det kun er en forespørgsel som måske ikke bliver til noget, skal den slettes igen. Hvis den bliver til noget, ønsker jeg at overføre den til "Musik aftalebekræftelse" uden at skulle genindskrive det igen.  Ja lidt svært at forstå en andes tankegang.
Avatar billede ricky Nybegynder
24. september 2004 - 22:23 #5
ok - det var også det jeg troede.

Så holder jeg fast i ovenstående. Du skal lave et felt i din hovedtabel som angiver om hvorvidt det er en forespørgelse eller om det er et aftalt arrangement. feltet kunne f.eks. hedde status og i det skriver du så f.eks. '1' for forespørgelse og '2' for aftalt.

Når du så åbner den ene form sætter du filter til kun at vise '1' og i den anden '2'.

Du kan evt. forskønne '1' og '2' med en combobox (jeg ved ikke hvad sådan én hedder på Dansk). Du kan også lave den direkte i tabellen som en combobox.

Snakker vi helt forbi hinanden ?
Avatar billede mugs Novice
24. september 2004 - 23:06 #6
Er enig med ricky. Der er ikke behov for flere tabeller.

Og dog. Hvis man f.eks har priser i en relateret tabel og en forespørgselse indeholder parametre som f.eks priser på oprydning, kan disse priser jo ændres i takt med, at udviklingen i samfundet ændrer lønningerne, eller en ændring af momssatsen. Hvis det så er nødvendigt at beholde historikken i de bekræftede aftaler, er det nødvendigt at sende data over i en anden tabel.
Avatar billede ricky Nybegynder
24. september 2004 - 23:18 #7
enig! sikke vi ka' hva' :)

Og dog. ;) manden har jo allerede besluttet sig for at det er baseret på de samme 3 tabeller.
Avatar billede mugs Novice
24. september 2004 - 23:22 #8
Så er det nødvendigt med en ny tabel til bekræftelserne, hvis disse indeholder priser og historikken skal bevares.
Avatar billede bravida Nybegynder
26. september 2004 - 11:31 #9
ricky det er helt sikker rigtig det som du beskriver, men jeg er bare ikke lige med på hvordan du mener jeg skal gøre dette. I tabellen arrangement har jeg oprettet et nyt felt "forespørgsel" med kriterier "Is Not Null" som vises i den nye formular "forespørgsel" og viser også kun dem hvor der er indtastet en dato i feltet forespørgsel. Nu er den så blevet godkendt og skal vises i "Musik aftalebekræftelse" ?????
Avatar billede bravida Nybegynder
26. september 2004 - 12:14 #10
Har nu lavet en ekstra tabel for at gøre det lettere. "Forespørgsel"
Avatar billede mugs Novice
26. september 2004 - 13:21 #11
bravida > Der skal ikke være en ekstra tabel.

I tabellen arrangement har du alle aftaler uanset om de er bekræftede eller ej. Her har du feltet "forespørgsel" (iøvrigt et dårligt navn, idet det kan forveksles med objektet forespørgelse). Humlen er nu, at du skal have 2 formularer, der har hver sin postkilde, den ene med kriteriet 1 i feltet forespørgsel og det andet med kriteriet 2.

Der er andre og mere elegante måder at gøre det på, men lad os nu få dette til at køre, inden vi går videre.
Avatar billede ricky Nybegynder
26. september 2004 - 13:56 #12
enig med mugs. også i at der (på nuværende tidspunkt) IKKE skal være en ekstra tabel.

Ud fra det du skriver 11:31:12 er det eneste du mangler jo kun at vise dem er er godkendt i "Musik aftalebekræftelse" - har du problemer med dette ?
Avatar billede bravida Nybegynder
26. september 2004 - 15:27 #13
Det er nok rigtig med kun en tabel. Men nu har jeg lavet 2 ens tabeller hvor den ene hedder " Aftalebekræftelse" den anden "Forespørgsel" Synes det er lettes at styre. Lad os nu sige der ligger 5 poster i "Forespørgsel" nr. 4 post er blevet godkendt og denne skal flyttes over i "Aftalebekræftelse" Derefter sletter jeg nr. 4 post i Forespørgsel. Men hvad skal jeg bruge for at flytte post 4.
Avatar billede mugs Novice
26. september 2004 - 15:30 #14
Det nemmeste du kan gøre, er at lave en tilføjelsesforespørgsel.
Åbn db i databasevinduet > Fanen forespørgsler > Ny og kald den tabel der skal mlevere data infd i designgitteret og sæt alle relevante felter ned i forespørgselsgitteret.
Derefter vælger du forespørgsler på menulinien og vælg Tilføjelsesforespørgsel og vælg den tabel der skal modtage data.
Avatar billede mugs Novice
26. september 2004 - 15:40 #15
I din tilføjelsesforespørgsel skal du have et kriterie, der identificerer den post der skal overføres til "Aftalebekræftelse". Afhøngig af, hvordan din db er skruet sammen, kan du gøre det på flere måder.

Hvis den pågældende aftale er den aktuelle post i din formular, kan du henvese til denne post, ved at indtaste flg. i forespørgslens felt:

[Forms]![FORMULARNAVN]![FELTNAVN]

Herefter kan du køre forespørgslen fra din formular således:

Docmd.OpenQuery "FORESPØRGSLENS NAVN"

Når tilføjelsesforespørgslen køres, vil du nu få en advarsel om, at du er ved at tilføje en post. Denne advarsel kan du undlade ved denne kode:

DoCmd.SetWarnings False
Docmd.OpenQuery "FORESPØRGSLENS NAVN"
DoCmd.SetWarnings True

På samme måde som du lavede tilføjelsesforespørgslen, skal du nu lave en sletteforespørgsel der sletter den netop overførte post.
Avatar billede ricky Nybegynder
26. september 2004 - 16:42 #16
bravida>> da du ikke er mere erfaren vil jeg umiddelbart foreslå den oprindelige metode, da det klart er den mest simple..

..og ellers vil jeg overlade den anden metode helt til mugs, da jeg dels ikke er enig i at det er måden at gøre det på (ville have lavet det i ren kode, når nu det skal være) og desuden vil det forvirre mere end det gavner.
Avatar billede mugs Novice
26. september 2004 - 16:56 #17
ricky > Helt OK at vi ikke er helt enige.

Det er korrekt, at det optimale vil være, at lave det hele i ren kode. Men som du selv påpeger, er det største problem nok spørgerens manglende erfaring i Access. Det er dette der gør, at jeg ikke foreslår det hele i ren kode, idet vi så skal kende feltnavnene. Bruger du tilføjelsesforespørgsler har du Access til at hjælpe dig.

Og jeg kan absolut ikke se, at det forvirrer mere end det gavner. På lige netop dette påunkt er vi meget uenige :o)
Avatar billede ricky Nybegynder
26. september 2004 - 17:09 #18
ok
Avatar billede bravida Nybegynder
26. september 2004 - 17:16 #19
Læg også et svar ricky,
Avatar billede mugs Novice
26. september 2004 - 18:25 #20
bravida > er dit problem løst? Og i givet fald, hvilken løsning kom du frem til?
Avatar billede bravida Nybegynder
26. september 2004 - 20:08 #21
Nej mit problem er ikke løst, men arbejder videre med denne. Prøver at bruge nogle af jeres forslag. Mangler lige et svar fra ricky så jeg kan afslutte dette emne. Så tak til jer begge to.
Avatar billede mugs Novice
26. september 2004 - 20:10 #22
Kan du sende db til:

mugs@mail.dk

Så vil jeg se på den.
Avatar billede bravida Nybegynder
26. september 2004 - 20:17 #23
mugs = ja det kan jeg, varer lige et øjeblik, sender den som en zip
Avatar billede ricky Nybegynder
26. september 2004 - 21:17 #24
jeg afstår fra point.
Avatar billede mugs Novice
26. september 2004 - 21:24 #25
ricky > Det synes jeg ikke du skal. Jeg tilbød at se på den, fordi det er et relativt simpelt problem. Du gav jo den første salomoniske løsning, så du tilkommer da også noget "løn"

Iøvrigt er db returneret til bravida med et par forespørgsler og et par gode råd.
Avatar billede mugs Novice
26. september 2004 - 21:43 #26
Tak for point.
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