Jonathan Levinson · Jun 18, 2020 go to post

Hi Lucas,

This looks to me like a bug in InterSystems FO generation.  You should contact the InterSystems WRC.

I see the following code in the FO:

<svg:link type="text/css" rel="stylesheet" id="dark-mode-general-link"  />
<svg:link type="text/css" rel="stylesheet" id="dark-mode-custom-link"  />
<!--  SVGStyle: %ZEN.SVGComponent.svgPage  -->
<!--  SVGStyle: %ZEN.Component.page  -->
<!--  SVGStyle: %DeepSee.UserPortal.standardPage  -->
<!--  SVGStyle: %DeepSee.UserPortal.DashboardViewer  -->
<!--  SVGDef: %ZEN.SVGComponent.svgPage  -->

While the comments are fine, the svg:link element should not be there.  Something else should be there instead.

HTML has a link elment and it looks like svg:link is supposed to be an HTML element, or maybe the generation for HTML intruded into the generation for PDF.

Jonathan Levinson · Jun 18, 2020 go to post

There is no svg:link element.  The svg:a element is used to specify a link.

It would help to see the xsl file to which your refer to further understand what is going on.

Best Regards,

Jonathan

Jonathan Levinson · Sep 9, 2019 go to post

I think most XSLT implementations read the whole XML input file into memory before beginning to process it.  You need to test if an XSLT approach works with files of the size with which you deal.  Of course, you also need to test how files of a particular size work in the particular machine environment which is running the application.  There is not a one size fits all solution for parsing XML files using XSLT when memory issues are a concern.  I believe ISC supports a SAX parser. SAX parsers put less burdens on memory than XLST.

SAX is described here: https://docs.oracle.com/javase/tutorial/jaxp/intro/simple.html

Jonathan Levinson · Jun 17, 2019 go to post

I think there may be another jar, probably available from hibernate.org, which has the driver.  I don't know for certain, but I think that is how things work.  Note "org.hibernate.dialect" as the prefix of the URL means that hibernate has and owns the driver, including its support.

Just my two cents,

Jonathan

Jonathan Levinson · Jun 13, 2019 go to post

In the namespace in which you are running the rendering, are you able to run the following: DO $SYSTEM.Status.DisplayError(%objlasterror) This might tell us more about the error you are encountering. Also, here is another approach, in the namespace follow instructions in the following link. https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KE… In your namespace please set the following global.

 Set ^CacheTemp.ZEN("DebugZen","NoDelete")=1

In the intermediate file area /mgr/Temp you can examine the xml, xsl, and error messages from invoking Java. These files provide important clues in trouble shooting the kind of problem you are having. For instance, you can answer the following question: is the xml "well formed" xml. Also is the xsl "well formed" xsl. The files with extension .txt provide important information about the java invocation.

Jonathan Levinson · Apr 23, 2019 go to post

The ZEN Reports documentation has a helpful trouble shooting section.

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KE…

I have found it helpful to save to <CacheInstall>/mgr/Temp all the intermediate files, the error messages from invoking FOP, the .xsl files, the .fo files, if any, and the PDF files.

The easiest way to do this is to set in the namespace from which the reports are being run, the following global: 

Set ^CacheTemp.ZEN("DebugZen","NoDelete")=1

There are three common sources of ZEN Report errors:

1) The ObjectScript code for invoking the report has errors.  Very often these errors can be found by examining %objlasterror, and if not, standard Object Script debugging techniques will often show the problem.

2) The generated xml or xsl or fo are invalid.  If you have a decent parsing editor such as XMLSpy Professional or Oxygen Editor, you can open each of the generated files in turn, with the appropriate editor.  If these editors find a problem such as an invalid tag or attribute, one can use FindInFiles on the reports searching for the names or attributes that are part of the error the editor detected to find the report in error, and the area in the report that is erroneous.  Since intermediate fo files are not always generated, and since fo files can be invalid in terms of the XSL-FO 1.1 standard, one sometimes needs to generate the fo files using the instructions in the ZEN Reports User Guide.

