Commands

User Interface

? | ?? Display one or more values to the console
@…BOX Draw a box on the screen
@…CLEAR Clear a rectangular region of the screen
@…GET Build a new Get object and display it to the screen
@…PROMPT Paint a menu item and define a message
@…SAY Display data at a specified screen or printer row and column
@…TO Draw a single- or double-line box
ACCEPT* Place keyboard input into a memory variable
CLEAR TYPEAHEAD Empty the keyboard buffer
DISPLAY Display records to the console
INPUT* Enter the result of an expression into a variable
KEYBOARD Stuff a string into the keyboard buffer
LIST List records to the console
MENU TO Execute a lightbar menu for defined PROMPTs
READ Activate full-screen editing mode using Get objects
RESTORE SCREEN* Display a saved screen
SAVE SCREEN* Save the current screen to a buffer or variable
SET BELL Toggle sounding of the bell during full-screen operations
SET COLOR* Define screen colors
SET CONFIRM Toggle required exit key to terminate GETs
SET CONSOLE Toggle console display to the screen
SET CURSOR Toggle the screen cursor on or off
SET DECIMALS Set the number of decimal places to be displayed
SET DELIMITERS Toggle or define GET delimiters
SET ESCAPE Toggle Esc as a READ exit key
SET FIXED Toggle fixing of the number of decimal digits displayed
SET FORMAT* Activate a format when READ is executed
SET FUNCTION Assign a character string to a function key
SET INTENSITY Toggle enhanced display of GETs and PROMPTs
SET MESSAGE Set the @…PROMPT message line row
SET SCOREBOARD Toggle the message display from READ or MEMOEDIT()
SET TYPEAHEAD Set the size of the keyboard buffer
SET WRAP* Toggle wrapping of the highlight in menus
TEXT* Display a literal block of text
WAIT* Suspend program processing until a key is pressed

Database

APPEND BLANK Add a new record to the current database file
APPEND FROM Import records from a database (.dbf) file or ASCII text file
AVERAGE Average numeric expressions in the current work area
CONTINUE Resume a pending LOCATE
COPY STRUCTURE Copy the current .dbf structure to a new database (.dbf) file
COPY STRUCTURE EXTENDED Copy field definitions to a .dbf file
COPY TO Export records to a database (.dbf) file or ASCII text file
COUNT Tally records to a variable
CREATE Create an empty structure extended (.dbf) file
CREATE FROM Create a new .dbf file from a structure extended file
DELETE Mark records for deletion
DELETE TAG Delete a tag
FIND* Search an index for a specified key value
GO Move the pointer to the specified identity
INDEX Build an index file
JOIN Build new database file by merging from two work areas
LOCATE Search sequentially for a record matching a condition
PACK Remove deleted records from a database file
RECALL Restore records marked for deletion
REINDEX Rebuild open indexes in the current work area
REPLACE Assign new values to field variables
SEEK Search an order for a specified key value
SELECT Change the current work area
SET AUTOPEN Toggles automatic opening of a structural index file
SET AUTORDER Defines the default controlling index for automatically opened index files
SET AUTOSHARE Defines network detection for shared file access
SET DELETED Toggle filtering of deleted records
SET DESCENDING Change the descending flag of the controlling order
SET EXCLUSIVE* Establish shared or exclusive USE of database files
SET FILTER Hide records not meeting a condition
SET INDEX Open one or more order bags in the current work area
SET MBLOCKSIZE Change the block size for memo files
SET ORDER Select the controlling order
SET RELATION Relate two work areas by a key value or record number
SET SCOPE Change the boundaries for scoping keys in controlling order
SET SCOPEBOTTOM Change bottom boundary for scoping keys in controlling order
SET SCOPETOP Change top boundary for scoping keys in controlling order
SET SOFTSEEK Toggle relative seeking
SET STRICTREAD Toggles read optimization for database access
SET UNIQUE* Toggle inclusion of non-unique keys into an index
SKIP Move the record pointer to a new position
SORT Copy to a database (.dbf) file in sorted order
SUM Sum numeric expressions and assign results to variables
TOTAL Summarize records by key value to a database (.dbf) file
UNLOCK Release file/record locks set by the current user
UPDATE Update current database file from another database file
USE Open an existing database (.dbf) and its associated files
ZAP Remove all records from the current database file

