public void Execute(int id)
        {
            JobItem jobItem = new JobItem();

            jobItem.StartDate = DateTime.UtcNow;
            jobItem.JobId     = id;
            jobItem.TaskName  = Name;
            try
            {
                var    taskresult = this.PreviousTaskResult.TaskData;
                var    ftpConfig  = _service.GetFtpConfig(FtpConfigurationType.Announcement);
                string filePath   = string.IsNullOrEmpty(_fileName) ? taskresult.FilePath
                   : string.Format("{0}{1}/{2}", ftpConfig.DownloadLocalDirectory, ftpConfig.FtpDirecrory, _fileName);

                string fileName = filePath.Substring(filePath.LastIndexOf("/") + 1);
                if (_service.IsFileExists(fileName))
                {
                    throw new Exception(string.Format("File {0} is already processed. You can not process same file again.", fileName));
                }
                int recordsImported = _service.PopulateAnnouncement(filePath);
                //taskresult.NoOfRecordImported = recordsImported;

                _taskResult = new dlxTaskResult()
                {
                    IsSuccess = true,
                    //TaskData = new dlxTaskData() { FilePath = taskresult.FilePath }
                    TaskData = string.IsNullOrEmpty(_fileName) ? taskresult : new dlxTaskData {
                        NoOfRecordImported = recordsImported, FilePath = filePath
                    }
                };
                jobItem.Status      = true;
                jobItem.Description = "Announcement Bulk Insert Successful";
                jobItem.EndDate     = DateTime.UtcNow;
                _service.JobItemLog(jobItem);
            }
            catch (Exception ex)
            {
                //Console.Write(ex.Message);
                _taskResult = new dlxTaskResult()
                {
                    IsSuccess    = false,
                    ErrorMessage = "Announcement Bulk Insert Failed."
                };
                jobItem.Status = false;
                //jobItem.Description = _taskResult.ErrorMessage;
                jobItem.Description = string.Format("Error: {0} Inner Exception: {1} Error Message: {2}", _taskResult.ErrorMessage, ex.InnerException == null ? "" : ex.InnerException.ToString(), ex.Message);
                jobItem.EndDate     = DateTime.UtcNow;
                _service.JobItemLog(jobItem);
            }
        }