JSPICK Utility Program Documentation
(Ver 2.1, 09-24-93)

Author: Johnathan Mark Smith


THE OLD DISCLAIMER

  This software and manual are sold "as is" and without warranties
  as to performance or merchant ability or any other warranties
  whether expressed or implied. Because of the various hardware and
  software environments into which this program may be put, no
  warranty of fitness for a particular purpose is offered.

  The user must assume the entire risk of using and evaluating this
  program. Any liability of  Johnathan Mark Smith Technology will be
  limited exclusively to product replacement or refund of purchase
  price. If you find these terms unacceptable, do not use this
  product.

Introduction

        As time goes by, more and more Mainframe Systems are being down
sized to run on PC's. One of the biggest setbacks is matching data
from one file to the next file. The JSPICK utility will simplify the
task of checking to see if you have the same key on two files. JSPICK
must be provided with two files to match and a control file. All these
files must be ASCII files.

        JSPICK can be used to:
        1. Create a file with all the records on file one which have
           a matching key on file two.
        2. Create a file with all the records on file one which do not
           have a matching key on file two.
        3. Create a file selecting records from one file by using a key
           file as file two.

        The best part is that JSPICK can do all this without any of the
files being sorted by the key used for matching. 


	The JSPICK program must be provided with control information
to govern its execution. This information is read from a control file. 
The control file is a standard PC text file that can be created with
any ASCII text editor.

To run JSPICK type at the prompt:    JSPICK [options] <control file name> 



                    THE CONTROL FILE:
                    ----------------

The first line of the control file identifies the mode to run in.

The second line of the control file identifies the
file(CALL THE MATCH ON FILE)  to match on,
starting byte of the field to match on and the size of the field.

The third line of the control file identifies the file(CALL THE INPUT FILE)
from which to pick off the matching and the non-matching records, and the
starting byte of the key field.

The forth line of the control file identifies the file to put the
matching records out to.

The fifth line of the control file identifies the file to put the
non-matching records out to.

The following sample control file illustrates how control information 
is provided to the JSPICK program.


Contents of a sample #1 of JSPICK control file, JSPICK1.CTL:

		BOTH
		C:\DATA\KEYS.TXT,4,10
		C:\DATA\INPUT.TXT,6
		C:\DATA\MATCH.DAT
		C:\DATA\NONMATCH.DAT

The word "BOTH" tells the program to create both output files.

Line #2 tells the program that the file(THE MATCH ON FILE) with the keys is
"C:\DATA\KEY.TXT" and the key starts in byte 4 for the length of 10 bytes.

Line #3 tells the program that the input file name is
"C:\DATA\INPUT.TXT" and the key starts in byte 6 of the input file.

line #4 tells the program to put the matching records in the file
"C:\DATA\MATCH.DAT"

line #5 tells the program to put the non-matching records in the file
"C:\DATA\NONMATCH.DAT"


Contents of a sample #2 of JSPICK control file, JSPICK2.CTL:

		MATCH
		C:\DATA\KEYS.TXT,4,10
		C:\DATA\INPUT.TXT,6
		C:\DATA\MATCH.DAT

 The word "MATCH" tells the program to create only a file with
the matching records in it.

Line #2 tells the program that the file(THE MATCH ON FILE) with the keys is
"C:\DATA\KEY.TXT" and the key starts in byte 4 for the length of 10 bytes.

Line #3 tells the program that the input file name is
"C:\DATA\INPUT.TXT" and the key starts in byte 6 of the input file.

line #4 tells the program to put the matching records in the file
"C:\DATA\MATCH.DAT"


Contents of a sample #3 of JSPICK control file, JSPICK3.CTL:

		NOMATCH
		C:\DATA\KEYS.TXT,4,10
		C:\DATA\INPUT.TXT,6
                C:\DATA\NONMATCH.DAT

The word "NOMATCH" tells the program to create only a file with
the non-matching records in it.

Line #2 tells the program that the file (THE MATCH ON FILE) with the keys is
"C:\DATA\KEY.TXT" and the key starts in byte 4 for the length of 10 bytes.

Line #3 tells the program that the input file name is
"C:\DATA\INPUT.TXT" and the key starts in byte 6 of the input file.

line #4 tells the program to put the non-matching records in the file
"C:\DATA\NONMATCH.DAT"


NOTE:
      If line #1 is not one of the following (BOTH, MATCH, NOMATCH)
      the program will default to BOTH. A match file and a nomatch file
      must be supplied.




                               OPTIONS:
                               -------

        At the prompt when you type JSPICK, there are two options
available for the execution of that particular run.

        1) -iz     This option will tell the utility that the
                   INPUT file is not CRLF and the record length
                   is z long.

        2) -mz     This option will tell the utility that the
                   MATCH ON file is not CRLF and the record length
                   is z long.
        
        3) -s      This will surpress the graph that shows on
                   the screen when JSPICK is executed and the
                   counters will only be displayed at program
                   termination. The advantage of using this opiton
                   is that the program will run MUCH, MUCH FASTER.
                   (Try it!)

        4) -C      This option will turn off case sensitivity.
                   JSPICK will not care if the key is upper case,
                   lower case, or a mix of both. For example:
                   All these keys will match:   John
                                                JOHN
                                                john
                                                jOhN



Registration

  I will keep improving the program if I know enough people are
  finding it useful.

  My registration policy is very flexible. The nominal fee are listed
  in the file REGISTER.TXT. If you don't feel you will get your money
  worth of use out of JSPICK, send whatever it is worth to you.
  If you are impoverished and can't afford to pay anything,
  enclose a stamped self-addressed envelope
  and I will send you a registration.

  This is not freeware or public domain. Shareware is simply a means
  of marketing commercial software. You are required to register if
  you intend to use this program after a reasonable trial period.

  When registering, please tell me the version number you have 
  and where you obtained your copy of JSPICK.

  Foreign checks and credit cards OK. See REGISTER.TXT for details.

  JSPICK should be registered for the maximum number of copies that
  can be used simultaneously at your site. Site fees for commercial
  users can be negotiated.

  If you register for the full fee, and enclose a Shipping and
  Handling fee of $3 I will send you the latest versions of JSPICK and
  Some Free Demo's.  if you decide to use it after a trial period. 
  I will also send other File related shareware programs.


Registered version features

* FREE UPGRADES AND NEWSLETTERS

* CUSTOM DEFAULT SETTINGS

* DISCOUNTS ON SHAREWARE


Program Abort

    Hitting Control-C (or Control-Break) will terminate the program
    immediately. 


Distribution

    Permission is hereby given to copy and distribute this program
    as long as no more than $5 is charged. It must be made clear to
    the buyer that this is only a handling charge and not a
    registration fee. You must include all files in their original
    unmodified form when distributing this program. .

    Permission to distribute may be revoked by the Johnathan Mark Smith 
    at any time for any reason.

    YOU MUST NOT DISTRIBUTE ANY COPY WHICH HAS BEEN BRANDED WITH
    A REGISTRATION CODE. 

All trademarks used in this document are the property of their
owners.

					     -Johnathan Mark Smith-


Questions or suggestions regarding JSPICK should be directed to the
author at the following address:

	Johnathan Mark Smith
	2039 85 STREET
	BROOKLYN, NY 11214

	Telephone: 718-373-3886




