These release notes reflect the changes with respect to ReportServer RS4.4.0-6084.
In ReportServer 4.5.0, we improved the internal script caching mechanisms. We also added a "clearInternalScriptCache" terminal command for manually clearing the scripting caches. Note that this is available as a service method as well: net.datenwerke.rs.scripting.service.scripting.ScriptingService.clearCache()
You can control scripting cache settings in the cache section of the the scripting/scripting.cf configuration file. The default file is shown below.
When you need to use classes in nested scripts, you cannot use GLOBALS.exec():
GLOBALS.exec('lib.groovy')
With other words, this would not work if B contains a class definition:
GLOBALS.exec('/fileserver/bin/B.groovy')
def b = new B()
b.prepareString()
Groovy would try to compile your script, but cannot find B’s class definition during compilation time.
In this case, you can use the new methods GLOBALS.loadClass() and GLOBALS.loadClasses() for loading your class definitions. Using the new method GLOBALS.newInstance() allows you to create instances as shown below. Finally, you can call your instance’s methods, in this example prepareString().
def bClass = GLOBALS.loadClass('B.groovy', 'net.datenwerke.rs.samples.tools.nesting.nestedclass.B')
def bInstance = GLOBALS.newInstance(bClass)
return bInstance.prepareString()"
Examples can be found here and here.
You can now disable LDAP completely if you don't need it. This is done in the ldap.cf configuration file with the "disabled" configuration option.
The default ldap.cf configuration file is shown below:
Often it is useful to be able to explore and analyze your LDAP server, e.g. when not all attributes/object classes are known on beforehand. For this purpose, we implemented a new "ldapschema" terminal command and also extended the "ldaptest users", "ldaptest groups" and "ldaptest organizationalUnits" with a "-s" (schema) flag. This allows you to display the object class schema attributes and properties.
While the "-s" flag allows you to explore the installed object class types of your users', OUs' and groups' object classes, the "ldapschema" allows you to explore any object class.
An example is shown below.
Shows the schema of the users' object class:
In the screenshot above we see that the user's class is "inetOrgPerson" and the parent's user's class is "organizationalPerson".
We may explore the "organizationalPerson" object class as shown below.
We may continue exploring the LDAP schemas until the top-most object class: "top":
We may list all object classes available:
We may list also all attributes available:
And analyze the attributes:
Information about the LDAP server can be fetched as follows:
You can use the "ldapfilter" terminal command for showing the installed LDAP filter in a multi-line form that makes it easier to understand its hierarchy and embedded components. The command also tries to simplify the installed LDAP filter in certain ways (for example, by removing unnecessary levels of hierarchy, like an OR embedded in another OR).
Often, while configuring the LDAP configuration file sso/ldap.cf, the needed GUID is not known on-beforehand. As all LDAP installations may use a different GUID, you normally have to check with your LDAP administrator for the appropriate GUID. ReportServer 4.5.0 adds a best-effort GUID guess with the "ldapguid" terminal command:
The command above shows that the currently installed GUID in sso/ldap.cf is "objectGUID", which should probably be changed to "entryUUID", as ReportServer found this GUID in your LDAP installation.
ReportServer 4.5.0 allows you to request and display any additional LDAP attribute via the "ldaptest" terminal commands' "-a" flag. The additional attributes must be entered in a ;-separated manner.
E.g. in order to display the "mail", "member" and "ou" attribute values of each "ldaptest filter" entry, you can enter the following:
In order to display the "memberOf" attribute value of each "ldaptest users" entry, you can enter the following:
Note that this flag is available in all "ldaptest" subcommands.
Your LDAP filter should return all (and only!) your users, groups and organizational units. If more nodes are returned, or if the mappings in ldap.cf are not correct, nodes are returned that can not be mapped to a user, a group or an organizational unit. These are called LDAP orphans. In a correct installation and configuration, there should not be any LDAP orphans. Thus, you get LDAP orphans when you return "to much" from your LDAP filter. You can easily list all LDAP orphans with the new "ldaptest orphans" terminal command.
The old "allowLocalUsers" setting was removed as of ReportServer 4.5.0. Instead, you should use colon-separated PAMs in your reportserver.properties as explained in the Script Guide (Custom Authenticators PAMs) if you need to allow/disallow local users to log-in.
E.g. the following setting allows only LDAP users:
rs.authenticator.pams = net.datenwerke.rs.ldap.service.ldap.pam.LdapPAM
while the following setting allows both LDAP and local users:
rs.authenticator.pams = net.datenwerke.rs.ldap.service.ldap.pam.LdapPAM:net.datenwerke.rs.authenticator.service.pam.UserPasswordPAM
The default ldap.cf configuration file is shown below:
ReportServer now logs report detailed information when a report execution fails. Refer to the screenshots below.
The exact information to be logged may be configured in the main/error-log.cf configuration file. The complete default configuration is shown below.
Some environment information was added in ReportServer 4.5.0, e.g. SSL information, static PAMs, Groovy version, DB Configuration, as you can see in the following screenshot:
ReportServer has now a new "Admin Panel" system console which allows easy access to administration functionality as shown in the screenshot below.
RS-6124 | New Feature | REST: add general-info resource |
RS-6140 | New Feature | REST: Allow apikey authentication analogously to report URL execution authentication |
RS-6151 | New Feature | REST: refactor apikey authentication to use AOP together with RestAuthentication annotation |
RS-6152 | New Feature | REST: Allow RestAuthentication annotation to annotate resource classes |
RS-6153 | New Feature | REST: Provide annotation to bypass REST authentication by individual methods |
RS-6163 | New Feature | Allow to fetch all LDAP nodes that are not users, groups or organizational units with "ldaptest orphans" terminal command |
RS-6202 | New Feature | Allow to show LDAP schema for object classes with "ldapschema objectClassInfo" terminal command |
RS-6543 | New Feature | Allow to output script output in new window with "-w" flag |
RS-6570 | New Feature | Allow to explore LDAP schema for any object class with "ldapschema objectClassInfo" terminal command |
RS-6581 | New Feature | Add nesting classes example: A.groovy, B.groovy, C.groovy |
RS-6582 | New Feature | Allow to create class instances via GLOBALS.createInstance() |
RS-6584 | New Feature | Add nesting multiple classes example: A.groovy, myLibraries.groovy |
RS-6585 | New Feature | Allow to load class files by GLOBALS.loadClass() |
RS-6586 | New Feature | Allow to load multiple classes from same source file using GLOBALS.loadClasses() |
RS-6593 | New Feature | Allow to clear script cache with "clearInternalScriptCache" terminal command |
RS-6595 | New Feature | Allow to configure scripting cache settings in /etc/scripting/scripting.cf configuration file |
RS-6596 | New Feature | Add service method for clearing script cache: net.datenwerke.rs.scripting.service.scripting.ScriptingService.clearCache() |
RS-6606 | New Feature | Allow to display information of the LDAP server with "ldapinfo" terminal command |
RS-6634 | New Feature | Allow to display indented LDAP filter with "ldapfilter" terminal command |
RS-6635 | New Feature | Add "SSL" information to "env" terminal command |
RS-6637 | New Feature | Add SSL information to "General Info" system console |
RS-6646 | New Feature | Allow to list LDAP object classes with "ldapschema objectClassList" terminal command |
RS-6652 | New Feature | Add original schema definition to "ldapschema" terminal command |
RS-6654 | New Feature | Allow to specify that "ldapfilter" should not try to simplify filter with "-n" flag |
RS-6655 | New Feature | Try to guess the appropriate GUID for the current LDAP server with "ldapguid" terminal command |
RS-6656 | New Feature | Allow to specify number of indentation spaces of "ldapfilter" terminal command |
RS-6670 | New Feature | Allow multi-line LDAP filter |
RS-6679 | New Feature | Try to simplify filter with "ldapfilter" terminal command |
RS-6682 | New Feature | "ldapguid" terminal command should perform a search request containing candidate entries for guessing GUID if not previously guessed |
RS-6687 | New Feature | "ldapschema" terminal command should include inherited attributes in attribute lists |
RS-6689 | New Feature | Support multi-named attributes in "ldapguid" terminal command |
RS-6690 | New Feature | Add subclasses to "ldapschema" terminal command |
RS-6691 | New Feature | Add extensions information to all "ldapschema" terminal commands |
RS-6692 | New Feature | Add "names" and "obsolete" attributes to "schemainfo" terminal command output |
RS-6695 | New Feature | Allow to query attribute schema with "ldapschema attributeInfo" terminal command |
RS-6696 | New Feature | Allow to query all LDAP attributes available with "ldapschema attributeList" terminal command |
RS-6697 | New Feature | Include "used as required attribute" and "used as optional attribute" object class list in "ldapschema attributeInfo" terminal command |
RS-6699 | New Feature | Allow to query available LDAP matching rules with "ldapscheme matchingRuleList" terminal command |
RS-6700 | New Feature | Allow to display available LDAP syntax rules with "ldapschema syntaxRuleList" terminal command |
RS-6702 | New Feature | Allow to display LDAP matching rule info with "ldapschema matchingRuleInfo" terminal command |
RS-6703 | New Feature | Show "used by attributes" in "ldapschema matchingRuleInfo" and "ldapschema syntaxRuleInfo" terminal commands |
RS-6704 | New Feature | Add syntax description to "ldapschema" info terminal comands |
RS-6705 | New Feature | Allow to query syntax rule schema with "ldapschema syntaxRuleInfo" terminal command |
RS-6712 | New Feature | Display LDAP elements containing multiple names |
RS-6716 | New Feature | Allow exporting the complete LDAP schema with "ldapschema entry" terminal command |
RS-6728 | New Feature | Add AuthenticationResult helper methods: denyAccess(), grantAccess(user), dontCareAccess(), cannotAuthenticate(authoritative) |
RS-6729 | New Feature | Add new "Admin Panel" system console |
RS-6753 | New Feature | Add Groovy version to "env" terminal command |
RS-6756 | New Feature | Allow to query any attribute with "ldaptest filter" terminal command via "-a" flag |
RS-6757 | New Feature | Allow to query any attribute with "ldaptest users" terminal command via "-a" flag |
RS-6758 | New Feature | Allow to query any attribute with "ldaptest groups" terminal command via "-a" flag |
RS-6759 | New Feature | Allow to query any attribute with "ldaptest organizationalUnits" terminal command via "-a" flag |
RS-6760 | New Feature | "ldaptest" terminal command should allow list values with the "-a" flag |
RS-6761 | New Feature | Allow to query any attribute with "ldaptest guid" terminal command via "-a" flag |
RS-6762 | New Feature | Add "open terminal session" button to "Admin Panel" system console |
RS-6771 | New Feature | Add DB config information to "General Info" system console |
RS-6778 | New Feature | Add "General Info" system console to CE |
RS-6780 | New Feature | Log report detailed information when report execution throws an exception |
RS-6783 | New Feature | Allow to configure detailed information when report execution throws an exception in error-log.cf configuration file |
RS-6785 | New Feature | Allow to log memory info when report execution throws an exception |
RS-6786 | New Feature | Allow to log general info when report execution throws an exception |
RS-6787 | New Feature | Allow to log report info when report execution throws an exception |
RS-6788 | New Feature | Allow to log executor user info when report execution throws an exception |
RS-6791 | New Feature | Improve memory info output |
RS-6792 | New Feature | Detailed info configuration when report execution throws an exception should be sorted according to the configuration file |
RS-6794 | New Feature | Detailed info configuration when report execution throws an exception should be a JSON string |
RS-6795 | New Feature | Allow to log executor datasource info when report execution throws an exception |
RS-6797 | New Feature | Allow to print more information on failed scheduler executions |
RS-6819 | New Feature | Allow to log db path when report execution throws an exception |
RS-6820 | New Feature | Allow to log JDBC properties when report execution throws an exception |
RS-6822 | New Feature | Fetch metadata of DB configuration |
RS-6826 | New Feature | Allow to disable LDAP |
RS-6832 | New Feature | Allow to log configuration directory when report execution throws an exception |
RS-6834 | New Feature | Add "login as user" button to "Admin Panel" system console |
RS-6849 | New Feature | Add system properties to "env" terminal command |
RS-6852 | New Feature | Add servlet request information to "General Info" system console |
RS-6853 | New Feature | Add servlet request information to error log when report execution throws an exception |
RS-6858 | New Feature | Add system properties to error log when report execution throws an exception |
RS-6859 | New Feature | Add system properties to "General Info" system console |
RS-6864 | New Feature | Add JVM server time info to "env" terminal command |
RS-6865 | New Feature | Add JVM server time info to "General Info" system console |
RS-6866 | New Feature | Add JVM server time info to error logs when report execution throws an exception |
RS-6868 | New Feature | Allow to open terminal session in full screen window |
RS-6875 | New Feature | Allow to maximize terminal window |
RS-6879 | New Feature | Add "Open terminal session in new window" button to "Admin Panel" system console |
RS-6892 | New Feature | Add DatasinkDispatchNotificationHook for datasink dispatch notifications |
RS-6149 | Improvement | REST: return UNAUTHORIZED page instead of throwing exception when user could not be correctly authenticated |
RS-6155 | Improvement | REST: refactor getRequest |
RS-6382 | Improvement | REST: refactor request |
RS-6576 | Improvement | Refactor ldaptest "organisationalUnits" to "organizationalUnits" |
RS-6583 | Improvement | Adapt nesting classes example to not use clazz.newInstance() |
RS-6587 | Improvement | GLOBALS.loadClasses() should parse groovy file only once |
RS-6588 | Improvement | Loading classes by GLOBALS.loadClass() and GLOBALS.loadClasses() should use cache |
RS-6600 | Improvement | Refactor script datasources out of incubator |
RS-6601 | Improvement | Refactor alias command out of incubator |
RS-6602 | Improvement | Refactor clearInternalDb command out of incubator |
RS-6609 | Improvement | Migrate LDAP functionality to use UnboundID LDAP SDK instead of JNDI |
RS-6611 | Improvement | Improve error messages during LDAP command execution |
RS-6612 | Improvement | Replace LDAP JNDI converter with LDAP relative name for removing empty nodes |
RS-6620 | Improvement | Adapt ldapUserVariableProcessorHooker.groovy example to support new LDAP SDK library |
RS-6624 | Improvement | Support LDAPS using the LDAP SDK |
RS-6625 | Improvement | Support StartTLS using LDAP SDK |
RS-6628 | Improvement | remove LDAP includeNamespace setting |
RS-6632 | Improvement | Catch exceptions during login if LDAP password is wrong/empty |
RS-6640 | Improvement | Refactor LdapServiceImpl protected methods to private |
RS-6641 | Improvement | Refactor datasourceMetadata calls |
RS-6642 | Improvement | "objectClassInfo" should be a subcommand of "ldapschema" terminal command |
RS-6647 | Improvement | Sort "ldaptest" results alphabetically |
RS-6648 | Improvement | Sort "ldapschema objectClassInfo" optional/required attributes alphabetically |
RS-6649 | Improvement | Terminal tables should show empty string if value is null instead of skipping value |
RS-6657 | Improvement | Replace multiple spaces for terminal output with only on client side instead of on both server and client sides |
RS-6675 | Improvement | Replace tabs with 3 spaces on terminal console output |
RS-6680 | Improvement | Refactor TerminalServiceImpl to groovy |
RS-6683 | Improvement | List of candidates should be presented to user if "ldapguid" terminal command did not guess any GUID |
RS-6688 | Improvement | Add element sizes to LDAP "ldapinfo" and "ldapschema" terminal commands |
RS-6693 | Improvement | Improve sorting in "ldapschema" terminal commands |
RS-6694 | Improvement | Upgrade groovy to 4.0.8 |
RS-6701 | Improvement | "ldapschema" terminal command "list" subcommands should include number of elements found in their output |
RS-6707 | Improvement | Refactor LdapService to not open second connection when fetching schema |
RS-6709 | Improvement | Include OID in all "ldapschema" list terminal commands |
RS-6710 | Improvement | Refactor LDAP attribute base syntax output |
RS-6722 | Improvement | Better "ldapschema objectClassInfo" attribute headlines |
RS-6724 | Improvement | Add missing ChallengeResponsePAMAuthoritative PAM |
RS-6725 | Improvement | Add static PAM information to "env" terminal command |
RS-6726 | Improvement | Add static PAM configuration to "General Info" system console |
RS-6737 | Improvement | Upgrade groovy-astbuilder to 4.0.8 |
RS-6738 | Improvement | Upgrade groovy-cli-picocli to 4.0.8 |
RS-6739 | Improvement | Upgrade groovy-datetime to 4.0.8 |
RS-6740 | Improvement | Upgrade groovy-dateutil to 4.0.8 |
RS-6741 | Improvement | Upgrade groovy-json to 4.0.8 |
RS-6742 | Improvement | Upgrade groovy-jsr223 to 4.0.8 |
RS-6743 | Improvement | Upgrade groovy-macro to 4.0.8 |
RS-6744 | Improvement | Upgrade groovy-nio to 4.0.8 |
RS-6745 | Improvement | Upgrade groovy-servlet to 4.0.8 |
RS-6746 | Improvement | Upgrade groovy-sql to 4.0.8 |
RS-6747 | Improvement | Upgrade groovy-templates to 4.0.8 |
RS-6748 | Improvement | Upgrade groovy-xml to 4.0.8 |
RS-6749 | Improvement | Upgrade picocli to 4.7.0 |
RS-6750 | Improvement | Switch connection pool und live memory icons |
RS-6754 | Improvement | Add Groovy version to "General info" system console |
RS-6767 | Improvement | Add SSL und Groovy information to logs during startup |
RS-6770 | Improvement | Add DB config information to "env" terminal command |
RS-6773 | Improvement | "ldaptest groups" terminal commands should count the group members |
RS-6775 | Improvement | "ldaptest" terminal commands should count number of objects if result is a list |
RS-6779 | Improvement | Better messages for permission UI quick assign: "select all" and "deselect all" |
RS-6784 | Improvement | Catch JXLS POI exceptions |
RS-6790 | Improvement | Memory values should be fetched from GeneralInfoService |
RS-6798 | Improvement | Handle invalid properties in error-log.cf configuration file |
RS-6808 | Improvement | Add JDBC properties to "info datasource" terminal command |
RS-6809 | Improvement | Add JDBC properties to datasource information window |
RS-6810 | Improvement | Add JDBC properties to "env" terminal command |
RS-6811 | Improvement | Add internal-db JDBC properties to "General Info" system console |
RS-6814 | Improvement | Add general information to "info datasource" terminal command |
RS-6815 | Improvement | Allow to use all datasource types in "info datasource" terminal command |
RS-6816 | Improvement | Add internal datasource path to "env" terminal command |
RS-6817 | Improvement | Add internal db path to "General Info" system console |
RS-6824 | Improvement | Add "configuration directory" to "env" terminal command |
RS-6827 | Improvement | Better error handling when db connection throws an error in "General Info" system console, "env" terminal command and error log |
RS-6831 | Improvement | Add "configuration directory" to "General Info" system console |
RS-6833 | Improvement | Upgrade mariadb-java-client to 3.1.2 |
RS-6835 | Improvement | Better null error handing when report execution throws an exception |
RS-6836 | Improvement | Refactor datasource database properties when report execution throws an exception |
RS-6839 | Improvement | Configurable properties should be printed in lower case when report execution throws an exception |
RS-6844 | Improvement | Add SFTP server properties to "env" terminal command and "General Info" system console |
RS-6847 | Improvement | Add servlet request information to "env" terminal command |
RS-6854 | Improvement | Complete missing datasource properties translations |
RS-6855 | Improvement | Upgrade mysql-connector-j to 8.0.32 |
RS-6856 | Improvement | Add some environment info to startup logs |
RS-6857 | Improvement | ReportExecutorException exceptions should be logged |
RS-6860 | Improvement | Add log files directory to "env" terminal command |
RS-6862 | Improvement | Add log files directory to error log when report execution throws an exception |
RS-6863 | Improvement | Add log files directory to "General info" system console |
RS-6867 | Improvement | Check logs directory path accessibility |
RS-6869 | Improvement | Add known_hosts info to "env" terminal command |
RS-6870 | Improvement | Add known_hosts info to "General Info" system console |
RS-6871 | Improvement | Add known_hosts info to error log when report execution throws an exception |
RS-6893 | Improvement | Refactor datasinks |
RS-6895 | Improvement | Upgrade liquibase-core to 4.19.0 |
RS-6200 | Bug | System console is not showing up if URL contains path |
RS-6578 | Bug | Field selection in pivot reports is not working correctly |
RS-6579 | Bug | AddChild method is not working if child is Hibernate proxy |
RS-6599 | Bug | LDAP Import is not allowing to update nodes if objects found are Hibernate proxies |
RS-6604 | Bug | "editTextFile --help" and "createTextFile --help" is not working |
RS-6605 | Bug | "clearInternalDbCache --help" is not working |
RS-6614 | Bug | "ldaptest organizationalunits" is not showing correct parent names |
RS-6623 | Bug | LDAP authentication is not working with the LDAP SDK |
RS-6627 | Bug | LdapPAMAuthoritative is not working |
RS-6630 | Bug | Colon-separated PAMs are not working correctly |
RS-6653 | Bug | LDAP getStringAttribute is throwing error if field is blank |
RS-6684 | Bug | "ldaptest" terminal command is not showing correct results |
RS-6685 | Bug | "ldapschema" terminal command is not showing correct results |
RS-6686 | Bug | "ldapschema" terminal command is not showing required and optional attributes as sorted string lists |
RS-6717 | Bug | "ldapschema attributeInfo" is showing empty sub-attribute list |
RS-6720 | Bug | "ldapinfo" terminal command is throwing error |
RS-6723 | Bug | LdapPAM is throwing error if used together with other PAMs |
RS-6763 | Bug | "ldaptest" terminal commands are throwing an error if their values in "ldap.cf" configuration file are repeated |
RS-6765 | Bug | "ldaptest" terminal commands are showing incorrect results if the standard attributes are repeated in "-a" flag |
RS-6837 | Bug | Copying column properties is not copying the column widths |
RS-6838 | Bug | NPE when executing report without datasource instead of proper error message |
RS-6851 | Bug | Update script does not work in Oracle if column datatype is being changed while data in column |
RS-6885 | Bug | Report catalog is not finding reports in TeamSpaces |
RS-6899 | Bug | Script datasinks are not calling the datasink dispatched notifier hook |
RS-6904 | Bug | Demo data is not installing on startup if specified in rsinit.properties |
RS-6935 | Improvement | Trim spaces in "copyTableContents" terminal command display result |
RS-7004 | Improvement | Upgrade groovy to 4.0.9 |
RS-7005 | Improvement | Upgrade groovy-astbuilder to 4.0.9 |
RS-7006 | Improvement | Upgrade groovy-cli-picocli to 4.0.9 |
RS-7007 | Improvement | Upgrade groovy-datetime to 4.0.9 |
RS-7008 | Improvement | Upgrade groovy-dateutil to 4.0.9 |
RS-7009 | Improvement | Upgrade groovy-json to 4.0.9 |
RS-7010 | Improvement | Upgrade groovy-jsr223 to 4.0.9 |
RS-7011 | Improvement | Upgrade groovy-macro to 4.0.9 |
RS-7012 | Improvement | Upgrade groovy-nio to 4.0.9 |
RS-7014 | Improvement | Upgrade groovy-servlet to 4.0.9 |
RS-7015 | Improvement | Upgrade groovy-sql to 4.0.9 |
RS-7016 | Improvement | Upgrade groovy-templates to 4.0.9 |
RS-7017 | Improvement | Upgrade groovy-xml to 4.0.9 |
RS-7018 | Improvement | Upgrade postgresql to 42.5.4 |
RS-7019 | Improvement | Upgrade lucene-core to 9.5.0 |
RS-7020 | Improvement | Upgrade lucene-analysis-common to 9.5.0 |
RS-7021 | Improvement | Upgrade lucene-queries to 9.5.0 |
RS-7022 | Improvement | Upgrade lucene-queryparser to 9.5.0 |
RS-7023 | Improvement | Upgrade lucene-sandbox to 9.5.0 |
RS-7024 | Improvement | Upgrade commons-fileupload to 1.5 |
RS-7025 | Improvement | Upgrade sqlite-jdbc to 3.40.1.0 |
RS-7026 | Improvement | Upgrade hibernate-core to 5.6.15.Final |
RS-7027 | Improvement | Upgrade hibernate-c3p0 to 5.6.15.Final |
RS-7028 | Improvement | Upgrade hibernate-entitymanager to 5.6.15.Final |
RS-7029 | Improvement | Upgrade hibernate-envers-5.6.15 to Final |
RS-7030 | Improvement | Upgrade jcifs to 2.1.33 |
RS-6929 | Bug | Inconsistent display of selected items in multiselect listbox |
RS-6934 | Bug | Metadata methods are not using the connection's catalog |
RS-6936 | Bug | CopyTableHelper is not using locale independent toUpperCase() |
RS-6983 | Bug | JXLS Template in DEMO system has to be upgraded to JXLS2 syntax |
RS-6999 | Bug | Mapping of SMALLINT and TINYINT is incorrect in JXLS dynamic bean generation |
RS-7001 | Bug | SMALLINT is not recognized as Integer in some cases |
RS-7031 | Bug | Datasource parameter containing special characters is not being selected |
RS-7035 | Bug | Datasource parameter default value containing special characters is not being selected |