############################################################################ PRONTO-4GL Release Notes ############################################################################ NOTE: ----- - See release63.txt for further release notes. ** Release 6.2v06 ** ==================== XML/XSL Report Generation ------------------------- - Issue a warning to level 9 users (developers) upon XML report generation where a page break occurs in a non-empty parent section (Full XML only). - The runtime no longer attempts to automatically generate page breaks prior to sections that it believes will overflow the page. This should be controlled by the application (using the NEED statement etc.). Windows ------- - The API server is now available as a Windows service. Miscellaneous ------------- - Fixed problem of incorrect record/s being shown on Cancel of Entry mode in a PRIMARY SAME screen containing multiple SAME fields, where there were no valid records for the key. - Fixed possible truncated return value from before-accept trigger. - Fixed SPOOL-FILE-NAME() function when printing direct to a printer to return the name of the printer (instead of blank). - Fixed internal error when IF-THEN-ELSE used as right hand value of a comparision. ** Release 6.2v05 ** ==================== Application Locks (DB2) ----------------------- - The concept of an application (or indication) lock has been added to the runtime. This is only used for DB2 implementations. - An application lock is used for tables that use record locking to block access to a set of records, rather than just the record that is being locked. For example, locking the sales-order master record to stop applications from changing anything related to that order (e.g. any line item records for that order). - The runtime implements application locks by inserting an entry for each locked record into a (runtime controlled) table, rather than physically locking the record. The entries in this table are automatically maintained by the runtime. A physical lock is also applied on the record if an update operation is performed. - Only those tables (objects) that have the application locks option set in the dictionary are affected. - Application locks are not processed for non-DB2 implementations. However, on systems that have optimistic screen locks enabled, if the application lock flag is set for an object, the runtime will use traditional locking on any screen where this object is the PRIMARY. XML/XSL reports --------------- - The XSL style sheet generation has changed to include a custom CSS (cascading style sheet) definition. Custom CSS files for a form type can be stored in a "custom_css" directory with a name consisting of the form type name with a .css extension. If no custom CSS file is located for the form type, then default (non form type specific) custom CSS files will be searched for. The default CSS file for full XML reports is called "full-xml.css" and for basic XML reports it is called "basic-xml.css". If no custom CSS files are found then a default CSS entry will be generated in the style sheet. - The "custom_css" directories will be searched for in the following locations: 1) Within the current data directory 2) Within the current report directory (if different from data directory) 3) Within the $PRONTO directory (or $NETPRONTO if Windows C/S) 4) Within the $BMS directory - Custom style sheets (XSL) take precedence over custom CSS files. If a custom .xsl file is found for the form type of the report then this is used without searching for a custom CSS file. - The 4GL language now supports the STYLE-CLASS clause on the REPORT SECTION statement. This allows sections within the report to be associated with a CSS class. e.g. REPORT SECTION "this_section" STYLE-CLASS "trans" Batch Queues (Unix only) ------------------------ - The number of PRONTO batch queues available is now configurable. The number of batch queues available can be set to any value from 1 to 26. - This value can be changed within the 'Miscellaneous -> PRONTO System Params' screen in the 'proadmin' (PRONTO/Unix System Admin) program (the 'pronto' login). - NOTE: each additional active batch queue is likely to have a negative impact on the performance of other tasks. It is not advised that the number of batch queues be increased unless you are certain that your system has the capacity to cater for them. ODBC Server ----------- - ODBC server changed to support different query syntax used by Crystal 9. Miscellaneous ------------- - Pressing Down-arrow or F4/Page-down rather than Enter or Tab on the last key field (after entering it's value) in Find mode will perform a partial key find. If the record with the key specified does not exist, the next record will be retrieved instead, without reporting an error. Unix versions require Proclient 6.2v02. NOTE: the same does not apply for Up-arrow or Page-up. - The icon for the popup date help window is now different (Unix versions require Proclient 6.2v02). - The method of invoking/opening PC based documents has changed (Unix versions require Proclient 6.2v02). - Changed main (File) menu layout for controlling window (Unix versions require Proclient 6.2v02). - Optional Promail mail notification supported (requires Proclient 6.2v02). - Timing of tree menu expand changed to overcome failure to expand when collapsing another part of the menu tree (requires Proclient 6.2v02). - Leading spaces no longer removed from non-quoted data-grid filter values. ** Release 6.2v04 ** ==================== Miscellaneous ------------- - Fixed reported problems with SQL and RPT implementations. - Fixed processing of the RIGHT-COORD clause on a DISPLAY when used in the BEFORE section of a SCREEN. - Changes to prodict and procmp for initial DB2 application lock support. - Changed default XML line height for printing (to 1.8em). API Server ---------- - Added new API server registration. This allows for configuration of the maximum number of API servers allowed, and the maximum throughput (in kbps) per API server. The default configuration is a maximum of 2 API servers with a maximum throughput of 2kbps per server. - The proregister program now has a "-api" option to specify API server registration. e.g. proregister -api - The API server registration/configuration requires a separate activation key, similar to that used when registering PRONTO and it's licensed products. ** Release 6.2v03 ** ==================== Miscellaneous ------------- - Internal changes for mailing attachments using the MAIL-ATTACH function. - Correctly handle situation where a program (incorrectly) issues a REPORT SECTION FINISHED statement when there is no section active. - Changed query (SELECT) optimisation to bias further towards the ORDER BY and FROM object order. - No longer automatically get current record when entering a screen if there is only a single mode specified and it does not require a current record. - Fixed problem with conversion of PRIMARY REVIEW-FROM-END to SELECT format in the compiler. - Screens with a SELECT FROM multiple objects now grays out modes that have the CURRENCY clause when there is no current record. - Fixed flickering debug window when a watch field is set. - Maximum file record size increased from 2k to 4k. ** Release 6.2v02 ** ==================== Miscellaneous ------------- - Added TIME-ELAPSED (, ) function. This function can be used to reduce the amount of screen output in a "Now at:" style loop. It returns TRUE (non-zero) when enough time has elapsed to display the next code on the screen. The indicates the minimum elapsed time before the function will return TRUE again. The indicates the minimum number of calls to the function before it will test for the time again. e.g. if time-elapsed (100, 2) display accountcode @10,10 endif ** Release 6.2v01 ** ==================== Official XI Release ------------------- - This is the official release version for PRONTO XI. - Unix implementations require Proclient release 6.2. - NOTE: all previous XI related release notes are contained in $PRONTO/relnotes/release61.txt. Miscellaneous ------------- - User level control over data grid column sort/filter and export options added. These facilities can be disabled on a per user basis.