THE "%"
ROUTINE

Medsphere’s “%” routine contains nine APIs to help programmers with routine transfer and version control.  All these APIs are intended to work in any Kernel environment -- VA, IHS, or Medsphere.  The author of this routine is George Timson.    Download it here in ".RSA" format.

 

  1. Routines in “.m” format

 

OUT^%  Sends MUMPS routines out to a file directory (“path”) in GT.M format, as individual “.m” files.  User specifies path and routine set.

 

COMPARE^%  Compares routines as stored in a file directory (“path”) in GT.M or Cache format with routines on file in the current namespace, in side-by-side ‘diff’ format.  User can list individual routines, or use wildcards (e.g., “DI*”)

 

IN^%  Reads in and files MUMPS routines from a file directory (“path”).  Routines are expected to be in GT.M format, as individual “.m” files.  User specifies path and routine set.  User can list individual routines, or use wildcards (e.g., “DI*”)

 

  1. Patch numbers on second lines of routines

 

ONE^%  Looks for an individual patch number on the second lines of a specified set of routines.  Patch “number” can be non-numeric, like “MSC”.  User specifies routine set, and output is a list of the routines on file in the current namespace that have that patch number.

 

VER^%  Looks at all the patch numbers on the second lines of a specified set of routines.  Patch “numbers” can be non-numeric, like “MSC”.  User specifies routine set, and output is a list of “numbers” (e.g.,  “1-3,8-22,24-888,MSC”)

 

  1. Comparison across namespaces

 

ROUCI^% (or simply ^%)  Asks for a list of routines, and compares them from the current namespace to another one, in side-by-side ‘diff’ format. 

 

DD^%  Asks for a range of File numbers, and compares those files from the current namespace to another one, in side-by-side ‘diff’ format.  Comparison can be either:                  DATA DICTIONARY ONLY

FILE ENTRIES ONLY

DATA DICTIONARY AND FILE ENTRIES

MSC FileMan offers this same functionality as sub-option 3 of the TRANSFER Option.

 

BUILD^% (or B^%)  Asks for a KIDS Build in the current namespace, and uses the definition of that Build to compare routines, files and file definitions from one namespace to another one, in side-by-side ‘diff’ format.  The two namespaces being compared can both be different from the current namespace.  Thus, for example, two unmodified FOIA releases can be compared with respect to the components of a particular Medsphere Build.

 

INSTALL^% (or I^%) Asks for a loaded KIDS Install in the current namespace and uses the definition of that incoming Build in the same way as BUILD^% (above) does.