$TXT Created by MEIGHAN,MIKE J at NXT.KERNEL.FO-OAKLAND.MED.VA.GOV (KIDS) on MONDAY, 07/01/02 at 09:25 ============================================================================= Run Date: JUL 30, 2002 Designation: XU*8*157 Package : XU - KERNEL Priority: Mandatory Version : 8 SEQ #200 Status: Released ============================================================================= Associated patches: (v)XU*8*156 <<= must be installed BEFORE `XU*8*157' Subject: Menu Rebuild Rewrite -- Part 2 Category: - Routine Description: ============ $TXT Created by MEIGHAN,MIKE J at NXT.KERNEL.ISC-SF.VA.GOV (KIDS) on WEDNESDAY, 04/25/01 at 13:53 XU*8*157 Menu Rebuild Rewrite -- Part 2 NOTE: MAKE SURE THAT THE MENU REBUILD IS NOT RUNNING WHILE THIS PATCH IS BEING INSTALLED. NOTE: BECAUSE THE NEW DATA STRUCTURE IS STORED IN THE OPTION FILE YOU CAN EXPECT THIS FILE TO INCREASE IN SIZE EQUAL TO THE SIZE OF YOUR CURRENT ^XUTL("XQO") GLOBAL. IN SEATTLE THIS WAS 13 TO 20 MEGABYTES. SINCE ^DIC(19) IS JOURNALLED YOU SHOULD EXPECT A CORRESPONDING INCREASE IN JOURNAL SPACE AS WELL WHEN THE MENUS ARE REBUILT. NOTE: PATCH XU*8*156 MUST BE INSTALLED BEFORE XU*8*157. This patch is closely linked with patch XU*8*156 (Part 1). That patch (Part 1) creates the data structures that the new menu rebuild system will use. Part 2 brings in the routines and options to use those structures. If Part 2 is installed first, numerous undefined errors will result. Both of these patches can be run with users on the system and both can be queued. It is recommended that they be queued with Part 1 separated from Part 2 by about 2 hours when system usage is slow. This patch changes the way in which the compiled menus in the global ^XUTL are built. It prevents the jump system from becoming unavailable for long periods of time while the global is rebuilt. Instead of deleting ^XUTL and then rebuilding it, the menu trees are first built into the ^TMP global and then merged into a new cross reference of the Option File [^DIC(19,"AXQ")]. When a user logs onto the system the menu system looks at ^XUTL to be sure that the trees needed for that user to jump are available in ^XUTL. If they are not, the trees for that user's Primary Menu, Secondary Menus, and the Common Options are merged into ^XUTL from ^DIC(19,"AXQ"). This cross-reference, then, holds the master copy of the jump trees which are made available in ^XUTL only as they are needed. A change was also made to the user reactivation software because when a user is reactivated there is no guarantee that his or her jump trees will be present in the ^DIC(19) cross-reference. If they are not present then the software queues a small TaskMan job to build them so that the user can use the up-arrow jump. A new menu is created [XQBUILDMAIN] which has 4 options on it. "Is There a Menu Rebuild Running Right Now" [XQRIGHTNOW] tells you if there is menu rebuild activity on your system. "Kick Off Micro Surgery" [XQKICKMICRO] will force the menu system to see if there is work to do for Micro Surgery. "Most Recent Menu Rebuilds" [XQSHOWBUILDS] shows a list of the recent rebuild activity on your system. "Build Primary Menu Trees" [XQBUILDTREE] is the tradition menu tree building option, which was deleted by XU*8*156 and re-installed on this menu. This patch just brings in the routines to use the rewritten menu rebuild system. It's possible that you might see some CLOBER/NOSOURCE errors if the users are on the system. This patch addresses the following NOIS's: STX-1299-72245, IOW-1099-40071, ATG-0999-32300,ATG-0400-32459,MAR-0400-21520, and SFC-0400-62650. Test sites include Seattle, Atlanta, South Texas VHCS, Little Rock, White River, Connecticut, Boston, Portland, Spokane, Upper NY HCS (VISN 2), Altoona, and Pittsburg. INSTALLATION: 1. These routines may be mapped on systems that allow it so you may have to disable mapping. 2. Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This option will load the KIDS package onto your system. 3. The patch has now been loaded into a Transport global on your system. You now need to use KIDS to install the Transport global. 4. If users are allowed to remain on the system during installation errors may occur when the routines are loaded. It is best to load this patch during very low usage hours. 5. On the KIDS menu, under the 'Installation' menu, use the following options: Print Transport Global Compare Transport Global to Current System Verify Checksums in Transport Global Backup a Transport Global Install Package XU*8.0*157 Suggested answers to install questions: "Want KIDS to Rebuild Menu Trees Upon Completion of Install? YES//" Y "Want KIDS to Inhibit Logins during the Install? YES//" NO "Want to DISABLE Scheduled Options, Menu Options, and Protocols? YES//" NO 6. Rebuild your mapped set if necessary. 7. This patch may be queued provided XU*8*156 has been installed. 8. Once the patch has been installed the menu rebuild option XQBUILDTREEQUE should be scheduled to run on a nightly basis during low-usage hours. ========================================================================== The second line of your routines should look like this: ;;8.0;KERNEL;**[Patch List]**;Jul 10, 1995 CHECK SUMS (CHECK^XTSUMBLD) AND PATCH LISTS Routine Before After Patch List XQ 14095659 14318635 9,46,94,103,157 XQ12 16945386 17945424 9,20,46,157 XQ71 13594623 13289537 154,157 XQ72 12812548 12379743 47,46,157 XQ75 14455067 17149783 47,46,157 XQ8 11996023 12962792 81,89,116,157 XQ81 17045916 19927676 81,116,157 XQ82 3479466 4064095 59,67,157 XQ83 10007662 12086250 60,157 XQ83A 18239767 18360229 157 XQ83D 7694743 7694743 157 XQ83R 15234319 15468082 47,157 XQ84 *NEW* 8049971 157 XQ8A 4621077 4628496 46,157 XQCS 12939414 12888327 15,28,82,116,115, 177,188,157 XQLOCK 12699105 13254774 20,157 XQTOC 9046523 9202485 20,157 XUSERNEW 7464165 8604946 16,49,134,208,157 Routine Information: ==================== Routine Name: - XQ12 Routine Checksum: Routine Name: - XQ71 Routine Checksum: Routine Name: - XQ72 Routine Checksum: Routine Name: - XQ75 Routine Checksum: Routine Name: - XQ8 Routine Checksum: Routine Name: - XQ81 Routine Checksum: Routine Name: - XQ82 Routine Checksum: Routine Name: - XQ83 Routine Checksum: Routine Name: - XQ83A Routine Checksum: Routine Name: - XQ83D Routine Checksum: Routine Name: - XQ83R Routine Checksum: Routine Name: - XQ84 Routine Checksum: Routine Name: - XQ8A Routine Checksum: Routine Name: - XQCS Routine Checksum: Routine Name: - XQLOCK Routine Checksum: Routine Name: - XQTOC Routine Checksum: Routine Name: - XUSERNEW Routine Checksum: Routine Name: - XQ Routine Checksum: ============================================================================= User Information: Entered By : MEIGHAN,MIKE Date Entered : MAY 23, 2000 Completed By: HERREN,CATHRYN Date Completed: JUL 01, 2002 Released By : CHANNELL,DEBBIE Date Released : JUL 30, 2002 ============================================================================= Packman Mail Message: ===================== $END TXT