16. februar 2005 - 09:10Der er
21 kommentarer og 3 løsninger
Automatisk mail fra access ved ændring i felt
Jeg kunne godt tænke mig at få det sådan at når der sker ændring i feltet [jubilar til borgmester] i formularen "jubilæumsliste alle", så skal der sendes en mail til 2 forudbestemte mailadresser. Jeg ved ikke om access kan skrive teksten i mailen, eller om der skal vedhæftes en tekstfil. Men en tekst noget lignende: [initialer] & " har ændret i " & [jubilæumsdato] Så kan jeg selv rette resten til.
Hvis ovenstående er en dårlig ide, så vil jeg gerne have lavet et system der exporterer en tekstfil til en bestemt placering. Dette skal ske ved ændring af samme felt og skal indeholde samme tekst.
Det kunne se således ud: docmd.SendObject acSendNoObject,,,"din@mail.dk",,,"Ændringer til [jubilar til borgmester]",Me!Initialer & " har ændret i " & Me![jubilæumsdato], false
Hvis du erstatter False med True i slutningen, så får du vist mailen på skærmen inden den afsendes.
Mads-> ja det vil du i de nyeste versioner af Outlook. Men ikke hvis du har Outlook 2000, sp1 eller lavere. Eller hvis du sidder på en Exchange Server, som er sat op til at undlade disse advarsler. Eller hvis du bruger et helt andet mailprogram (f.eks. Outlook Express)
Det er rigtigt. Det hele handler jo om hvilket miljø man sidder på. Jeg er ved at flytte vores løsninger fra Access til .Net / SQL server - Der er mulighederne nogle andre.
Det virker thomasjepsen. Mugs jeg har version 97 på arbejdet, så jeg vil se på dine to databaser når jeg vender snuden hjemad. Jeg har 2 spørgsmål til: Den tekst der står i mailen, kan der laves linjeskift ? Hvordan ville det se ud på følgende tekst: DoCmd.SendObject acSendNoObject, , , "to brm@hvidovre.dk", , , "Ændringer til jubilæumsdatabasen", Me!Initialer & " har ændret i feltet jubilar til borgmester til: " & Me![Jubilar til borgmester], False
Nu har brugeren jo mulighed for at sige nej til den boks der fremkommer ved afsendelse af e-mail. Kan der laves en efteropdatering til som smider de samme informationer som der står i mailen, over til en tabel eller lignende ?
Men du behøver ikke at have "to" foran mailadressen.
Hvis du vil gemme ændringerne i en anden tabel, så er vi ovre i noget historik/log og det er lidt mere omfattende. Men i dette simple tilfælde burde du kunne gøre det med et par sætninger:
docmd.Setwarnings false docmd.RunSQL "Insert Into [din log-tabel] ( Initialer, [jubilar til borgmester], Dato ) Select '" & Me!Initialer & "', '" & Me![jubilar til borgmester] & "', Now()" docmd.Setwarnings true
Det begynder virkelig at ligne noget Det eneste der mangler er at der ikke skal komme en fejlmeddelse hvis man vælger nej til at sende mail. Er det muligt at få en tekstboks med brugerdefineret tekst til at fremkomme ?
I den sætning thomas jepsen skriver til sidst, der skal jeg have tilføjet en linie der hedder If Me!Jubilæumsdato < Date + 30 Then, da mailen kun skal sendes hvis der er mindre end 30 dage til jubilæumsdatoen fra dags dato. Hvordan får jeg gjort det ?
if me!Jubilæumsdato < date + 30 then if msgbox ("Der er mere end 30 dage til jubilæet" & vbnewline & "Vil du sende mailen alligevel?",vbyesno,"Send mail?") = vbno then exit sub end if
DoCmd.SendObject acSendNoObject, , , "to brm@hvidovre.dk", , , "Ændringer til jubilæumsdatabasen", Me!Initialer & " har ændret i feltet jubilar til borgmester til: " & vbnewline & Me![Jubilar til borgmester], False If err = 2501 then msgbox "Du valgte at annullere mail'en!" & vbnewline & "Ændringerne er gemt i log-tabellen.",vbexclamation, "Mail annulleret!" docmd.Setwarnings false docmd.RunSQL "Insert Into [din log-tabel] ( Initialer, [jubilar til borgmester], Dato ) Select '" & Me!Initialer & "', '" & Me![jubilar til borgmester] & "', Now()" docmd.Setwarnings true Endif
Den skal ikke komme og spørge om jeg er sikker på at sende mailen. Det skal være sådan at hvis jeg trykker på nej til at den skal sende mailen i den boks der kommer frem med at et andet program prøver at sende mail på ens vegne, så skal den komme med beskeden "du valgte at annullere mailen".
Synes godt om
Ny brugerNybegynder
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.