示例#1
0
        public TimesheetImportHoursFromExcelResult ProcessLongRunningAction(string userIdentityName, string fileId, DataTable timesheetHoursRecordSheetDataTable, int reportMonth,
                                                                            int reportHoursInMonth, int reportYear, bool onlyValidate, bool rewriteTSHoursRecords, string currentUserName, string currentUserSID)
        {
            var htmlReport      = string.Empty;
            var htmlErrorReport = string.Empty;

            taskId = fileId;

            LongRunningTaskReport report = null;

            try
            {
                SetStatus(0, "Старт загрузки...");
                SetStatus(1, "Обработка файла Excel");
                report = ImportTSHoursRecords(timesheetHoursRecordSheetDataTable, reportMonth, reportYear, reportHoursInMonth, onlyValidate, rewriteTSHoursRecords, currentUserName, currentUserSID);
                SetStatus(100, "Загрузка завершена");
            }
            catch (Exception e)
            {
                SetStatus(-1, "Ошибка: " + e.Message);
                htmlErrorReport += "<br>" + e.Message + "<br>" + e.StackTrace + "<br>" + e.TargetSite;
            }

            try
            {
                if (report != null)
                {
                    htmlReport = report.GenerateHtmlReport();
                }
            }
            catch (Exception e)
            {
                SetStatus(-1, "Ошибка: " + e.Message);
                htmlErrorReport += "<br>" + e.Message + "<br>" + e.StackTrace + "<br>" + e.TargetSite.ToString();
            }

            return(new TimesheetImportHoursFromExcelResult()
            {
                userInitiationgReport = userIdentityName,
                fileId = fileId,
                fileHtmlReport = new List <string>()
                {
                    htmlReport, htmlErrorReport
                }
            });
        }
示例#2
0
        public BudgetLimitImportRecordsFromExcelResult ProcessLongRunningAction(string userIdentityName, string fileId, DataTable budgetLimitTable, int reportYear, bool onlyValidate)
        {
            var htmlReport      = string.Empty;
            var htmlErrorReport = string.Empty;

            taskId = fileId;
            LongRunningTaskReport report = null;
            var execludedColumns         = new string[] { "Income", "Total" };

            try
            {
                SetStatus(0, "Старт загрузки...");
                SetStatus(1, "Обработка файла Excel");
                report = ImportBudgetLimitRecords(budgetLimitTable, reportYear, onlyValidate, execludedColumns);
                SetStatus(100, "Загрузка завершена");
            }
            catch (Exception e)
            {
                SetStatus(-1, "Ошибка: " + e.Message);
                htmlErrorReport += "<br>" + e.Message + "<br>" + e.StackTrace + "<br>" + e.TargetSite;
            }

            try
            {
                if (report != null)
                {
                    htmlReport = report.GenerateHtmlReport();
                }
            }
            catch (Exception e)
            {
                SetStatus(-1, "Ошибка: " + e.Message);
                htmlErrorReport += "<br>" + e.Message + "<br>" + e.StackTrace + "<br>" + e.TargetSite.ToString();
            }

            return(new BudgetLimitImportRecordsFromExcelResult()
            {
                UserInitiationgReport = userIdentityName,
                FileId = fileId,
                FileHtmlReport = new List <string>()
                {
                    htmlReport, htmlErrorReport
                }
            });
        }
示例#3
0
        public DBDataProcessingTaskResult ProcessLongRunningAction(string userIdentityName, string id)
        {
            var htmlReport      = string.Empty;
            var htmlErrorReport = string.Empty;

            taskId     = id;
            taskReport = new LongRunningTaskReport("Отчет о обработки данных с БД", "");

            SetStatus(1, "Обновление данных с БД - старт", true);

            try
            {
                ProcessEmployee();
                SetStatus(100, "Синхронизация завершена", true);
                try
                {
                    if (taskReport != null)
                    {
                        htmlReport = taskReport.GenerateHtmlReport();
                    }
                }
                catch (Exception ex)
                {
                    SetStatus(-1, "Ошибка: " + ex.Message);
                    htmlErrorReport += "<br>" + ex.Message + "<br>" + ex.StackTrace + "<br>" + ex.TargetSite.ToString();
                }
            }
            catch (Exception ex)
            {
                SetStatus(-1, "Ошибка: " + ex.Message);
                htmlErrorReport += "<br>" + ex.Message + "<br>" + ex.StackTrace + "<br>" + ex.TargetSite.ToString();
            }
            return(new DBDataProcessingTaskResult()
            {
                fileId = id, fileHtmlReport = new List <string>()
                {
                    htmlReport, htmlErrorReport
                }
            });
        }