![]() |
|
|
|
|
SQR Programmer Reference Card
SQR language version 2.x-6.x
© 1998-2006, 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.
Version 8.2 of our on-line card. (in progress)
TABLE OF CONTENTS
- Conventions Used In This Document
- SQR Command Line
- SQRT Command Line
- SQRP Command Line
- Special Characters
- Data Types
- Pre-Defined Variables
- Environment Variables & SQR.INI
- Position Syntax
- RGB Syntax
- Array Dot Syntax
- COMMAND REFERENCE
- Expressions
- Print Format Commands
- Compiler Directives
- Character Set Encodings
- Tables
- HTML Procedures
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. (Requires -PRINTER:LP) (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_BQD:file+6.0 Associate the BQD icon with the specified file. -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. BASIC+6.0 generates "every-browser" HTML.
(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_DEBUG[:opts]+6.2 Create a Report.dbg file. File will contain messages about both internal and compiler errors.  Possible enhanced HTML debugging opts...
Timing (Show elapsed time of EHTML execution.)
Memory (Show memory usage statistics.)
Help (Show these options.)
-EH_FULLHTML:level+5.1 When True, report generates HTML 3.2. (Possible values are 30, 32, or 40. True generates HTML 4.0)+6.0
(see also SQR.INI - Enhanced HTML)-EH_ICONS:dir+4.3.1 Set directory where referenced HTML icons are stored. -EH_IMAGES:dir+6.0 Set directory where navigation bar .GIF images are stored. -EH_KEEP+6.0 Causes -EH_ZIP to copy instead of move. -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. -EH_XIMG+6.1.3 Prevents path changes and format conversions for images. If checking into Portal, added this to the “Burst Options”. -EH_XML:file+6.0 Associate the XML icon with the specified file. -EH_ZIP:file+6.0 Moves generated files to file, or Report.zip if file not specified. -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.) (AS400) -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, -6.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, -6.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, -6.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). -PRINTER:WP:{unc}+6.0 Causes the printer with the UNC name unc to be used for printing. (Windows) -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, -6.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, -6.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. -XLFF+6.0 Prevents SQR from generating a trailing form-feed. -XMB+3.0.13 Prevents program interruption by any message boxes. Errors will only be sent to an .err file and show/display statements will only be sent to a .log file. (Windows & NT) See also: -E. -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. -ZEN{name}+6.1.4 Set default encoding name -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. (Requires -PRINTER:LP) (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_BQD:file+6.0 Associate the BQD icon with the specified file. -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. BASIC+6.0 generates "every-browser" HTML.
(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_DEBUG[:opts]+6.2 Create a Report.dbg file. File will contain messages about both internal and compiler errors.  Possible enhanced HTML debugging opts...
Timing (Show elapsed time of EHTML execution.)
Memory (Show memory usage statistics.)
Help (Show these options.)
-EH_FULLHTML:level+5.1 When True, report generates HTML 3.2. (Possible values are 30, 32, or 40. True generates HTML 4.0)+6.0
(see also SQR.INI - Enhanced HTML)-EH_ICONS:dir+4.3.1 Set directory where referenced HTML icons are stored. -EH_IMAGES:dir+6.0 Set directory where navigation bar .GIF images are stored. -EH_KEEP+6.0 Causes -EH_ZIP to copy instead of move. -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. -EH_XIMG+6.1.3 Prevents path changes and format conversions for images. If checking into Portal, added this to the “Burst Options”. -EH_XML:file+6.0 Associate the XML icon with the specified file. -EH_ZIP:file+6.0 Moves generated files to file, or Report.zip if file not specified. -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.) (AS400) -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}-6.0 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-6.0 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]}-6.0 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). -PRINTER:WP:{unc}+6.0 Causes the printer with the UNC name unc to be used for printing. (Windows) -S Causes the status of all cursors to be displayed at the end of the report run. -SORT{n}-6.0 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}-6.0 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. -XLFF+6.0 Prevents SQR from generating a trailing form-feed. -XMB+3.0.13 Prevents program interruption by any message boxes. Errors will only be sent to an .err file and show/display statements will only be sent to a .log file. (Windows & NT) See also: -E. -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. -ZEN{name}+6.1.4 Set default encoding name -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. (Requires -PRINTER:LP) (non-Windows) -DELETE+4.0, -6.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_BQD:file+6.0 Associate the BQD icon with the specified file. -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_DEBUG[:opts]+6.2 Create a Report.dbg file. File will contain messages about both internal and compiler errors.  Possible enhanced HTML debugging opts...
Timing (Show elapsed time of EHTML execution.)
Memory (Show memory usage statistics.)
Help (Show these options.)
-EH_FULLHTML:level+5.1 When True, report generates HTML 3.2. (Possible values are 30, 32, or 40. True generates HTML 4.0)+6.0
(see also SQR.INI - Enhanced HTML)-EH_ICONS:dir+4.3.1 Set directory where referenced HTML icons are stored. -EH_IMAGES:dir+6.0 Set directory where navigation bar .GIF images are stored. -EH_KEEP+6.0 Causes -EH_ZIP to copy instead of move. -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. -EH_XIMG+6.1.3 Prevents path changes and format conversions for images. If checking into Portal, added this to the “Burst Options”. -EH_XML:file+6.0 Associate the XML icon with the specified file. -EH_ZIP:file+6.0 Moves generated files to file, or Report.zip if file not specified. -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.) (AS400) -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). -PRINTER:WP:{unc}+6.0 Causes the printer with the UNC name unc to be used for printing. (Windows) -XB Suppresses the SQR banner and the "SQR...End of Run" message. (non-Windows) -XLFF+6.0 Prevents SQR from generating a trailing form-feed. -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) -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. -ZEN{name}+6.1.4 Set default encoding name -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 list variable.+5.1 (DDO only) @ 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.! Begins a comment, everything after the mark will not be compiled. - A dash at the end of a line continues the command onto the next line. {} Encloses a substitution variable. [] Encloses a dynamic SQL variable, dynamic query variable, or dynamic table name. Or a dynamic column name+3.0 0X Begins a literal Hex number+6.1.4 It is case INsensitive. Examples: let #num = 0x53e58d
let #num = '0x53e58d'
move '0X53E58D' to #num
move 0X53E58D to #num !-- (not valid)
while #i < 0x53E58d !-- (check against 5,498,253)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.
DATA TYPES+4.0
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).
- 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.
- LIST+5.1 (DDO)
- A non-recursive ordered collection of SQR variables.
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.
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-6.0 ODBC+4.0 ORACLE RDB-4.0 REDBRICK+4.3, -6.0 SQLBASE-6.0 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 (see Encodings). {sqr-encoding} +4.2 see $sqr-encoding above $sqr-encoding-console +6.0 Will hold the value of the log file or console ENCODING environment variable (see Encodings). {sqr-encoding-console} +6.0 see $sqr-encoding-console above $sqr-encoding-database +5.1 Will hold the value of the database ENCODING environment variable (see Encodings). {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 (see Encodings). {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 (see Encodings). {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 (see Encodings). {sqr-encoding-report-output} +5.1 see $sqr-encoding-report-output above $sqr-encoding-source +6.0 Will hold the value of the source and include files ENCODING environment variable (see Encodings). {sqr-encoding-source} +6.0 see $sqr-encoding-source 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-6.0 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 +3.0.? for Windows +4.0 for Unix
- NOTES:
- SQR.INI was introduced just after 3.0 for Windows platforms and in 4.0 for Unix flavors.
- This is intended to be a reference of lesser known options and is not intended to be a comprehensive listing.
- The "Environment-XXX" section contains values that may also be set as environment variables.
[Color Map] color_name +6.0 Define the (rgb) colors for this color_name (repeatable) [Default-Settings] AllowDateAsChar +4.3 When TRUE (default is FALSE) date columns will be retrieved as characters (like pre-4.0). AutoDetectUnicodeFiles +6.1.3 When TRUE (default is FALSE) SQR will read the first 2 bytes of a file to determine the encoding for the file (unless encoding was specified within the "open" command). 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. NewGraphics +6.0 When TRUE (default is FALSE) SQR will allow many advanced chart features 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. PDFCompressionText +6.1.3 Sets the level of PDF text compression from 0 (no compression - fast) to 9 (max compression - slower). Default is 6. PDFCompressionGraphics +6.1.3 Sets the level of PDF graphics compression from 0 (no compression - fast) to 9 (max compression - slower). Default is 6. Substitution-Character +6.1.3 Allows defining the substitution character for undefined characters within a character set. Format is
XX ENCODING_1 [, XX ENCODING_2... [, XX Default] ]
Where XX is the hexidecimal value of the substitution character. (see Encodings)UseUnicodeInternal +6.1.3 When TRUE (default is FALSE) forces SQR to use Unicode internally. Allows any encoding combinations in a single SQR run (including ASCII and EBCDIC). 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-6.0 | SQLBase-6.0 | Informix | DDO+6.0}] ENCODING +4.2 Encoding used by default. Default setting is ASCII. (see Encodings) ENCODING-CONSOLE +5.1 Encoding used for console input and output. Default setting is ASCII. (see Encodings) ENCODING-DATABASE +5.1 Encoding used for interfacing with the database. Default setting is ASCII. (see Encodings) ENCODING-FILE-INPUT +5.1 Default encoding used for “OPEN” for-reading files and argument files. Default setting is ASCII. (see Encodings) ENCODING-FILE-OUTPUT +5.1 Default encoding used for “OPEN” for-writing files. Default setting is ASCII. (see Encodings) ENCODING-REPORT-OUTPUT +5.1 Default encoding used for report output, such as, SPF, LIS, HTM, etc. Default setting is ASCII. (see Encodings) ENCODING-SQR-SOURCE +6.0 Encoding used for SQR source and include files. Default setting is ASCII. (see Encodings) 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. SQR_JRE_EXE +6.0 Path and name of the JRE executable. SQR_JRE_FLAGS +6.0 Passes arbitrary flags to the "jre" when processing SPF files. SQR_JRE_VER +6.0 Version of the JRE executable. [Environment:DDO]+6.0 SQR_DDO_JRE_CLASS Classpath for DDO drivers, support files. SQR_DDO_JRE_CLASS{n} Optional; additional entries to the classpath. SQR_DDO_JRE_INIT_HEAP +6.2 (default: 4M) Size of the initial heap. Value may be set as N (bytes), NK (Kilobytes) or NM (Megabytes). SQR_DDO_JRE_MAX_HEAP +6.2 (default: 32M) Maximum size of the heap. Value may be set as n (bytes), nK (Kilobytes) or nM (Megabytes). SQR_DDO_JRE_NOCLASSGC +6.2 When TRUE (default is FALSE) will prevent Class Garbage Collection. SQR_DDO_JRE_NOJIT +6.2 When TRUE (default is FALSE) will disable the JIT compiler. SQR_DDO_JRE_PATH Classpath information for the local JRE. SQR_DDO_JRE_VERBOSE +6.2 When TRUE (default is FALSE) will run the JVM in Verbose mode. (Note: This creates a file in the current working directory called 'vm.out'.) [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[PDF Fonts]+4.3.2.2 font_number Maps an SQR font number to an ADOBE font for PDF output. The assignment form is...
Typeface [ , CJK_Typeface , Charcter_Map]+6.1.4 (see Non-Roman PDF Fonts for possible values)[HTML-Images] FIRST-PAGE +4.1 Graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,firstpg.gif). PREV-PAGE +4.1 Graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,prevpg.gif). NEXT-PAGE +4.1 Graphic info for the navigation bar in the form Height,Width,Name (default is 60,60,nextpg.gif). LAST-PAGE +4.1 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). [SQR Remote] PASSIVE +6.0 For Report Activator - a value of 1 causes the FTP passive method of username/password verification to be used.
POSITION SYNTAX
(a,b,c) where
Line position and column position values may be fixed, or relative.
- a = line position
- b = column position
- c = length
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.
print &city (,50)Will be printed on the same line as address at column 50.
RGB SYNTAX
r,g,b where
- r = amount of Red in color on a scale of 0-255
- g = amount of Green in color on a scale of 0-255
- b = amount of Blue in color on a scale of 0-255
Examples:
declare-color-map red=(255,0,0) green=(0,255,0) blue=(0,0,255) white=(255,255,255) grey=(128,128,128) black=(0,0,0) end-declare SET-COLOR PRINT-TEXT-FOREGROUND = (128,#green_level,&blue_level) PRINT-TEXT-BACKGROUND = ('black')
ARRAY DOT SYNTAX
Array elements may be referenced and altered within an expression (LET, IF, or WHILE commands) 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
COMMAND REFERENCE
KEY: Date+4.0 Text Numeric List+5.1 $d Variable $t Variable #n Variable %l 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, but 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-COLOR-MAP +6.0
- {NAME= t_color_name}
- {VALUE= (t_color_name | rgb)}
- 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
- [SET-GENERATIONS= (£t_dimension1,£n_hierarchy1[,£t_dimension2,£n_hierarchy2[, ...]])] +6.0
- [SET-LEVELS= (£t_dimension1,£n_level1[,£t_dimension2,£n_level2[, ...]])] +6.0
- [SET-MEMBERS= (£t_dimension1,£t_level1[,£t_dimension2,£t_level2[, ...]])] +6.0
- 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]
- ALTER-REPORT +6.0
- [HEADING= t_heading_name]
- [HEADING-SIZE= n_new_size]
- [FOOTING= t_footing_name]
- [FOOTING-SIZE= n_new_size]
- 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]
- [PROPERTIES= (~t_keyword1=value_1, [~t_keyword2=value_2, [...] ] )]
- [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
- [NAME=footing_name]+6.0
- [FOR-REPORTS=(report_name1,...report_nameN)]+3.0
- [FOR-TOCS=(toc_name1,...toc_nameN)]+4.1
- BEGIN-HEADING £i_heading_lines
- [NAME=heading_name]+6.0
- [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-6.0,Oracle,SQLBase-6.0)
- [-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, -6.0 (SQLBase)
- [-SORT£n]+3.0, -6.0 (SQLBase)
- [-LOCK{RR | CS | RO | RL | XX}]+3.0, -6.0 (SQLBase)
- [-DBdatabase_name]+3.0, -6.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-COLOR-MAP, DECLARE-CONNECTION, DECLARE-IMAGE, DECLARE-LAYOUT, DECLARE-PRINTER, DECLARE-PROCEDURE, DECLARE-REPORT, DECLARE-TOC NO-FORMFEED, PAGE-SIZE, PRINTER-DEINIT, PRINTER-INIT, USE)
- BEGIN-SQL
- [-C£n_buffer_size] (Ingres-6.0,Oracle,SQLBase-6.0)
- [-C£n_connection]+3.0, -4.0 (SYBASE DB-Lib)
- [-XP]+3.0 (SYBASE)
- [-NR]+3.0, -6.0 (SQLBase)
- [-SORT£n]+3.0, -6.0 (SQLBase)
- [-LOCK{RR | CS | RO | RL | XX}]+3.0, -6.0 (SQLBase)
- [-DBdatabase_name]+3.0, -6.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-6.0 , ODBC+4.0 , DB2+4.0 , Informix+4.0 , RDB-4.0 , Ingres-6.0)
- 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...]
- CREATE-COLOR-PALETTE +6.0 NAME=palette_name
- {COLOR_1=(rgb | t_color_name)}
- {COLOR_2=(rgb | t_color_name)}
- [COLOR_3=(rgb | t_color_name)]
- ...
- [COLOR_n=(rgb | t_color_name)]
- DATE-TIME * position [date_format [&t]] (alternative: DateNow())
- DECLARE-CHART +3.0 chart_name
- [DATA-LABELS= {NO | YES}]+6.0 (requires NewGraphics)
- [COLOR-PALETTE= £t_palette_name]+6.0 (requires NewGraphics)
- [ITEM-COLOR=
- ( {ChartBackground | ChartForeground | HeaderBackground | HeaderForeground | FooterBackground | FooterForeground | LegendBackground | LegendForeground | ChartAreaBackground | ChartAreaForeground | PlotAreaBackground}
- , {(£rgb) | £t_color_name} ) ]+6.0 (requires NewGraphics)
- [ITEM-SIZE=
- ( {Title | SubTitle | XAxisLabel | XAxisMarkers | YAxisLabel | YAxisMarkers | Y2AxisLabel | Y2AxisMarkers | LegendText | LegendTitle}
- , £n_point_size ) ]+6.1.3 (requires NewGraphics)
- [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 | BUBBLE+6.1.4}]
- [Y2-TYPE=
- {BAR | LINE | PIE | STACKED-BAR | 100%-BAR | OVERLAPPED-BAR | FLOATING-BAR | HISTOGRAM | AREA | STACKED-AREA | 100%-AREA | XY-SCATTER-PLOT | HIGH-LOW-CLOSE | BUBBLE+6.1.4} ]+6.1.3
- [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-AXIS-ROTATE= {£n_0_no_1_yes_N_only_if_more_than_N}]+6.1.3 (requires NewGraphics)
- [{X | Y | Y2+6.1.3}-AXIS-LABEL= {NONE | £t}]
- [{X | Y | Y2+6.1.3}-AXIS-MIN-VALUE= {AUTOSCALE | £n}]
- [{X | Y | Y2+6.1.3}-AXIS-MAX-VALUE= {AUTOSCALE | £n}]
- [{X | Y | Y2+6.1.3}-AXIS-SCALE= {LINEAR | LOG}]
- [{X | Y | Y2+6.1.3}-AXIS-MAJOR-TICK-MARKS= {YES | NO}]
- [{X | Y | Y2+6.1.3}-AXIS-MINOR-TICK-MARKS= {NO | YES}]
- [{X | Y | Y2+6.1.3}-AXIS-MAJOR-INCREMENT= {AUTOSCALE | £n}]
- [{X | Y | Y2+6.1.3}-AXIS-MINOR-INCREMENT= £n]
- [{X | Y}-AXIS-TICK-MARK-PLACEMENT=
- {OUTSIDE | INSIDE | BOTH}]
- [{X | Y}-AXIS-GRID= {YES | NO}]
- [{Y | Y2}-AXIS-MASK= {t_number_edit_mask}]+6.1.4 (requires NewGraphics)
- END-DECLARE
- DECLARE-COLOR_MAP +6.0
- [color_name=(rgb)]
- ...
- END-DECLARE
- DECLARE-CONNECTION +5.1 connection_name (DDO)
- {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
- [SET-GENERATIONS= (£t_dimension1,£n_hierarchy1[,£t_dimension2,£n_hierarchy2[, ...]])] +6.0
- [SET-LEVELS= (£t_dimension1,£n_level1[,£t_dimension2,£n_level2[, ...]])] +6.0
- [SET-MEMBERS= (£t_dimension1,£t_level1[,£t_dimension2,£t_level2[, ...]])] +6.0
- 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 | PDF+6.1.3 | LP | PS | HP | HT+4.0| PD+6.1.3}]
- [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:-6.0
- [ON-ERROR=procedure_name]
- [#n_status=]stored_procedure_name
- [(parameter_name=value [;...]) ]
- SYBASE AND MICROSOFT SQLSERVER SYNTAX:
- [-XC]+4.3 (SYBASE)
- [-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] (SYBASE and ODBC)
- 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)]...]
- GET-COLOR +6.0
- [PRINT-TEXT-FOREGROUND = ($t)]
- [PRINT-TEXT-BACKGROUND = ($t)]
- 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_date_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_initial_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_initial_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] [ENCODING= {$t_encoding | &t_encoding | Unquoted_Encoding}]+6.1.3 (requires UseUnicodeInternal=True)
- 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}
- [TYPE=
- {BAR | LINE | PIE | STACKED-BAR | 100%-BAR | OVERLAPPED-BAR | FLOATING-BAR | HISTOGRAM | AREA | STACKED-AREA | 100%-AREA | XY-SCATTER-PLOT | HIGH-LOW-CLOSE | BUBBLE+6.1.4 | $t | &t}]
- [DATA-ARRAY-COLUMN-LABELS= {NONE | array_name | (~t_label1,~t_label2,...)}]
- [COLOR-PALETTE= t_palette_name]+6.0 (requires NewGraphics)
- [Y2-TYPE=
- {BAR | LINE | PIE | STACKED-BAR | 100%-BAR | OVERLAPPED-BAR | FLOATING-BAR | HISTOGRAM | AREA | STACKED-AREA | 100%-AREA | XY-SCATTER-PLOT | HIGH-LOW-CLOSE | BUBBLE+6.1.4 | $t | &t} ]+6.1.3
- {Y2-DATA-ARRAY= {array_name}}+6.1.3
- {Y2-DATA-ARRAY-ROW-COUNT= i_row_count}+6.1.3
- {Y2-DATA-ARRAY-COLUMN-COUNT= i_col_count}+6.1.3 ]
- [Y2-DATA-ARRAY-COLUMN-LABELS= {NONE | array_name | (~t_label1,~t_label2,...)}]+6.1.3
- [Y2-COLOR-PALETTE= t_palette_name]+6.1.3 (requires NewGraphics)
- [DATA-LABELS= {NO | YES | $t | &t}]+6.0 (requires NewGraphics)
- [ITEM-COLOR=
- ( {ChartBackground | ChartForeground | HeaderBackground | HeaderForeground | FooterBackground | FooterForeground | LegendBackground | LegendForeground | ChartAreaBackground | ChartAreaForeground | PlotAreaBackground}
- , {(rgb) | t_color_name} ) ]+6.0 (requires NewGraphics)
- [ITEM-SIZE=
- ( {Title | SubTitle | XAxisLabel | XAxisMarkers | YAxisLabel | YAxisMarkers | Y2AxisLabel | Y2AxisMarkers | LegendText | LegendTitle}
- , ~n_point_size ) ]+6.1.3 (requires NewGraphics)
- [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}]
- [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-AXIS-ROTATE= {n_0_no_1_yes_N_only_if_more_than_N}]+6.1.3 (requires NewGraphics)
- [{X | Y | Y2+6.1.3}-AXIS-LABEL= {NONE | t}]
- [{X | Y | Y2+6.1.3}-AXIS-MIN-VALUE= {AUTOSCALE | n}]
- [{X | Y | Y2+6.1.3}-AXIS-MAX-VALUE= {AUTOSCALE | n}]
- [{X | Y | Y2+6.1.3}-AXIS-SCALE= {LINEAR | LOG | $t | &t}]
- [{X | Y | Y2+6.1.3}-AXIS-MAJOR-TICK-MARKS= {YES | NO | $t | &t}]
- [{X | Y | Y2+6.1.3}-AXIS-MINOR-TICK-MARKS= {NO | YES | $t | &t}]
- [{X | Y | Y2+6.1.3}-AXIS-MAJOR-INCREMENT= {AUTOSCALE | n}]
- [{X | Y | Y2+6.1.3}-AXIS-MINOR-INCREMENT= n]
- [{X | Y}-AXIS-TICK-MARK-PLACEMENT=
- {OUTSIDE | INSIDE | BOTH | $t | &t}]
- [{X | Y}-AXIS-GRID= {YES | NO | $t | &t}]
- [{Y | Y2}-AXIS-MASK= {t_number_edit_mask}]+6.1.4 (requires NewGraphics)
- 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-6.0, ODBC+4.0 , DB2+4.0 , Informix+4.0 , RDB-4.0 , Ingres-6.0)
- SBTOMBS +4.2 $t_single_byte_string_to_convert_to_multi_byte (Double-Byte version only)
- SECURITY +6.0
- {MODE={ON | OFF | $t | &t}}
- [SET=t_sid[,t_sid]...]
- [APPEND=t_sid[,t_sid]...]
- [REMOVE=t_sid[,t_sid]...]
- SET-COLOR +6.0
- [PRINT-TEXT-FOREGROUND = (rgb | t_color_name)]
- [PRINT-TEXT-BACKGROUND = (rgb | t_color_name)]
- SET-DELAY-PRINT +6.0 v_var_previously_printed_with_delay WITH value
- 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 | n+4.3.2}... 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
- BIT-WISE OPERATORS+6.1.4 (In descending order of precedence)...
- bitand
- bitor bitxor
- 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
- HEX+6.1.4(n_num) --> $t_lower_case_hex_notation
- 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
- REPLACE+6.0({t_source | d_source}, t_orig, t_repl) -->
- $t_source_with_each_orig_str_replaced_with_repl_str
- 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_corresponding_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
- UNICODE STRING FUNCTIONS+6.1.3 (requires UseUnicodeInternal=True)
- LENGTHP({t_source | d_source}) --> #i_print_positions__half-width_chars_=_1_&_full-width_=_2
- LENGTHT({t_source | d_source}, t_encoding) --> #i_bytes_in_source_when_converted_to_encoding
- SUBSTRP({t_source | d_source}, i_start_pos, i_len) -->
- $t_len_print_positions_from_source_starting_at_pos__if_middle_of_full-width_start_rounded_up_&_len_rounded_down
- SUBSTRT({t_source | d_source}, i_start_pos, i_len, t_encoding) -->
- $t_len_bytes_from_source_converted_to_encoding_starting_at_pos_partial_chars_removed
- TRANSFORM({t_source | d_source}, t_transform_code) --> $t_source_in_unicode_based_on_transform_code
- Supported Transform Codes:
- ToLowercase, ToUppercase, ToFullwidth, ToHalfwidth, ToHiragana, ToParagraphSeparator, ToKatakana, Decompose, Compose, ToCombiningMark, ToSpacingMark, ToLineSeparator, ToCanonical, ToTraditionalChinese, ToSimplifiedChinese, RomajiToHiragana, RomajiToKatakana, KanaToRomaji, KanaToKunrieRomaji, KanaToHebonRomaji, ToLatinNumber, HankakuKatakanaToZenkaku, ZenkakuKatakanaToHankaku
- UNICODE({t_source_big-endian_hexidecimal_values}) --> $t_unicoded
- 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
- BACKGROUND +6.0 = (rgb | t_color_name)
- 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
- DELAY +6.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&