Avatar billede bravida Nybegynder
22. september 2004 - 14:00 Der er 30 kommentarer og
1 løsning

Ekstra formular

Nu er jeg gået i stå vedr. opbygning af min database. Jeg ønsker at udvide denne med 2 ekstra formular visning, men ved ikke lige hvordag jeg skal takle dette. Den ene formular ønsker jeg at se hvilke rapporter som er sendt, og den anden hvilke rapporter jeg har modtaget. Denne spørgsmål kræver nok hjælp bagom, ved ikke om vi må dette.
Avatar billede jensen363 Forsker
22. september 2004 - 14:04 #1
Snakker vi om en form for dokumentstyring, når du nu snakker om rapporter ?
Avatar billede bravida Nybegynder
22. september 2004 - 14:08 #2
Nej kun formular visning, hvor jeg kan se hvilke som er sendt samt en der
viser hvilke jeg har modtaget.
Avatar billede jensen363 Forsker
22. september 2004 - 14:11 #3
Definér lige begrebet rapport ( afsendt/modtaget ) i forhold til din aktuelle database ... du snakker vel ikke om hvilke rapporter du har udskrevet, men en fysisk liste over de dokumenter/rapporter du har sendt/modtaget via et medie ( eks. mail )
Avatar billede bravida Nybegynder
22. september 2004 - 14:20 #4
Prøver lige at uddybe det bedre. Jeg har en formular hvor jeg indskriver
kunder samt bestilling af musik, hvor der er et felt [sendt]+ [modtaget]
Nu ønsker jeg så en ny formular som viser alle kunder jeg har sendt til.
Ligeså ønsker jeg også en ny formular som viser alle kunder jeg har
modtaget underskrevet kontrakt fra.
Avatar billede jensen363 Forsker
22. september 2004 - 14:26 #5
Ok ... der er altså tale om, at du har en tabel, hvor du registrerer at du har sendt noget til, enten i form af en ja/nej eller i form af en dato, tilsvarende for modtaget ...
du ønsker altså en formular som oplister hvem du har sendt til hhv. hvem du har modtaget fra.

Du skal bygge din formular på en forespørgsel, hvor du vælger data med denne oplysning.

Altså :

SELECT tblData.*, Afsendt
FROM tblData
WHERE ((([Afsendt])=True));
Avatar billede bravida Nybegynder
22. september 2004 - 14:36 #6
Det du mener jeg skal gøre, er at oprette en formular i design visning, og der
indsætte [SELECT tblData.*, Afsendt
FROM tblData] i postkilde.
Derefter ny formular og indsætte [WHERE ((([Afsendt])=True));] i postkilde.
Er det rigtig forstået.
Avatar billede jensen363 Forsker
22. september 2004 - 14:38 #7
Det er korrekt, ... forudsætter, at du benyttet ja/nej som kriterie for om rapport er afsendt ( True = ja )
Avatar billede jensen363 Forsker
22. september 2004 - 14:40 #8
Korrektion, du indsætter hele hoden i postkilde, og bygger formularen på denne, ligesom du ville bygge formularen op en eksisterende tabel
Avatar billede bravida Nybegynder
22. september 2004 - 14:43 #9
SELECT tblData.*, Afsendt
FROM tblData
WHERE ((([Afsendt])=True)); bruger dato, hvad er navn for dato
------------------------------------------------------------
SELECT tblData.*, Afsendt
FROM tblData
WHERE ((([Modtaget])=True)); bruger dato
------------------------------------------------------------
Men ellers sådan du mener
Avatar billede bravida Nybegynder
22. september 2004 - 14:44 #10
SELECT tblData.*, Modtaget
FROM tblData
WHERE ((([Modtaget])=True)); bruger dato
Avatar billede jensen363 Forsker
22. september 2004 - 14:47 #11
I dette eksempel vælger du to datoer :

SELECT Tabel1.*, Tabel1.Afsendt
FROM Tabel1
WHERE (((Tabel1.Afsendt) Between [Dato fra :] And [Dato til :]));

Her vælger du en bestemt dato

SELECT Tabel1.*, Tabel1.Afsendt
FROM Tabel1
WHERE (((Tabel1.Afsendt) = [DatoValg :]));
Avatar billede bravida Nybegynder
22. september 2004 - 14:54 #12
meget fint, vedr. sidste kommentar. Men vil gerne se alle hvor jeg søger på
min post knap forneden.
Avatar billede jensen363 Forsker
22. september 2004 - 14:58 #13
Giver alle de poster, hvor der er registreret en dato

