********************************************************************************************* Content Manager Client for Windows v7.1.0 fixpack1 July 31st, 2001 This is an interim fixpack between Formal Corrective Service Deliverables (CSDs). Table of Contents 1. Installation Requirements 2. Installation Instructions 3. APAR 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 CMWC7101.WIN.EXE file in binary mode to a temporary subdirectory on your workstation. 3. CMWC7101.WIN.EXE is a self-extracting WINZIP file that can be extracted by simply entering CMWC7101.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.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. ********************************************* 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