Create process to check dates in Excel file, email if a certain amount of time has passed and update Excel file.

Job ID: 32931034

Budget: $250 – $750 USD

If the below can be done without installing additional software on a Windows 10 PC, that would be preferred. Source code required.

Process:
Read INI file for details on file location, excel columns, email settings, etc
Read Data from Excel

Reminder 1 - Example 30 Days
1. Checks the Start Date vs Todays date
2. If its over the specified time (30 days) AND no date exists in Reminder1 field
a. Send an email, update the Reminder1 field with todays date.
3. If Reminder1 is set to repeat in INI file
a. Check Reminder1 Date vs Todays Date
b. If its over the specified time (30 days) Send an email, update the Reminder1 field with todays date.

Reminder 2 - Example 90 Days
1. Checks the Start Date vs Todays date
2. If its over the specified time (90 days) AND no date exists in Reminder2 field
a. Send an email, update the Reminder2 field with todays date.
3. If Reminder2 is set to repeat in INI file
a. Check Reminder2 Date vs Todays Date
b. If its over the specified time (90 days) Send an email, update the Reminder2 field with todays date.

Reminder 3 - Example 365 Days (Repeating)
1. Checks the Start Date vs Todays date
2. If its over the specified time (365 days) AND no date exists in Reminder3 field
a. Send an email, update the Reminder3 field with todays date.
3. If Reminder3 is set to repeat in INI file
a. Check Reminder3 Date vs Todays Date
b. If its over the specified time (365 days) Send an email, update the Reminder3 field with todays date.

Email Contents
1. Server - INI File
2. Port - INI File
3. User - runtime parameters(NOT prompted for) If nothing entered, connect anonymously
4. Password - runtime parameters(NOT prompted for) If nothing entered, connect anonymously
5. Sender - runtime parameters(NOT prompted for) If nothing entered use INI File
6. Recipients - Email-To (Excel), Email-CC (Excel), BCCaddress(INI File)
7. Subject - INI File + Reminder Column Name + adjusted Name(Excel) (Example-> Reminder 30 Day John Smith)
8. Body - INI File (This will be a Word Document)
a. Rewrite <First> <Last> with adjusted Name field(Excel) (Example -> John Smith)
9. Attachment - INI File (This could be any type of file)

Please Update the running interface with the status of current run and a logfile(See INI file, overwite per run).
Examples - Reading INI file (Basic message is fine)
Reading Excel File (Basic message is fine)
Each Message Sent with Email, Date, Reminder, etc (More details here)
Writing Excel Field with Email, Date, Reminder, etc (More details here)

Error Handling
Please add error handling for at least these errors + any others you can think of
1. Reading Excel File
2. Writing Excel File
3. Connecting to Email Server
4. Sending Email
When an error occurs, can you do either/both of these? Open Notepad with logfile entries/errors AND/OR Play a WAV/MP3 file. Better option?
I plan on running this as a scheduled task so if everything is working fine I won't see anything but I'd like some kind of notice if an error occurs.

Example Reminder.INI File - See Attached files
Example Excel file - See Attached files
Example MP3/WAV file - See Attached files
Example Word file - See Attached files
Related categories: .NET Excel Word HTML Email Handling