SP_SLSF_FORM

SLSF_FORM()

  Short:
  ------
 SLSF_FORM() Sets and retrieves the file name and path for the
 FORMLETR() DBF file

 Returns
 <cFileSpec>  => File path and name less extension

 Syntax
 SLSF_FORM([cNew])

 Description

 [cNew] optionally sets the path and/or filename.

 If [cNew] is passed, this is the value returned as well.

 Examples
  USE (SLSF_FORM() )                    // open the file

  SLSF_FORM("c:\hidden\XYZ123")         // sets the filespec
                                          // to XYZ123.DBF in
                                          // c:\HIDDEN

 Source: S_PATHS.PRG

 

SP_PURGEM

PURGEM()

  Short:
  ------
  PURGEM() Deletes records

  Returns:
  --------
  Nothing

  Syntax:
  -------
  PURGEM()

  Description:
  ------------
  Deletes records of the currently opened DBF.

  Examples:
  ---------
   if lClean_em_up
       select 0
       use QUERIES
       PURGEM()
   endif

  Notes:
  -------
  This is intended for those small system files created
  by QUERY(), FORMLETR(), LISTER() etc.

  No PACKING is done.

  Source:
  -------
  S_PURGEM.PRG

 

SP_PRNTFRML

PRNTFRML()

  Short:
  ------
  PRNTFRML() Prints a formletter created by formletr()

  Returns:
  --------
  Nothing

  Syntax:
  -------
  PRNTFRML(cForm,[nPageWidth],[nLeftMargin])

  Description:
  ------------
  Prints the form <cForm> from FORMS.DBF with a
  pagewidth of [nPageWidth] and a left margin of [nLeftMargin]

  <cForm> is normally the contents of the template stored in FORMS.DBF
  (previous documentation refered to this parameter as the NAME of the
  form, which is incorrect.

  Examples:
  ---------
  This is used internally by FORMLETR() and FASTFORM().
  Refer to its usage there.

  SELECT 0
  USE FORM
  locate for descript = "MY FORM LETTER" // find letter
  cForm = form->memo_orig      // load contents
  USE
  SELECT MYDBF
  PRNTFRML(cForm,79)


  Source:
  -------
  S_PRNTF.PRG


 

 

SP_FORMULATE

FORMULATE()

  Short:
  ------
  FORMULATE() Builds a free-form formula or User Defined Field

  Returns:
  --------
  <cFormula> => String containing formula

  Syntax:
  -------
  FORMULATE([cInFormula],[aFields], [aFDesc], [cDisplay],[cTypes] )

  Description:
  ------------
  Allows ad hoc creation of formulas (expressions) by mixing freeform
  text, function templates and operators.

  [cInFormula] Optional character string containing the formula to
               modify
  [aFields]    Optional list of dbf field names
  [aFDesc ]    Optional list of alternate names for dbf field names
  [cDisplay]   Optional text for the prompt. Default is :
               "Create Formula/User Defined field:"
  [cTypes]     Optional string containing allowed return types (in caps)
               Default is "CDNL" (char, date, numeric, logical)

  Examples:
  ---------

  1. cExpress := FORMULATE("",nil,nil,"Create logical expression","L")

  2.(taken from FORMLETR() )

    cAddExpress := FORMULATE(aEdit[nThisLine],aFieldNames,aFieldDesc,;
       "Modify Label Contents (must result in type CHARACTER):",;
       "C")

  Notes:
  -------

  Source:
  -------
  S_FORMU.PRG

 

SP_FORMLETR

FORMLETR()

  Short:
  ------
  FORMLETR() Interactive formletter and mailmerge utility

  Returns:
  --------
  Nothing

  Syntax:
  -------
  FORMLETTER([aNames,aDesc,aTypes];
        [aMoreFuncs,aMoreDesc,aMoreHot])

  Description:
  ------------
  Provides a menu driven interface to the creation,
  modification and merging/printing of form letters with DBFs.

  Three field arrays may be passed - [aNames] is an
  array of allowable field names, [aDesc] is an array of
  field descriptions, and [aTypes] is an array of field types. All
  fields are used as a default, with field names being the default
  field descriptions. Pass all or none of the first three arrays.

  Three additional arrays may be passed for up to 30
  additional hotkeys.

  [aMoreFuncs] is an array of functions which will be
  placed between .. delimiters. [aMoreDesc] is a corresponding
  descriptive array of these functions, to be shown when the user
  presses F1. Format:

       "hotkey     description "
        | column 1 |column 17

  [aMoreHot] is the corresponding hotkeys as their
  numeric ascii values.

  All three arrays must be passed, if any, and all must
  be of same length with no null or undefined elements.

  You could use these for Printer control, special
  combined fields, etc. Be sure the functions you wish to call are
  available to the linker, usually by declaring them EXTERNAL.

  Examples:
  ---------

  USE CUSTOMER

  aFields := {"Fname","lname","mi"}
  aDesc   := {"First","Last","Middle"}
  aTypes  := {"C","C","C"}

  * hotkey arrays
  aMoreFuncs := {"BOLD_ON()","BOLD_OFF"}

  aMoreDesc  := {"F5    BOLD PRINT ON", "F6    BOLD PRINT OFF"}
  aMoreKeys  := {K_F5,K_F6}

  FORMLETR(aFields,aDesc,aTypes,  ;
             aMoreFuncs,aMoreDesc,aMoreKeys)

  //or...

  USE CUSTOMER
  FORMLETR()

  Notes:
  -------
  See index for notes on using a different file name
  for FORM.DBF

  Source:
  -------
  S_FORML.PRG

 

SP_FASTFORM

FASTFORM()

  Short:
  ------
  FASTFORM() Prints a selected formletter for current record

  Returns:
  --------
  Nothing

  Syntax:
  -------
  FASTFORM()

  Description:
  ------------
  Presents a picklist of formletters to print against
  contents of current record.

  Examples:
  ---------
   If nChoice = 4    // form letter
     FASTFORM()
   endif

  Notes:
  -------
  Utilizes a form created by FORMLETR() and plugs in
  values from the current record. Interface is a picklist of forms
  available. Depends on the current DBF to match the field values
  in the form.

  Source:
  -------
  S_FFORM.PRG