i-net Crystal-Clear

Changes in Release 6.1.07

i-net Crystal-Clear runtime

New features

  • Justified alignment.
  • Text Interpretation: Bullet and Numbered Lists.
  • New export format: SVG.
  • New RunningTotal: “For each Record” with reset “On Change Of Formula”.
  • User Defined Formulas:
    • Multiple classes now supported. It is possible to use more than one class for the User Defined Formulas. The class names can be specified semicolon separated in the property “Formula Expander Class” (see Configuration tool), e.g. myDateFormulas;myFinanceFormulas;myUtilities.
    • Logging has been added. If the log level is set to DEBUG (4), every time a user defined function is used, a log output is created specifying which user defined function was executed with which parameters and with which results. This enables a better debugging of the user defined functions.
  • Database Connection:
    • The JDBC driver library can be registered in the crystalclear.properties now. The driver then will be added dynamically to the classpath of i-net Crystal-Clear. Example configuration for Oracle driver: “oracle_inet.driverLibrary=c:/libs/oranxo.jar”
    • The meta data information about tables from Sunopsis XML JDBC driver is now made readable.
    • A Database class written from user now can be used for report design in DesignerXML. Therefore the methods Database.getTables() and Database.getColumns() have to be overwritten in the Database implementation class. A detailed documentation can be found in the i-net Crystal-Clear API documentation.
    • If the property “OnError_ExecuteSQL_WithoutSF” is false and the Record Selection Formula can not converted into SQL syntax, then a ReportException will be thrown.
    • New property “Row Buffer” has been added. Row buffering is intended for rendering large amounts of data without OutOfMemoryErrors.
  • Function toWords supports Traditional and Simplify Chinese.
  • Function TextFromFile added - returns the file specified by a path as a string.
  • Function UserName added - returns the user name of the database connection specified by its 0-based index.
  • New General Property for field elements: “Manual Formatting” - this allows you to specify a formula which is executed on the field's value directly before rendering it.
    For example, you could specify the formula:
    if isnull(currentFieldValue) then “n/a” else if (currentFieldValue > 10000) then “10000+” else ToText(currentFieldValue)
    This would show “n/a” instead of nothing for null values, and “10000+” for values higher than 10000, otherwise simply the normal field value.
  • Registering your own RequestHandler is possible now. A RequestHandler can accept requests reached the report server. An own RequestHandler can be useful to display runtime information of i-net Crystal-Clear, e.g. all reports currently in cache or the state of the i-net SchedulerXML. The code samples contain an implementation of a CacheViewer.
  • Grouping on Date optimized for executing on Database.
  • Chart Color formula: It is now possible to set a formula for the colors in pie and bar charts, usually based on currentFieldValue. For example, you could set the formula “if currentFieldValue>10 then crGreen else crRed”, which would set the different bar colors to red or green, depending on the bar's value.
    Note that returning negative numbers will cause i-net Crystal-Clear to take the default color of that index, i.e. returning -2 will cause the second default color to be taken.
  • Custom Default Property Checker: It is now possible to provide your own default property checker by placing a jar file in your i-net Crystal-Clear directory which must include a class called “PropertyChecker” which implements com.inet.report.PropertiesChecker. If this class is found at run-time, this class is used as the default property checker.
    This enables customers who only use the i-net Crystal-Clear Listener, for example, to still add and handle custom properties.

Fixed bugs

  • Database Connection:
    • The Database object set with Datasource.setDatabase(Database) was overwritten by i-net Crystal-Clear.
  • The “reloadOnNewRequest” flag was ignored in ReportServlet context.
  • Bug in German locales with long numbers and custom number formats which caused decimal display errors.
  • XLS export: A bug with unicode characters (e.g. €). The bug has occurred if a cell contained multiple strings of differing formats.
  • HDCache/DBCache - a cache timeout for a report while execution.
  • ClusterCache now implements all methods from the CacheAPI.
  • The property formula for the tool tip text of an element disappeared when loading a report.
  • Prompts, only used as stored procedure parameter, has not been requested from the Java viewer.
  • A cross-tab was incorrectly subdivided into parts.
  • Bug has occurred if '\r' was used as new line character.
  • Report title will be used as root node for the group tree, if the report title is not empty.
  • A serialization problem with JavaBeans elements has been fixed.
  • Formula bug has been fixed. A formula was executed twice if they was included two times in the same sub-report section.
  • A bug with group name fields has been fixed. The group name fields of two groups were interchanged each time the report was executed.
  • A formula was executed twice if it included twice in a sub-report section.
  • Multiple bugs with JavaBeans have been fixed. Barcode JavaBeans have not been displayed correctly in Java viewer version 6.1.
  • Multiple bugs in the JavaBeans properties tab has been fixed, e.g. the property formula was deleted if the static property value was entered in the property field.
  • XLS export: ArrayIndexOutOfBoundsException has been fixed.
  • The bug that the property “reverse sign for display” for number fields has not been read/written from/to the report file has been fixed with version 6.1.05.
  • A bug that columns names “message” could not be used for Sybase databases because they are interpreted as keywords has been fixed with version 6.1.05.
  • User defined formulas: An exception has occurred if methods with the same name but with different sign (same number of arguments) was used. This bug has been fixed with version 6.1.06.
  • CSV, Data export: A bug with “Manual Formatting” has been fixed in 6.1.07.
  • If a group has based on a datetime column then the created Order By syntax was not correct. The time value was missing. This has been fixed in 6.1.07.

