Esempio n. 1
0
        private void bgwGenerate_DoWork(object sender, DoWorkEventArgs e)
        {
            if (isTimeReport)
            {
                //doing time entry report

                List <string> fnames = new List <string>();

                foreach (string fileName in lstFiles.Items)
                {
                    fnames.Add(fileName);
                }

                List <ReportingItemSummary> reportItems = OperationsReadOnly.GetReportingItems(dtpStart.Value, dtpEnd.Value, fnames);

                if (selectedReportType == cstrCSVDataExtract)
                {
                    StringBuilder stb = new StringBuilder();

                    stb.Append("Time Entry Id");
                    stb.Append(cstrSeparator);
                    stb.Append("User Id");
                    stb.Append(cstrSeparator);
                    stb.Append("User Display Name");
                    stb.Append(cstrSeparator);
                    stb.Append("Project Id");
                    stb.Append(cstrSeparator);
                    stb.Append("Project Name");
                    stb.Append(cstrSeparator);
                    stb.Append("Task Id");
                    stb.Append(cstrSeparator);
                    stb.Append("Task Name");
                    stb.Append(cstrSeparator);
                    stb.Append("Start DateTime");
                    stb.Append(cstrSeparator);
                    stb.Append("End DateTime");
                    stb.Append(cstrSeparator);
                    stb.Append("Exception Minutes");
                    stb.Append(cstrSeparator);
                    stb.Append("Total TimeMinutes");
                    stb.Append(cstrSeparator);
                    stb.Append("Details");
                    stb.Append(cstrSeparator);
                    stb.Append("Exception Details");
                    stb.Append(Environment.NewLine);

                    foreach (ReportingItemSummary currItem in reportItems)
                    {
                        stb.Append(FormatResult(currItem.TimeEntryId));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.UserId));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.UserDisplayName));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.ProjectId));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.ProjectName));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.TaskId));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.TaskName));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.StartDateTime));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.EndDateTime));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.ExceptionMinutes));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.TotalMinutes));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.Details));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.ExceptionDetails));
                        stb.Append(cstrSeparator);

                        stb.Append(Environment.NewLine);
                    }

                    e.Result = stb.ToString();
                }
                else
                {
                    e.Result = reportItems;
                }
            }
            else
            {
                //doing goal report

                List <string> fnames = new List <string>();

                foreach (string fileName in lstGoalFiles.Items)
                {
                    fnames.Add(fileName);
                }

                List <ReportingGoalSummary> reportItems = OperationsReadOnly.GetReportingGoals(dtpGoalStart.Value, dtpGoalEnd.Value, fnames);

                if (selectedReportType == cstrCSVDataExtract)
                {
                    StringBuilder stb = new StringBuilder();

                    stb.Append("Goal Id");
                    stb.Append(cstrSeparator);
                    stb.Append("User Id");
                    stb.Append(cstrSeparator);
                    stb.Append("User Display Name");
                    stb.Append(cstrSeparator);
                    stb.Append("Description");
                    stb.Append(cstrSeparator);
                    stb.Append("Target Measure");
                    stb.Append(cstrSeparator);
                    stb.Append("Target Completion Date");
                    stb.Append(cstrSeparator);
                    stb.Append("Completed");
                    stb.Append(cstrSeparator);
                    stb.Append("Result Measure");
                    stb.Append(cstrSeparator);
                    stb.Append("Result Measure Rating");
                    stb.Append(cstrSeparator);
                    stb.Append("Actual Completion Date");
                    stb.Append(cstrSeparator);
                    stb.Append("Result Timeliness Rating");
                    stb.Append(cstrSeparator);
                    stb.Append("Positives");
                    stb.Append(cstrSeparator);
                    stb.Append("Improvements");
                    stb.Append(Environment.NewLine);

                    foreach (ReportingGoalSummary currItem in reportItems)
                    {
                        stb.Append(FormatResult(currItem.GoalId));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.UserId));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.UserDisplayName));
                        stb.Append(cstrSeparator);

                        stb.Append(FormatResult(currItem.Description));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.TargetMeasure));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.TargetCompletionDate));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.Completed));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.ResultMeasure));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.ResultMeasureRating));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.ActualCompletionDate));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.ResultTimelinessRating));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.Positives));
                        stb.Append(cstrSeparator);
                        stb.Append(FormatResult(currItem.Improvements));
                        stb.Append(cstrSeparator);

                        stb.Append(Environment.NewLine);
                    }

                    e.Result = stb.ToString();
                }
                else
                {
                    e.Result = reportItems;
                }
            }
        }