Avatar billede jean01ad Praktikant
21. april 2010 - 16:31 Der er 5 kommentarer og
1 løsning

Struktur

Hej Eksperter

Jeg har følgende struktur i en DB

Afdelingstabel med PN (primærNøgle) = afdelingsnummer (Ca. 10 afdelinger)

Hver afdeling sælger fra 10-20 agenturer hvor agenturnummeret godt kunne være PN. Dog kan flere afdelinger godt sælge fra det sammen agentur.

Hver agentur har yderligere 50-200 kunder som de sælger til. PN = Debitornr. Dog kan flere agenturer godt sælge til samme kunde.

For hver agentur/kunde relation ligges der et årsbudget på omsætning og DG. Yderligere skal der indlæses månedsvise realiserede tale hver måned på Oms. og DG. Der kan let forekomme, at der sælges til kunder, som ikke var med i budget, mens den omsætning også skal registreres.

Jeg kunne rigtig godt tænkte mig input til, hvordan en sådan opsætning bør laves, hvis noget har tid og lyst.

Det jeg i slutenden vil frem til, er en forespørgsel som lyder

Afdeling; Agentur; Kunde; Budget (o hviser der er salg til en kunde uden budget); Realiseret Jan til dec (0 hvis er der budget men ikke realiseret)

Nogen bud på, hvad jeg bør gøre?
21. april 2010 - 21:25 #1
Jeg har et par spoergsmaal til dine spoergsmaal:

(1) Siger du at hver afdeling kan saelge gennem adskillige agencies og hver agency kan kan saelge for adskillige afdelinger?  I saafald vil en agency kunne saelge til en kunde for mere end en afdeling.  Hvis agency 1 saelger til kunde A for afdeling 7 og agency 1 ogsaa saleger til kunde A for afdeling 8 saa maa agency 1 vel have et saerskilt budget og skal rapportere realiseret saerskilt for hver af disse Afdeling-Agency-Kunde relationer?

(2) Hvad er DG?  Et tal?  Forstaar jeg det rigtigt at der er et DG budget og DG realiseret?  I saafald skal din forespoergsel vel ogsaa vise det.

Hvis jeg har forstaaet/gaettet rigtigt saa vil jeg foreslaa for dit formaal disse tabeller:

Afdeling med som minimum afdelingsnummer, afdelingsnavn med afdelingsnummer PK

Agency med agencynummer (PK) og agencynavn

Kunde med debitornummer (PK) og kundenavn

AfdelingAgenturKunde med felterne afdeling, agency, kunde, omsaetningsbudget, DGbudget, omsaetningsrealiseret, DGrealiseret.  afdeling er Foreign Key (FK) til Afdeling.afdelingsnummer, agency FK til Agency.agencynummer, og kunde FK til Kunde.debitornummer. PK er kombinationen afdeling, agency, kunde.

Saa bliver din query saaledes:

SELECT DISTINCT afdelingsnavn, agenturnavn, kundenavn, omsaetningsbudget, DGbudget, Omsaetningsrealiseret, DGrealiseret
FROM AfdelingAgenturKunde aak JOIN Afdeling af ON aak.afdeling = af.afdelingsnummer JOIN Agency ag ON aak.agency = ag.agencynummer JOIN kunde k ON aak.kunde = k.debitornummer.
22. april 2010 - 22:30 #2
jean01ad, saa du mit indlaeg?  Jeg er spaendt paa din reaktion, om jeg forstod/gaettede dit problem korrekt og hvis saa om mit forslag virker.  Ellers forklar videre.
Avatar billede jean01ad Praktikant
23. april 2010 - 10:02 #3
Hej Christian

Ja tak jeg har set det. og har også hurtigt læst det. Umiddelbart virker det korrekt det du har givet forslag til - jeg tjekker det ASAP, og giver selvølgelig en tilbagemelding. Det bliver nok først i weekenden/mandag.

Mht. den database du tidligere har hjulpet med. Jeg er kommet lidt videre, og har fået hjælp til noget kode der giver mig det jeg gerne vil have. Du må selvfølgelig sige til, hvis du er interesseret i løsningen.

Jesper
23. april 2010 - 10:32 #4
1.  Det er noteret.  Jeg venter saaledes paa tilbagemelding.  (Noget af det jeg gerne vil undgaa er at engagere mig i et spoergsmaal og saa kommer spoergsmaalsstilleren ikke tilbage og lader spoergsmaalet haenge som et evigheds-aabent spoergsmaal.)

2.  Ja, jeg vil gerne se databasen.  Maaske kan du emaile den til den email adresse der staar i min profil.
Avatar billede jean01ad Praktikant
23. april 2010 - 10:41 #5
Will do asap!
Avatar billede jean01ad Praktikant
26. april 2010 - 09:07 #6
Hej Christian.

Det virker helt efter bogen, og selv om det er en simpel struktur, så havde jeg behov for det lille puf.

Tak for hjælpen.

Jesper
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