RADICORE v1.20.0 released

This version contains a few bug fixes, a few enhancements, and the ability to connect to an Oracle database.

This version contains the following updates:

  • updated 'dml.*.class.inc' to avoid 'object to string' conversion errors
  • fixed bug http://www.radicore.org/forum/index.php?t=msg&th=143
  • fixed bug in 'std.output2.inc' and 'std.output3.inc' which occasionally caused the pdf output to disappear.
  • updated custom validation (http://www.tonymarston.net/php-mysql/custom-validation.html) to allow it to be specified for any type of field, not just strings, and without the need to set SUBTYPE=CUSTOM. This will bypass all validation performed by the framework except for (a) required fields cannot be empty, and (b) value cannot exceed maximum size. All other validation will be performed within the specified custom method.
  • created 'dml.oracle.php4.class.inc' and 'dml.oracle.php5.class.inc' to allow connections to an Oracle database (refer to http://www.radicore.org/viewarticle.php?article_id=91 for details). Certain existing column names caused problems as they are reserved words in Oracle, so they have been renamed as follows:
    1. database 'audit':
      • table 'audit_ssn', changed 'date' to 'ssn_date' and 'time' to 'ssn_time'.
      • table 'audit_trn', changed 'date' to 'trn_date' and 'time' to 'trn_time'.
      • table 'audit_logon_errors', changed 'timestamp' to 'err_timestamp'.
      • Please import radicore/audit/sql/mysql/alter_table(2006-12-12).sql to alter your database schema.
    2. database 'dict':
      • table 'dict_column', changed 'comment' to 'col_comment', 'nosearch' to 'no_search', 'noaudit' to 'no_audit' and 'subtype' to 'col_subtype'. Changed 'user_size' and 'col_maxsize' from NOT NULL to NULL.
      • table 'dict_database', changed 'comment' to 'db_comment'.
      • table 'dict_relationsip', changed 'comment' to 'rel_comment'.
      • table 'dict_table', changed 'comment' to 'tbl_comment'.
      • Please import radicore/dict/sql/mysql/alter_table(2006-12-15).sql to alter your database schema.
    3. database 'product':
      • table 'product', changed 'comment' to 'prod_comment'.
      • table 'inventory_item_variance', changed 'comment' to 'var_comment'.
      • table 'prod_cat_class', changed 'comment' to 'pcc_comment'.
      • Please import radicore/product/sql/mysql/alter_table(2006-12-16).sql to alter your database schema.
  • update 'dict_column' table in 'dict' database to cater for differences in Oracle database:
    • changed 'col_type' from varchar(12) to varchar(20)
    • changed 'col_array_type' from varchar(12) to varchar(20)
    • added 'col_type_native' varchar(32)
  • updated 'std.output2.inc' to allow the option of a totals line at the end of the report. Examples are provided in 'mnu_pattern(pdf).php' and 'mnu_subsystem(pdf).php'.
  • updated '_cm_formatData()' method to include a new argument which will allow a custom CSS class (or PDF style) to be specified for selected fields. This will allow the display attributes of those selected fields to be modified at run time. This can be used in financial applications for example to show negative and positive values in different colours. Please see http://www.tonymarston.net/php-mysql/infrastructure-faq.html#faq73 for details.
  • updated popup and filepicker screens to include a 'Choose Null' button which will cause the current selection to be nullified (cleared). This is different from the 'Cancel' button which will terminate the popup process without making a selection, thus leaving any current selection unchanged.
  • added a new record to 'mnu_pattern' table in 'menu' database with pattern_id='OTHER', and updated several entries on 'mnu_task' table to relate to this pattern_id. See file radicore/menu/sql/mysql/alter_table(2007-01-10).sql for details.
  • changed the method of putting blank entries into lookup arrays (used by dropdown lists and radio groups) to solve the problem identfied in http://www.radicore.org/forum/index.php?t=msg&th=156
  • updated 'error.inc' to include E_RECOVERABLE_ERROR (introduced in PHP 5.2) in its list of non-fatal error codes.

Published: 15 January 2007