Jasper charts - Undefined length exception - highcharts

I have 16 bar charts in my jasper report.
when I loaded it the first time , I had no issues and all 16 of them loaded.
However ,on consecutive runs, I get this error . The nodata section has been added in the jrxml and I have added this as per my reading on the internet but have added no success
<printWhenExpression><![CDATA[$V{REPORT_COUNT} > 0]]></printWhenExpression>
Any ideas on this?

This was solved after I mapped the parameters inside the chart. This was missed. Also, adding a no data condition to the chart helped in showing a no data scenario in a user friendly manner

Related

Log4j2 JsonTemplateLayout issue

I am trying to set up json logging for log4j2 described here:
https://logging.apache.org/log4j/2.x/manual/json-template-layout.html
However, the format of the output is not matching what I expect. This is what I am getting:
{"#version":1,"source_host":"localhost","message":"hello world","thread_name":"main","#timestamp":"2021-08-17T15:44:54.948-04:00","level":"INFO","logger_name":"com.logging.test.LoggingTest"}
At first I created my own template but this wasn't working so I set it to the logstash one described in the docs:
<JsonTemplateLayout eventTemplateUri="classpath:LogstashJsonEventLayoutV1.json"/>
I am not getting the line number in the output or a lot of other fields. I know it is picking up the eventTemplateURI field because if I set it to a value I know doesn't exist then I get an exception on start up.
I am using log4j-slf4j-impl, does anything special need to be done to make it work with this?
Thanks

TypeError: points[(pointsLength - 1)] is undefined while using multicolor_series.js

I am facing a problem that Series of Lines in the Chart is not getting plotted unless one series (Previous Year)is disabled on the chart output.
In the New Chart Loaded image you can see the loaded chart. Now when I disable a series the other series is plotted see the image in the link below,
I noticed when the problem occurs I see an error "TypeError: points[(pointsLength - 1)] is undefined" while using multicolor_series.js in the console log.
I have attached my "ecmhtb.php" the chart rendering file and "ed.php" where the data is prepared to convert it as JSON. Also I have attached the Data Table which is used to fetch the data from SQL and also the processed out of SQL Data for JSON conversion as excel files.
The above mentioned issue comes in few set of data and other are working as expected. I have updated all the required files in google drive for inspection the link to the files Click-here
I kindly request to help me in solving the issue.

Can't export Telerik html5 Report (says "Loading")?

I have an MVC website which uses Telerik reporting with the html5 report viewer. The report displayed fine, but I couldn't export the report to any formats because when clicked the Export button just showed "Loading".
MySite/api/reports/formats also just showed
<Error>
<Message>An error has occurred.</Message>
</Error>
whereas it should show something like:
[{"name":"PDF","localizedName":"Acrobat (PDF) file"},{"name":"CSV","localizedName":"CSV (comma delimited)"},{"name":"XLS","localizedName":"Excel 97-2003"},{"name":"RTF","localizedName":"Rich Text Format"},{"name":"IMAGE","localizedName":"TIFF file"},{"name":"MHTML","localizedName":"Web Archive"}]
I solved the problem: it was due to my having added a method to the Reports controller (to create a dummy object datasource for a graph at design time).
I found this out because on another pc, I got a more detailed error message from api/reports/formats, which included an ExceptionMessage XML item:
"<ExceptionMessage>/Multiple actions were found that match the request: ...
Moving the extra method from the Reports controller to a different one solved the problem.
I'm posting this in the hope that this helps anyone else with a similar problem.

Multiple-page print or Reporting library for Vaadin 7 UI

We had a Vaadin 7 UI page with multiple Layouts, Panels, and Chart (the Browser will come with ScrollBar as height is big). When we try to print using JavaScript in Vaadin code or using Ctrl+P of browser, it prints only One page in Firefox 32.0.3; prints multiple pages with only data for First Page in IE 8.
We tried with specifying undefined size for all components in UI page
(as mentioned in https://vaadin.com/forum#!/thread/3869543/7861633)
We also tried with some CSS changes for print (as mentioned in https://vaadin.com/forum/#!/thread/529738/539201)
Both above cases didnot solved our problem. As we can understand from documentation that Vaadin scrolling uses a DOM structure, it was unusual to know such a tool does not provide proper Print option.
To brief our objective, we are looking at Reporting option in Vaadin for some data analysis. We saw some options (using JasperReport etc.) mentioned in StackOverflow, however will not be able to implement them as we need to deploy this application to Google App Engine (GAE) which has unsupported functions such as FileOutputStream etc.
To conclude, these are our issues -
How to resolve multiple page print issue in Vaadin 7?
If we are not able to solve first issue, What is the best Reporting library (for PDF or PNG or HTML or Print) that is supported by both Vaadin 7 and GAE?
Any guidelines or suggestions to direct us would be appreciated.
Printing HTML pages is random at best.
Every browser has it's own rules for display and page breaks. We always use pdf for things to print.
iReport / Jasperreports is the thing we use most of the time
You can try this workaround:
private void setSizeUndefined2Print()
{
com.vaadin.ui.JavaScript.getCurrent().execute("document.body.style.overflow = \"auto\";" +
"document.body.style.height = \"auto\"");
UI.getCurrent().setSizeUndefined();
this.setSizeUndefined();
}
If for some cases you need to switch back to "defined" size, next method can be used:
private void setSizeFull2Print()
{
com.vaadin.ui.JavaScript.getCurrent().execute("document.body.style.overflow = \"\";" +
"document.body.style.height = \"\"");
UI.getCurrent().setSizeFull();
this.setSizeFull();
}

Save Conflict Error when trying to add new List Items at the time of list creation

We have created a Custom List template programmatically using Feature.xml, Element.xml, Schema.xml AllItems.aspx, and 3 aspx forms. We have a code behind file for each of these aspx files. i.e. for the AllItems.aspx, DispForm.aspx, EditForm.aspx and NewForm.aspx.
Problematic file is AllItems.aspx. In the code behind for AllItems.aspx file we are deleting previous list items and adding new items to the list before showing them up to the user. As per expectations the code behind file for AllItems.aspx is derived from WebPartPage Class and we have tried to overload quite a few methods without much success.
Problem only occurs on the first time rendering i.e. when an instance of this list is created. When overriding OnLoad(), we get the Save conflict error, Similar is the case with OnInit(), CreateChildControls() method. However, when we override the Render() or RenderChildren() method no such error comes up but at the same time our new list items are also not visible. On browser refresh everything starts working fine as expected. It is only for the first time that the issue comes up.
What could be the possible cause for this? Any ideas, suggestions would be highly appreciated.
Best Regards,
Raghu
I had a problem with a custom EditForm.aspx. I have two lists that are linked together and a change in one causes an event handler to update the other. I have a custom control in EditForm.aspx that edits the linked list. This was causing the event handler to update the item displayed by EditForm.aspx. This in turn would cause the conflict error when the user saved the form.
I finally found that I could reset the context with:
SPContext.Current.ResetItem();
I am not sure if this will help in your case but it fixed my problem.

Resources