send reminder e-mails


i'm preparing a project called smarthome. this project are similar to alert/reminder system. i'm using VB 6.0 and MS Access for my database and this system is a standalone.

in this system, users have to define their assets (let's say cars) date to be serviced. system will notify the user via e-mail when the time has arrived (or maybe 2 weeks before the actual date).

1)   how do i determine the frequency of reminders. lets say the service date is on 3/04/2004. so the reminders will be sent 2 weeks before, 1 week before, 3 days before, the day before and the day itself.

2)   reminders will be sent to user through e-mail defined by the user.

3)   user's computer (in which the system is operating) must stay online to send messages. messages will stay pending if there's no connection to the internet. ( am i right?)

ok that's it.
I offer you my points...ALL OF IT !!!!!
hope you can help.
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

[ fanpages ]Connect With a Mentor IT Services ConsultantCommented:
Hi aquanok,

1) In VB or Access the use of DateDiff will aid your reminder schedule
    (see internal product help, or here for examples:

2) Not sure if your second point was a question, but just a statement.

3) Yes, a connection to an external mail server needs to be maintained before any information in e-mail format can leave the machine & be sent to a named recipient.


[ fanpages ]IT Services ConsultantCommented:
Hi aquanok,

Better example of DateDiff usage:


OracleSWNConnect With a Mentor Commented:
Hi aquanok,

       BFN's point with the datediff will work well. I have a similar application that sends out reports to users and you will need to have the application running to send out the report. Once you have established a query/view that the system checks for reminders, the below is some useful code to send out e-mails bypassing any outlook/express applications.

Set objEmail = CreateObject("CDO.Message")
With objEmail
      .FROM = Chr(34) & "Maintence Reminder" & Chr(34) & ""
      .To = ""
      .Subject = "Maintence Reminder"
      .TextBody = "This is a reminder to ......." & vbCrLf & vbCrLf & "Sincerely," & vbCrLf & "Name"  '<--- (vbCrLf) enter a carriage return character
      .Configuration.Fields.Item("") = 2
      .Configuration.Fields.Item("") = ""
      .Configuration.Fields.Item("") = 25
End With
Set objEmail = Nothing
The new generation of project management tools

With’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

aquanokAuthor Commented:
how do i send these messages when the time's arrived
without any interactions from the user.(no command button)
leechoonhweeConnect With a Mentor Commented:
In your main sub you need to have a timer function that checks itself every 24 hrs or compile your program so that you can use MS Scheduler to invoke your program every day at certain timing.

[ fanpages ]IT Services ConsultantCommented:
You could post e-mails in your outbox (back to the sender) that are scheduled to be sent at the designated date (prior to the service) and then then next time following the "reminder" that e-mail is checked, the messages will return back into the inbox.

B)ye F)or N)ow,

f)an p)ages.
aquanokAuthor Commented:

how do i do that?
The best way is to use Microsoft Scheduler to invoke your program at regular interval. Please provide your email if you need screenshots for it.
All Courses

From novice to tech pro — start learning today.