Program Execution

CANCEL Terminate program processing
DO* Executes a function or procedure
QUIT Terminate program processing
RUN Execute a OS command or program
SET KEY Assign a procedure invocation to a key
NOTE* Place a single-line comment in a program file
SET PROCEDURE* Compile procedures and functions into the current object file

Variable Management

CLEAR ALL* Close files and release public and private variables
CLEAR GETS Release Get objects from the current GetList array
CLEAR MEMORY Release all public and private variables
CLEAR SCREEN Clear the screen and return the cursor home
RELEASE Delete public and private memory variables
RESTORE Retrieve memory variables from a memory (.mem) file
SAVE Save variables to a memory (.mem) file
STORE* Assign a value to one or more variables
SET EXACT Toggle exact matches for character strings

Device, Files & Folders

CLOSE Close a specific set of files
COMMIT Perform a solid-disk write for all active work areas
COPY FILE Copy a file to a new file or to a device
DELETE FILE Remove a file from disk
DIR* Display a listing of files from a specified path
ERASE Remove a file from disk
RENAME Change the name of a file
SET ALTERNATE Echo console output to a text file
SET DEFAULT Set the application default drive and directory
SET DEVICE Direct @…SAYs to the screen or printer
SET PATH Specify the CA-Clipper search path for opening files
TYPE Display the contents of a text file

Printer

EJECT Advance the printhead to top of form
SET MARGIN Set the page offset for all printed output
SET PRINTER Toggle echo of output to printer or set the print destination

Label / Report

LABEL FORM Display labels to the console
REPORT FORM Display a report to the console

Date & Time

SET CENTURY Modify the date format to include or omit century digits
SET DATE Set the date format for input and display
SET EPOCH Control the interpretation of dates with no century digits

All

SP Printer Issues

 This is how printing is handled by the library
 functions. You need not follow this method except where it is
 imbedded in SuperLib metafunctions.

 The function SLS_PRN() is a SET/RETRIEVE function
 which sets and retrieves the default printer port as a string
 with the default as "LPT1". This function may be called with any
 valid printer port name as a parameter to set a new printer port
 for SuperLib usage.

 Valid values are "LPT1", "LPT2", "LPT3", "COM1",
 "COM2" - anything you could issue a SET PRINTER TO
 <cPort> with.

 Another SET/RETRIEVE function - SLS_PRNC() - points
 to the setting which determines if the printer port will be
 checked for readiness before printing. Passing it a False causes
 it to not check the printer before printing - handy in some
 network situations.

 At print time, LPT* ports are checked for readiness
 via the P_READY() function. (COM ports are not checked for
 readiness.) However, if SLS_PRNC() has been passed a .f., no
 check for readiness is done.

 P_READY() uses the .ASM function ISPRN() to check for
 readiness.

 If the port is not ready, the user is given
 the option to:       Try Again
                      Ignore the Warning
                      Select a Different Printer Port
                      Abort the print request

 If Abort is selected, P_READY() returns false.

 

SP_SL_WRAP

SL_WRAP()

  Short:
  ------
  SL_WRAP() Sets line wrapping on or off

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_WRAP(lSet)

  Description:
  ------------
  Sets line wrapping on (.t.) or off (.f.) with <lSet>

  Examples:
  ---------
   ?SL_WRAP(.T.)  // set line wrapping on

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_VLINE

