Important: Specs are alos attached in a word document.
Purpose: this utility will have to automatically run a program when an email is received in a specific inbox (e.g. ) on our Exchange 2010 server.
Architecture: The functionality that calls the Exchange server and obtains the attachment should be developed as a separate library that could be called from Future dot net applications
Platform: C# under windows. Source code should be delivered to the Bank
1- A config file will be used to store the parameters used in this utility
2- Receiving Email address should be a parameter,
3- Emails received will have Excel attachment(s) up to 5.
4- Attachments will have to be detached to a folder (path will be a parameter). If the attachments already exist they will be replaced.
5- One folder will be created by month and year
6- A master record will be added in a Master table holding the following information:
a. Master Reference Key
b. Sender email address
c. Email addresses in the cc, if any
d. Date and time of the received email
f. Body of the message up to 200 characters
g. Attachment1 File Name
h. Attachment2 File Name
i. Attachment3 File Name.
j. Attachment4 File Name.
k. Attachment5 File Name.
Note: even if no attached files, an entry should be added.
7- The detached files should be loaded in MS SQL2008 database. The structures of the Excel is attached. And the Table structure in the database is as follow:
a. Master Reference Key (see above)
b. Sequence number - At the database this is an integer
c. Name of employee - Char(50)
d. Account Number - Char(28)
e. Amount – Decimal(18,2)
8- If a flag (Parameter) is set to true, amounts should be encrypted in the database based on Triple DES 1024 algorithm and using the Account Number of the record (see excel file) in addition to a salt value defined as a parameter.
9- If a flag (Parameter) is set to true, an email will be sent to email address(es) defined as parameter (in case of multiple email addresses they will be separated by “;”). The email content will be identical to the data listed above.