Avatar billede masowich Nybegynder
14. februar 2005 - 15:05 Der er 6 kommentarer og
1 løsning

Opdatering af felter

(Hovedformular)

        Samlet_Pris
__________________________________
(Underformular)

Element1    pris
Element2    pris
__________________________________


I min hovedformular har jeg feltet samlet_pris.
I min underformular har jeg alle de elementer som min samlede pris består af.
Hvordan får jeg access til at opdatere feltet samlet pris, når jeg ændre værdien for det enkelte element
14. februar 2005 - 15:10 #1
Me.Parent!Samlet_Pris.Requery

Denne linie kode lægges på underformularens EfterOpdatering-hændelse.
Avatar billede masowich Nybegynder
14. februar 2005 - 15:19 #2
Ok problemet er lidt mere sofistikeret. underformularen ser nemlig ud som følger

__________________________________
(Underformular)

Element1    pris1    pris2
Element2    pris1    pris2
__________________________________

Jeg har prøvet den løsning som du foreslår. Den virker også fint nok, hvis jeg klikker ned i prisfeltet på element2 eller et andet sted. Men hvis jeg bare skifter over til andet felt i element 1 (eks pris2), så opdaterer den ikke. jeg har prøvet at lægge hændelsen på feltet, men det virker heller ikke.
14. februar 2005 - 15:26 #3
hvordan ser feltet Samlet_Pris ud (kontrolelementklden)? Står der noget a la dette:
=[underformularnavn]!Element1+[underformularnavn]!Pris1+[underformularnavn]!Pris2
(eller en anden formel)
Eller er feltet en del af en forespørgsel?

Problemet er, at smlet_pris først KAN beregnes, når posten i underformularen er gemt (for indtil den er gemt, så er det stadig den gamle værdi, som står i tabellen)

Derfor er det mest korrekt at lægge koden på formularens EfterOpdtering.
Men det afhænger lidt af hvordan du beregner Samlet_Pris.
Avatar billede masowich Nybegynder
14. februar 2005 - 15:33 #4
Ja det er lige det. Pris1 bliver gemt i databesen. Jeg henter så værdien i smalet_pris med en ADODB.recordset fra databasen når hændelsen efter opdatering indtræder. Så ja det passer meget godt med at det er fordi at værdien ikke er belvet gemt endnu. Har du en bedre måde at gøre det på ???
14. februar 2005 - 15:36 #5
Du kan evt tvinge posten til at blive gemt for hver indtastning.
Det gør du ved at lægge denne kommando på hver felts EfterOpdatering:

Docmd.Runcommand accmdsaverecord
Avatar billede masowich Nybegynder
14. februar 2005 - 15:41 #6
Tak mand du er GUD ;-)
14. februar 2005 - 15:43 #7
Langt fra, men tak alligevel :o)
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