Ray Ontko & Co.
Library
Services | Products | Library | Careers News | About Us | Contact Us | Search | Site Map

SQR Programmer Reference Card

SQR language version 2.x-5.x

© 1998, Ray Ontko & Co.

Don Mellen, Editor. Please direct comments, suggestions, and corrections to donm@ontko.com.

This document may be freely copied and distributed provided it is not modified in any way and it retains the original copyright notice.

Latest version of our on-line card.


TABLE OF CONTENTS


CONVENTIONS USED IN THIS DOCUMENT

     
  []   Optional parameters.
  {}   Required parameters.
  |   Separates a list of "either/or" options.
  ()   Notes or additional comments.
  (Item)+x.x   Denotes items that were added in version "x.x".
  (Item)*   Denotes items that are becoming obsolete (but still backward compatible).
  (Item)-x.x   Denotes items that were removed in version "x.x".

Items can be commands (in which case the version information applies to the entire command), or command options (in which case the version information applies only to that option within that command).

All information comes from a base of version 2.0, i.e. Any command or command option without version designation has existed since 2.0.

When listing the acceptable values for parameters with pre-defined values, the default value is listed first.


SQR COMMAND LINE

{SQR | SQRW | SQRJ+4.2, -5.1 | SQRWJ+4.2, -5.1 | SQRD+4.3.3 | SQRWD+4.3.3 | SQRDJ+4.3.3, -5.1 | SQRWDJ+4.3.3, -5.1} [Report] [Connectivity] [Flags...] [Args...] [@File]
  FLAGS FLAG DESCRIPTIONS
  -A Causes the report output to be appended to an existing file of the same name.
-Bn Indicates how many rows to buffer during each retrieve of data from the database.  (Oracle) (SYBASE CT-Lib)+3.0 (ODBC)+4.3.2
-BURST:{T|S|P}+4.1 T generates the TOC file.
S[Level] uses the symbolic TOC to generate, bursting on the level Level.
The flag -BURST:S is the same as -BURST:S1
P[Pages, Range[,Range]... ] uses page numbers to generate, Pages is the number of logical report pages for each HTML file, and Range is the page selection in one of the forms: x, x-y, x-, -y.
-BURST:P is the same as -BURST:P0,1- using -PRINTER:HT.
-BURST:P is the same as -BURST:P1- using -PRINTER:EH.
(Requires -PRINTER:HT or -PRINTER:EH)
-C+3.0 Makes the Cancel dialog box appear during program execution.  (Windows)
-CB+3.0 Forces the communication box to be used.  (Windows, Callable SQR)
-Dn Causes output to be displayed to the terminal as well as written to a file. Pauses after n lines.  (non-Windows)
-DB{database} Causes the program to use database. Overrides embedded SQR "USE" command.  (SYBASE)
-DEBUG[x] Causes 'DEBUG' to be defined. "#DEBUG" or "#ifdef DEBUG" lines will be compiled. The x allows multiple debugs. DEBUGAB defines DEBUG, DEBUGA, and DEBUGB.
-DNT:{x}+4.0 Specifies Default Numeric Type for numeric variables. x can be V30, Integer, Float, or Decimal. To specify a Decimal precision, append a colon delimiter. (i.e. -DNT:Decimal:20).
-E[file] Causes error messages to be recorded in the named or default file.
-EH_APPLETS+5.1 Specifies the directory for Enhanced HTML applets.
-EH_BQD+4.3.3 Create a (Report).bqd file (BrioQuery Data) from the data in the report and add a BQD icon to the HTML navigation bar.
-EH_BROWSER+5.1 ALL(default)+4.3.4 generates HTML that will auto-sense the browser being used. IE or NETSCAPE generates an HTML file designed for the specific browsers.
(see also SQR.INI - Enhanced HTML)
-EH_CSV+4.3.1 Create a (Report).csv file from the data in the report.
-EH_CSV:file+4.3.1 Associate the CSV icon with the specified file.
-EH_CSVONLY+5.1 Create a (Report).csv file from the data in the report, but no accompanying HTML file.
-EH_FULLHTML+5.1 When True, then report generates HTML 3.2.
(see also SQR.INI - Enhanced HTML)
-EH_ICONS:dir+4.3.1 Set directory where referenced HTML icons are stored.
-EH_LANGUAGE+5.1 English (default), French, German, Portuguese, or Spanish. Language for the navigation bar.
(see also SQR.INI - Enhanced HTML)
-EH_PDF+4.3.3 Add a PDF icon to the HTML navigation bar (automatic with -PRINTER:EP).
-EH_SCALE:n+4.3.1 Set Enhanced HTML scale from 50 to 200.
-F{lib | lib/f(m) | f(m)}+4.3.2 Will override the default output file name LIS(Report) and use the named file.  (Library can also be specified. If only a library is specified, the default-named report will be placed there. The "new-report" command ignores all -F settings.)  (Multiple -F flags will apply to each of multiple reports in the order that they are "declare-report"ed.)
-F{path | pathfile | file} Will override the default output file name Report.LIS and use the named file.  (Path can also be specified. If only a path is specified, the default-named report will be placed there. The "new-report" command ignores all -F settings.)+2.26  (Multiple -F flags will apply to each of multiple reports in the order that they are "declare-report"ed.)+3.0
-G{file_mode}+3.0 Enables specification of report output file mode.  (VM)
-G{file_attr}+2.26 Enables specification of report output file attributes.  (VMS) (OpenVMS)+3.0
-GPRINT={YES | NO}+4.0   If YES, ANSI control characters are written to the first column of each record of the file. NO omits the control characters.  (MVS)
-I{dir_list}+3.0 Specifies the #INCLUDE files search paths. Comma or semi-colon separated.
-ID+3.0 Displays the copyright banner on the console.  (non-Windows)
-KEEP+3.0 Creates an .SPF file for each report in addition to .LIS files.
-LL{S | D}{C | I}+3.0 Load-Lookup: S=SQR,D=DB , C=case sensitive,I=case insensitive.
-LOCK{xx}+3.0 Defines the types of locking (isolation level) for the session.  (SQLBase)
-M{file} Points to a startup file containing program limits that override the defaults.
-N{database}-4.0 Uses the named database, rather than the default database.  (Rdb)
-NOLIS+3.0 Creates an .SPF file for each report instead of .LIS files.
-NR+3.0 Uses the No Recovery mode when connecting to the database.  (SQLBase)
-O[file]+3.0 Directs log messages to file. Defaults to report.log or to sqr.log in the current directory.  (Windows)
-P+3.0 Directs output to the printer device.  (VM)
-P+4.3 Suppress printer control characters from column 1.  (MVS, AS400)
-PB+3.0 Causes column data to retain trailing blanks.  (Rdb-4.0, Informix)
-P{id[/pass]}+3.0 The role identifier used to associate permissions with SQR.  (Ingres)
-PRINTER:{xx}+3.0 Causes Printer type xx to be used when creating .LIS files. Valid values are LP, HP, HT+4.0, EH+4.3.1, EP+4.3.3, PD+4.3.2.2, PS, and WP (Windows only). WP output is sent to the printer without saving an output file. EP produces both EH and PD output. (EH is only available for limited platforms).
-RS Scans, syntax checks, and saves report and "ASK" responses in a 'run time' file called (Report).SQT.
-RT Immediately processes the 'run time' file and "ASK" responses saved with the -RS flag.
-S Causes the status of all cursors to be displayed at the end of the report run.
-SORT{n}+3.0 Specifies the size of the sort buffer in characters.  (SQLBase)
-T{n} For testing - causes 'order by' clauses to be ignored to save time during testing. Tests for n pages.
-TB+4.0 Trims trailing blanks from character columns.  (SYBASE CT-Lib, ODBC+4.3)
-T{B | Z | BZ | ZB}+4.0 BMVS leaves trailing blanks on character columns. BAS400 removes trailing blanks on character columns. Z leaves trailing zeros on numeric columns. BZ or ZB does both.  (MVS/DB2, AS400/DB2)
-U{username}+3.0 Specifies the user name, overriding the connectivity string.  (Ingres)
-V{server} Uses the named server.  (Sybase and SQL Server)
-V6+3.0, -4.0 Specifies V6 compatibility mode.  (Oracle)
-XB+3.0 Suppresses the SQR banner and the "SQR...End of Run" message.  (non-Windows)
-XC+2.20 Suppresses final commit.  (callable SQR)
-XCB+3.0 Do not use the communications box.  (Windows)
-XI+4.0.0.2 Do not use interaction. If an ASK or INPUT require user interaction, an error will occur.
-XL Prevents SQR from logging on to the database.
-XMB+3.0.13 Prevents program interruption by error message boxes. Errors will only be sent to an .err file. See also: -E.  (Windows & NT)
-XNAV+4.1 Prevents creation of the navigation bar when a single HTML file is produced by a single report (multiple HTML files will still trigger the navigation bar creation)
-XP+3.0 prevents SQR from creating temporary stored procedures.   (SYBASE DB-Lib)-4.0  (SYBASE CT-Lib)+3.0.13
-XTB+3.0 Preserves the trailing blanks in a .LIS file.
-XTOC+4.1 Prevents the Table of Contents creation if the -PRINTER: flag is other than HT or EH.
-ZIF{file}+4.0 Sets the full path & name of the SQR initialization file, SQR.INI.
-ZIV+4.0 Invokes the SPF viewer after generating the program.spf file. The -KEEP flag is implicitly invoked. Only the first report will be passed to the viewer.
-ZMF{file}+3.0 Specifies the full path & name of the SQR Error Message file, sqrerr.dat.
-ZRF{file}+5.1 Specifies the full path & name of an alternate registry.properties file (used to access SAP R/3).

Args...
Arguments are used by the SQR ASK and INPUT commands while report runs.

@File
Files contain report arguments, one argument per line.

SQRT COMMAND LINE+3.0

{SQRT | SQRWT | SQRTJ+4.2, -5.1 | SQRWTJ+4.2, -5.1 | SQRDT+4.3.3 | SQRWDT+4.3.3 | SQRDTJ+4.3.3, -5.1 | SQRWDTJ+4.3.3, -5.1} [Report] [Connectivity] [Flags...] [Args...] [@File]
  FLAGS FLAG DESCRIPTIONS
  -A Causes the report output to be appended to an existing file of the same name.
