Contents: | Main | Chapter | See Also: | Getting Started Manual | Advanced User Manual |
If an exact match is found for a HELP FRAME entry, only the existing word processing field TEXT and the multiple fields RELATED FRAME and INVOKED BY ROUTINE are deleted from the existing entry. Then, the new entry is brought in on top of the old one.
For all entries brought in by the init, the init loops through the RELATED FRAME multiple and resolves the pointer field RELATED FRAME, which is a pointer back to the Help Frame file.
If a matching entry is found, the old entry in the Bulletin file is deleted. However, entries in the bulletin's MAIL GROUP multiple (which identify recipients of the bulletin) present on the target system before the install will remain associated with the bulletin after the incoming bulletin is installed.
The init displays each bulletin brought in by the init and reminds the installer to "Remember to add mail groups for new bulletins."
The current date/time is stuffed into the field DATE INSTALLED AT THIS SITE, within the VERSION multiple for the current version of the package.
The pointer field PRIMARY HELP FRAME is resolved.
Pointer fields DISPLAY GROUP DEFAULT, PROTOCOL TO EXPORT, DEFAULT PROTOCOL, and MENU are resolved. If pointers to the Protocol file cannot be resolved because the pointed-to protocol cannot be found, the init routines add a new entry to the Protocol file (with just a .01 field) in order to resolve the pointer. This is done because PROTOCOLS are exported in a special set of routines (called ONIT routines) that are normally executed as a post-init.
If a matching entry is found, the entire old entry is not deleted. Only the DESCRIPTION field (a word processing field) and the ITEMS multiple (containing menu items) are deleted from the old entry before the new one is brought in.
For example, if the site has a local lock on an OPTION, and no lock is brought in by the init, the local lock is preserved.
The pointer fields SERVER BULLETIN, SERVER MAIL GROUP, PACKAGE, HELP FRAME and the .01 field of the ITEMS multiple (which points back to the Option file) are all resolved.
No special processing, except that if a matching entry is found in the target system, it is merged rather than replaced. Note that pointers in the SUBORDINATE KEY multiple are not resolved; so, data should not be exported in that multiple.
No special processing is done for the Function file.
The only special processing done for these templates is that after they are all installed, compiled PRINT and INPUT templates are automatically recompiled. The init uses the system's preferred routine size from the MUMPS OPERATING SYSTEM file (#.7) when compiling these templates. It is possible that the recipient of the init could already have routines with the same names that the compiling routine will use. Thus, the developer should warn the installer of the routine names that will be used by incoming compiled templates, especially if the developer is sending templates that are not namespaced.
Any BLOCKS that are pointed-to by FORMS are automatically included in the init routines. The BLOCKS are installed first, with no special processing. Then, the FORMS are installed. Finally, pointers to the Block file from the Form file are resolved.
Reviewed/Updated: March 4, 2007