protected override void ProcessRecord()
        {
            base.ProcessRecord();
            GenerateReportRequest request;

            try
            {
                request = new GenerateReportRequest
                {
                    ReportDefinitionId    = ReportDefinitionId,
                    GenerateReportDetails = GenerateReportDetails,
                    IfMatch       = IfMatch,
                    OpcRequestId  = OpcRequestId,
                    OpcRetryToken = OpcRetryToken,
                    ScimQuery     = ScimQuery
                };

                response = client.GenerateReport(request).GetAwaiter().GetResult();
                WriteOutput(response, CreateWorkRequestObject(response.OpcWorkRequestId));
                FinishProcessing(response);
            }
            catch (Exception ex)
            {
                TerminatingErrorDuringExecution(ex);
            }
        }
Exemple #2
0
        private static async Task <JToken> GetReport(string reportURI, string reportOutputFormat)
        {
            AppRequest req = new AppRequest();

            req.serviceURL = GenerateReportRequest.ServiceURL;
            var input = new GenerateReportRequest();

            input.reportUri       = reportURI;
            input.outputFormatUri = reportOutputFormat;
            req.Input             = JObject.FromObject(input);
            return(await GetServerData(req));
        }
        public void Run()
        {
            var listOfTasks = new List <Task>();

            foreach (var item in _parameters)
            {
                var weeklyStrategy = new WeeklyStrategy(item);
                var weeklyRequest  = new GenerateReportRequest(weeklyStrategy);
                listOfTasks.Add(_mediator.Send(weeklyRequest));

                var monthlyStrategy = new MonthlyStrategy(item);
                var monthyrequest   = new GenerateReportRequest(monthlyStrategy);
                listOfTasks.Add(_mediator.Send(monthyrequest));
            }
            Task.WaitAll(tasks: listOfTasks.ToArray());
        }
Exemple #4
0
    private string SendExternalReport(int ContactID, int UserID, bool External)
    {
        string         ReturnMessage = string.Empty;
        ServiceManager sm            = new ServiceManager();

        using (LP2ServiceClient service = sm.StartServiceClient())
        {
            GenerateReportRequest req = new GenerateReportRequest();
            req.hdr = new ReqHdr();
            req.hdr.SecurityToken = "SecurityToken"; //todo:check dummy data
            req.hdr.UserId        = this.CurrUser.iUserID;
            req.External          = External;
            req.FileId            = this.iLoanID;
            req.TemplReportId     = GetTemplReportId();

            GenerateReportResponse respone = null;
            try
            {
                respone = service.GenerateReport(req);
                string SendEmailReturnMessage = string.Empty;
                if (respone.hdr.Successful)
                {
                    ReturnMessage = SendEmail(ContactID, UserID, respone.ReportContent);
                }
                else
                {
                    ReturnMessage = respone.hdr.StatusInfo;
                }
            }
            catch (System.ServiceModel.EndpointNotFoundException)
            {
                string sExMsg = string.Format("Exception happened when Send Report (FileID={0}): {1}", this.iLoanID, "Point Manager is not running.");
                LPLog.LogMessage(LogType.Logerror, sExMsg);
                ReturnMessage = sExMsg;
            }
            catch (Exception ex)
            {
                string sExMsg = string.Format("Exception happened when Send Report (FileID={0}): {1}", this.iLoanID, ex.Message);
                LPLog.LogMessage(LogType.Logerror, sExMsg);
                ReturnMessage = sExMsg;
            }

            return(ReturnMessage);
        }
    }
Exemple #5
0
        public async Task <IActionResult> GenerateReport([FromBody] GenerateReportRequest request)
        {
            var excelReportData = _reportGeneratingService.GenerateReportData(request);

            return(File(excelReportData, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "report.xlsx"));
        }
Exemple #6
0
 public async Task <IActionResult> GenerateReport([FromBody] GenerateReportRequest request)
 {
     return(Json(await _flatService.GenerateReport(request.From, request.To)));
 }
Exemple #7
0
        public byte[] GenerateReportData(GenerateReportRequest request)
        {
            IWorkbook workbook = new XSSFWorkbook();

            ISheet jobSheet = workbook.CreateSheet(request.ReportName);

            var  rowIndex  = 0;
            IRow headerRow = jobSheet.CreateRow(rowIndex);

            ICellStyle headerStyle = workbook.CreateCellStyle();

            headerStyle.FillBackgroundColor = IndexedColors.White.Index;
            headerStyle.FillForegroundColor = IndexedColors.Black.Index;
            headerStyle.FillPattern         = FillPattern.SolidForeground;
            var headerFont = workbook.CreateFont();

            headerFont.IsBold = true;
            headerFont.Color  = IndexedColors.White.Index;
            headerStyle.SetFont(headerFont);


            var reportData = _genericReportManagerRepository.GetReportData(new GenericReportData()
            {
                ReportName    = request.ReportName,
                ReportFilters = request.ReportFilters.Select(f => new GenericReportFilterOption()
                {
                    ColumnId       = f.ColumnId,
                    ColumnName     = f.ColumnName,
                    FilterOperator = f.FilterOperator,
                    FromValue      = f.FromValue,
                    IsSelect       = f.IsSelect,
                    SortBy         = f.SortBy,
                    SortOrder      = f.SortOrder,
                    ToValue        = f.ToValue
                }).ToList()
            });

            if (reportData == null)
            {
                throw new ServiceException(new ErrorMessage[]
                {
                    new ErrorMessage()
                    {
                        Code    = string.Empty,
                        Message = $"Unable to generate the report data"
                    }
                });
            }

            if (!reportData.Any())
            {
                throw new ServiceException(new ErrorMessage[]
                {
                    new ErrorMessage()
                    {
                        Code    = string.Empty,
                        Message = $"No data to generate report"
                    }
                });
            }



            var headerPointer = 0;
            var rowPointer    = 1;

            //Set headers
            foreach (var header in reportData[0].Select(dataItem => dataItem.Key))
            {
                headerRow.CreateCell(headerPointer).SetCellValue(header);
                ++headerPointer;
            }

            foreach (var dataItem in reportData)
            {
                rowIndex++;

                IRow row = jobSheet.CreateRow(rowIndex);

                //Set values
                headerPointer = 0;

                foreach (var data in dataItem)
                {
                    row.CreateCell(headerPointer).SetCellValue(data.Value);
                    headerPointer++;
                }
            }

            for (int i = 0; i < reportData[0].Select(dataItem => dataItem.Key).Count(); i++)
            {
                jobSheet.AutoSizeColumn(i);
                jobSheet.GetRow(0).GetCell(i).CellStyle = headerStyle;
            }

            var memoryStream = new MemoryStream();

            workbook.Write(memoryStream);

            GC.SuppressFinalize(workbook);

            return(memoryStream.ToArray());
        }