-Bn-4.1 Indicates how many rows to buffer during each retrieve of data from the database.  (Oracle) (SYBASE CT-Lib) (ODBC)+4.3.2
-BURST:{T|S|P}+4.1 T generates the TOC file.
S[Level] uses the symbolic TOC to generate, bursting on the level Level.
The flag -BURST:S is the same as -BURST:S1
P[Pages, Range[,Range]... ] uses page numbers to generate, Pages is the number of logical report pages for each HTML file, and Range is the page selection in one of the forms: x, x-y, x-, -y.
-BURST:P is the same as -BURST:P0,1- using -PRINTER:HT.
-BURST:P is the same as -BURST:P1- using -PRINTER:EH.
(Requires -PRINTER:HT or -PRINTER:EH)
-C Makes the Cancel dialog box appear during program execution.  (Windows)
-CB Forces the communication box to be used.  (Windows, Callable SQR)
-Dn Causes output to be displayed to the terminal as well as written to a file. Pauses after n lines.  (non-Windows)
-DB{database} Causes the program to use database. Overrides embedded SQR "USE" command.  (SYBASE)
-E[file] Causes error messages to be recorded in the named or default file.
-EH_APPLETS+5.1 Specifies the directory for Enhanced HTML applets.
-EH_BQD+4.3.3 Create a (Report).bqd file (BrioQuery Data) from the data in the report and add a BQD icon to the HTML navigation bar.
-EH_BROWSER+5.1 ALL(default)+4.3.4 generates HTML that will auto-sense the browser being used. IE or NETSCAPE generates an HTML file designed for the specific browsers.
(see also SQR.INI - Enhanced HTML)
-EH_CSV+4.3.1 Create a (Report).csv file from the data in the report.
-EH_CSV:file+4.3.1 Associate the CSV icon with the specified file.
-EH_CSVONLY+5.1 Create a (Report).csv file from the data in the report, but no accompanying HTML file.
-EH_FULLHTML+5.1 When True, then report generates HTML 3.2.
(see also SQR.INI - Enhanced HTML)
-EH_ICONS:dir+4.3.1 Set directory where referenced HTML icons are stored.
-EH_LANGUAGE+5.1 English (default), French, German, Portuguese, or Spanish. Language for the navigation bar.
(see also SQR.INI - Enhanced HTML)
-EH_PDF+4.3.3 Add a PDF icon to the HTML navigation bar (automatic with -PRINTER:EP).
-EH_SCALE:n+4.3.1 Set Enhanced HTML scale from 50 to 200.
-F{lib | lib/f(m) | f(m)}+4.3.2 Will override the default output file name LIS(Report) and use the named file.  (Library can also be specified. If only a library is specified, the default-named report will be placed there. The "new-report" command ignores all -F settings.)  (Multiple -F flags will apply to each of multiple reports in the order that they are "declare-report"ed.)
-F{path | pathfile | file} Will override the default output file name (Report).LIS and use the named file.  (Path can also be specified. If only a path is specified, the default-named report will be placed there. The "new-report" command ignores all -F settings.)  (Multiple -F flags will apply to each of multiple reports in the order that they are "declare-report"ed.)
-G{file_mode} Enables specification of report output file mode.  (VM)
-G{file_attr} Enables specification of report output file attributes.  (VMS) (OpenVMS)
-GPRINT={YES | NO}+4.0   If YES, ANSI control characters are written to the first column of each record of the file. NO omits the control characters.  (MVS)
-ID Displays the copyright banner on the console.  (non-Windows)
-KEEP Creates an .SPF file for each report in addition to .LIS files.
-LOCK{xx} Defines the types of locking (isolation level) for the session.  (SQLBase)
-N{database}-4.0 Uses the named database, rather than the default database.  (Rdb)
-NOLIS Creates an .SPF file for each report instead of .LIS files.
-NR Uses the No Recovery mode when connecting to the database.  (SQLBase)
-O[file] Directs log messages to file. Defaults to report.log or to sqr.log in the current directory.  (Windows)
-P Directs output to the printer device.  (VM)
-P+4.3 Suppress printer control characters from column 1.  (MVS, AS400)
-PB Causes column data to retain trailing blanks.  (Rdb-4.0, Informix)
-P{id[/pass]} The role identifier used to associate permissions with SQR.  (Ingres)
-PRINTER:{xx} Causes Printer type xx to be used when creating .LIS files. Valid values are LP, HP, HT+4.0, EH+4.3.1, EP+4.3.3, PD+4.3.2.2, PS, and WP (Windows only). WP output is sent to the printer without saving an output file. EP produces both EH and PD output. (EH is only available for limited platforms).
-S Causes the status of all cursors to be displayed at the end of the report run.
-SORT{n} Specifies the size of the sort buffer in characters.  (SQLBase)
-Tn For testing - causes 'order by' clauses to be ignored to save time during testing. Tests for n pages.
-TB+4.0 Trims trailing blanks from character columns.  (SYBASE CT-Lib, ODBC+4.3)
-T{B | Z | BZ | ZB}+4.0 BMVS leaves trailing blanks on character columns. BAS400 removes trailing blanks on character columns. Z leaves trailing zeros on numeric columns. BZ or ZB does both.  (MVS/DB2, AS400/DB2)
-U{username} Specifies the user name, overriding the connectivity string.  (Ingres)
-V{server} Uses the named server.  (Sybase and SQL Server)
-V6-4.0 Specifies V6 compatibility mode.  (Oracle)
-XB Suppresses the SQR banner and the "SQR...End of Run" message.  (non-Windows)
-XC Suppresses final commit.  (callable SQR)
-XCB Do not use the communications box.  (Windows)
-XL Prevents SQR from logging on to the database.
-XMB+3.0.13 Prevents program interruption by error message boxes. Errors will only be sent to an .err file. See also: -E.  (Windows & NT)
-XNAV+4.1 Prevents creation of the navigation bar when a single HTML file is produced by a single report (multiple HTML files will still trigger the navigation bar creation)
-XP prevents SQR from creating temporary stored procedures.   (SYBASE DB-Lib)-4.0  (SYBASE CT-Lib)+3.0.13
-XTB Preserves the trailing blanks in a .LIS file.
-XTOC+4.1 Prevents the Table of Contents creation if the -PRINTER: flag is other than HT or EH.
-ZIF{file}+4.0 Sets the full path & name of the SQR initialization file, SQR.INI.
-ZIV+4.0 Invokes the SPF viewer after generating the program.spf file. The -KEEP flag is implicitly invoked. Only the first report will be passed to the viewer.
-ZMF{file} Specifies the full path & name of the SQR Error Message file, sqrerr.dat.
-ZRF{file}+5.1 Specifies the full path & name of an alternate registry.properties file (used to access SAP R/3).

Args...
Arguments are used by the SQR ASK and INPUT commands while report runs.

@File
Files contain report arguments, one argument per line.

SQRP COMMAND LINE+3.0

{SQRP | SQRWP | SQRPJ+4.2, -5.1 | SQRWPJ+4.2, -5.1} [spf-File] [Flags...]
  FLAGS FLAG DESCRIPTIONS
-A Causes the report output to be appended to an existing file of the same name.
-BURST:{T|S|P}+4.1 T generates the TOC file.
S[Level] uses the symbolic TOC to generate, bursting on the level Level.
The flag -BURST:S is the same as -BURST:S1
P[Pages, Range[,Range]... ] uses page numbers to generate, Pages is the number of logical report pages for each HTML file, and Range is the page selection in one of the forms: x, x-y, x-, -y.
-BURST:P is the same as -BURST:P0,1- using -PRINTER:HT.
-BURST:P is the same as -BURST:P1- using -PRINTER:EH.
(Requires -PRINTER:HT or -PRINTER:EH)
-Dn Causes output to be displayed to the terminal as well as written to a file. Pauses after n lines.  (non-Windows)
-DELETE+4.0 Delete the .SPF file after the .LIS file is created.
-E[file] Causes error messages to be recorded in the named or default file.
-EH_APPLETS+5.1 Specifies the directory for Enhanced HTML applets.
-EH_BQD+4.3.3 Create a (Report).bqd file (BrioQuery Data) from the data in the report and add a BQD icon to the HTML navigation bar.
-EH_BROWSER+5.1 ALL(default)+4.3.4 generates HTML that will auto-sense the browser being used. IE or NETSCAPE generates an HTML file designed for the specific browsers.
(see also SQR.INI - Enhanced HTML)
-EH_CSV+4.3.1 Create a (Report).csv file from the data in the report.
-EH_CSV:file+4.3.1 Associate the CSV icon with the specified file.
-EH_CSVONLY+5.1 Create a (Report).csv file from the data in the report, but no accompanying HTML file.
-EH_FULLHTML+5.1 When True, then report generates HTML 3.2.
(see also SQR.INI - Enhanced HTML)
-EH_ICONS:dir+4.3.1 Set directory where referenced HTML icons are stored.
-EH_LANGUAGE+5.1 English (default), French, German, Portuguese, or Spanish. Language for the navigation bar.
(see also SQR.INI - Enhanced HTML)
-EH_PDF+4.3.3 Add a PDF icon to the HTML navigation bar (automatic with -PRINTER:EP).
-EH_SCALE:n+4.3.1 Set Enhanced HTML scale from 50 to 200.
-F{lib | lib/f(m) | f(m)}+4.3.2 Will override the default output file name LIS(Report) and use the named file.  (Library can also be specified. If only a library is specified, the default-named report will be placed there. The "new-report" command ignores all -F settings.)  (Multiple -F flags will apply to each of multiple reports in the order that they are "declare-report"ed.)
-F{path | pathfile | file} Will override the default output file name (Report).LIS and use the named file.  (Path can also be specified. If only a path is specified, the default-named report will be placed there. The "new-report" command ignores all -F settings.)  (Multiple -F flags will apply to each of multiple reports in the order that they are "declare-report"ed.)
-G{file_mode} Enables specification of report output file mode.  (VM)
-G{file_attr} Enables specification of report output file attributes.  (VMS) (OpenVMS)
-GPRINT={YES | NO}+4.0   If YES, ANSI control characters are written to the first column of each record of the file. NO omits the control characters.  (MVS)
-ID Displays the copyright banner on the console.  (non-Windows)
-O[file] Directs log messages to file. Defaults to report.log or to sqr.log in the current directory.  (Windows)
-P Directs output to the printer device.  (VM)
-P+4.3 Suppress printer control characters from column 1.  (MVS, AS400)
-PRINTER:{xx} Causes Printer type xx to be used when creating .LIS files. Valid values are LP, HP, HT+4.0, EH+4.3.1, EP+4.3.3, PD+4.3.2.2, PS, and WP (Windows only). WP output is sent to the printer without saving an output file. EP produces both EH and PD output. (EH is only available for limited platforms).
-XB Suppresses the SQR banner and the "SQR...End of Run" message.  (non-Windows)
-XTB Preserves the trailing blanks in a .LIS file.
-XTOC+4.1 Prevents the Table of Contents creation if the -PRINTER: flag is other than HT or EH.
-ZIF{file}+4.0 Sets the full path & name of the SQR initialization file, SQR.INI.
-ZMF{file} Specifies the full path & name of the SQR Error Message file, sqrerr.dat.

 


