Avatar billede mr.gessle Nybegynder
19. april 2001 - 10:06 Der er 3 kommentarer og
3 løsninger

Akkumulering af attribut

Hvordan kan man lave et attribut som automatisk fratækker værdien 1 for hver gang en anden attribut (også primærnøgle) forekommer i en anden tabel?

Vi har en flysædedatabase, der består af en flystamdatatabel, en specifik flyafgangstabel samt en reservationstabel hvor man kun kan reservere et flysæde pr. gang!

Hæmskoen er, at vi i vores flyafgangstabel gerne vil have en attribut, der for hver gang en reservation på en flyafgang oprettes, trækker værdien 1 fra det samlede antal flysæder på afgangen... How?!?
19. april 2001 - 10:19 #1
Hej,

Jeg går ud fra, at i arbejder gennem formularer.
På jeres formular kan du så lave en tekstbox, hvor du tæller antallet af reservationer sammen (og trækker dette fra det totale antal)

Nu ved jeg ikke hvad postkilden til formularen er, men \"Antal pladser\" burde vel stå i tabellen \"flystamdatatabel\".

I tekstboksen kan du skrive noget ligndende dette:
=[Antal pladser ialt]-DCount(\"*\", \"flyafgangstabel\", \"FlyID = \" & [FlyID])

Hvor [Antal pladser ialt] er antallet af pladser fra flystamtabellen og FlyID er nøglefeltet i Flystamdatatabellen.

Giver det mening?

/Thomas
Avatar billede proaccess Nybegynder
19. april 2001 - 10:29 #2
Jeg tilslutter mig Thomas,

det er ikke nødvendigt at \"lagre\" disponibelt antal sæder, når man bare \"lagrer\" det totale antal sæder (om det så skal være per flytype eller pr. afgang, må være op til dig selv)

Derefter kan du lave en førespørgsel, som beregner antal \"ledige sæder\" Med join mellem flyafgangstabellen og reservationstabellen, og en beregnet attribut: [TotalSæder]-Count([RES].[ID])
19. april 2001 - 10:33 #3
Enig, Proaccess.

Jeg faldt lige over en lille fejl i mit eget eksempel: Jeg brugte komma i stedet for semikolon.

tekstboksen skal derfor se således ud:
=[Antal pladser ialt]-DCount(\"*\"; \"flyafgangstabel\"; \"FlyID = \" & [FlyID])

Men det kan sagtens laves på mange andre måder: f.eks. vha en forespørgsel...
20. maj 2001 - 21:15 #4
Mr.Gessle: Er du kommet videre med dette spørgsmål? Det er over en måned siden, at Proaccess og jeg gav os tid til at svare dig - du må gerne acceptere eller lukke spørgsmålet, så det ikke ligger og \'flyder\'.

tak
Avatar billede proaccess Nybegynder
26. juli 2001 - 15:15 #5
Kan vi ikke snart få lukket dette spørgsmål ???
Avatar billede mr.gessle Nybegynder
22. december 2001 - 15:06 #6
Yup - tak for hjælpen, men løste det på anden vis.
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