Behavior Change

  • class Datasource, method setUrl(String), the set JDBC URL now can contain placeholder for user/password/…({2}/{3}/…) These placeholder will be replaced with the set values.

API changes

  • class Database, additional methods:
    • Database.setUseOrderBy(boolean), Database.isUseOrderBy()
    • Database.setUseWhereClause(boolean), Database.isUseWhereClause()
    • Database.setUseSQL92syntax(boolean), Database.isUseSQL92syntax()
    • Database.setUseQuoteLowerCase(boolean), Database.isUseQuoteLowerCase()
    • Database.setUseParenthesiseForJoin(boolean), Database.isUseParenthesiseForJoin()
    • Database.setAliasToken(Sting), Database.getAliasToken()
    • Database.setIdentifierQuoteString(String), Database.getIdentifierQuoteString();
  • class TableSource, additional methods:
    • TableSource.getDatabaseField(int)
    • TableSource.getDatabaseField(String)
    • TableSource.getDatabaseFields()
  • class Join, additional methods:
    • Join.addCondition(DatabaseField , DatabaseField , int, int)
    • Join.getConditionSourceFields()
    • Join.getConditionTargetFields()
  • class Fields, additional methods:
    • Fields.getDatabaseField(String)
    • Fields.getPromptField(String)
    • Fields.getSummaryField(String)
    • Fields.getGroupNameField(String)
    • Fields.getFormulaField(String)
    • Fields.getSQLExpressionField(String) 
  • new Interface com.inet.report.RequestHandler - allow to redirect requests received from report server to own Java code.
  • new Class com.inet.report.DatabaseMetaDataFactory - a helper class that creates ResultSet objects expected from DesignerXML from self written Database classes.

i-net DesignerXML

New features

  • The index of the prompt within the list of the report is now visible in the context menu and the properties dialog of the prompt.
  • Justified alignment now supported. Because of a bug in Swing the justified alignment is currently not displayed in the design view.
  • Chart: Formula for chart colors now supported for the following chart types: Pie, 2D Bar, 3D Bar, 3D-Riser.
  • Text Interpretation: Bullet and Numbered Lists now supported.

Fixed bugs

  • When copying an element per drag and drop the counter of the referenced fields (e.g. database fields) had not been actualized.
  • Tables are now visible in the “visual database wizard” for connections with Sunopsis JDBC driver
  • NullPointerException has occurred when pressing F1 in the formula editor on an empty selection.
  • NullPointerException has occurred when starting i-net DesignerXML in embedded mode for the second and any further time.
  • A bug that when selecting multiple elements and editing the properties the tri-state was selectable if no tri-state was as initial status.
  • Eclipse plug-in: Toolbar images has not displayed correctly in Eclipse 3.1.
  • A bug in the prompt dialog has occurred, if “Allow Multiple Values” was enabled.

i-net SchedulerXML

New features

  • An ErrorAction has been added. This action is saving all properties of a custom action if this class can not be found in the class path.
  • Execute a task nearly immediately is supported via web configuration tool and API call.
  • Register a PropertiesChecker class for report rendering with cache interface now supported. It is possible to set a runtime property with the name of the PropertiesChecker class or pass a PropertiesChecker object directly to the instance of com.inet.report.schedule.Scheduler.
  • Define the required authentication level for the e-mail account used for sending e-mails with the EmailAction now supported. It is possible to specify to use none, SMTP, POP3 or both authentications.
  • Set the value type of a report property now supported. This is useful for the web configuration tool which will display that type. This feature should usually be used for prompts.

Fixed bugs

  • ArrayIndexOutOfBoundsException has occurred while scanning the prompts of a report with i-net SchedulerXML - web configuration tool.
  • The i-net SchedulerXML was not running if the web configuration tool was disabled.
  • A NullpointerException causing an error page containing “Error” only in the i-net SchedulerXML web configuration tool has been fixed in 6.1.05.

API changes

  • class Scheduler, additional methods:
    • setPropertiesChecker(PropertiesChecker)
  • class ScheduleReport, additional methods:
    • setPropertyType(String, int)
    • getPropertyType(String)
  • class ScheduleTask, additional methods:
    • addExecutionError(String String)
    • getExecutionErrors()
    • markForExecution() - executes the report shortly

i-net software strives to provide accurate product documentation. Please give us your feedback using the form below.
NOTE: This form is for documentation feedback only. For technical assistance, please send an email to crystalclear@inetsoftware.de.

 

© Copyright 1996 - 2010, i-net software; All Rights Reserved.