SL_VLINE()

  Short:
  ------
  SL_VLINE() Draws a vertical line from row,col to endrow,col

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_VLINE(nTop,nLeft,nBottom,nRight,[cShade],[nDPIThick],[nLpi])

  Description:
  ------------
  Draws a vertical line from <nTop,nLeft> to <nBottom,nRight>. Based
  on rows and columns.

  [cShade] refers to the density of the line.

  The shading percentages are (default "100" - black) :

         "1 thru 2" = 2% shade
        "3 thru 10" = 10% shade
       "11 thru 20" = 20% shade
       "21 thru 35" = 30% shade
       "36 thru 55" = 45% shade
       "56 thru 80" = 70% shade
       "81 thru 99" = 90% shade
              "100" = 100% shade

  [nDPIThick] is the thickness in DotsPerInch of the
  line. Default is 2.

  [nLpi] is the lines per inch, and defaults to 6.

  Examples:
  ---------
   ??SL_VLINE(10,20,10,10,"50")  // draws a line 10,10 to 20,10 with
                                          // 50% shading

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_UNDEROFF

SL_UNDEROFF()

  Short:
  ------
  SL_UNDEROFF() Sets automatic text underlining off

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_UNDEROFF()

  Description:
  ------------
  Sets automatic text underlining off

  Examples:
  ---------
   ?"Now I am "+SL_UNDER()+"REALLY"+SL_UNDEROFF()+" mad!"

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_UNDER

SL_UNDER()

  Short:
  ------
  SL_UNDER() Sets automatic text underlining on

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_UNDER()

  Description:
  ------------
  Sets automatic text underlining on

  Examples:
  ---------
   ?"Now I am "+SL_UNDER()+"REALLY"+SL_UNDEROFF()+" mad!"

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_TOPMARG

SL_TOPMARG()

  Short:
  ------
  SL_TOPMARG() Designates the number of lines of top margin

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_TOPMARG(nLines)

  Description:
  ------------
  Designates the number of lines of top margin <nLines>

  Examples:
  ---------
   ?SL_TOPMARG(3) // sets top margin to 3

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_SETLPI

SL_SETLPI()

  Short:
  ------
  SL_SETLPI() Sets the lines per inch for the laserjet

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_SETLPI(nLPI)

  Description:
  ------------
  Sets the lines per inch for the laserjet to <nLpi>
  which  can be:

  1 - 1 line/inch
  2 - 2 line/inch
  3 - 3 line/inch
  4 - 4 line/inch
  6 - 6 line/inch
  8 - 8 line/inch
  12-12 line/inch
  16-16 line/inch
  24-24 line/inch
  48-48 line/inch

  Examples:
  ---------
   cCode := SL_SETLPI(6)     // sets LPI to 6 - the default

   ?cCode

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_SETCPI

SL_SETCPI()

  Short:
  ------
  SL_SETCPI() Sets characters per inch

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_SETCPI(nCPI)

  Description:
  ------------
  Sets characters per inch to <nCpi>  - valid to 2
  decimal places. Current font must support this CPI.

  Examples:
  ---------
   ?SL_SETCPI(16.66)   // sets to compressed

   ?SL_SETCPI(12)     // sets to 12 cpi

   ?SL_SETCPI(10)     // sets to 10 cpi  (default)

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG

 

SP_SL_RIGHTMARG

SL_RIGHTMARG()

  Short:
  ------
  SL_RIGHTMARG() Sets the right margin to the right edge of the
  specified column

  Returns:
  --------
  cCode => control string to send to the printer

  Syntax:
  -------
  SL_RIGHTMARG(nCol)

  Description:
  ------------
  Sets the right margin to the right edge of the
  specified column <nCol>

  Examples:
  ---------
   ?SL_RIGHTMARG(70) // sets right margin to 70

  Notes:
  -------
  Does not send anything to the printer - instead
  returns a control string that you send to the printer. String can be
  sent with ? or ?? or  QOUT() or QQOUT().

  For HP and compatible(PCL) Laserjet printers.

  Source:
  -------
  S_HPLAS.PRG