Avatar billede yxos Nybegynder
13. januar 2004 - 19:32 Der er 6 kommentarer og
1 løsning

Tilføj poster til 2 tabeller ud fra 1 tabel

Jeg kan ikke bruge en alm. tilføjforesp, fordi de to tabeller der skal tilføjes til hænger sammen via en ID.

Dette er de 2 tabeller der skal føjes til:
TRANS:                    FORBRUG:
TransID (autogen)(key)    TransID
Konto                    Forbrug
Dato                      Tekst
Tekst                    Beløb

Og det er fra denne tabel, der skal tilføjes poster:
FASPOS:
FasID (dubl tilladt)
Konto
TransTekst
Forbrug
ForbrugTekst
Beløb

Den kvikke læser har allerede bemærket, at FASPOS indeholder felter fra
både TRANS og FORBRUG.

Jeg har også en form med følgende felter:
txtDato
txtFasID

Og naturligvis en knap!

Hermed har jeg jo hvad jeg skal bruge.

Eksempel (som jo altid fremmer forståelsen):
txtDato : 04-01-2004
txtFasID: 2

Tabel FASPOS indeholder 5 poster:
FasID  Konto  TransTekst  Forbrug  ForbrugTekst  Beløb
  1    AAA    DawDo      FORB1    vildtforbrug  100,00
  2    AAA    MerDaw      FORB2                    50,00
  2    BBB    Test        FORB3    TesTesTest      20,00
  3    BBB                FORB4                  1000,00
  4    AAA    blabla      FORB5    møfmøf          1,00

Når jeg trykker på knappen skal der tilføjes følgende poster til hhv.
table TRANS og FORBRUG (TRANS.TransID er nået til #80)

TRANS:
TransID  Konto  Dato    Tekst     
    81    AAA  04-01-2004 MerDaw
    82    BBB  04-01-2004 Test

FORBRUG:
TransID  Forbrug  Tekst      Beløb
    81    FORB2                50,00
    82    FORB3    TesTesTest  20,00

Hvudden hulen gør man det? En form har det jo med at klamre sig til den
tabel den er klampet sammen med, og her skal føjes til TO tabeller
på en gang.
Avatar billede hubs Nybegynder
14. januar 2004 - 08:33 #1
Jeg går ud fra at relationen mellem de to tabeller er 1-til-1, så hvorfor ikke bare slå de to tabeller sammen til en?? Det løser ihvertfald lettest dit problem :o)
Avatar billede yxos Nybegynder
14. januar 2004 - 15:58 #2
Nej, der er en en-til-mange relation mellem TRANS og FORBRUG.
I Trans er TransID unik, men ikke i FORBRUG hvor der kan være flere poster med samme TransID.
Det er det, der gør det kompliceret.
Avatar billede terry Ekspert
16. januar 2004 - 19:42 #3
I have looked at the dB and a solutionhas been made. Anyone who wants to see the solution should contact yxos!
Avatar billede terry Ekspert
17. januar 2004 - 12:23 #4
yxos>Is the solution OK?
Avatar billede yxos Nybegynder
17. januar 2004 - 14:07 #5
Ja, det virker fint. Nu skal jeg bare finde ud af hvordan du helt præcist har gjort det. Jeg har ikke haft tid at studere løsningen nærmere. Kun har jeg konstateret at det virker præcist som det skal.
Avatar billede terry Ekspert
17. januar 2004 - 14:11 #6
Great!
I've made two append queries and these get run when you click the button on the form. Look at the code behind the button!
Avatar billede yxos Nybegynder
18. januar 2004 - 16:00 #7
Her er løsningen:

I formen (frmFaste) med txtDato og txtFasID og knappen cmdUdfør skal der
for knappen være følgende underliggende kode:

i tabellerne TRANS og FASPOS tilføjes feltet FasPosID (long integer)
I FASPOS er feltet nøglefelt med format Autonum.

Private Sub cmdUdfør_Click()
    DoCmd.SetWarnings False
    DoCmd.OpenQuery "qryAppendToTrans"
    DoCmd.OpenQuery "qryAppendToForbrugTrans"
    DoCmd.OpenQuery "qryResetFastePosterID"
    DoCmd.SetWarnings True
End Sub

Append Query qryAppendToTrans baserer sig på tabel FASPOS.
Der opdateres til Tabel TRANS jfr. beskrivelsen, incl. nyt felt FasPosID
For FASPOS.FasID gælder kriteriet: [forms]![frmFaste]!txtFasID

Append Query qryAppendToForbrugTrans baserer sig på tabel FASPOS og TRANS.
Link mellem TRANS.FasPosID og FASPOS.FasPosID.
Der opdateres til Tabel FORBRUG jfr. beskrivelsen
For FASPOS.FasID gælder kriteriet: [forms]![frmFaste]!txtFasID

Update Query qryResetFastePosterID baserer sig på tabel TRANS.
Felt TRANS.FasPosID sættes til Null, kriterie: Not Null.


Den sidste query var nødvendig. Ellers ville efterfølgende "tryk på knappen" for
samme værdi af txtFasPos medføre dubletter i tabel TRANS.
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