SPECIAL CHARACTERS

(denoting data type)
& Begins a "bind" variable for a database column or expression, regardless of type.
$ Begins a text or date+4.0 variable.
# Begins a numeric variable. (Decimal+4.0, Floating point, or Integer+4.0).
@ Begins a marker location variable, used for identifying position fields inside BEGIN-DOCUMENT paragraphs.
' (Single Quote). Surrounds a text literal. For example, 'Ray Ontko & Co.'.
Double to include a quote inside a literal. For example, '''Yes!!'', he said.'.
NOTE: The exclamation mark must also be doubled or the rest of the line will be considered a comment.
{} Encloses a substitution variable.
[] Encloses a dynamic SQL variable, dynamic query variable, or dynamic table name.  Or a dynamic column name+3.0

Variable names may be of any length and are case insensitive. Variable names are known globally throughout a report, except if used in a local procedure, in which case they are local. To reference a global variable from within a local procedure, put an underscore between the special character and the variable name.


PRE-DEFINED VARIABLES

#current-column The current column on the page.
$current-date +4.0 The current date-time on the local machine when SQR starts running the program.
#current-line Refers to the physical line number on the page.
#end-file Set to one (1) if end of file occurs on READ, otherwise zero (0).
#page-count The current page number.
#return-status Value to be returned to the operating system when SQR exits.
#sql-count The count of rows affected by a DML statement (insert, update and delete).
$sql-error The text message from the database explaining the most recent error.
#sql-status The status value from the database after each query is compiled or executed.
$sqr-database +3.0 The database type for which SQR was compiled. Valid values are:  ALLBASE-4.0    DB2    INFORMIX    INGRES    ODBC+4.0    ORACLE    RDB-4.0    REDBRICK+4.3    SQLBASE    SYBASE   
{sqr-database} +3.0 see $sqr-database above
$sqr-dbcs +4.2 Will be "YES" when referenced from double-byte enabled executables.
{sqr-dbcs} +4.2 see $sqr-dbcs above
$sqr-encoding +4.2 Will hold the value of the ENCODING environment variable ('ASCII', 'EBCDIC'+5.1, 'EBCDIK290'+5.1, 'EBCDIK1027'+5.1, 'JEUC', 'SJIS', 'UCS-2'+5.1 or 'UTF-8'+5.1).
{sqr-encoding} +4.2 see $sqr-encoding above
$sqr-encoding-database +5.1 Will hold the value of the database ENCODING environment variable ('ASCII', 'EBCDIC', 'EBCDIK290', 'EBCDIK1027', 'JEUC', 'SJIS', 'UCS-2' or 'UTF-8').
{sqr-encoding-database} +5.1 see $sqr-encoding-database above
$sqr-encoding-file-input +5.1 Will hold the value of the input file ENCODING environment variable ('ASCII', 'EBCDIC', 'EBCDIK290', 'EBCDIK1027', 'JEUC', 'SJIS' or 'UTF-8').
{sqr-encoding-file-input} +5.1 see $sqr-encoding-file-input above
$sqr-encoding-file-output +5.1 Will hold the value of the output file ENCODING environment variable ('ASCII', 'EBCDIC', 'EBCDIK290', 'EBCDIK1027', 'JEUC', 'SJIS' or 'UTF-8').
{sqr-encoding-file-output} +5.1 see $sqr-encoding-file-output above
$sqr-encoding-report-output +5.1 Will hold the value of the database ENCODING environment variable ('ASCII', 'EBCDIC', 'EBCDIK290', 'EBCDIK1027', 'JEUC', 'SJIS' or 'UTF-8').
{sqr-encoding-report-output} +5.1   see $sqr-encoding-report-output above
$sqr-hostname +4.3.1 The name of the machine that this SQR is running on.
{sqr-hostname} +4.3.1 see $sqr-hostname above
$sqr-locale +4.0 The name of the current locale. A "+" at the end means a value has changed.
#sqr-max-columns +4.3.2 Maximum number of columns with the current layout. Is updated when a new report is selected.
#sqr-max-lines +4.3.2 Maximum number of lines with the current layout. Is updated when a new report is selected.
#sqr-pid +3.0 The process ID of the current SQR process. Unique for each run of SQR.
$sqr-platform +3.0 The hardware/operating system type for which SQR was compiled. Valid values are:  DOS-4.0   MVS   WINDOWS   WINDOWS-NT+4.0   UNIX   VM   VMS  
{sqr-platform} +3.0 see $sqr-platform above
$sqr-program +3.0 The name of the SQR program file.
$sqr-report +3.0 The name of the report output file. Reflects the actual name to be used (-F flag or NEW-REPORT command).
#sqr-toc-level +4.3.3 Level of current TOC entry.
#sqr-toc-page +4.3.3 Page number of current TOC entry.
$sqr-toc-text +4.3.3 Text of current TOC entry.
$sqr-ver +3.0 The text string shown with the -ID flag.
$username The database username specified on the command line.

ENVIRONMENT VARIABLES & SQR.INI

NOTES: This is only a partial list included for reference and is not intended to be a comprehensive listing.
The "Environment-XXX" section contains values that may also be set as environment variables.

[Default-Settings]
AllowDateAsChar +4.3 When TRUE (default is FALSE) date columns will be retrieved as characters (like pre-4.0).
Default-Numeric +4.0 Specifies Default Numeric Type for numeric variables. Can be V30, INTEGER, FLOAT, or DECIMAL. To specify a DECIMAL precision, use parentheses. i.e. DECIMAL(20). (see also: Command Line Flag -DNT).
FixODBCAccuracy +4.3.2.2 When TRUE (default is FALSE) SQR will correct "float" column anomalies occuring with Microsost ODBC drivers greater than 2.65.240.
Locale +4.0 SYSTEM (default) or locale name to use as initial locale when an SQR starts.
Output-File-Mode +4.0 SHORT (default)-4.1 or LONG (default)+4.1 file names for HTML output. Ignored on 16-bit platforms.
OutputFormFeedWithDashD +4.3.1 When TRUE (default is FALSE) the -Dn flag will also output a Form-Feed character.
OutputTwoDigitYearWarningMsg +4.3.1 When TRUE (default) SQR will send a warning message to the error file when a YY or RR date edit mask is encountered when running program. This only effects SQR code that is processed.
UseY2kCenturyAlgorithm +4.3.1 When TRUE (FALSE is default) SQR will treat the "YY" date edit mask as though it were an "RR" date edit mask.
 
[Enhanced-HTML]
Browser +4.3.3 ALL(default)+4.3.4 generates HTML that will auto-sense the browser being used. IE or NETSCAPE generates an HTML file designed for the specific browsers.
FullHTML +4.3.1 When True, then report generates HTML 3.2.
Language +4.3.1 English (default), French, German+4.3.3, Portuguese+4.3.3, or Spanish+4.3.3. Language for the navigation bar.
 
[Environment:Common]
[Environment:{DB2 | ODBC | Sybase | Oracle | Ingres | SQLBase | Informix}]
ENCODING +4.2 ASCII (default), EBCDIC+5.1, EBCDIK290+5.1, EBCDIK1027+5.1, JEUC, SJIS, UCS-2+5.1 or UTF-8+5.1.
ENCODING-DATABASE +5.1 ASCII (default), EBCDIC, EBCDIK290, EBCDIK1027, JEUC, SJIS, UCS-2 or UTF-8.
ENCODING-FILE-INPUT +5.1 ASCII (default), EBCDIC, EBCDIK290, EBCDIK1027, JEUC, SJIS or UTF-8.
ENCODING-FILE-OUTPUT +5.1 ASCII (default), EBCDIC, EBCDIK290, EBCDIK1027, JEUC, SJIS or UTF-8.
ENCODING-REPORT-OUTPUT +5.1 ASCII (default), EBCDIC, EBCDIK290, EBCDIK1027, JEUC, SJIS or UTF-8.
SQR_DB_DATE_FORMAT +4.0 Format for string comparison to date columns.
SQR_DB_DATE_ONLY_FORMAT +4.2 Format for string comparison to date columns that only have a date component.
SQR_DB_TIME_ONLY_FORMAT +4.2 Format for string comparison to date columns that only have a time component.
 
[Fonts]
CharacterSet +4.3.3 (Windows Only) DEFAULT will emulate previous versions of SQR. AUTO will use the Windows default character set with -PRINTER:WP or when viewing SPF files. Alternately, you may set a specific character set with the following keywords:
ANSI  ARABIC  BALTIC  CHINESEBIG5  EASTEUROPE  GB2312  GREEK  HANGUL  HEBREW  JOHAB  MAC  OEM  RUSSIAN  SHIFTJIS  SYMBOL  THAI  TURKISH  VIETNAMESE 
 
[HTML-Images]
FIRST-PAGE +4.1 The "First Page" graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,firstpg.gif).
PREV-PAGE +4.1 The "Previous Page" graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,prevpg.gif).
NEXT-PAGE +4.1 The "Next Page" graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,nextpg.gif).
LAST-PAGE +4.1 The "Last Page" graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,lastpg.gif).
WALLPAPER +4.1 The "Wallpaper" graphic name (default is none).
 


POSITION SYNTAX

(a,b,c) where

Line position and column position values may be fixed, or relative.

Examples:

       print &name (10,15,30)
Will be printed on line 10, column 15.

       print &address (+1,15,30)
Will be printed directly below the name.


ARRAY DOT SYNTAX

Array elements can be referenced and altered within an expression (in a LET, IF, or WHILE command) by using the special "dot" syntax in the form:

    array.field(element[,occurs])

Examples:

       if states.name(1) = 'Alabama'
          let states.abbrev(1) = 'AL'
          let $State_Bird    = states.things(2,1)
          let $State_Flower  = states.things(2,2)
          let chosen.bird(#curr) = states.things(2,1)
       end-if


DATA TYPES+4.0

DECIMAL
Numeric with a precision (total number of digits used to represent the number) from 1 to 38 (default 16). Valid decimal numbers are in the range -9.9999999999999999999999999999999999999E+4096 to +9.9999999999999999999999999999999999999E+4096
FLOAT
Double precision floating point numeric. Range and precision of these are machine dependent. Default type for numeric variables (this was the only numeric type in version 3.x and before).
INTEGER
Numeric integers with a range of -2,147,483,648 to +2,147,483,648.
DATE
Date in the range of January 1, 4713 BC to December 31, 9999 AD.
TEXT or CHAR
String. Length is limited by the memory of your computer.
If not defined with "declare-variable", any variable beginning with a "$" is a string variable.  Any variable beginning with a "#" is the "default-numeric" type from "declare-variable" (defaults to float).

The "let", "move", "get" and "put" commands will auto-convert between some data types.  They will auto-convert string <-> numeric, and string <-> date.  They will not convert date <-> numeric.


COMMAND REFERENCE

KEY:
Date+4.0 Text Numeric
$d Variable $t Variable #n Variable
&d Column &t Column &n Column
£d Literal £t Literal £n Literal
~d Variable or Literal ~t Variable or Literal ~n Variable or Literal
d Var, Lit, or Col  t Var, Lit, or Col  n Var, Lit, or Col 
 
v Any Variable value Any Variable, Literal, or Column
NOTES: In some cases, the only significant portion of a numeric is its truncated integer value. An "i" is used to designate these cases, this does not mean that an integer data type is required. Similarly, some values are returned as floating point and designated with an f, but they are not restricted to being stored into that data type.
"Round" parameter ranges depend on the data type. Float types rounded can be from 1 to 15, Decimal types can be from 1 to its precision.
ADD  n TO #n [ROUND= £i]
ALTER-CONNECTION +5.1 (DDO)  
{NAME= £t_connection_name}
[DSN= ~t_data_source_name]
[USER= ~t_username]
[PASSWORD= ~t_password]
[PARAMETERS= £t_keyword1=£t_value1;[£t_keyword2=£t_value2;[...]]]
[NO-DUPLICATE= {TRUE | FALSE}]+5.2
ALTER-LOCALE +4.0  
[LOCALE= {SYSTEM | DEFAULT | ~t_locale_name}]
[NUMBER-EDIT-MASK= {SYSTEM | DEFAULT | ~t_edit_mask}]
[MONEY-EDIT-MASK= {SYSTEM | DEFAULT | ~t_edit_mask}]
[DATE-EDIT-MASK= {SYSTEM | DEFAULT | ~t_edit_mask}]
[INPUT-DATE-EDIT-MASK= {SYSTEM | DEFAULT | ~t_edit_mask}]
[MONEY-SIGN= {SYSTEM | DEFAULT | ~t_money_sign}]
[MONEY-SIGN-LOCATION=
{SYSTEM | DEFAULT | LEFT | RIGHT | $t_location}]
[THOUSAND-SEPARATOR= {SYSTEM | DEFAULT | ~t_separator}]
[DECIMAL-SEPARATOR= {SYSTEM | DEFAULT | ~t_separator}]
[DATE-SEPARATOR= {SYSTEM | DEFAULT | ~t_separator}]
[TIME-SEPARATOR= {SYSTEM | DEFAULT | ~t_separator}]
[EDIT-OPTION-NA= {SYSTEM | DEFAULT | ~t_na_chars}]
[EDIT-OPTION-AM= {SYSTEM | DEFAULT | ~t_am_chars}]
[EDIT-OPTION-PM= {SYSTEM | DEFAULT | ~t_pm_chars}]
[EDIT-OPTION-BC= {SYSTEM | DEFAULT | ~t_bc_chars}]
[EDIT-OPTION-AD= {SYSTEM | DEFAULT | ~t_ad_chars}]
[DAY-OF-WEEK-CASE=
{SYSTEM | DEFAULT | EDIT | UPPER | LOWER | NO-CHANGE | $t}]
[DAY-OF-WEEK-FULL=(~t_day1, ... ~t_day7)]
[DAY-OF-WEEK-SHORT=(~t_day1, ... ~t_day7)]
[MONTHS-CASE=
{SYSTEM | DEFAULT | EDIT | UPPER | LOWER | NO-CHANGE | $t}]
[MONTHS-FULL=(~t_month1, ... ~t_month12)]
[MONTHS-SHORT=(~t_month1, ... ~t_month12)]
ALTER-PRINTER +3.0
[POINT-SIZE= n_points]
[FONT-TYPE= {PROPORTIONAL | FIXED | t_font-type_txt}]
[SYMBOL-SET= t_HP_defined_symbol_set]
[FONT= i_font]
[PITCH= n_pitch]
ARRAY-ADD  n... TO array_name(i_element) [field[(i_occurs)]...]
ARRAY-DIVIDE  n... INTO array_name(i_element) [field[(i_occurs)]...]
ARRAY-MULTIPLY  n... TIMES array_name(i_element) [field[(i_occurs)]...]
ARRAY-SUBTRACT  n... FROM array_name(i_element) [field[(i_occurs)]...]
ASK  substitution_variable [£t_prompt]
BEGIN-DOCUMENT  position
BEGIN-EXECUTE +5.1 (DDO)  
[CONNECTION= £t_connection_name]
[ON-ERROR=procedure [(arg1,arg2,...argN)]]
[RSV= #n_row_set_variable]
[STATUS= {%l_stat | #n_stat | $t_stat}]
{SCHEMA= ~t_schema}
{PROCEDURE= ~t_proc
[PARAMETERS= ( {%l_arg | n_arg | t_arg} [IN|INOUT|NULL] [, ...] )]
| COMMAND= ~t_command
| GETDATA= ~t_ddo_getdata}
[BEGIN-SELECT
[BEFORE=sqr_procedure [(arg1,arg2,...argN)]]
[AFTER=sqr_procedure [(arg1,arg2,...argN)]]
col-name type={char|text|number|date} [edit-mask] [on-break] ...
{FROM ROWSETS= (x, x-y, x-, -y | ALL) | FROM PARAMETER = ~t }
END-SELECT]
END-EXECUTE
BEGIN-FOOTING  £i_footing_lines
[FOR-REPORTS=(report_name1,...report_nameN)]+3.0
[FOR-TOCS=(toc_name1,...toc_nameN)]+4.1
BEGIN-HEADING  £i_heading_lines
[FOR-REPORTS=(report_name1,...report_nameN)]+3.0
[FOR-TOCS=(toc_name1,...toc_nameN)]+4.1
BEGIN-PROCEDURE  procedure_name [LOCAL | (arg1,arg2,...argN)]
BEGIN-PROGRAM +3.0
BEGIN-REPORT * (alternative: Begin-Program)
BEGIN-SELECT
[DISTINCT]
[-C£n_buffer_size]   (Ingres,Oracle,SQLBase)
[-C£n_connection]+3.0, -4.0   (SYBASE DB-Lib)
[-B£n]   (Oracle,SYBASE CT-Lib) (ODBC)+4.3.2
[-XP]+3.0   (SYBASE)
[-NR]+3.0   (SQLBase)
[-SORT£n]+3.0   (SQLBase)
[-LOCK{RR | CS | RO | RL | XX}]+3.0   (SQLBase)
[-DBdatabase_name]+3.0   (SQLBase)
[-DBconnection_string]+4.0   (ODBC)
[LOOPS= £n]
[ON-ERROR=procedure [(arg1,arg2,...argN)]+3.0 ]
BEGIN-SETUP
(The following are used exclusively in the SETUP section, ASK, DECLARE-CHART, DECLARE-IMAGE, DECLARE-LAYOUT, DECLARE-PRINTER, DECLARE-PROCEDURE, DECLARE-REPORT, NO-FORMFEED, PAGE-SIZE, PRINTER-DEINIT, PRINTER-INIT, USE)
BEGIN-SQL
[-C£n_buffer_size]   (Ingres,Oracle,SQLBase)
[-C£n_connection]+3.0, -4.0   (SYBASE DB-Lib)
[-XP]+3.0   (SYBASE)
[-NR]+3.0   (SQLBase)
[-SORT£n]+3.0   (SQLBase)
[-LOCK{RR | CS | RO | RL | XX}]+3.0   (SQLBase)
[-DBdatabase_name]+3.0   (SQLBase)
[-DBconnection_string]+4.0   (ODBC)
(in setup)  [ ON-ERROR=[STOP | WARN | SKIP] ]
(non-setup)  [ ON-ERROR=procedure [(arg1,arg2,...argN)]+3.0 ]
[CONNECTION=connection_string]+5.1   (DDO)
BREAK
CALL  subroutine USING value {$t | #n} [param]
CALL  SYSTEM USING t_command #n_status [NOWAIT | WAIT]+3.0.13 Windows NT  +4.0 VMS
CLEAR-ARRAY +3.0  NAME=array_name
CLOSE  {~i_file_num-4.0 | i_file_num+4.0}
COLUMNS +3.0  i...
COMMIT
(used with ORACLE, SQLBase, ODBC+4.0 , DB2+4.0 , Informix+4.0 , RDB-4.0 , Ingress)
CONCAT  value WITH $t [{:$t_edit_mask | £t_edit_mask}]
CONNECT  t  [ON-ERROR=procedure [(arg1,arg2,...argN)]+3.0 ]
CREATE-ARRAY  NAME=array_name  SIZE= £i_elements
{FIELD=
name:{CHAR | NUMBER | TEXT+4.0 | DATE+4.0 | INTEGER+4.0 | FLOAT+4.0 | DECIMAL[£i_precision]+4.0}[:i_occurs][={£t|£n}]+3.0}
[FIELD...]
DATE-TIME * position [date_format [&t]]  (alternative: DateNow())
DECLARE-CHART +3.0  chart_name
[CHART-SIZE= (£i_width, £i_depth) ]
[TITLE= {NONE | £t}]
[SUB-TITLE= {NONE | £t}]
[FILL= {GRAYSCALE | COLOR | CROSSHATCH | NONE}]
[3D-EFFECTS= {NO | YES}]
[BORDER= {YES | NO}]
[POINT-MARKERS= {YES | NO}]
[TYPE=
{BAR | LINE | PIE | STACKED-BAR | 100%-BAR | OVERLAPPED-BAR | FLOATING-BAR | HISTOGRAM | AREA | STACKED-AREA | 100%-AREA | XY-SCATTER-PLOT | HIGH-LOW-CLOSE}]
[LEGEND= {YES | NO}]
[LEGEND-TITLE= {NONE | £t}]
[LEGEND-PLACEMENT=
{CENTER-RIGHT | CENTER-LEFT | UPPER-RIGHT | UPPER-LEFT | UPPER-CENTER | LOWER-RIGHT | LOWER-LEFT | LOWER-CENTER}]
[LEGEND-PRESENTATION= {OUTSIDE | INSIDE}]
[PIE-SEGMENT-QUANTITY-DISPLAY= {YES | NO}]
[PIE-SEGMENT-PERCENT-DISPLAY= {YES | NO}]
[PIE-SEGMENT-EXPLODE=
{NONE | MAX | MIN | USE-3RD-DATA-COLUMN}]
[{X | Y}-AXIS-LABEL= {NONE | £t}]
[{X | Y}-AXIS-MIN-VALUE= {AUTOSCALE | £n}]
[{X | Y}-AXIS-MAX-VALUE= {AUTOSCALE | £n}]
[{X | Y}-AXIS-SCALE= {LINEAR | LOG}]
[{X | Y}-AXIS-MAJOR-TICK-MARKS= {YES | NO}]
[{X | Y}-AXIS-MINOR-TICK-MARKS= {NO | YES}]
[{X | Y}-AXIS-MAJOR-INCREMENT= {AUTOSCALE | £n}]
[{X | Y}-AXIS-MINOR-INCREMENT= £n]
[{X | Y}-AXIS-TICK-MARK-PLACEMENT=
{OUTSIDE | INSIDE | BOTH}]
[{X | Y}-AXIS-GRID= {YES | NO}]
END-DECLARE
DECLARE-CONNECTION +5.1 connection_name (DDO)  
In the SETUP section
{DSN= £t_data_source_name}
[USER= £t_username]
[PASSWORD= £t_password]
[PARAMETERS= £t_keyword1=£t_value1;[£t_keyword2=£t_value2;[...]]]
[NO-DUPLICATE= {TRUE | FALSE}]+5.2
END-DECLARE
In the body of the report
{DSN=  ~t_data_source_name}
[USER= ~t_username]
[PASSWORD= ~t_password]
[PARAMETERS= £t_keyword1=£t_value1;[£t_keyword2=£t_value2;[...]]]
[NO-DUPLICATE= {TRUE | FALSE}]+5.2
END-DECLARE
DECLARE-IMAGE +3.0  image_name
[TYPE= {EPS-FILE | HPGL-FILE | BMP-FILE | GIF-FILE+4.0 | JPEG-FILE+4.0}]
[IMAGE-SIZE= (£i_width, £i_height)]
[SOURCE= £t_file_name]
END-DECLARE
DECLARE-LAYOUT +3.0  layout_name
[PAPER-SIZE= { (£n_width_in [uom]+4.0, £n_height_in [uom]+4.0) | [paper_size_name]}]
[FORMFEED= {YES | NO}]
[ORIENTATION= {PORTRAIT | LANDSCAPE}]
[LEFT-MARGIN= £n_in [uom]+4.0]
[TOP-MARGIN= £n_in [uom]+4.0]
[{RIGHT-MARGIN= £n_in [uom]+4.0 |
LINE-WIDTH= £n_in [uom]+4.0 |
MAX-COLUMNS= £n_columns_integer}]
[{BOTTOM-MARGIN= £n_in [uom]+4.0 |
PAGE-DEPTH= £n_in [uom]+4.0 |
MAX-LINES= £n_lines_integer}]
[CHAR-WIDTH= £n_pt [uom]+4.0]
[LINE-HEIGHT= £n_pt [uom]+4.0]
END-DECLARE
DECLARE PRINTER +2.20, *  (alternative: Declare-Printer & Declare-Layout)
[TYPE= {LINEPRINTER | POSTSCRIPT | HPLASERJET}]
[ORIENTATION= {PORTRAIT | LANDSCAPE}]
[LEFT-MARGIN= £n_inches]
[TOP-MARGIN= £n_inches]
[LINE-SIZE= £n_points]
[CHAR-SIZE= £n_points]
[LINES-INCH= £i_lines]
[CHARS-INCH= £n_characters]
[POINT-SIZE= £n_points]
[FONT= £i_font_number]
[FONT-STYLE= {PROPORTIONAL | FIXED}-3.0]
[FONT-TYPE= {PROPORTIONAL | FIXED}+3.0]
[SYMBOL-SET= £t_from_HP_defined_sets]
[STARTUP-FILE= £t_file_name]
[BEFORE-BOLD= £t_any_string]
[AFTER-BOLD= £t_any_string]
DECLARE-PRINTER +3.0  printer_name
[FOR-REPORTS= (report_name1,...report_nameN)]
[TYPE=
{LINEPRINTER | POSTSCRIPT | HPLASERJET | HTML+4.0 | LP | PS | HP | HT+4.0}]
[INIT-STRING= £t_any_string]
[RESET-STRING= £t_any_string]
[COLOR= {NO | YES}]
[POINT-SIZE= £n_points]
[FONT-TYPE= {PROPORTIONAL | FIXED}]
[SYMBOL-SET= £t_from_HP_defined_sets]
[STARTUP-FILE= £t_file_name]
[PITCH= £n_chars_per_inch]
[FONT= £i_font_number]
[BEFORE-BOLD= £t_any_string]
[AFTER-BOLD= £t_any_string]
END-DECLARE
DECLARE PROCEDURE +2.20, *  (alternative: Declare-Procedure)
[BEFORE-REPORT= procedure_name]
[AFTER-REPORT= procedure_name]
[BEFORE-PAGE= procedure_name]
[AFTER-PAGE= procedure_name]
DECLARE-PROCEDURE +3.0
[FOR-REPORTS= (report_name1,...report_nameN)]
[BEFORE-REPORT= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[AFTER-REPORT= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[BEFORE-PAGE= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[AFTER-PAGE= procedure_name[(value_arg1,value_arg2,...value_argN)]]
END-DECLARE
DECLARE-REPORT +3.0  report_name
[TOC= toc_name]+4.1
[LAYOUT= layout_name]
[PRINTER-TYPE=
{LINEPRINTER | POSTSCRIPT | HPLASERJET | HTML+4.0 | LP | PS | HP | HT+4.0}]
END-DECLARE
DECLARE-TOC +4.1
[FOR-REPORTS= (report_name1,...report_nameN)]
[DOT-LEADER= {NO | YES}]
[INDENTATION= ~n_indent_spaces]
[ENTRY= procedure_name[(value_arg1,value_arg2,...value_argN)]]+4.3.3
[BEFORE-TOC= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[AFTER-TOC= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[BEFORE-PAGE= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[AFTER-PAGE= procedure_name[(value_arg1,value_arg2,...value_argN)]]
END-DECLARE
DECLARE-VARIABLE +4.0
[DEFAULT-NUMERIC= {DECIMAL[(£i_prec)] | FLOAT | INTEGER}]
[DECIMAL[(£i_prec)] decimal_var[(£i_prec)] [decimal_var[(£i_prec)]]...]
[FLOAT float_var [float_var]...]
[DATE date_var [date_var]...]
[INTEGER integer_var [integer_var]...]
[TEXT text_var [text_var]...]
END-DECLARE
DISPLAY
value [{:$t_edit_mask | £t_edit_mask | NUMBER+4.0 | MONEY+4.0 | DATE+4.0}] [NOLINE]
DIVIDE  n INTO #n [ON-ERROR={HIGH | ZERO}] [ROUND= £i]
DO  procedure_name [(value_arg1, value_arg2,...value_argN)]
DOLLAR-SYMBOL +3.0, *  new_single_char_dollar_symbol  (alternative: Alter-Locale)
ELSE
ENCODE  £t_code_string INTO $t
END-DECLARE +3.0
END-DOCUMENT
END-EVALUATE
END-FOOTING
END-HEADING
END-IF
END-PROCEDURE
END-PROGRAM +3.0
END-REPORT *
END-SELECT
END-SETUP
END-SQL
END-WHILE
EVALUATE  value
WHEN  {=!=<><><=>=}  value
[sqr code...]
[BREAK]
[WHEN  {=!=<><><=>=}  value] ...
[WHEN-OTHER]
END-EVALUATE
EXECUTE +3.0  
INGRES SYNTAX:
[ON-ERROR=procedure_name]
[#n_status=]stored_procedure_name
[(parameter_name=value [;...]) ]
SYBASE AND MICROSOFT SQLSERVER SYNTAX:
[-XC]+4.3
[-C£n_connection]-4.0
[ON-ERROR=procedure_name]
[DO=procedure_name[(value_arg1,value_arg2,...value_argN)]]
[@#n_status=]stored_procedure_name
[[@parameter_name=]value [OUT[PUT]] [,...]
[INTO any_column data_type [(£n_length)] [,...]
[WITH RECOMPILE]
EXIT-SELECT
EXTRACT  {$t | $d} FROM {t | d} ~i_start_location ~i_length
FIND  {t | d} IN {t | d} ~i_start_loc #n_found_at_offset
GET  v... FROM array_name(i_element) [field[(i_occurs)]...]
GOTO  label
GRAPHIC () FONT +2.20, *  ~i_font [~i_point_size [1 | 0 [~i_pitch]]]  (alternative: Declare-Printer & Alter-Printer)
GRAPHIC position BOX +2.20  ~i_depth [~i_rulewidth [~i_shading_percent]]
GRAPHIC position HORZ-LINE +2.20  [~i_rulewidth]
GRAPHIC position VERT-LINE +2.20  [~i_rulewidth]
IF  logical_expression
INPUT
{$t-4.0 | v+4.0} [MAXLEN= £n] [£t_prompt] [TYPE={CHAR | TEXT+4.0 | NUMBER | INTEGER | DATE}] [STATUS= #n_status] [NOPROMPT] [BATCH-MODE]+4.0 [FORMAT={t_edit_mask | DATE}]+4.0
LAST-PAGE +3.0 position [£t_pre_text [£t_post_text] ]
LET  v = expression
LOAD-LOOKUP  
In the SETUP section
{NAME= lookup_table_name}
{TABLE= database_table}
{KEY= key_column_database_expression}
{RETURN_VALUE= return_column_database_expression}
{ROWS= £i_maximum_rows}-3.0
[ROWS= £i_maximum_rows]+3.0
[EXTENT= £i_size_to_grow_by]+3.0
[WHERE= £t_where_clause]
[SORT= {DC | DI | SC | SI}]+3.0
[SCHEMA= £t_schema]+5.1
[PROCEDURE= £t_proc
[PARAMETERS= ( {%l_arg | £n_arg | £t_arg} [IN|INOUT|NULL] [, ...] )]
| COMMAND= £t_command
| GETDATA= £t_ddo_getdata]+5.1
{FROM ROWSETS= (x, x-y, x-, -y | ALL) | FROM PARAMETER = £t }+5.1
[QUIET]
In the body of the report+3.0
{NAME= lookup_table_name}
{TABLE= database_table}
{KEY= key_column_database_expression}
{RETURN_VALUE= return_column_database_expression}
[ROWS= i_maximum_rows]
[EXTENT= i_size_to_grow_by]
[WHERE= t_where_clause]
[SORT= {DC | DI | SC | SI}]
[SCHEMA= ~t_schema]+5.1
[PROCEDURE= ~t_proc
[PARAMETERS= ( {%l_arg | n_arg | t_arg} [IN|INOUT|NULL] [, ...] )]
| COMMAND= ~t_command
| GETDATA= ~t_ddo_getdata]+5.1
{FROM ROWSETS= (x, x-y, x-, -y | ALL) | FROM PARAMETER = ~t }+5.1
[QUIET]
LOOKUP  lookup_table_name value {$t_return_val | $d_return_val}
LOWERCASE  $t
MBTOSBS +4.2  $t_multi_byte_string_to_convert_to_single_byte  (Double-Byte version only)
MONEY-SYMBOL +3.0, *  new_single_char_money_symbol  (alternative: Alter-Locale)
MOVE  value TO v [{:$t_edit_mask | £t_edit_mask | NUMBER+4.0 | MONEY+4.0 | DATE+4.0}]
MULTIPLY  n TIMES #n [ROUND= £i]
NEW-PAGE  [i_erase_from_line]
NEW-REPORT  ~t_report_file_name
NEXT-COLUMN  [AT-END={NEWLINE | NEWPAGE}] [GOTO-TOP= i] [ERASE-PAGE= i]
NEXT-LISTING  [NO-ADVANCE]+2.13 [SKIPLINES= i] [NEED= i]
NO-FORMFEED *  (alternative: Declare-Layout)
OPEN
{~t_file_name-4.0 | t_file_name+4.0} AS {~i_file_num-4.0 | i_file_num+4.0} {FOR-READING | FOR-WRITING | FOR-APPEND+3.0} RECORD= £i_length[:{FIXED | FIXED_NOLF+3.0 | VARY}] [STATUS= #n]
PAGE-NUMBER  position [£t_pre_text [£t_post_text] ]
PAGE-SIZE *  £i_page_depth £i_page_width  (alternative: Declare-Layout)
POSITION  position [@document_marker [COLUMNS i ...]]
PRINT  value position [format_commands]
PRINT-BAR-CODE +3.0 position
{TYPE= {i_bar_code_type_num}}
{HEIGHT= n_height}
{TEXT= t_bar_code_text}
[CAPTION= t_caption]
[CHECKSUM= {NO | YES}]
PRINT-CHART +3.0 [chart-name] position
{DATA-ARRAY= {array_name}}
{DATA-ARRAY-ROW-COUNT= i_row_count}
{DATA-ARRAY-COLUMN-COUNT= i_col_count}
[DATA-ARRAY-COLUMN-LABELS= {NONE | array_name | (~t_label1,~t_label2,...)}]
[CHART-SIZE= (~i_width, ~i_depth)]
[TITLE= {NONE | t}]
[SUB-TITLE= {NONE | t}]
[FILL= {GRAYSCALE | COLOR | CROSSHATCH | NONE | $t | &t}]
[3D-EFFECTS= {NO | YES | $t | &t}]
[BORDER= {YES | NO | $t | &t}]
[POINT-MARKERS= {YES | NO | $t | &t}]
[TYPE=
{BAR | LINE | PIE | STACKED-BAR | 100%-BAR | OVERLAPPED-BAR | FLOATING-BAR | HISTOGRAM | AREA | STACKED-AREA | 100%-AREA | XY-SCATTER-PLOT | HIGH-LOW-CLOSE | $t | &t}]
[LEGEND= {YES | NO | $t | &t}]
[LEGEND-TITLE= {NONE | t}]
[LEGEND-PLACEMENT=
{CENTER-RIGHT | CENTER-LEFT | UPPER-RIGHT | UPPER-LEFT | UPPER-CENTER | LOWER-RIGHT | LOWER-LEFT | LOWER-CENTER | $t | &t}]
[LEGEND-PRESENTATION= {OUTSIDE | INSIDE | $t | &t}]
[PIE-SEGMENT-QUANTITY-DISPLAY= {YES | NO | $t | &t}]
[PIE-SEGMENT-PERCENT-DISPLAY= {YES | NO | $t | &t}]
[PIE-SEGMENT-EXPLODE=
{NONE | MAX | MIN | USE-3RD-DATA-COLUMN | $t | &t}]
[{X | Y}-AXIS-LABEL= {NONE | t}]
[{X | Y}-AXIS-MIN-VALUE= {AUTOSCALE | n}]
[{X | Y}-AXIS-MAX-VALUE= {AUTOSCALE | n}]
[{X | Y}-AXIS-SCALE= {LINEAR | LOG | $t | &t}]
[{X | Y}-AXIS-MAJOR-TICK-MARKS= {YES | NO | $t | &t}]
[{X | Y}-AXIS-MINOR-TICK-MARKS= {NO | YES | $t | &t}]
[{X | Y}-AXIS-MAJOR-INCREMENT= {AUTOSCALE | n}]
[{X | Y}-AXIS-MINOR-INCREMENT= n]
[{X | Y}-AXIS-TICK-MARK-PLACEMENT=
{OUTSIDE | INSIDE | BOTH | $t | &t}]
[{X | Y}-AXIS-GRID= {YES | NO | $t | &t}]
PRINT-DIRECT +2.20
[NOLF]+3.0
[PRINTER={LINEPRINTER | POSTSCRIPT | HPLASERJET | HTML+4.0 | LP | PS | HP | HT+4.0}]+3.0
{t} ...
PRINT-IMAGE +3.0 [image_name] position
[TYPE= {EPS-FILE | HPGL-FILE | BMP-FILE | GIF-FILE+4.0 | JPEG-FILE+4.0| $t | &t}]
[IMAGE-SIZE= (~i_width, ~i_height)]
[SOURCE= t_file_name]
PRINTER-DEINIT +2.20, *  reset_string  (alternative: Declare-Printer)
PRINTER-INIT *  initialization_string  (alternative: Declare-Printer)
PUT  value... INTO array_name(i_element) [field[(i_occurs)]...]
READ  {~i_file_num-4.0 | i_file_num+4.0} INTO v:£i_length... [STATUS= #n]+3.0
ROLLBACK
(used with ORACLE, SQLBase, ODBC+4.0 , DB2+4.0 , Informix+4.0 , RDB-4.0 , Ingress)
SBTOMBS +4.2  $t_single_byte_string_to_convert_to_multi_byte  (Double-Byte version only)
SHOW
[cursor_position]  [CLEAR-SCREEN | CS | CLEAR-LINE | CL] 
[value]  [EDIT {edit_mask | NUMBER+4.0 | MONEY+4.0 | DATE+4.0}]
[BOLD]  [BLINK]  [UNDERLINE]  [REVERSE]  [NORMAL]  [BEEP]  [NOLINE] ...
STOP  [QUIET]+2.20
STRING  {t | d}... BY t_delim_txt INTO $t
SUBTRACT  n FROM #n [ROUND= £i]
TOC-ENTRY +4.1
TEXT= {t_toc_text}
[LEVEL= {n_toc_level}]
UNSTRING  {t | d} BY t_delim_txt INTO $t...
UPPERCASE  $t
USE  database  (SYBASE and SQL Server only)
USE-COLUMN  i_column_number
USE-PRINTER-TYPE +3.0
{LINEPRINTER | POSTSCRIPT | HPLASERJET | HTML+4.0 | LP | PS | HP | HT+4.0}
USE-PROCEDURE +3.0
[FOR-REPORTS= (report_name1,...report_nameN)]
[BEFORE-REPORT= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[AFTER-REPORT= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[BEFORE-PAGE= procedure_name[(value_arg1,value_arg2,...value_argN)]]
[AFTER-PAGE= procedure_name[(value_arg1,value_arg2,...value_argN)]]
USE-REPORT +3.0  t_report_name
WHILE  logical_expression
WRITE  {~i_file_num-4.0 | i_file_num+4.0} FROM value[:£i_length]... [STATUS= #n]+3.0


EXPRESSIONS

NOTE: Logical expressions can be numeric. 0 is considered false, and non-zero is considered true.

OPERATORS (In descending order of precedence)...

||
+    -    {sign prefixes}
^
*    /    %
+    -
<    >    >=   <=   <>   !=   =
not
and
or   xor
FILE FUNCTIONS+3.0
DELETE(t_filename)   --> #n_error_code_or_zero
EXISTS(t_filename)   --> #n_error_code_or_zero
RENAME(t_oldname,t_newname)   --> #n_error_code_or_zero
NUMERIC FUNCTIONS
ABS(n)   --> #n_positive
ACOS(n)   --> #f_radians
ASIN(n)   --> #f_radians
ATAN(n)   --> #f_radians
CEIL(n)   --> #i_smallest_greater_than_n
COS(n_radians)   --> #f
COSH(n_radians)   --> #f
DEG(n_radians)   --> #f_degrees
E10(n_power)   --> #f_10_raised_to_power
EXP(n_power)   --> #f_log_base_e_raised_to_power
FLOOR(n)   --> #i_largest_less_than_n
LOG(n)   --> #f_natural_log_of_n
LOG10(n)   --> #f_base10_log_of_n
MOD(nx, ny)   --> #n_remainder_of_x_div_y
POWER(nx, ny)   --> #f_x_raised_to_power_of_y
RAD(n_degrees)   --> #f_radians
ROUND(nx, ny)   --> #n_x_rounded_to_y_decimal_places
SIGN(n)   --> #i_0_pos1_neg1
SIN(n_radians)   --> #f
SINH(n_radians)   --> #f
SQRT(n)   --> #f_squre_root_of_n
TAN(n_radians)   --> #f
TANH(n_radians)   --> #f
TRUNC(nx, ny)   --> #n_x_truncated_to_y_decimal_places
STRING FUNCTIONS
ARRAY+3.0(t_array_name,t_field_name)   --> $t_pointer
ASCII({t_str | d_str})   --> #i_ascii_val_of_first_char_in_str
CHR(i_ascii_val)   --> $t_char_of ascii_val
COND(n_logical, value_a, value_b)   --> v_if_nlogical_then_valuea_else_valueb
EDIT(v_source, t_edit_mask)   --> $t_source_edited_under_mask
GETENV+3.0(t_var_name)   --> $t_value_of_environent_var_name_or_null
INSTR({t_source | d_source}, t_str, i_start_atoffset)   --> #i_position_of_str_in_source_or_0
ISBLANK+3.0({t_source | d_source})   --> #i_1_if_source_is_null_or_whitespace_else_0
ISNULL({t_source | d_source})   --> #i_1_if_source_is_null_else_0
LENGTH({t_source | d_source})   --> #i_num_of_chars_in_source
LOWER({t_source | d_source})   --> $t_lower_cased_source
LPAD({t_source | d_source}, i_len, t_str)   --> $t_source_padded_on_left_with_str_to_len
LTRIM({t_source | d_source}, t_char_set)   -->
      $t_source_with_all_leftmost_char_set_chars_removed
NVL(value_source, value_alt)   --> v_source_unless_null_then_alt
RANGE(value_source, value_low, value_high)   --> 
      #i_1_if_source_is_within_low_to_high_(inclusive)_else_0
ROMAN+4.1(n_num)   --> $t_lower_case_roman_numerals
RPAD({t_source | d_source}, i_len, t_str)   --> $t_source_padded_on_right_with_str_to_len
RTRIM({t_source | d_source}, t_char_set)   -->
      $t_source_with_all_rightmost_char_set_chars_removed
SUBSTR({t_source | d_source}, i_start_pos, i_len)   -->
      $t_len_chars_from_source_starting_at_pos
TO_CHAR(n_num)   --> $t_digits
TO_NUMBER(t_digits)   --> #f_num
TRANSLATE({t_source | d_source}, t_orig, t_repl)   -->
      $t_source_with_each_orig_char_replaced_with_respective_repl_char
UPPER({t_source | d_source})   --> $t_upper_cased_source
WRAPDEPTH+4.1(t_src_txt, n_wide, n_height, t_on_chars, t_strip_chars)   -->
      $n_lines_needed_to_print
ADDITIONAL DOUBLE-BYTE VERSION STRING FUNCTIONS+4.2
ASCIIC({t_str | d_str})   --> #i_ascii_val_of_first_char_(not_byte)_in_str
INSTRB({t_source | d_source}, t_str, i_start_atbyteoffset)   -->
      #i_byte_position_of_str_in_source_or_0
LENGTHB({t_source | d_source})   --> #i_num_of_bytes_in_source
SUBSTRB({t_source | d_source}, i_start_byte, i_byte_len)   -->
      $t_len_bytes_from_source_starting_at_byte_pos
TO_MULTI_BYTE({t_source | d_source})   --> $t_source_multi_byte_converted
TO_SINGLE_BYTE({t_source | d_source})   --> $t_source_single_byte_converted
DATE FUNCTIONS+4.0
("unit" is YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, or SECOND.)
 
DATEADD({$d_source | &d_source}, t_unit, n_amount)   -->
      $d_source_with_amount_units_added
DATEDIFF({$d_source2 | &d_source2}, {$d_source1 | &d_source1}, t_unit)   -->
      #n_source2_minus_source1_in_units
DATENOW()   --> $d_current_from_client_machine
DATETOSTR({$d_source | &d_source} [, t_edit_mask])   --> $t_source_formatted_with_mask
STRTODATE(t_source [, t_edit_mask])   --> $d_source_as_date


PRINT Format Commands

BOLD +2.20
BOX +2.20
CENTER
CODE +2.20, *  (alternative: Code-Printer)
CODE-PRINTER +3.0 = {LINEPRINTER | POSTSCRIPT | HPLASERJET | HTML+4.0 | LP | PS | HP | HT+4.0}
DATE +4.0
EDIT edit_mask
Text Mask Characters =
X | B | ~ | R[n]
Numeric Mask Characters =
8+3.0 | 9 | 0 | $ | B | E | V+3.0 | . | ,
Numeric Mask Suffix Characters =
C+3.0 | MI | PR | PS | PF | NA | NU
Date Mask Characters+3.0, -4.0 (any except Oracle and SQLBase) =
YY | YYYY | MM | MON | MONTH | DD | HH | MI | SS | PM (SYBASE and SQLBase) | GG (RDB) | NNNNN (DB2) |
NOTE: the vertical bar character "|" can be used to separate date mask components without being displayed. Dates must be in the proper DATE-TIME format
Date Mask Characters+4.0 =
Y | YY | YYY | YYYY | SYYYY | RR | CC | SCC | BC | AD | Q | RM | WW | W | DDD | DD | D | DAY | DY | J | AM | PM | HH | HH12 | HH24 | SSSSS | N | NN | NNN | NNNN | NNNNN | NNNNNN | MONTH | MON | MM | MI | SS
NOTE: the vertical bar character "|" can be used to separate date mask components without being displayed. The backslash character "\" forces the character after it into the output
Additional Double-Byte Date Mask Characters+4.2 =
ER | EY
FILL
MATCH {match_text i_line i_column print_text} ...
MONEY +4.0
NOP
NUMBER +4.0
ON-BREAK
[PRINT= {ALWAYS | CHANGE | CHANGE/TOP-PAGE | NEVER}]
[SKIPLINES= i]
[AFTER= procedure_name]
[BEFORE= procedure_name]
[SAVE= $t]  [LEVEL= £i]  [SET= £i]
[PROCEDURE= procedure_name (for compatibility)]
SHADE +2.20
UNDERLINE +2.20
WRAP
i_line_length  i_max_lines [KEEP-TOP]+2.13 [STRIP= strip_chars] [ON= break_chars] [R] [LINE-HEIGHT= i]+4.0


COMPILER DIRECTIVES

#DEBUG[x...]+3.0  SQR_command
#DEFINE  substitution_variable value
#ELSE
#END-IF
#IF  substitution_variable {=!=<><><=>=} {£t | £n}
#IFDEF  substitution_variable
#IFNDEF  substitution_variable
#INCLUDE  file_name


TABLES

Common HP Symbol Sets+2.20

 CODE  Symbol Set
0U ASCII
17U PC-852
10U PC-8
12U PC-850
8U HP Roman-8
7J DeskTop
19U Windows 3.1 Latin 1 
0N ISO 8859/1 Latin 1
9E Windows 3.1 Latin 2
2N ISO 8859/2 Latin 2
5T Windows 3.1 Latin 5
5N ISO 8859/9 Latin 5
10J PS Text
12J MC Text
13J Ventura International
14J Ventura US
1U Legal
6J  Microsoft ® Publishing 
15U Pi-Font
6M Ventura Math
5M PS Math
8M Math-8
579L Wingdings Font
19M Symbol

 

Font Numbers+2.20

HP LASERJET FONTS
 No.  Typeface Style
 Line Printer Fixed
 Pica Fixed
 Elite Fixed
 Courier Fixed
 Helvetica Proportional 
 Times Roman Proportional
 Letter Gothic Fixed
 Prestige Fixed
11   Presentations  Fixed
17   Optima Proportional 
18   Garamondi Proportional
19   Cooper Black Proportional
20   Coronet Bold Proportional
21   Broadway Proportional
22   Bauer Bodini Black Condensed  Proportional
23   Century Schoolbook Proportional
24   University Roman Proportional

 

POSTSCRIPT FONTS
 No.  Typeface  Bold 
 CourierY
 HelveticaY
 Times RomanY
 Avante Garde Book 
 Palatino RomanY
11   Symbol 
12   Zapf Dingbats 
17   Zapf Chancery Medium Italic 
18   Bookman Light 
23   New Century Schoolbook Roman Y
30   Courier ObliqueY
31   Helvetica ObliqueY
32   Times ItalicY
33   Avante Garde Demi 
34   Avante Garde Book Oblique 
35   Avante Garde Demi Oblique 
36   Palitino ObliqueY
37   New Century Schoolbook Italic Y
38   Helvetica NarrowY
39   Helvetica Narrow ObliqueY
40   Bookman Demi 
41   Bookman Light Italic 
42   Bookman Demi Italic 

 

WINDOWS FONTS
  No.  Typeface Style
 Courier New Fixed
 Arial Proportional 
 Times New Roman  Proportional
1  AvantGarde Proportional
1  Palatino Proportional
11   Symbol 
300   Courier New Bold 
400   Arial Bold
500   Times New Roman  Bold
1800   Palatino Bold
1Note: Fonts 6, 8, and 800 are in the ADOBE type Manager (ATM) and not included with Windows.

 

Default DATE-TIME Formats

 Database  Version Format  Column 
Format
Print
 Format 
 ALL  +2.0, -3.0   DD-Mon-YYYY HH:MI PM Y Y
 
 Allbase  +3.0, -4.0  YYYY-MM-DD HH:MI:SS.NNN Y Y
 DB2  +3.0, -4.0  YYYY-MM-DD-HH:MI:SS.NNNNNN  Y Y
 +4.0  YYYY-MM-DD-HH:MI:SS.NNNNNN Y  
 +4.0  YYYY-MM-DD-HH:MI   Y
 Informix  +3.0, -4.0  YYYY-MM-DD HH:MI:SS.NNNNNN Y Y
 +4.0  YYYY-MM-DD HH:MI:SS.NNN Y  
 +4.0  YYYY-MM-DD HH:MI   Y
 Ingres  +3.0, -4.0  DD-MON-YYYY HH:MI:SS Y Y
 +4.0  DD-MON-YYYY HH:MI:SS Y  
 +4.0  DD-MON-YYYY HH:MI   Y
 Oracle  +3.0  DD-Mon-YYYY HH:MI PM Y Y
 Rdb  +3.0, -4.0  DD-MON-YYYY HH:MI Y Y
 SQLBase  +3.0  DD-Mon-YYYY HH:MI PM Y Y
 SYBASE  +3.0  DD-MON-YYYY HH:MI Y Y

 

Default Database Date Formats+4.0

Database Date Formats
 DB2  YYYY-MM-DD-HH:MI:SS.NNNNNN
 YYYY-MM-DD
 Informix  YYYY-MM-DD HH:MI:SS.NNN
 MM/DD/YYYY
 MM-DD-YYYY
 MM.DD.YYYY
 Ingres  DD-MON-YYYY HH:MI:SS
 MM/DD/YYYY HH:MI:SS
 MM-DD-YYYY HH:MI:SS
 ODBC  MM-DD-YYYY
 Oracle  DD-MON-YY
 Sybase  MON DD YYYY HH:MIPM
 MON DD YYYY [HH:MI[:SS[:NNN]]][PM]
 MON DD YYYY [HH:MI[:SS[.NNN]]][PM]
 YYYYMMDD [HH:MI[:SS[:NNN]]][PM]
 YYYYMMDD [HH:MI[:SS[.NNN]]][PM]
 SQLBase   YYYY-MM-DD-HH.MI.SS.NNNNNN
 YYYY-MM-DD
 HH.MI.SS.NNNNNN
Note: The Database independent format is SYYYYMMDDHH24MISSNNNNNN.
The PRINT, MOVE, DISPLAY, and SHOW commands will use the first format listed if no edit mask is specified.

 

Default Database Date Only Formats+4.2

Database Date Formats
 DB2  YYYY-MM-DD
 Informix  MM/DD/YYYY
 ODBC  DD-MON-YYYY

 

Default Database Time Only Formats+4.2

Database Time Formats
 DB2  HH24:MI:SS
 ODBC  HH24:MI:SS

 

Units Of Measure+4.0

 UOM  Meaning Definition
in cm mm pt dp
dp decipoint  0.001388    0.003526 0.03526  0.1000 1.0000 
pt point  0.01388   0.035260.35260  1.0000 10.0000 
mm millimeter  0.03937   0.1000 1.00000  2.8346 28.3464 
cm centimeter   0.3937   1.0000   10.00000    28.3464    283.4640 
in inch  1.0000   2.540025.40000  72.0000 720.0000 

 

Paper Size Names+4.0

 Name   Orientation  Inches Centimeters Points
 Width   Depth   Width   Depth   Width   Depth 
 Letter   Portrait    8.500    11.000    21.590    27.940    612.00    792.00 
 Legal   Portrait   8.500   14.000   21.590   35.560   612.00   1008.00 
 A4   Portrait   8.270   11.690   21.006   29.693   595.44   841.68 
 Executive   Portrait   7.250   10.500   18.415   26.670   522.00   756.00 
 B5   Portrait   7.170   10.120   18.212   25.705   516.24   728.64 
 Com-10   Landscape   4.125   9.500   10.478   24.130   297.00   684.00 
 Monarch   Landscape   3.875   7.500   9.843   19.050   279.00   540.00 
 DL   Landscape   4.330   8.660   10.998   21.996   311.76   623.52 
 C5   Landscape   6.378   9.016   16.200   22.901   459.22   649.15 

 

Input Status

 Value   Indicates
 0  Successful.
 1  Bad type (did not match TYPE parameter).
 2  Too long (longer than MAXLEN or INTEGER out of range). 
 3+4.0  No arguments remain on the command line in BATCH-MODE

 

Bar Code Types+3.0

Type Description Text
Length
Text
Type*
Checksum
 Recognized 
1   UPC-A  11,13, or 16  9  
2   UPC-E 11,13, or 16 9  
3   EAN/JAN-13 12,14, or 17 9  
4   EAN/JAN-8 7,9, or 12 9  
5   3 of 9 (code 39) 1 to 30 9,X,p Y
6   Extended 3 of 9 1 to 30  9,X,x,p,c  Y
7   Interleaved 2 of 5  2 to 30 9 Y
8   Code 128 1 to 30 9,X,x,p,c  
9   Codabar 1 to 30 9 Y
10   Zip+4 Postnet 5,9, or 11 9  
11   MSI Plessey 1 to 30 9 Y
12   Code 93 1 to 30 9,X,p Y+4.0
13   Extended 93 1 to 30 9,X,x,p Y+4.0
14   UCC-128 19 9  
15   HIBC 1 to 30 9 Y

*Text Type Codes
9  Numbers (0-9)
X  Upper Case Letters (A-Z) 
x  Lower Case Letters (a-z)
p  Punctuation
c  Control Characters

 

-M File Entries

Entry Default Max Size Is The Maximum ...
 BREAKS+2.26 100  64K-1  4  breaks per EVALUATE or IF command.
 CURSORS+3.0 6 60-4.0 -  no. of concurrent database cursors. (SQLBase)
25+4.0
 DYNAMICARGS+2.26 70 32K-1  12-3.0   no. of dynamic SQL arguments.
14+3.0
 EXPRESSIONSPACE+2.26  2048-4.0 64K-1 1  byte length for LET temporary string storage.
8192+4.0
 FORWARDREFS+2.26 200 32K-1 8  no. of &column forward references.
 LONGSPACE+3.0 13515-4.0 32K-2 1  buffer size in bytes to transfer text and image data.
 32K-2+4.0 
 NUMVARIABLES-4.0 240 32K 8  no. of numeric variables and literals.
 ONBREAKS 30 64K-1 8  no. of ON-BREAK LEVEL= values per set.
 POSITIONS 900-5.1 64K-1 13-3.0  no. of position parameters.
1800+5.1 14+3.0
 PROGLINEPARS 9000-5.1 64K-1 2  no. of arguments for all program lines. Generally 3 or 4 times the PROGLINES value.
18000+5.1
 PROGLINES 2500-5.1 32K-1 8  no. of program lines (SQR commands).
5000+5.1
 QUERIES 60 32K-1 60  no. of BEGIN-SQL and BEGIN-SELECT paragraphs. Database dependent and can vary.
 QUERYARGS 240 64K-1 6  no. of arguments (bind vars) for all SQL and SELECT statements. Value must be 1 more than number used.
 SQLSIZE 4000 64K-1 1  length of a SQL statement in characters
 STRINGSPACE 10000-5.1 64K-1 1  size in bytes of string space for program line arguments.
15000+5.1
 SUBVARS+2.26 100 32K-1 8  no. of run-time substitution variables.
 VARIABLES 750-5.1 64K-1 14-3.0  no. of variables, literals, and database columns.
22+3.0  (Informix and Ingress)
1500+5.1 20+3.0  (RDB)
18+3.0  (Others)
 WHENS+2.26 70 64K-1 4  no. of WHEN arguments per EVALUATE command.

 

Hardcoded Limits

Number Of... Limit
 Arrays (maximum) 20-4.3.2
128+4.3.2
 Bytes for INPUT buffer 511-4.3.2
 2047+4.3.2 
 Characters for SQR line (maximum)  255-4.0
511+4.0
 Concurrent Open Cursors (maximum) 30-4.0.2
100+4.0.2
 Document Markers (maximum) 120-4.3.2
512+4.3.2
 Document Paragraphs (maximum) 20-4.3.2
128+4.3.2
 List Elements (maximum)+5.1 2048-5.2
8192+5.2
 OPEN files (maximum) 12-4.3.2
256+4.3.2
 PDF pages (maximum) 1000+4.3.2.2 -4.3.3
5000+4.3.3

 


HTML PROCEDURES+4.0

NOTES: The following procedures are found in the file "html.inc which must be included in your program. In order to use any of these procedures, html_on must be called before any others. The command line flag -PRINTER:HT or -PRINTER:HTML must be used to produce HTML output.

HTML GENERAL PURPOSE:

HTML_BR(n_repeat_amount, t_line_break_attributes)
HTML_CENTER(t_center_attributes)
HTML_CENTER_END
HTML_HR(t_horizontal_rule_attributes)
HTML_IMG(t_img_attributes)
HTML_NOBR
HTML_NOBR_END
HTML_ON
HTML_P(t_paragraph_attributes)
HTML_P_END
HTML_SET_BODY_ATTRIBUTES(t_body_attributes)
HTML_SET_HEAD_TAGS(t_head_attributes)

HTML HEADINGS:

HTML_H1(t_h1_attributes)
HTML_H1_END
HTML_H2(t_h2_attributes)
HTML_H2_END
HTML_H3(t_h3_attributes)
HTML_H3_END
HTML_H4(t_h4_attributes)
HTML_H4_END
HTML_H5(t_h5_attributes)
HTML_H5_END
HTML_H6(t_h6_attributes)
HTML_H6_END

HTML HIGHLIGHTING:

HTML_BLINK(t_blink_attributes)
HTML_BLINK_END
HTML_CITE(t_cite_attributes)
HTML_CITE_END
HTML_CODE(t_code_attributes)
HTML_CODE_END
HTML_KBD(t_keyboard_attributes)
HTML_KBD_END
HTML_SAMP(t_samp_attributes)
HTML_SAMP_END
HTML_STRIKE(t_strike-through_attributes)
HTML_STRIKE_END
HTML_SUB(t_subscript_attributes)
HTML_SUB_END
HTML_SUP(t_superscript_attributes)
HTML_SUP_END

HTML HYPERTEXT LINKS:

HTML_A(t_link_attributes)
HTML_A_END

HTML LISTS:

HTML_DD(t_dl_definition_attributes)
HTML_DD_END
HTML_DIR(t_dir_attributes)
HTML_DIR_END
HTML_DL(t_definition_list_attributes)
HTML_DL_END
HTML_DT(t_dl_term_attributes)
HTML_DT_END
HTML_LI(t_list_item_attributes)
HTML_LI_END
HTML_MENU(t_menu_attributes)
HTML_MENU_END
HTML_OL(t_ordered_list_attributes)
HTML_OL_END
HTML_UL(t_unordered_list_attributes)
HTML_UL_END

HTML TABLES:

HTML_CAPTION(t_caption_attributes)
HTML_CAPTION_END
HTML_TABLE(t_table_attributes)
HTML_TABLE_END
HTML_TD(t_data_cell_attributes)
HTML_TD_END
HTML_TH(t_header_attributes)
HTML_TH_END
HTML_TR(t_row_attributes)
HTML_TR_END
Top
Copyright © 1999, Ray Ontko & Co. Last updated: Tuesday, February 27, 2007
Careers Library Products Services Site Map Search Contact Us About Us News