Avatar billede meiland Mester
19. maj 2010 - 13:59 Der er 4 kommentarer og
1 løsning

Forespørgelse skal opdatere felter i database

Hej Alle !

Jeg har en lille database, hvor der dagligt indtastes henvendelser. Disse henvendelser sendes dagligt videre til anden afdeling som excel fil vha. en forespørgelse der filtrerer på datofeltet. Rapportdato indtastes i en form, hvorefter man med en knap overfører forespørgelsen til excel.

Alt dette fungere perfekt, men....
For at kunne dokumentere vil jeg gerne have at feltet "sendt" (ja/nej), bliver sat til Sand, når jeg eksportere til excel, for de poster, der eksporteres.

Tabellen hedder henvendelse, datofeltet hedder dato og sendtfeltet hedder sendt.

Er der nogle, der har gode forslag ??
Avatar billede mjense173 Nybegynder
19. maj 2010 - 15:10 #1
Første skal du sikre at:
Når en henvendelse bliver indberettet, sættes feltet "sendt" automatisk til Nej.

Derefter er der 2 løsninger:

Din bruger indtaster pågældende dato, og modtager Excel-filen, som nu.
I samme øjeblik kører du sql sætningen:
UPDATE henvendelse SET sendt=1 WHERE dato = '19-05-2010'

En anden løsning er at brugen blot modtager alle de poster hvor sendt er lig nej. Derved skal der ikke tænkes på dato.
I dette tilfælde skal du bare opdatere med:
UPDATE henvendelse SET sendt=1 WHERE sendt=0

Du bør desuden køre både eksporten og updaten, i en transaktion, således at du er sikker på at der ikke bliver tilføjet en henvendelse midt i eksporten, hvorved updaten vil markere den som sendt selvom den ikke er det.
Avatar billede meiland Mester
20. maj 2010 - 09:59 #2
Hej mjense173 !

Tak for dit svar. Det lykkedes mig at finde ud af at indbygge sql i proceduren for knappen.

Private Sub Kommandoknap0_Click()

datoen = txtdato.Value
'response = MsgBox("Datoen er: " & datoen, vbOKOnly)
DoCmd.OpenQuery "henvendelser forespørgsel"
DoCmd.RunCommand acCmdOutputToExcel
DoCmd.Close acQuery, "Daglig henvendelser"

DoCmd.RunSQL " UPDATE henvendelser SET sendt=1 WHERE dato = datoen "

men der er alligevel en lille ekstra udfordring. Jeg ville gerne smide datoen "txtdato" fra formen over i en variabel, så jeg ikke skulle indtaste den, når db'en opdateres med sendte poster. Desværre virker min løsningen ikke. Jeg får en dialogboks op, hvor jeg skal indtaste parameterværdien for datoen.

Har du en løsning ??

End Sub
Avatar billede meiland Mester
20. maj 2010 - 10:00 #3
Hovsa, End Sub er smuttet for langt ned.
Avatar billede meiland Mester
25. maj 2010 - 13:26 #4
Hej mjense173 !

Vil du smide et svar så jeg kan sende nogle point afsted til dig.
Avatar billede mjense173 Nybegynder
25. maj 2010 - 13:47 #5
Værsgo :-)
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