8.0    OTHER "ADVANCED" FEATURES


8.1    Sorting                          (NOT IN FREEWARE VERSION)

       Overview
       --------

       In keeping with its spirit of informality (and its price!)
       BlueBook does not, at the moment, maintain sort indexes.
       New records are appended to the database as they are
       added, or take the first space made available by a
       previously "deleted" record.  And that is the order they
       appear in when Listed.

       For the kind of data BlueBook is designed to deal with
       (and especially if you are using Listed sub-sets properly)
       this is acceptable; and it removes one important source of
       database unreliability.  But it is good to be able to see
       your data in a definite order, so we have added this Sort
       command.

       Currently, you can sort Lists and/or physical files on
       disk into one of 3 sequences:

         - by Key line             (ASCII sequence)
         - by key line within Date (grouped by Date, Keys in
                                    order within those dates)
         - by order of Addition    (chronological)

       List sorts are done by a Sort routine inside BlueBook.
       They are temporary, because Lists are temporary.

       Physical sorts are performed by the external program
       BBSort.Exe, and they are "permanent" - files remain sorted
       (apart from Added records) until you do another physical
       Sort.  BBsort.Exe is invoked by the Sort command on the
       List screen automatically; or you can run it standalone in
       the background under Windows (useful for large databases).

       ----------------------------------------------------------
       PERFORMANCE:  Not as good as a purely logical sort using
       indexes because BlueBook must examine (and often move)
       each record, one at a time; and because sorting is done in
       one "hit", instead of incrementally as records are added.
       But for smaller databases on a reasonably modern machine,
       sorting is still virtually instantaneous.  And for big
       databases, you CAN run BBSort "offline" in the background.
       We're actually quite proud of this Sort routine.
       ----------------------------------------------------------


       How do I sort?
       --------------

       Click Sort or type S on the List screen (except when the
       seLect button is depressed - Sort is disabled then).

       The Sort panel or dialog box that pops up has two groups
       of check boxes - two boxes arranged horizontally above,
       and three vertically below.

       If you want a "permanent" physical sort, click the
       righthand top check box.  Otherwise ignore it, because a
       temporary List sort is the default.

       Then check one of the vertical boxes to pick a sort
       SEQUENCE (described above).

       ----------------------------------------------------------
       Keyboarders can use the vertical/horizontal arrow keys.
       ----------------------------------------------------------

       Then just click Sort or type S (in the dialog box).
       Sorting of either type can be aborted by a keystroke at
       any time: no files are updated until sorting is complete.

       ----------------------------------------------------------
       Note that when a List sort finishes, you are returned to
       the same POSITION in the List, which will almost certainly
       be a new current RECORD.
       ----------------------------------------------------------


       BBSort.Exe
       ----------

       To run BBSort.Exe outside of BlueBook, in the background,
       a PIF and icon are provided.  But you will still have to
       enter, into the Windows parameter box that pops up,
       a database path and name [only - no extension], followed
       by a sort sequence code (K, D or A for Key, Date, or order
       of Addition).  For example -

                C:\BlueBook\MyCDs  K  <Enter>

       NOT -

                C:\BlueBook\MyCDs.BBL  K  <Enter>

       If you forget, you can enter a "?" instead, for Help.


