****************************************************************************************** Content Manager Client for Windows v7.1.0 fixpack3 October 26, 2001 This is an interim fixpack between Formal Corrective Service Deliverables (CSDs). Table of Contents 1. Installation Requirements 2. Installation Instructions 3. APAR Descriptions 4. Documentation APAR Fixes with Descriptions ****************************************************************************************** ********************************************* 1. Installation Requirements ********************************************* This fixpack is for Windows. In order to install this fixpack, you must be at this minimum product base level: a) Content Manager Client for Windows V7.1.0 (syslevel 07010000) You can determine your syslevel by: - Clicking on the START button and select RUN - Enter "REGEDIT" - Double click on "HKEY_LOCAL_MACHINE" - Double click on "SOFTWARE" - Double click on "IBM" - Double click on "Content Manager Client for Windows" - Click on "7.1". On the right side of the screen, the syslevel is recorded under "Fixpak applied" ********************************************* 2. Installation Instructions ********************************************* 1. Shut down and reboot your workstation to ensure that all file locks are released. 2. Download the CMWC7103.WIN.EXE file in binary mode to a temporary subdirectory on your workstation. 3. CMWC7103.WIN.EXE is a self-extracting WINZIP file that can be extracted by simply entering CMWC7103.WIN. You will be prompted for a temporary directory to unzip to. You should have at least 10MB of free space. 4. Follow the GUI install panels. ********************************************* 3. APAR Fixes with Descriptions ********************************************* ************************************ Fixpack 710.3 ************************************ APAR NUMBER: IR46763 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 82539 APAR DESCRIPTION: Unable to open baseline compressed JPEG files FIX DESCRIPTION: Modified code to support DPI values less than 20 and greater than 10,000 SPECIAL INSTALLATION INSTRUCTIONS: Backup Pxtran32.eng in FRNROOT (or CM Install) directory, before copying over the update. REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46497 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 18369,519,000 APAR DESCRIPTION: No error retured when UE dynamic link library is missing or UE function is missing from the library/ FIX DESCRIPTION: Error message was returned when UE function or library is missing SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46441 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 48133 APAR DESCRIPTION: The Priority (if non-0) is getting copied into the CheckoutID field if any QuerySort user exit is called. FIX DESCRIPTION: Columns now contain correct information. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46264 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 23190 APAR DESCRIPTION: Sometimes the client crashes when a single document is repeatedly opened and closed. FIX DESCRIPTION: The client no longer crashes under these circumstances. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46721 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 05977,180 APAR DESCRIPTION: There is no shortcut for "Remove from Workbasket". FIX DESCRIPTION: The combination of Ctrl+Shift+R has been set up as a shortcut for "Remove from Workbasket". SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46073 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 13914,101,618 APAR DESCRIPTION: Sorting of rows based on Numeric columns did not work if the data in the columns were negative. FIX DESCRIPTION: Sorting now works correctly. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46216 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 09140,519,000 APAR DESCRIPTION: If a user adds an annotation to a document and then prints the document before saving it, the save will then fail. FIX DESCRIPTION: The client now allows annotations to be saved after being printed. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46295 / Windows COMPONENT: CL / 5648D03U2 PMR NUMBER: 79842 APAR DESCRIPTION: Resource Handles not released after opening and closing documents FIX DESCRIPTION: Released resource handles from the code, after opening and closing documents SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46080 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 36670 APAR DESCRIPTION: When a folder that is selected in the tree view is deleted, the right-hand side of the Table of Contents becomes empty. FIX DESCRIPTION: The client now switches focus to another folder when the selected one is deleted. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46116 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 20225,010,724 APAR DESCRIPTION: If a document has multiple parts with same part number, only the first part is shown when opening the document. This problem occurs when RepType is set to something other than NULL while importing documents. FIX DESCRIPTION: The client now shows multiple parts that have the same part number but different RepTypes. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46458 / Windows COMPONENT: CL / 5648D0462 PMR NUMBER: 07832 APAR DESCRIPTION: Some Word documents were not refreshed properly when zoomed-in to certain values. The background was not always erased during zooming. FIX DESCRIPTION: The background is now re-painted properly during zooming. SPECIAL INSTALLATION INSTRUCTIONS: Make a back-up of FRNWVIEW.EXE in the FRNROOT (or CM Install) directory before copying over the newer file. REFERENCE DOCUMENTATION: none ***** APAR NUMBER: IR46099 / Windows COMPONENT: CL / 5648D0442 PMR NUMBER: 05874,519 APAR DESCRIPTION: The client was not deleting the temporary folders that were created via the Alternate Search user exit. FIX DESCRIPTION: The temporary folders are now being deleted. SPECIAL INSTALLATION INSTRUCTIONS: none REFERENCE DOCUMENTATION: none ************************************ Fixpack 710.1 ************************************ APAR NUMBER: IR40657 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: Unable to display WMF files correctly - parts of the image may be missing. FIX DESCRIPTION: The new version of the view.dll corrects the problem ************************* APAR NUMBER: IR43426 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: Customers trying to view files compressed with the LZW compression algorithm received permissions errors. FIX DESCRIPTION: The permissions file has been updated to allow viewing of LZW-compressed files. ************************* APAR NUMBER: IR43805 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: When minimized, the notelog window cannot be restored to normal size; it can only be maximized to full-screen. FIX DESCRIPTION: The notelog window can now be restored to original size. ************************* APAR NUMBER: IR45102 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: Workbaskets were unnecessarily refreshed after an item was dragged and dropped from one WB to another. FIX DESCRIPTION: Now, the client only refreshes necessary items. ************************* APAR NUMBER: IR45316 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: When Opening or Browsing a large number of selected documents from a Table of Contents an error message appears: "Can't open empty document" and after selecting OK, a General Protection Fault occurs. FIX DESCRIPTION: There is a maximum number of items that can be opened at one time depending on the available resources of your PC. With this fix if the user gets the error message, the application stops loading documents but does not crash. To open more documents some others need to be closed first to free up additional resources. ************************* APAR NUMBER: IR45353 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: Routing an item from one workbasket to another via dialog window and then refreshing the window caused the item to appear in both places. FIX DESCRIPTION: The client no longer shows items as if they were in multiple workbaskets. ************************* APAR NUMBER: IR45369 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: The client was refreshing the entire table of contents any time a document that had been opened from that TOC was closed. FIX DESCRIPTION: Now, the client only refreshes necessary items. ************************* APAR NUMBER: IR45416 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: When selecting a workbasket list in the tree view, the warning message, "The table of contents was too large. Only [Maximum number of items returned] item or items will appear." may be displayed. The option [Maximum number of items returned] should only reflect the number of documents or folders and not workbaskets, thus this message should not be displayed. FIX DESCRIPTION: The bogus warning message is no longer displayed. ************************* APAR NUMBER: IR45418 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: Selected items in the TOC no longer appear highlighted after the window regains focus. FIX DESCRIPTION: This problem is now fixed. ************************* APAR NUMBER: IR45591 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: In rare circumstances, the client application crashes when a workbasket is opened if the workbasket contains items whose index classes have a QuerySort user exit defined. FIX DESCRIPTION: The client no longer crashes under these circumstances. ************************* APAR NUMBER: IR45602 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: There are no gridlines separating rows and columns in Tables of Contents as there were in the version 2.x clients. FIX DESCRIPTION: These gridlines can now be enabled by setting ShowGridLineInTOCViewOption in the VIC.INI file to "yes". By default, this value is set to "no". ************************* APAR NUMBER: IR45603 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: To select or act on an item from a Table of Contents, it was necessary to click on the value in the first column and selection was only shown in this column. FIX DESCRIPTION: Now, the whole row will be hightlighted by clicking on any column within the row and the item can be opened by double-clicking anywhere within the row. ************************* APAR NUMBER: IR45695 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: When a AltSearchUserExit is defined for an index class and the DLL is not present or the function name cannot be found in the client computer, the default search was still being executed. This poses a security issue. FIX DESCRIPTION: Now in this case, an error message (FRN6772A) is displayed. Also a new OLE error code (OLEAPI_RC_NO_USEREXIT_DLL_FOUND -- 12026) will be returned in this case. ************************* APAR NUMBER: IR45699 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: When a document is viewed via OLE Linking, a simple image of the document is shown in the client. This image was not showing up until the document window was moved or resized. FIX DESCRIPTION: The document image now shows up immediately. ************************* APAR NUMBER: IR45872 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: In the German version of the CM 7.1 client, the user name and password prompt appear above the actual point of input. FIX DESCRIPTION: User name and password prompt are now in the correct location. ************************* APAR NUMBER: IR45903 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: When TOC view is maximized, open advanced search window and then press "New" or "Edit" button, sizes of advanced search window and TOC view window are changed to normal. FIX DESCRIPTION: The advanced search window now maximizes properly. ************************* APAR NUMBER: IR46016 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: A user who has no privilege to modify a base part is allowed to save changes to the base part if an AlternateViewer is used to do these modifications. FIX DESCRIPTION: Now in this case, the temporary file created in local is read-only and an error message (FRN6207A) is displayed if the read-only privilege is bypassed and the file gets modified anyway. ************************* APAR NUMBER: IR46034 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: Opened notelog and index dialogs stay in the foreground when their corresponding document is deactivated (the window is moved to background). FIX DESCRIPTION: Now when a document is deactivated, its opened notelog and index dialogs are hidden and when the document is activated again, its opened notelog and index dialogs are shown and brought to the foreground. ************************* APAR NUMBER: IR46221 COMPONENT: Client / 5648D0442 APAR DESCRIPTION: There is not a way to reindex parts from one Object Server to a different Object Server. FIX DESCRIPTION: New ChangeSMS User Exit allows parts to be reindexed from one Object Server to another. ************************* APAR NUMBER: IR44458 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: When calling simlibsearch with the null (0 Length) search string client receives FRN6772A error message. FIX DESCRIPTION: In LibPackageHostVarValue function (in frnpllrs.c) set string length to 1 when host var's attrType is varchar and host var string is null and the usOperator is relational. ************************* APAR NUMBER: IR44921 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: FRN8635A - Timeout occured waiting for the Library Server to respond to a request. The program times out at the retreive step (ExtRC=8635). DB2 traces show that the update and retrieve are sent to DB2 as two different units of work, so the retrieve ends up waiting for the update to finish, which won't happen until the retrieve finishes. A classic deadlock / timeout situation. FIX DESCRIPTION: Depending whether we are in a transaction or not, derive the proper Library Client session handle to be used within SimLibqueryPartExtSrch. This APAR also fixes a login problem where ProcessACLRows causes an access violation during logon. ************************* APAR NUMBER: IR45091 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: API SimLibCreateItem cannot handle system defined attributes and failed with error FRN6216. FIX DESCRIPTION: Changed SimLibCreateItem code to allow handling of system-defined attributes. ************************* APAR NUMBER: IR45224 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: Customer deleted frnadmin userid and they loged on to sys admin with another userid w/ maxprivs and created a new userid called "frnadmin". The customer then logs on with the userid "frnadmin" and receives a msg saying "the password doesn't match the userid for the patron..." frndiag.log on lib srvr: Type: ERRLOG file: frnpllcn.c Line 5528 RC: 7051 Msg Code: 7051 FRN7051A: The password specified for patron FRNADMIN is not valid. FIX DESCRIPTION: LibDefinePatron() in lcporder.c module the encrypted password was set to "FED0F6C9018BCF4A". It should be "B59CC182B7BDCD01". ************************* APAR NUMBER: IR45320 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: When hObj->sVersion is not 0, any media object cannot be retrieved. SimLibOpenObject gets rc= 8682 FIX DESCRIPTION: In SimLibOpenObject code, after the LibRetrieveItemPartAsync finishes the RETRIEVE_ORDER_CL order creation, if sVersion > 0, then reset the szElementKey field in the element table using sVersion -1 as the internal version number so the szElementKey field will match the media object name sent over from the Object Server instead of unmatching object name in the element table. ************************* APAR NUMBER: IR45512 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: Utilization of the supported ip2toccount api (as used by the Content Management client application) to determine the count of items in a workbasket results in a lenghthy response time when the number of items and workbaskets is large. While the same values to determine the same results is contained in the FRNWIPITEMS table, the values are not kept in sync with the FRNITEMS table. Subsequently, any attempts to bypass the performance issues of the api by issuing a direct sql against the FRNWIPTEMS table results in possibly incorrect information. FIX DESCRIPTION: Check if all search filters are set to ALL in MakeQueryTOCEntries function (in fipquery.c). If so, issue dynamic SQL search selection only from SBTWIPITEMS. ************************* APAR NUMBER: IR45627 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: After loading one or more objects into CM, either SimLibUpdatePartExtSrch or SimLibUpdateObject is called to update the content of the objects. If the size of any object is greater than 67000 bytes, SimLibUpdatePartExtSrch or SimLibUpdateObject will fail on AIX with return code = 6256, or SIM_RC_RESIZE_FAILED, and returned hErrLog = 6395, or SIM_RC_WRITEOBJECT_FAILED. If Folder Manager trace is turned on, it will report a return code of 6256 by SimLibWriteObject. As a result, the update activity fails. FIX DESCRIPTION: Function CmnRetrieveFileData called fread() incorrectly. The third parameter of fread() function call should be 1, not the size of the file. Only the second parameter should be the size of the file, but not both the second and third parameters. ************************* APAR NUMBER: IR45951 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: The 16-byte itemID's currently are generated by clients randomly. This may cause performance problems for customers if the number of itemId's is huge. To solve that performance problem, a Library Client user exit is created to allow users to use their own algorithms to generate new itemID's in a more sequential manner. FIX DESCRIPTION: The default userexit is a no-op function and simply returns 0 to the caller. A sample userexit (commented out) is provided in this userexit. To use the sample method, users can simply un-comment it and modify it anyway desirable by the users, and build the userexit again. So the default behavior of this userexit is business as usual, that means no impact to existing customers, unless the userexit is modified and rebuilt by the customers. User exit: LibCreateItemID (generate item ID user exit) Format: LibCreateItemId (pszItemID,pszWorkStationID,sIndexClassID,pszUserID,sSemType) PURPOSE: When an application creates an item, Content Manager assigns the item several system-defined attributes. One of those system-defined attributes is an item identifier (item ID), which is randomly created by the Library Server Client. This user exit allows you to change the way the Library Server client generates item IDs. You can use the sample in this user exit to have the library client create sequential item IDs. To use the sample, remove the comments tags in the code and recompile. You can also modify the sample code and add your own algorithms. The library client encrypts the password that is associated with the user before it is transmitted to the library server. Use LibEncryptPassword if you want to provide your own encryption algorithm or eliminate the password encryption. Note: If you don't "uncomment" the sample code, the CM library server client will create item IDs as it is originally designed to do; random ID generation. PARAMETERS: pszItemID: CHAR - input and output A parameter passed in by the internal code. pszWorkStationID: CHAR - input The character string of the host name. The maximum length for this string is 18 bytes, which includes the null terminator. sIndexClassID: SHORT - input The index class identifier. pszUserID: CHAR - input The NULL-terminated character string that specifies the password for the user ID. This parameter is not case sensitive. sSemType: SHORT - input The semantic type of the item to store. The semantic type of an item indicates its general classification. Use a 2-byte integer. The predefined semantic types are: SEMTYPE_ACL Indicates that the item is an access list. SEMTYPE_ANNOTATION Indicates that the item is an annotation. SEMTYPE_DOCUMENT Indicates that the item is a document. SEMTYPE_FOLDER Indicates that the item is a folder. SEMTYPE_HISTORY Indicates that the item contains history events. SEMTYPE_MGDS Indicates that the item contains MGDS data. SEMTYPE_NOTE Indicates that the item is a note. SEMTYPE_USER Indicates that the item is a user item. SEMTYPE_WORKBASKET Indicates that the item is a workbasket. SEMTYPE_WORKFLOW Indicates that the item is a workflow. SEMTYPE_NONE Indicates that the item has no semantic type. All other values are for use by applications. The library server does not interpret them, so they can be used by the application in any way you want to. RETURN VALUES: The function returns a value of SHORT with zero for SUCCESS and -1 for FAILURE. COMMENTS: The function is located in the FRNPLCPW.C module. In the Windows environment, the sample source code for this user exit routine is located in the \USEREXIT subdirectory of your install root directory. The LibCreateItemID function is a single function in FRNWLCPW.DLL. You can replace FRNWLCPW.DLL with your own FRNWLCPW.DLL. ********************************************* 4. Documentation APAR Fixes with Descriptions ********************************************* APAR NUMBER: IR44403 COMPONENT: Client APAR DESCRIPTION: When customer select userid properties to reset password. They would highlight the password field, type the new password, then choose ok. The 1st character of the password would get lost. The on-line documentation states that a keyfield with characters defined as alphanumeric recognizes spaces. This is incorrect. Only extended alphanumeric characters allow spaces. To locate the text login to the AdminClient and open Fileroom. Select keyfield. From the right pane left click on any keyfield and choose properties. Click on the Help button in the lower right corner. In the help screen select Character Type. You will see the explanations on the left side of the screen. FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide Version 7 Release 1, the following information is incomplete in the online help for the New Key Field panel in Fileroom: Character type Alphanumeric A-Z, a-z, 0-9 "Restriction: The user's client application might prevent the use of blank spaces in certain keyfields." ************************* APAR NUMBER: IR45226 COMPONENT: Client APAR DESCRIPTION: Development Manager, Floyd Rose, stated that CM 7.1 will not be supported on Win 95 platform. FIX DESCRIPTION: In the Content Manager Client for Windows Getting Started with Client for Windows Version 7 Release 1, the following information is corrected: Page 9, Chapter 2, Planning and installing Client for Windows: states that Microsoft Windows 95 is a supported operating system. Microsoft Windows 95 is not a supported operating system for Version 7 Release 1 ************************* APAR NUMBER: IR46109 COMPONENT: Client APAR DESCRIPTION: When using the ppszErrorMsgs parameter in the AltSearchUserEx the documentation says that the user exit (dll) must allocate the memory for this pointer. It then says that the CM client will free the allocated memory (which was allocated in the dll). How can one properly allocate memory in the dll so that the calling process (the CM client) can later deallocate it? You stated that "the exit properly allocates storage for the messages." Does this mean that the CM client exit itself allocates the memory? In this case, then the doc is incorrect. Correction: The customer needs to define a sufficiently large block of global static memory in his user exit DLL and they need repeatedly use this memory for the error messages. The client does not deallocate it FIX DESCRIPTION: In the Content Manager for Multiplatforms Application Programming Guide for Windows Version 7 Release 1 Appendix B, User Exit Routines, "Client for Windows user exits" SaveRecordUserExit (save record user exit) ppszErrorMsgs PSZ * - Output Address of a pointer. The pointer must be set by your exit routine to point to a data stream of ASCIIZ strings representing error messages. Each error message must correspond with an attribute ID in the ppusFieldIdsInError parameter. The required format of the error data stream is defined in the Results section. Delete the following sentence: This buffer must be allocated by the user exit routine and is deallocated by the Content Manager system. ************************* APAR NUMBER: IR46288 COMPONENT: Client APAR DESCRIPTION: In the Administration Guide for Client 7.1: "Restriction: The Client for Windows does not support the use of index class subsets. See the online help for further information regarding the use of subsets and database indexes." In Chapter 3. Administration Tasks in Section: Managing Object Retrieval on page 16 is incorrect (the product provides that capability) and contradicts in addition another document: Getting Started with Client for Windows Version 7.1 (GC27-0869-00) "Version 7.1 supports Index Class subsets. Subsets are views of Index Classes that may not show all the data associated with an Index Class. Initially, each Index Class has a single subset that is equivalent to the Index Class and System Administrators may define additional subsets to restrict what information is visible to certain users." In Chapter 1. Introducing the client application for Windows in Section: What's New in Client for Windows Version 7.1 on page 2 FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide Version 7 Release 1 Page 16, Chapter 3 Administration Tasks, "Restriction: The Client for Windows does not support the use of index class subsets. See the online help for further information regarding the use of subsets and database indexes." Should be replace with: Version 7.1 supports Index Class subsets Subsets are views of Index Classes that may not show all the data associated with an Index Class. Initially, each Index Class has a single subset that is equivalent to the Index Class and System Administrators can define additional subsets to restrict what information is visible to certain users. ************************* APAR NUMBER: IR46973 COMPONENT: Client APAR DESCRIPTION: According to the "Getting Started with Client for Windows" on http://www-4.ibm.com/software/data/cm/pubs/cm71/cliwin/frnu3mst0 5.htm... HDRSTDVWR the CM 7.1 client should be able to view PDF files. This statement in the Client for Windows User Guide is incorrect. In order to view a PDF file you need to launch an external viewer. FIX DESCRIPTION: In the Content Manager for Multiplatforms Client for Windows Getting Started with Client for Windows Version 7 Release 1 Page 13, Standard Viewer file format support: PDF is listed as a supported file format for the Standard Viewer. This is incorrect. You must launch an external viewer to view PDF file formats. ************************* END OF README ************************* TRADEMARKS __________________________________________________________________________ IBM Content Manager for Multiplatforms V7.1 (program number 5648-D04) (c ) Copyright IBM Corp. 1994, 2000. Licensed Materials - Property of IBM All Rights Reserved. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corporation