Package org.efs.openreports.objects

Examples of org.efs.openreports.objects.ReportLog


        "from  org.efs.openreports.objects.ReportLog reportLog where reportLog.alert.id = ? ")
        .setInteger(0, reportAlert.getId().intValue()).iterate();
         
      while(iterator.hasNext())
      {
        ReportLog reportLog = (ReportLog) iterator.next();      
        session.delete(reportLog);
      }                
   
      tx.commit();
    }
View Full Code Here


   
    Connection conn = null;
    PreparedStatement pStmt = null;
    ResultSet rs = null;   
   
    ReportLog alertLog = new ReportLog(userAlert.getUser(), userAlert.getAlert(), new Date());
    if (includeReportInLog) alertLog.setReport(userAlert.getReport());
   
    try
    {
      reportLogProvider.insertReportLog(alertLog);
     
      ReportDataSource dataSource = userAlert.getAlert().getDataSource();
      conn = dataSourceProvider.getConnection(dataSource.getId());
     
      pStmt = conn.prepareStatement(userAlert.getAlert().getQuery());

      rs = pStmt.executeQuery();

      if (!rs.next())
      {
        userAlert.setCount(0);
      }

      userAlert.setCount(rs.getInt(1));
     
      if (userAlert.isTriggered())
      {
        alertLog.setStatus(ReportLog.STATUS_TRIGGERED);
      }
      else
      {
        alertLog.setStatus(ReportLog.STATUS_NOT_TRIGGERED);
      }
     
      alertLog.setMessage("Count: " + userAlert.getCount() + " Condition: "
          + userAlert.getCondition());
     
      alertLog.setEndTime(new Date());
      reportLogProvider.updateReportLog(alertLog);
    }
    catch (Exception e)
    {
      alertLog.setMessage(e.getMessage());
      alertLog.setStatus(ReportLog.STATUS_FAILURE);
      alertLog.setEndTime(new Date());

      reportLogProvider.updateReportLog(alertLog);
     
      throw new ProviderException(LocalStrings.ERROR_ALERTQUERY_INVALID);
    }