SELECT Tabel1.*, Tabel1.Afsendt
FROM Tabel1
WHERE (((Tabel1.Afsendt) Is Not Null));
Avatar billede bravida Nybegynder
22. september 2004 - 15:05 #14
SELECT tblData.*, Afsendt
FROM tblData
WHERE ((([Afsendt])=SELECT Tabel1.*, Tabel1.Afsendt
FROM Tabel1
WHERE (((Tabel1.Afsendt) Is Not Null));

ok denne kode viser alle, kan jeg bare tilføje de andre 2 koder lige efter
så jeg har 3 søge muligheder
Avatar billede bravida Nybegynder
22. september 2004 - 15:46 #15
Jensen - arbejder lige på dette. Du hører fra mig igen. Stor tak endtil videre.
Avatar billede bravida Nybegynder
22. september 2004 - 16:03 #16
Desværre, kan ikke få det til at virke. Har min opbygning på Publisher, så var det måske lettere at forstå. Du må gerne maile direkte til mig
shh(0)mail1.stofanet.dk
Avatar billede jensen363 Forsker
22. september 2004 - 16:08 #17
Hej igen. Har lige været til møde ....

Jeg tror du har lidt sammenblanding i din kode. Du skal lave 2 formularer med hver sin kode som postkilde

Formular 1 ( Kunder / afsendt ) skal se således ud :

SELECT Tabel1.*, Tabel1.Afsendt
FROM Tabel1
WHERE (((Tabel1.Afsendt) Is Not Null));

Formular 2 ( Kunder / modtaget ) skal se således ud :

SELECT Tabel1.*, Tabel1.Modtaget
FROM Tabel1
WHERE (((Tabel1.Modtaget) Is Not Null));
Avatar billede bravida Nybegynder
22. september 2004 - 16:53 #18
ok jensen, fik den til at virke med en tabel, men har 2 tabeller mere som den også gerne skulle vise. Skal jeg så bare gøre sådan.
SELECT Tabel1.*,Tabel2.*,Tabel2.*, Tabel1.Modtaget
FROM Tabel1
WHERE (((Tabel1.Modtaget) Is Not Null));

PS skal der være mellemrum efter ,
Rigtig at Modtaget ligger i Tabel1
Avatar billede jensen363 Forsker
22. september 2004 - 17:00 #19
Du skal sikre dig, at der er relationen imellem de to tabeller som gør at data kan udvælges korrekt, så skal koden se nogenlunde således ud :

SELECT Tabel1.*, Tabel2.*, Tabel1.Modtaget
FROM Tabel1 INNER JOIN Tabel2 ON Tabel1.KundeNavn = Tabel2.KundeNavn
WHERE (((Tabel1.Modtaget) Is Not Null));
Avatar billede jensen363 Forsker
22. september 2004 - 17:02 #20
Det som INNER JOIN forudsætter er, at Nøglefeltet ( eksempelvis KundeNavn ) findes i begge tabeller, og er dette tilfældet, hentes de matchende oplysninger fra begge tabeller.
Avatar billede bravida Nybegynder
22. september 2004 - 17:04 #21
Jeg prøvede dette her, men virker ikke. Der er relation mellem tabeller.

SELECT Aftalebekræftelse.*, Kunde kartotek.*, Engagerede kartotek.*,  Aftalebekræftelse.Sendt
FROM Aftalebekræftelse
WHERE (((Aftalebekræftelse.Sendt) Is Not Null));
Avatar billede jensen363 Forsker
22. september 2004 - 17:13 #22
Hvilket felt har de 4 tabeller til fælles ?
Avatar billede bravida Nybegynder
22. september 2004 - 17:17 #23
Kunde kartotek: nøgle på Telefon
Engagerede kartotek: nøgle på Tlf
Aftalebekræftelse: ingen nøgle men har Telefon - Tlf
Avatar billede bravida Nybegynder
22. september 2004 - 17:18 #24
Jensen har fået gæster, må jeg vende tilbage igen
Avatar billede bravida Nybegynder
22. september 2004 - 17:19 #25
PS: lægger 200 point oveni
Avatar billede jensen363 Forsker
22. september 2004 - 17:20 #26
Jeg har ikke mere tid i dag, men din select mengler denne INNER JOIN relation på næglefelterne ...

Fortsat god dag
Avatar billede jensen363 Forsker
22. september 2004 - 17:22 #27
Ok ... vi kan fortsætte i morgen ... C",)
Avatar billede jensen363 Forsker
22. september 2004 - 17:26 #28
Prøv :

SELECT Aftalebekræftelse.*, Aftalebekræftelse.Afsendt, [Engagarede kartotek].*, [Kunde kartotek].*
FROM (Aftalebekræftelse INNER JOIN [Engagarede kartotek] ON Aftalebekræftelse.Telefon = [Engagarede kartotek].Telefon) INNER JOIN [Kunde kartotek] ON Aftalebekræftelse.Telefon = [Kunde kartotek].Telefon
WHERE (((Aftalebekræftelse.Afsendt) Is Not Null));
Avatar billede bravida Nybegynder
22. september 2004 - 21:35 #29
Denne her med 2 tabeller fik jeg til at virker.

SELECT Aftalebekræftelse.*, Aftalebekræftelse.Sendt, [Kunde kartotek].*
FROM Aftalebekræftelse INNER JOIN [Kunde kartotek] ON Aftalebekræftelse.Telefon = [Kunde kartotek].Telefon
WHERE (((Aftalebekræftelse.Sendt) Is Not Null));   
-----------------------------------------------------------------------------
Så mangler jeg kun denne tabel som hedder Engagerede kartotek med Tlf som
nøgle. Har prøvet denne, men den virker desværre ikke.

SELECT Aftalebekræftelse.*, Aftalebekræftelse.Sendt, [Kunde kartotek].*, [Engagerede kartotek].*
FROM Aftalebekræftelse INNER JOIN [Kunde kartotek] ON Aftalebekræftelse.Telefon = [Kunde kartotek].Telefon INNER JOIN [Engagerede kartotek] ON Aftalebekræftelse.Tlf = [Engagerede kartotek].Tlf
WHERE (((Aftalebekræftelse.Sendt) Is Not Null));
Avatar billede jensen363 Forsker
23. september 2004 - 07:12 #30
Under forudsætning af, at egenskaberne for tabellens felt for så vidt angår :

    Aftalebekræftelse.Tlf
    Engagerede kartotek.Tlf

er fuldstændigt identiske, og de samme telefonnumre optræder i begge tabeller, skal dette virke ...

Har du mulighed for at zippe databasen og maile den til mig ?

Adresse : ose@post.dk
Avatar billede bravida Nybegynder
23. september 2004 - 13:25 #31
Nu virker det jensen - tusind tak for hjælpen - opretter lige et ekstra med ekstra point til dig.
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