XENTIS Documentation -- Release Notes
XENTIS 4.2b
XENTIS V4.2B Release Notes This document contains information about using XENTIS V4.2B and highlights features that are available in V4.2B that were not available in versions prior to V4.2. This initial section describes the difference between V4.2B and V4.2. The information beyond the first two sections is the standard V4.2 release notes. A. DIFFERENCES BETWEEN V4.2B AND V4.2A. 1. V4.2B is a bug fix release. It contains few functional enhancements when compared with V4.2. All compiled command files, (XCC), command files, (XCF), and pointer files created with V4.2 are compatible with V4.2B. 2. The functional enhancements are: a. The XENTIS shutdown procedure, XENTIS_SHUTDOWN.COM, no longer requires a parameter to be passed to it. If a parameter is not passed, it will assume a parameter value of "XENTIS" was passed. b. XENTIS now allows a system to have an version of Rdb that is older than V3.1, to be the active version of Rdb. Prior to XENTIS V4.2B, if Rdb V3.0 or older was loaded, XENTIS would fail during image activation. We have discovered that several sites have Rdb V3.0 loaded, but do not use it and do not know how to remove it. XENTIS V4.2B can now solve the image activation problem, at the expense of disabling Rdb. To accomplish this, define the following logicals prior to executing the XENTIS_START.COM file during system startup: DEFINE XENTIS_USE_RDB_STUB Y DEFINE XENTIS_USE_SQL_STUB Y If this is done, then Rdb, and possibly CDD, is effectively disabled for all users until XENTIS_SHUTDOWN.COM is executed. During installation XENTIS will attempt to inspect Rdb and determine its version. If V3.0 or earlier is loaded then the installation procedure will display an informational message. c. An additional saveset containing images that support the Progress database interface are included on the tape. The images in this saveset replace the normal images. Please note that these images do not support Ingres or Oracle, as Progress cannot be in the same image as Ingres or Oracle. d. If the XENTIS_PRIV_LIST logical, that may be defined prior to executing XENTIS_START.COM (see V4.2A enhancement below), is defined to a value of NONE, then any XENTIS images installed during system startup will be installed without privileges. If this logical translates to a value of NOINSTALL, then the images will not be installed. 3. The bugs fixed include: a. When using an SQL based database, XENTIS did not perform sufficient error checking on the initial/final expressions entered by the user. As a result the user could enter an expression where a legal comparison could not occur, such as comparing a string with a date, a date with a number, etc. The symptoms of this bug would occur after the "Execute" prompt, usually while the SQL database engine was analyzing the SQL statement. b. Under certain circumstances accumulation of fields from an SQL based database would not accumulate correctly. It was thought that this bug was fixed in V4.2A, however, additional circumstances where this bug occurs was discovered recently. c. Date literals used with a Progress database were not being properly converted to the format that Progress wants when the SQL statement was being generated. d. If a literal was used in an SQL initial/final expression and the literal was being compared with a field whose field number was greater than 160 (the maximum number of literals allowed), the XENTIS would abort. e. XENTIS no longer uses callable RDO to retrieve information from the system tables for an Rdb database. XENTIS now uses SQL to perform this function. As a result, XENTIS no longer uses the RDBINTSHR shareable image. This programming change provide no functional enhancements to XENTIS. However, it does allow XENTIS to avoid a bug that exists in callable RDO. XENTIS V4.2A Release Notes This document contains information about using XENTIS V4.2A and highlights features that are available in V4.2A that were not available in versions prior to V4.2. This initial section describes the difference between V4.2A and V4.2. The information beyond this initial section is the standard V4.2 release notes. A. DIFFERENCES BETWEEN V4.2A AND V4.2. 1. V4.2A is a bug fix release. It contains few functional enhancements when compared with V4.2. All compiled command files, (XCC), command files, (XCF), and pointer files created with V4.2 are compatible with V4.2A. 2. The functional enhancements are: a. The XENTIS startup procedure now recognizes the presence and contents of the XENTIS_PRIV_LIST logical. If this logical is correctly defined, equating to a privilege list, prior to executing SYS$MANAGER:XENTIS_START.COM, then the XENTIS images will always be installed with the privileges specifed. For example: DEFINE XENTIS_PRIV_LIST "SYSPRV,GRPPRV,SYSLCK" @SYS$MANAGER:XENTIS_START.COM will result in all XENTIS images being installed with the SYSLCK, SYSPRV, and the GRPPRV privileges. 3. The bugs fixed include: a. Date fields do not print correctly when using the CREPORT function. This bug was introduced in V4.1. b. Under certain rare circumstances a field may not accumulate when producing reports using an SQL database. This problem will occur at most every 256th record, and then only if XENTIS sorted the report. This problem was introduced in V4.1. c. Bar codes will sometimes contain garbage. This problem was introduced in V4.2. d. XENTIS/Report may enter an infinite loop when using 3 or more input files, replacing missing records with zeros/null, encountering missing records, and most importantly accessing the auxiliary files in a simultaneous manner. This problem was introduced in V4.2. e. Date fields printed with a mask of 9 #'s would not print the year correctly if the heading justification was right or center, the heading was longer than 9 characters, and the ADJUST-MASK setup parameter is set to Y. This problem was introduced in V4.2. f. XENTIS/File would abort if more than 150 fields existed in the output file. This problem was introduced in V4.2. g. Under certain circumstances involving backing up, XENTIS/Model would prompt the user for a model field that was greater than the maximum number of model fields allowed. This would in turn cause an abort. This problem has existed for a very long time. h. XENTIS/Report, XENTIS/Model, and XENTIS/Word would abort if the DELETE or INSERT commands were entered and the user had already specified the maximum number of fields allowed. This problem has existed since the INSERT and DELETE commands were added as a feature. i. The Runtime-Only version of XENTIS/Report no longer requires a data dictionary to also be licensed to execute reports. A data dictionary license of some kind is still required to define new reports. XENTIS V4.2 Release Notes This document contains information about using XENTIS V4.2 and highlights features that are available in V4.2 that were not available in previous versions. A. INSTALLATION AND GENERAL INFORMATION. 1. The installation procedure for V4.2 has changed since V4.1. Previously, all XENTIS images would be linked, with a LINK command, while the installation procedure was executing. Starting with V4.2, XENTIS images will copied be onto your system without going through a LINK step. This is accomplished by supplying several shareable images that act as stub routines for databases and other optional software that XENTIS supports but is not present on your system. In addition, the installation procedure no longer prompts the installer for an 'INSTALL' directory. The 'Install' or 'Object' files are no longer loaded onto your system. 2. XENTIS logicals are now created in the SYSTEM table in EXECUTIVE mode. This is done to support the new policy of not linking on the target system. These logicals are now defined during system startup. In version 4.1 and prior, the XENTIS$COMFILES logical was defined in the SYSTEM table in SUPERVISOR mode, while the XENTIS$PROGRAM, XENTIS$DEMO, and XENTIS$REPORT$DATA logicals were defined in the PROCESS table. To help avoid problems with user written DCL command files referring to XENTISLOGICALS.COM, this file's name has been changed to XENTIS_LOGICALS.COM, and XENTISLOGICALS.COM will still exist but contain only comments. 3. The XENTIS startup procedure now defines a number of additional logicals. These logicals define which optional parts of XENTIS are available on your system, and which ones will have to use stub routines. The definition of these logicals are found in the XENTIS_SHARE_LOGICALS.COM file. 4. An additional system DCL command file is supplied for the purposes of shutting down XENTIS. This command file is called XENTIS_SHUTDOWN.COM and can be found in the XENTIS$COMFILES: directory. This command file removes the system logicals that were created with the XENTIS_START.COM file. It will also remove the XENTIS images if they were installed with the INSTALL command. (This does not delete any files from disk.) It is recommended that the XENTIS_SHUTDOWN.COM procedure be called from the system shutdown procedure, SYS$MANAGER:SYSHUTDWN.COM. 5. The user pack routine, used for user written data types, is now implemented as a shareable image. This allows you to write and test your routine without having to relink XENTIS every time. Linking instructions are found in the sample source code, XUUSER_PACK.BAS. In addition, the number of parameters for this routine has changed. Please review the sample source code for further information. 6. XENTIS V4.2 requires VMS V5.0 at a minimum. Installation and operations has been tested on a VMS V5.2 system, but it has not been tested on a VMS V5.0 or V5.1 system. As result we recommend that users be running at least VMS V5.2. 7. If an additional cpu is licensed, and that system has a different database configuration, it is no longer necessary to relink XENTIS. The new XENTIS startup procedure, which must be run on every node licensed for XENTIS, will detect the different database configuration and define the XENTIS logicals appropriate for each licensed CPU. 8. The circumstances where XENTIS needs to be relinked are now quite rare. Therefore, object libraries are no longer included on the distribution tape. 9. CALLABLE XENTIS is now a feature that is available only upon request from your vendor. It is no longer a feature available in the standard release. CALLABLE XENTIS provides that ability for a 3GL program to call XENTIS (except /Dictionary and /Edit) in the context of the same process or image. XENTIS can still be executed in the context of a subprocess. Using XENTIS in a subprocess is not considered CALLABLE XENTIS. 10. The XENTIS images can be translated to execute on Alpha AXP systems running the OpenVMS operating system. This translation is done with the DECmigrate utility (a.k.a. VEST). If you choose to translate XENTIS images be sure to translate the shareable images first, followed by the executable images. The translation of the XRP.EXE image will require a user page file quota of at least 120,000 blocks. The startup procedures automatically detect if they being executed on a VAX or an Alpha AXP system. 11. When the XENTIS$SUPPORT logical is set to a value of Y, then whenever XENTIS/Report ( or /File, /Word, /Model, /Creport, /Update) writes a XENTIS Command File, .XCF, it will write into the file considerable information regarding the report, the data files, the setup file, and its operating environment. This information can be very valuable for the customer support staff in diagnosing problems with a particular report. When sending an XCF file to the customer support department, please set this logical to a value of Y before creating the XCF file. This feature became effective with version 4.1. B. NEW FEATURES 1. /Report and /Report modules (/File, /Word, /Model, /Update). a. XENTIS/Report now supports the XENTIS/Barcode module. There are two parts to XENTIS/Barcode, a stand alone utility that is invoked from DCL, called X-Bar, and a special print attribute that is specified in the XENTIS/Report dialogue. The /Barcode module is normally an extra cost option. When executing as a stand alone utility, X-BAR converts any text file, with specially flagged barcode data, into a file containing printer codes that will result in barcode output. This utility works like many VAX/VMS utilities supplied by Digital. Included on the tape is a file, XBAR.CLD, that defines the X-BAR command syntax. See the user reference manual for detailed information. X-BAR can output a variety of barcode format on a variety of printers including postscript printers. See the user reference manual for a list of barcode formats and printers supported. When output from X-BAR is to a Postscript file, this file can be printed on a Postscript printer using the ScriptServer printing software from Graymatter Software using versions 3.2-7 or 4.0-3 of ScriptServer (versions 4.0 through 4.0-2 are not compatible). When the barcode module is used from XENTIS/Report, the user designates a field to be barcoded by appending '/ATTR=BARCODE', without the apostrophies, at the column attribute prompt. The BARCODE attribute is a special attribute that becomes available only if the /Barcode module is licensed. Using this attribute will force certain delimiter characters, defined in the setup file, to prefix and postfix the print mask of the current field. Additional setup parameters control the printing aspects of the barcode data. The setup parameters correspond to the qualifiers available with the stand alone utility program. If you wish to use barcodes with label processing you must not use the /ATTR=BARCODE attribute on your barcode field. You should follow this procedure: 1. Prefix and postfix the print mask of each field to be barcoded with with the barcode flag character. 2. Produce the output file by executing the report. 3. Reformat the output file with the labels reformat utility responding with Y at the "Include form feed in output" prompt if your output is a dot matrix printer. 4. Convert the output file with the stand alone barcode utility. b. The /BATCH and /NIGHT qualifiers are now accepted in place of /GO when specifying a XENTIS Command File (XCF) or a XENTIS Compiled Command file (XCC). These qualifiers behave exactly as /GO behaves except that they change the default response to the "Execute?" prompt to "B" and "O" respectively, so the the report will execute in batch or in overnight batch. c. The XENTIS/Sybase interface now supports the sybase datatypes real, smalldatetime, and smallmoney introduced with Sybase version 4.8. d. The "Skip to Top of Page" prompt in the Break Section now supports skipping to an odd numbered page. This is accomplished by responding with an "O", the letter OH. e. The calculation section now supports several new functions. The new functions and a descriptions is as follows: 1. YEAR. This function is identical to the YR function except that it returns a four digit value rather than a two digit value. It has one argument, a datetime field. It returns a numeric value. 2. NOTIM. This function removes time from a datetime field. It has one argument, a datetime field. It returns a datetime field. This function is effectively the combination of the DAEXT function followed by the DABLD function. 3. ETOA. This function converts EBCDIC characters to ASCII characters. It has one argument, a text field. It returns a text field. 4. ATOE. This function converts ASCII characters to EBCDIC characters. It has one argument, a text field. It returns a text field. 5. ELEM. This function searches a delimited list for a particular element of this list, and returns the element number. It has two arguments, a search text field, and a delimited text field. It returns a numeric field. For example: X = ELEM("C",",AB,CC,C,ZERO,") will return a value of 3 in X because the third element in the second argument is equal to the first element. Any non-alphanumeric character may be the delimiter character except quotes (") and tilde (~). 6. MEMBR. This function retrieves a particular element from a delimited text field. It has two arguments, a delimited text field, and an element number. It returns a text field. For example: X;3 = MEMBR(";W;YY;ZZZ;", 2) will return "YY " in X because "YY" is the second member of the delimited text field. Any non-alphanumeric character may be the delimiter character except quotes (") and tilde (~). 7. TABLE. This function combines the ELEM and MEMBR functions. It has three arguments, a search text field, a delimited text field, and a returning delimited text field. It returns a text field. For example: X;5 = TABLE("M","-A-D-M-R-","=ADMIN=DEVEL=MKTG=R&D=") will return "MKTG " in X because "M" is the third element in the second parameter, and "MKTG" is the third member in the third parameter. Any non-alphanumeric character may be the delimiter character except quotes (") and tilde (~). 8. HOUR. This function returns the hour of a datetime field. It has one argument, a datetime field. It returns a numeric field, 0 through 23. 9. MIN. This function returns the minute of a datetime field. It has one argument, a datetime field. It returns a numeric field, 0 through 59. 10. SEC. This function returns the second of a datetime field. It has one argument, a datetime field. It returns a numeric field, 0 through 59. 11. MOD. This function performs the modulo, or remainder, function. It has two arguments, a divisor numeric field, and a dividend numeric field. It returns a numeric remainder field. 12. OVRLY. This function allows one text field to be overlayed on top of another text field starting at a particular character position. It has three arguments; the first is a text field that will be overlayed, the second is a text field, usually smaller than the first, that will be placed on top of the first text field, and a numeric field that indicates the starting position of where the overlay will occur. For example: X;8 = OVRLY( "ABCDEFGH", "XYZ", 4) will yield a value of "ABCXYZGH" in X because "XYZ" overlays "ABCDEFGH" starting at the 4th character position. 13. RAND. This function will produce a random number evenly distributed between 0.0 and 1.0. It take one numeric argument. If the argument is zero, then the same series of random numbers will always be generated. If it is non-zero, a unique series of random numbers will be generated each time the report is run. 14. LEN. This function returns the length of a text field. It has one argument, a text field. 15. FIRST. This function return the first day of a month. It has two arguments, a numeric month field, and a numeric year field. The year must be a four digit year. The result is a datetime field. 16. LAST. This function is identical to FIRST except that it returns the last day of a given month and year. The result is a datetime field. 17. WKDAY. This function returns an alphabetic day of the week, such as Monday, Tuesday, etc. It has one argument, a datetime field. 18. BLDDA. This function returns the number of days since 17-NOV-1858 of a given day, month, and year. It has three arguments, a four digit numeric year, a numeric month, and a numeric day. The output of this function can be used as input to the DABLD function. 19. BLDTI. This function returns the number of seconds since midnight given an hour, a minute, and a second. It has three arguments, a numeric hour, a numeric minute, and a numeric second. The output of this function can be used as input to the DABLD function. Examples of the above functions are: ACCT_YR = YEAR( B:ACCOUNTING_YEAR ) ADDDATE = NOTIM( C:DATE_ADDED ) ASCII;8 = ETOA( A:IBM_ACCOUNT_NUMBER ) EBCDIC;8= ATOE( B:DEC_ACCOUNT_NUMBER ) DEPTNO = ELEM( B:DEPT, ",ADMIN,MKTG,DEV,SALES,ADV," ) DEPT;5 = MEMBR( ";ADMIN;MKTG;DEV;SALES;ADV;", DEPTNO ) MSG;5 = TABLE( B:PC,"=S=M=A=D=","-Sales-Mktg-Admin-Dev-") HOUR = HOUR( C:DATE_ADDED ) MIN = MIN( C:DATE_ADDED ) SEC = SEC( C:DATE_ADDED ) EXCESS = MOD( A:HOURS, 160. ) ACCT;8 = OVRLY( A:GL_ACCOUNT, B:DEPT, 7. ) RANDOM = RAND( 1. ) LENGTH = LEN( EDIT( A:LAST_NAME, 128.) ) F_DAY = FIRST( B:EXPIRES_MONTH, B:EXPIRES_YEAR ) L_DAY = LAST( B:EXPIRES_MONTH, B:EXPIRES_YEAR ) DAY;9 = WKDAY( C:BIRTHDAY ) DAYS = BLDDA( BIRTH_YEAR, BIRTH_MONTH, BIRTH_DAY ) SECONDS = BLDTI( LABOR_HOUR, LABOR_MIN, LABOR_SEC ) f. For MAXCIM ECB dictionary users, the 'Logical Password' process is now supported. g. XENTIS/File can now write exception records to an exceptions file. Records will be written to the exceptions file when the record cannot be written to the output file. The use of the exceptions file is controlled by the EXCEPTIONS parameter in the setup file. The name of the exceptions file is controlled by the EXCEPTION-FILE setup file parameter. the feature reduces the possibility of lost records during a XENTIS/File run. h. XENTIS will now identify it's version earlier in the initialization process. If it encounters a bad setup file it will identify the setup file that it was reading. i. The initializing messages that are displayed may now be suppressed by defining the logical XENTIS$INIT_MSG to have a value of N. Example: DEFINE XENTIS$INIT_MSG N j. A new setup file parameter called ENHANCE-HEADING will control whether or not default column headings will be enhanced to replace certain characters with a space and capitalize the words. This parameter has values of Y or N. This parameter is shipped with a value of Y. k. The new parameter DFLT-DATE-MASK now controls the default print mask for date fields when the data dictionary does not supply a print mask. This parameter is also used for date calculations. l. The DFLT-COL-HDING-JUST setup parameter now accepts a value of A, for Automatic. When set to A, the default justification for text and date fields will be L, and for numerics fields it will be R. The default value for this parameter will be shipped as A. m. The new parameter ADJUST-MASK controls whether or not the print mask will be prefixed with spaces when heading justification is C or R and the heading is larger than the print mask. This will result in the data being centered or right justified under the print mask. n. The new parameter DISPLAY-FUNC controls whether or not the the XENTIS functions will be displayed in the info window, and if displayed whether or not just licensed functions will be displayed. The allowable values are Y to display all functions, L to display only licensed functions, or N to not display functions. o. Previously entered numeric print masks will now be displayed in the info window for subsequent numeric fields. p. The new parameter ABORT-IF-ERR-BATCH will cause XENTIS to abort if an error occurs in the dialogue and the program is executing in batch. It will abort in a manner that DCL error trapping will detect the error. q. Due to changes in system tables, Sybase V4.9 was not compatible with any prior version of XENTIS. XENTIS is now compatible with Sybase V4.9. r. XENTIS/Report will now show a flag in display mode to indicate whether keyboard input is using overstrike typing or insert typing. The flag will be shown at the right margin on the line that displays the dialogue phase. Please note that this flag is updated only when a terminator key is pressed. s. A new parameter RDB-USE-ATTACH is now supported for Rdb versions that no longer allow the DECLARE SCHEMA statement in SQL and for databases that are defined as multischema databases.. Rdb allows only a DECLARE SCHEMA statement to connect to databases compatible with Rdb V4.0 or earlier. It allows only an ATTACH statement to connect to databases compatible with Rdb V5.0 or later. Rdb versions 4.1 and 4.2 allow both DECLARE SCHEMA and ATTACH statements. Set this parameter to a value of Y if you are using Rdb V4.1 or later, otherwise set it to a value of N. t. Ingres groupids used by the Knowledge Management Extension are now supported. Support of this feature in XENTIS is similar to the database username support for other relational databases. When a database type of Ingres is specified, XENTIS will now issue a password prompt where appropriate. At this prompt the Ingres user can enter a return if no groupid is desired, or can enter a groupid value. To inhibit the password prompt for those sites that do not use groupids, define a DCL global symbol as follows: $ XENTIS$PASSWD == "/" This will cause the password prompt to not be issued in XENTIS/Report. The support of Ingres groupids is available only when SQL joins tables; SQL-JOIN set to Y in the setup file, or /SQL appended to the primary file. u. The maximum length of the first/last key to read for the primary file has been increased to 62 characters. 2. /Dictionary a. When adding a field to a dictionary, the privilege levels will default to the privilege levels of the field previously added to the dictionary until the program is exited. b. When dumping or copying a XENTIS file description, standard VMS wildcards are now accepted as the name of the File, Table, or View. Responding with a filename that contains a wildcard character, * or %, will cause XENTIS to dump or copy all Files, Tables, or Views in a dictionary that match the specification. c. There has been a slight change in format when option 3 of the List Files is selected from 'Edit a Data Dictionary'. Null characters will no longer be displayed/printed and more files will be displayed/printed on each page. 3. General Enhancements a. XENTIS now supports several new datatypes as follows: . WUR -- 2 byte unsigned integer with bytes reversed. . LUR -- 4 byte unsigned integer with bytes reversed. . QUR -- 8 byte unsigned integer with bytes reversed. . LR -- 4 byte signed integer with bytes reversed. . QR -- 8 byte signed integer with bytes reversed. . PDA -- 2 byte Powerhouse Date. . JDA -- 2 byte Powerhouse Julian Date. . UDA -- Unix Date (4 byte integer containing the number of seconds since 01-JAN-1970). . CT1 -- A counted text field with a one byte header. . CT2 -- A counted text field with a two byte header. . NT -- A null terminated string. Please note that datatype CVW, supported since version 1.0, is a 2 byte signed integer with bytes reversed. The CT1, CT2, and NT datatypes are text fields that can vary in length from record to record. Each of these datatypes has a current length and a maximum length. The storage required in the data record, also the size defined to XENTIS/Dictionary, is the maximum length plus 1 (CT1, and NT) or plus 2 (CT2). The current length is determined by the value of the first byte, for the CT1 datatype, the first two bytes, for the CT2 datatype, or the location of the null byte, for the NT datatype. Since XENTIS only works with fixed length fields, fields using these three datatypes will have spaces appended to them to expand their current length to be equal to their maximum length. The PDA and JDA datatypes are 16 bit binary values defined as follows. The 7 most significant bits contain the year, less 1900. For JDA the next 9 bits contain the day of the year, 1 through 366, as a 9 bit integer. For PDA the next 4 bits contain the month of the year, 1 through 12, followed by 5 bits containing the day of the month 1 through 31. The above integer fields are supported as key segments in an RMS file, and if XENTIS/Dictionary is used to create a new empty data file, the key segment will be defined to RMS as a string segment. b. The Label Reformat utility now prompts the user for a 'Repeat Count'. The Repeat Count will repeat each input label a certain number of times in the output file. If 'VARIABLE' is entered as a repeat count the first line of each label should contain the repeat count for that label. This extra line at the beginning of each label will be removed from the label. c. The Label Reformat utility also now prompts the user with "Include form feed in output". This is quite useful if output of the reformat utility will be converted with the barcode utility, X-BAR. Please review the X-BAR documentation for additional information. C. KNOWN PROBLEMS AND RESTRICTIONS In addition to the restrictions listed below in the XENTIS V4.1 Release Notes, the following restrictions also apply. 1. Print frequency U (for Unique) and the setup parameter ACCUM-IF-UNIQUE may not always work when multiple primary files are being used. This is because two records in different primary files may have the same record pointer (RFA in RMS files). After sorting, these two records may get sorted next to each other. As a result, XENTIS thinks they are the same record, because they have the same RFA. 2. If the user enters a prompted literal, then backs up and makes a correction to the prompted literal, the user may be prompted for the first literal even though it is no longer part of the report. This happens because literals that were entered and then changed during the report definition, remain in the internal literal pool. This problem will automatically disappear when the report definition is saved and the report is reexecuted after exiting. 3. A problem may occur with XENTIS Dictionaries created prior to XENTIS V3.1. In some cases the prefix entry in the file record was not created correctly. Due to enhancements made to the processing of prefixes, the incorrect data stored in such prefixes may cause reports or /Edit to work incorrectly. This problem is resolved by running "Edit a Data Dictionary" from the XENTIS/Dictionary menu and selecting "Change" "File" followed by changing the prefix value from spaces to null. Running the program XDFIX_PREFIX found the the images directory will also correct this problem. 4. The sizes of all records from all input files, plus calculations, sort records, and literals, cannot exceed 32767 bytes. 5. /Update does not allow the same data file to be used twice, unless those files are used only to perform selection and/or calculations. This means that you cannot modify a field or delete a record if that field or record is located in a file that is used two or more times in a single /Update run. This restriction is placed due to problems involving record locking, rereading records by RFA, and RMS not being able to keep track of where the next record is located. This restriction may cause certain existing XENTIS command files to no longer work; receiving the error message "Same physical file update not allowed". These XENTIS command files may not have been working correctly. The solution to this problem is to perform this operation in two passes; the first being a SELECT function where the desired records are selected and their pointers are saved into a pointer file, followed by a REUPDATE where the selected records are read after retrieving their pointers from the pointer file. This restriction was effective with V3.6 of XENTIS. 6. When using VAX DBMS with XENTIS, if the same file is specified twice, XENTIS may under some circumstances enter an endless loop while under other circumstances it will not retrieve all desired records. An example of this occurs in the sample PARTS database linking the EMPLOYEE to DIVISION to EMPLOYEE using the MANAGES set and then the CONSISTS_OF set. This problem also occurs if a 3GL program is written using embedded DML statements. It is suspected that this may be a problem with VAX DBMS rather than XENTIS. 7. When using a MAXCIM ECB data dictionary, only one version of a data file is allowed. Specifying a version other than the most current version will be ignored. Using the ACTUAL/GENERIC syntax does not get around this restriction. The LIST FILES command displays the filename as the user entered the filename, which will be different from the file that will be used if a version other than the most current version is entered by the user. 8. When using multiple dictionary reporting with DBMS when DBMS is not your default data dictionary, then a subschema should be specified only on your first DBMS file. It will be rejected on subsequent DBMS files. For example: Third file? EMPLOYEE/DBTEST.DBM$SUBSCHEMAS.PERSONNEL/DICT=DBMS Fourth file? DIVISION/DICT=DBMS 9. When using DBMS under certain circumstances, the user may encounter the error: "Error opening data \ \ -- %RMS-E-ACT, file activity precludes operation". When this error occurs, enter an ERASE command and start the report definition again. 10. The REDISPLAY command does not always work correctly when DBMS is used, the output is to the users terminal, and when there is no requested sort. 11. The DROP-PRIV setup file parameter has no effect with MAXCIM V4 or later files. This is to conform to the MAXCIM security mechanism. 12. The Rdb interface of XENTIS does not work if XENTIS is linked to both the DAS file structure and to Rdb's SQL. If both are desired, then two images must be linked. Contact customer support for more information. 13. Calculations-on-totals should not use more than one occurrence of the same data field in the same report. An easy work around is to specify a calculation such as: AMOUNT3 = AMOUNT(3) 14. There is no support in the software for descending keys. They may, however, work under certain limited circumstances where the ascending/descending nature of the key is not used. 15. Entering a print mask using dual leading dollar signs or dual leading asterisks without including a trailing minus sign is accepted. Printing negative data will thus erroneously print as if it were positive, with no error indicated. 16. When Adabas files are described in a Natural view, if a Natural view contains group fields, then all elementary fields for the group fields must be described in the Natural view. Due to the a XENTIS requirement of fixed length fields, a field that belongs to a group cannot be removed from the Natural view. 17. The COBOL to XENTIS dictionary transfer does not support sequence numbers in columns 73 through 80. Sequence numbers are typically used in older punched card source files. 18. The Rdb interface converts Rdb VARCHAR fields to CHAR fields. This means that VARCHAR fields will have spaces appended to the end of the field to fill out the field to its maximum size allowed. If a VARCHAR field is used in an index, which is usually not wise, and two or more tables are joined using the /NOSQL qualifier, then you will probably have to specify a sub-field as your 'field to build key' field. For example: if the desired index to file B is using datatype VARCHAR(5) but only two of the five characters are really being used, then you should use only the first two characters of the input field from file A. 19. When displaying the output of a report to the screen, there is a limit of the number of lines available. If a detail contains more than the limit, then one or more printed lines may scroll of the top of the screen. 20. The XENTIS images distributed do not support the Progress database. Progress and Ingres have several routines that have identical names. This precludes any program from accessing both Progress and Ingres. If you need Progress support, please contact customer support, and images that support Progress but not Ingres will be shipped to you. 21. The FMTNM function does not support the blank-when-zero feature of print masks, designated by the ampersand character, the trailing DB if negative feature, the trailing CR if negataive feature, or the surrounding parenthesis if negative feature. 22. The minimum version of Ingres that is now supported is version 6.3. This allows XENTIS V4.2 to support groupids of the Knowledge Management Extension to Ingres. 23. The Rdb interface does not support the catalog and schema features of Rdb V4.1 and later. When XENTIS/Report attaches to a multischema database it specifies that the multischema capability will be turned off for the duration of the attachment. If a multischema database is used, the then the RDB-USE-ATTACH setup parameter must be set to Y. 24. When entering a CDD pathname and you do not want CDD$DEFAULT applied, be sure to start the pathname with _CDD$TOP rather than CDD$TOP. In other words, start the pathname with an underscore character. 25. XENTIS/File does not work when the output file is an Rdb table and the table contains computed_by fields, or virtual fields. D. PROBLEMS FIXED IN XENTIS V4.2. 1. The /NOSQL interface to Rdb would fail to read records from a secondary file if the record in the secondary file had VARCHAR fields in the record prior to the field containing the first segment of the index. 2. When using the CDD data dictionary, XENTIS/Report V4.1 was requiring the user to enter a file designator. For example: entering CUSTOMER_NUMBER as a filename would not work yet entering B:CUSTOMER_NUMBER would work. In addition, under certain circumstances using a DMU style dictionary, the user would be required to start a pathname with _CDD$TOP. 3. Relative files when used as a secondary file did not work in V4.1. 4. Pointer files, Print Frequency U, and the Accumulate-If-Unique setup parameter did not work correctly if data record caching was enabled and records were found in the cache. 5. In V4.1 Nested command files did not work if the filename referenced was the result of the Command File Substitution feature and the at sign (@) was included as part of the substitution. Although this was not a supported feature until V4.2, many customers discovered it and were using it. 6. When using the /NOSQL interface to Rdb, if a computed by field referenced a field from another table, the access to the original table would exit with an error during the open step. This has been corrected. 7. Several XENTIS/Dictionary utilities did not find the data dictionary if the data dictionary was located using a search list logical and the dictionary was not found in the first translation of the logical. 8. Using the INSERT or DELETE commands in XENTIS/Model would sometimes result in XENTIS/Model aborting. 9. Entering a backslash (\) at the "Detail or Summary" prompt in XENTIS/File when a temporary dictionary was used and no fields were specified in the output would result in an abort has been fixed. 10. If report titles are printed with print attributes, the information printed at the right margin of the title lines would get chopped off under certain circumstances. 11. The COBOL to XENTIS dictionary transfer did not allow comments within the COBOL record description. 12. A print mask of "00" did not work in XENTIS/Edit. 13. Prompted literals did not work in the "First key to read" prompt if the data class of the literal was numeric. 14. The response to the "records to read" prompt could not exceed 32767. 15. When using the /NOSQL interface to Sybase, XENTIS would not correctly process varchar datatype fields. Under certain circumstances it would retain some data from the previous record. 16. XENTIS/Update would allow a user to specify the same file twice when performing a delete operation. This could result in the user receiving a 'Record not locked' error during processing. The same data file may no longer be specified twice. This is due to a restriction in RMS. 17. The COBOL to XENTIS dictionary transfer program did not recognize signed numeric without a SIGN clause. Although this behavior is undefined by ANSI, most COBOL compilers accept it. XENTIS will assume an NRO, Numeric Right Overpunch, datatype is desired. This means that "PICTURE S999" fields will be treated as it they are "PICTURE S999 SIGN TRAILING" fields. 18. Using a calculation result in an output file in XENTIS/File would fail if the specified output field was beyond the 150th field in the output file. This problem has been fixed. 19. If a SET command was issued for the same setup parameter more than once, each occurrence would be written to the XCF file. This has been fixed. 20. Using a calculation result as an input field in XENTIS/File would cause an abort if the output field was greater than field number 150. 21. Under certain circumstances an XCF file may become catalogued more than once in the catalogue. This has been corrected. 22. When using the CDD, multiple primary files were not being processed correctly. Only the first primary file was being used. This has been corrected. 23. Subrecord processing did not occur correctly if the group field, or starting field, specified start at byte 1 of the parent file's record. 24. Trailing blanks will no longer be included in word breaks in word wrap field. This means that a field consisting of "SPARK PLUG " will fit in a 10 character word wrap column.
GrayMatter Home | XENTIS Home | Download Software | XENTIS Technical Support | Contacting GrayMatter | XENTIS News
![]()
Comments? Send us your feedback.
![]()
www.graysoft.com© Copyright 2020 GrayMatter Software Corp.
All rights reserved.