3) If all the files are valid, then it is still possible that FOP has emitted a Java exception stack for some reason.  These stacks can be seen by lookin at the .txt files generated in <CacheInstall>/mgr/Temp.

I hope this helps.

Jonathan Levinson

Jonathan Levinson · Oct 18, 2018 go to post

If the question is, can XSLT process JavaScript, the answer is no.  XSLT processors are not able to process JavaScript.  If the question is can XSLT include JavaScript as character data by using appropriate escapes the answer is yes.

Jonathan Levinson · Jun 21, 2017 go to post

Our current Python binding only supports one dimensional lists.

I don't know of a work-around.

Please contact the WRC and discuss an enhancement request.  Product Management will decide whether the enhancement request is approved, and if approved when scheduled.

Thanks,

Jonathan Levinson

Senior Software Developer

InterSystems.

Jonathan Levinson · Jan 16, 2017 go to post

I don't understand the question.  Can you elaborate?

What is the request class?

In what way do you want to change the values in the SQL statement?

What do you mean by parsing the values in the excel report to report to each sheet respectively?

Jonathan Levinson · Dec 30, 2016 go to post

What you want to do in ZEN Reports cannot be done in ZEN Reports.

You cannot create an Excel spreadsheet whose headers are bolded.

You cannot create a default width for a cell.

Jonathan Levinson · Apr 22, 2016 go to post

Windows 7 should support a version of IE that natively supports SVG.  What version of IE are you using?

Jonathan Levinson · Apr 16, 2016 go to post

From Atelier's menus there is no way of doing a compile without a save.  The compile updates the server class.  The client code  you wrote is saved so that the server and client code are in synch.

Jonathan Levinson · Apr 16, 2016 go to post

Eclipse did not start as a Java IDE.  Eclipse had plug-in support from the beginning.  Java may have been one of the first languages supported, but Eclipse supports a variety of languages, including those, for instance, for Web development.

To install Java support, you need to do the following:

Help/install new software  

Click on available software sites

Put in the "Work with:" box http://download.eclipse.org/eclipse/updates/4.5.

Atelier uses the Mars platform.

From the check list pick what you want, but be sure for Java Development to click the check box - Java Development tools.

You'll also want to add http://download.eclipse.org/eclipse/updates/4.5.  There is an add button on your right.

Good luck!

Jonathan Levinson

Jonathan Levinson · Apr 16, 2016 go to post

Eclipse did not start as a Java IDE.  Eclipse had plug-in support from the beginning.  Java may have been one of the first languages supported, but Eclipse supports a variety of languages, including those, for instance, for Web development.

To install Java support, you need to do the following:

Help/install new software  

Click on available software sites

Put in the "Work with:" box http://download.eclipse.org/eclipse/updates/4.5.

Atelier uses the Mars platform.

From the check list pick what you want, but be sure for Java Development to click the check box - Java Development tools.

You'll also want to add http://download.eclipse.org/eclipse/updates/4.5.  There is an add button on your right.

Good luck!

Jonathan Levinson

Jonathan Levinson · Apr 16, 2016 go to post

Eclipse did not start as a Java IDE; plug-in support has been part of its foundation since the beginning.

Jonathan Levinson · Apr 16, 2016 go to post

This is a bug in my ANTLR grammar for ISC SQL.

I will fix on Tuesday and get back to you.

Would you mind attaching the code from above image, so I don't have to retype.

Thanks,

Jonathan Levinson

Jonathan Levinson · Mar 6, 2016 go to post

The SQL parser, the HTML/CSP parser, and the JavaScript are all ANTLR.

The Atelier project and its COS parser were started before the strengths of ANTLR4 were realized.

I agree that a great strength of ANTLR4 is that once one has written the grammars, as long as those grammars don't involve too much code, it is trivial to generate a parser in the language of one's choice whether JavaScript, C#, or Java.

I think (personal opinion) it would be good to have on-going discussions of an ANTLR approach to parsing COS.

Jonathan Levinson · Feb 8, 2016 go to post

The team is still working on the issues you raised but I'll let them know you've revised your problem report.