View Full Code Here

    log.debug("Report: " + report.getName());
    log.debug("User: " + user.getName());   

    JRVirtualizer virtualizer = null;
          
    ReportLog reportLog = new ReportLog(user, report, new Date());
        reportLog.setExportType(reportSchedule.getExportType());
        reportLog.setRequestId(reportSchedule.getRequestId());
       
    try
    {
      //
      ReportUserAlert alert = reportSchedule.getAlert();     
     
      if (alert != null)
      {
        log.debug("Executing Alert Condition");
       
        alert.setReport(report);
        alert = alertProvider.executeAlert(alert, true);
       
        if (!alert.isTriggered())
        {
          log.debug("Alert Not Triggered. Report not run.");
          return;
        }
       
        log.debug("Alert Triggered. Running report.");
      }
      //     

      // add standard report parameters
      reportParameters.put(ORStatics.USER_ID, user.getId());
      reportParameters.put(ORStatics.EXTERNAL_ID, user.getExternalId());
      reportParameters.put(ORStatics.USER_NAME, user.getName());
      reportParameters.put(ORStatics.IMAGE_DIR, new File(directoryProvider.getReportImageDirectory()));
      reportParameters.put(ORStatics.REPORT_DIR, new File(directoryProvider.getReportDirectory()));
      //
     
      reportLogProvider.insertReportLog(reportLog);     
     
      ReportEngineInput reportInput = new ReportEngineInput(report, reportParameters);
      reportInput.setExportType(ExportType.findByCode(reportSchedule.getExportType()));
            reportInput.setXmlInput(reportSchedule.getXmlInput());
            reportInput.setLocale(reportSchedule.getLocale());
     
      if (report.isJasperReport())
      {
        // add any charts
        if (report.getReportChart() != null)
        {
          log.debug("Adding chart: " + report.getReportChart().getName());
       
          ChartReportEngine chartEngine = new ChartReportEngine(
              dataSourceProvider, directoryProvider, propertiesProvider);
         
          ChartEngineOutput chartOutput = (ChartEngineOutput) chartEngine.generateReport(reportInput);
       
          reportParameters.put("ChartImage", chartOutput.getContent());       
        }

        if (report.isVirtualizationEnabled())
        {
          log.debug("Virtualization Enabled");
          virtualizer = new JRFileVirtualizer(2, directoryProvider.getTempDirectory());
          reportParameters.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);
        }
       
        reportInput.setParameters(reportParameters);
        reportInput.setInlineImages(true);       
      }
     
      ReportEngine reportEngine = ReportEngineHelper.getReportEngine(report,
          dataSourceProvider, directoryProvider, propertiesProvider)
      reportEngine.setApplicationContext(appContext);
     
      ReportEngineOutput reportOutput = reportEngine.generateReport(reportInput);           
          
            String[] deliveryMethods = reportSchedule.getDeliveryMethods();     
           
            if (deliveryMethods == null || deliveryMethods.length == 0)
            {
                deliveryMethods = new String[]{org.efs.openreports.ReportConstants.DeliveryMethod.EMAIL.getName()};
                log.warn("DeliveryMethod not set, defaulting to email delivery");
            }
           
            // set status to success. if a delivery method fails, this is updated to delivery failure
            reportLog.setStatus(ReportLog.STATUS_SUCCESS);
           
            ArrayList<ReportDeliveryLog> deliveryLogs = new ArrayList<ReportDeliveryLog>();
           
            for (int i=0; i < deliveryMethods.length; i++)
            {                                 
                ReportDeliveryLog deliveryLog = new ReportDeliveryLog(deliveryMethods[i], new Date());
           
                try
                {     
                  String deliveryMethodBeanId = deliveryMethods[i] + "DeliveryMethod";
                 
                    DeliveryMethod deliveryMethod = (DeliveryMethod) appContext.getBean(deliveryMethodBeanId, DeliveryMethod.class);           
                    deliveryMethod.deliverReport(reportSchedule, reportOutput);
                   
                    deliveryLog.setEndTime(new Date());
                    deliveryLog.setStatus(ReportLog.STATUS_SUCCESS);
                }               
                catch(DeliveryException de)
                {
                  log.error("Delivery Error: " + reportSchedule.getRequestId(), de);
                 
                    deliveryLog.setMessage(de.toString());
                    deliveryLog.setStatus(ReportLog.STATUS_DELIVERY_FAILURE);
                   
                    reportLog.setMessage(de.toString());
                    reportLog.setStatus(ReportLog.STATUS_DELIVERY_FAILURE);                   
                }
               
                deliveryLogs.add(deliveryLog);               
            }   

            reportLog.setDeliveryLogs(deliveryLogs);
      reportLog.setEndTime(new Date());     
           
      reportLogProvider.updateReportLog(reportLog);

      log.debug("Scheduled Report Finished...");
    }
    catch (Exception e)
    {
      if (e.getMessage() != null && e.getMessage().indexOf("Empty") > 0)
      {
        reportLog.setStatus(ReportLog.STATUS_EMPTY);
      }
      else
      {       
        log.error("ScheduledReport Error: " + reportSchedule.getRequestId(), e);

        reportLog.setMessage(e.toString());
        reportLog.setStatus(ReportLog.STATUS_FAILURE);
      }

      reportLog.setEndTime(new Date());

      try
      {
        reportLogProvider.updateReportLog(reportLog);
      }
View Full Code Here

     
      log.info("generateReport: received request :  " + reportInput.getRequestId() + " : for report : " + report.getName() + " : from : " +  user.getName());
     
            if (reportInput.getDeliveryMethods() == null || reportInput.getDeliveryMethods().length < 1)
            {
                ReportLog reportLog = null;
               
                try
                {
                    reportLog = new ReportLog(user, report, new Date());
                    reportLog.setExportType(reportInput.getExportType().getCode());
                   
                    reportLog = reportLogProvider.insertReportLog(reportLog);              
                                 
                    ReportEngine reportEngine = ReportEngineHelper.getReportEngine(report,
                            dataSourceProvider, directoryProvider, propertiesProvider);
                   
                    ReportEngineInput engineInput = new ReportEngineInput(report, buildParameterMap(reportInput, report));
                    engineInput.setExportType(reportInput.getExportType());
                    engineInput.setXmlInput(reportInput.getXmlInput());
                    engineInput.setLocale(ORUtil.getLocale(reportInput.getLocale()));
                   
                    ReportEngineOutput reportEngineOutput = reportEngine.generateReport(engineInput);
                   
                    reportOutput.setContent(reportEngineOutput.getContent());
                    reportOutput.setContentType(reportEngineOutput.getContentType());
                    reportOutput.setContentExtension(reportEngineOutput.getContentExtension());
                   
                    //convert List of Dynabeans to XML so that it can be serialized
                    if (reportEngineOutput instanceof QueryEngineOutput)
                    {
                        ByteArrayOutputStream out = new ByteArrayOutputStream();          
                                          
                        xStream.toXML(((QueryEngineOutput)reportEngineOutput).getResults(), out);                  
                       
                        reportOutput.setContent(out.toByteArray());
                        reportOutput.setContentType(ReportEngineOutput.CONTENT_TYPE_XML);
                       
                        out.close();                
                    }               
                  
                    reportLog.setStatus(ReportLog.STATUS_SUCCESS);
                    reportLog.setEndTime(new Date());
                   
                    reportLogProvider.updateReportLog(reportLog);
                }
                catch(Exception e)
                {
                    if (reportLog != null && reportLog.getId() != null)
                    {
                        reportLog.setStatus(ReportLog.STATUS_FAILURE);
                        reportLog.setMessage(e.getMessage());
                        reportLog.setEndTime(new Date());
                       
                        try
                        {
                            reportLogProvider.updateReportLog(reportLog);
                        }
View Full Code Here

       
          ORUtil.resetOlapContext(ActionContext.getContext())
            
          try
          {
            ReportLog reportLog = new ReportLog(user, report, new Date());          
            reportLogProvider.insertReportLog(reportLog);
          }
          catch(ProviderException pe)
          {
            log.warn(pe);
View Full Code Here

    report = (Report) ActionContext.getContext().getSession().get(ORStatics.REPORT);

    Map<String,Object> reportParameters = getReportParameterMap(user);

    ReportLog reportLog = new ReportLog(user, report, new Date());

    try
    {
      log.debug("Starting Query Report: " + report.getName());
      log.debug("Query: " + report.getQuery());

      reportLogProvider.insertReportLog(reportLog);   
     
      ReportEngineInput input = new ReportEngineInput(report, reportParameters);
     
      if (report.isJFreeReport())
      {
        JFreeReportEngine jfreeReportEngine = new JFreeReportEngine(
            dataSourceProvider, directoryProvider, propertiesProvider);
       
        ReportEngineOutput output = jfreeReportEngine.generateReport(input);       
       
        html = new String(output.getContent());
      }
      else
      {
        QueryReportEngine queryReportEngine = new QueryReportEngine(
            dataSourceProvider, directoryProvider, propertiesProvider);
       
        QueryEngineOutput output = (QueryEngineOutput) queryReportEngine.generateReport(input);       
       
        session.put(ORStatics.QUERY_REPORT_RESULTS, output.getResults());
       
        session.put(ORStatics.QUERY_REPORT_PROPERTIES, output.getProperties());
      }     

      reportLog.setEndTime(new Date());
      reportLog.setStatus(ReportLog.STATUS_SUCCESS);
      reportLogProvider.updateReportLog(reportLog);

      log.debug("Finished Query Report: " + report.getName());
    }
    catch (Exception e)
    {

      addActionError(e.getMessage());

      log.error(e.getMessage());

      reportLog.setMessage(e.getMessage());
      reportLog.setStatus(ReportLog.STATUS_FAILURE);

      reportLog.setEndTime(new Date());

      try
      {
        reportLogProvider.updateReportLog(reportLog);
      }
View Full Code Here

    report = (Report) ActionContext.getContext().getSession().get(ORStatics.REPORT);

    Map<String,Object> parameters = getReportParameterMap(user);

    ReportLog reportLog = new ReportLog(user, report, new Date());

    Connection conn = null;
   
    try
    {
      log.debug("Starting JXLS Report: " + report.getName());     

      reportLogProvider.insertReportLog(reportLog);

      ReportEngineInput input = new ReportEngineInput(report, parameters);
     
      JXLSReportEngine reportEngine = new JXLSReportEngine(
            dataSourceProvider, directoryProvider, propertiesProvider);
       
      ReportEngineOutput output = reportEngine.generateReport(input);

      HttpServletResponse response = ServletActionContext.getResponse();     
      response.setContentType("application/vnd.ms-excel");
      response.setHeader("Content-disposition", "inline; filename="
          + StringUtils.deleteWhitespace(report.getName()) + ".xls");

      ServletOutputStream out = response.getOutputStream();

      out.write(output.getContent(), 0, output.getContent().length);

      out.flush();
      out.close();

      reportLog.setEndTime(new Date());
      reportLog.setStatus(ReportLog.STATUS_SUCCESS);
      reportLogProvider.updateReportLog(reportLog);

      log.debug("Finished JRXLS Report: " + report.getName());
    }
    catch (Exception e)
    {
      addActionError(e.getMessage());

      log.error(e.getMessage());

      reportLog.setMessage(e.getMessage());
      reportLog.setStatus(ReportLog.STATUS_FAILURE);

      reportLog.setEndTime(new Date());

      try
      {
        reportLogProvider.updateReportLog(reportLog);
      }
View Full Code Here

          "from  org.efs.openreports.objects.ReportLog reportLog where reportLog.report.id = ? ")
        .setInteger(0, report.getId().intValue()).iterate();
         
      while(iterator.hasNext())
      {
        ReportLog reportLog = (ReportLog) iterator.next();      
        session.delete(reportLog);
      }   
     
      //remove report from groups
      iterator =  session
View Full Code Here

    // set headers to disable caching   
    response.setHeader("Pragma", "public");
    response.setHeader("Cache-Control", "max-age=0");

    ReportLog reportLog = new ReportLog(user, report, new Date());
        reportLog.setExportType(exportType.getCode());
   
    JRVirtualizer virtualizer = null;

    try
    {
      if (exportType == ExportType.PDF)       
      {
        // Handle "contype" request from Internet Explorer
        if ("contype".equals(request.getHeader("User-Agent")))
        {         
                  response.setContentType("application/pdf");             
                  response.setContentLength(0);              
                 
                  ServletOutputStream outputStream = response.getOutputStream();
                  outputStream.close();     
                 
                  return NONE;
        }
      }     
             
      log.debug("Filling report: " + report.getName());
     
      reportLogProvider.insertReportLog(reportLog);           

      if (report.isVirtualizationEnabled() && exportType != ExportType.IMAGE)
      {
        log.debug("Virtualization Enabled");
        virtualizer = new JRFileVirtualizer(2, directoryProvider.getTempDirectory());
        reportParameters.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);
      }

      ReportEngineInput reportInput = new ReportEngineInput(report, reportParameters);
      reportInput.setExportType(exportType);
      reportInput.setImagesMap(imagesMap);

      // add any charts
      if (report.getReportChart() != null)
      {
        log.debug("Adding chart: " + report.getReportChart().getName());

        ChartReportEngine chartEngine = new ChartReportEngine(dataSourceProvider,
            directoryProvider, propertiesProvider);
       
        ChartEngineOutput chartOutput = (ChartEngineOutput) chartEngine
            .generateReport(reportInput);

        reportParameters.put("ChartImage", chartOutput.getContent());
      }
     
      ReportEngineOutput reportOutput = null;
      JasperPrint jasperPrint = null;
     
      if (report.isJasperReport())
      {
        JasperReportEngine jasperEngine = new JasperReportEngine(
            dataSourceProvider, directoryProvider, propertiesProvider);
       
        jasperPrint = jasperEngine.fillReport(reportInput);

        log.debug("Report filled - " + report.getName() + " : size = "
            + jasperPrint.getPages().size());

        log.debug("Exporting report: " + report.getName());

        reportOutput = jasperEngine.exportReport(jasperPrint, exportType, report
            .getReportExportOption(), imagesMap, false);
      }
      else
      {
        ReportEngine reportEngine = ReportEngineHelper.getReportEngine(report, dataSourceProvider, directoryProvider, propertiesProvider);
        reportOutput = reportEngine.generateReport(reportInput);
      }
     
      response.setContentType(reportOutput.getContentType());
     
      if (exportType != ExportType.HTML && exportType != ExportType.IMAGE)
      {
        response.setHeader("Content-disposition", "inline; filename="
            + StringUtils.deleteWhitespace(report.getName()) + reportOutput.getContentExtension());
      }     
     
      if (exportType == ExportType.IMAGE)
      {
        if (jasperPrint != null)
        {         
          session.put(ORStatics.JASPERPRINT, jasperPrint);
        }
      }
      else
      {       
        byte[] content = reportOutput.getContent();
       
        response.setContentLength(content.length);
       
        ServletOutputStream out = response.getOutputStream();
        out.write(content, 0, content.length);
        out.flush();
        out.close();       
      }

      reportLog.setEndTime(new Date());
      reportLog.setStatus(ReportLog.STATUS_SUCCESS);
      reportLogProvider.updateReportLog(reportLog);     

      log.debug("Finished report: " + report.getName());
    }
    catch (Exception e)
    {
      if (e.getMessage() != null && e.getMessage().equals(LocalStrings.ERROR_REPORT_EMPTY))
      {       
        reportLog.setStatus(ReportLog.STATUS_EMPTY);
      }
      else
      {       
        log.error(e.getMessage());

        reportLog.setMessage(e.getMessage());
        reportLog.setStatus(ReportLog.STATUS_FAILURE);
      }
           
            addActionError(getText(e.getMessage()));

      reportLog.setEndTime(new Date());

      try
      {
        reportLogProvider.updateReportLog(reportLog);
      }
View Full Code Here

    report = (Report) ActionContext.getContext().getSession().get(ORStatics.REPORT);

    Map<String,Object> reportParameters = getReportParameterMap(user);

    ReportLog reportLog = new ReportLog(user, report, new Date());

    try
    {
      log.debug("Starting Chart Report: " + report.getName());     

      reportLogProvider.insertReportLog(reportLog);       
     
      ChartReportEngine chartReportEngine = new ChartReportEngine(
          dataSourceProvider, directoryProvider, propertiesProvider);

      ReportEngineInput input = new ReportEngineInput(report, reportParameters);

      ChartEngineOutput chartOutput = (ChartEngineOutput) chartReportEngine
          .generateReport(input)
     
      chartValues = chartOutput.getChartValues();
      if (chartValues.length == 0)
      {
        addActionError(getText(LocalStrings.ERROR_REPORT_EMPTY));
      }
     
      imageMap = ImageMapUtilities.getImageMap("chart", chartOutput.getChartRenderingInfo());           
     
      HashMap<String,byte[]> imagesMap = new HashMap<String,byte[]>();
      imagesMap.put("ChartImage", chartOutput.getContent());     
     
      session.put(ORStatics.IMAGES_MAP, imagesMap);     
           
      reportLog.setEndTime(new Date());
      reportLog.setStatus(ReportLog.STATUS_SUCCESS);
      reportLogProvider.updateReportLog(reportLog);
           
            /*
             * set chartRequestId to the current time so that it can be added to
             * the imageLoader URL to make a unique URL and prevent image caching
             */
            chartRequestId = reportLog.getEndTime().getTime();

      log.debug("Finished Chart Report: " + report.getName());
    }
    catch (Exception e)
    {     
      addActionError(getText(e.getMessage()));
     
      reportLog.setMessage(getText(e.getMessage()));
      reportLog.setStatus(ReportLog.STATUS_FAILURE);

      reportLog.setEndTime(new Date());

      try
      {
        reportLogProvider.updateReportLog(reportLog);
      }
View Full Code Here

TOP

Related Classes of org.efs.openreports.objects.ReportLog

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.