jBASE Environment Variables
jBASE Environment Variables
1
Copyright
Copyright (c) 2006 TEMENOS HOLDINGS NV
All rights reserved.
This document contains proprietary information that is protected by copyright. No part of this
document may be reproduced, transmitted, or made available directly or indirectly to a third party
without the express written agreement of TEMENOS UK Limited. Receipt of this material
directly from TEMENOS UK Limited constitutes its express permission to copy. Permission to
use or copy this document expressly excludes modifying it for any purpose, or using it to create a
derivative therefrom.
Acknowledgements
Information regarding Unicode has been provided in part courtesy of the Unicode Consortium.
The Unicode Consortium is a non-profit organization founded to develop, extend and promote
use of the Unicode Standard, which specifies the representation of text in modern software
products and standards. The membership of the consortium represents a broad spectrum of
corporations and organizations in the computer and information processing industry. The
consortium is supported financially solely through membership dues. Membership in the Unicode
Consortium is open to organizations and individuals anywhere in the world who support the
Unicode Standard and wish to assist in its extension and implementation.
Portions of the information included herein regarding IBM’s ICU has been reprinted by
permission from International Business Machines Corporation copyright 2001
jBASE, jBASE BASIC, jED, jSHELL, jLP, jEDI, jCL, jQL, j1, j2 j3 j4 and jPLUS files are
trademarks of TEMENOS Holdings NV.
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun
Microsystems, Inc. in the United States and other countries.
Windows, Windows NT, and Excel are either registered trademarks or trademarks of Microsoft
Corporation in the United States and/or other countries.
UNIX is a registered trademark in the United States and other countries licensed exclusively
through X/Open Company Limited.
Other company, product, and service names used in this publication may be trademarks or service
marks of others.
2
Errata and Comments
If you have any comments regarding this manual or wish to report any errors in the
documentation, please document them and send them to the address below:
Please include your name, company, address, and telephone and fax numbers, and email address
if applicable. [email protected]
3
Contents
4
INTERNATIONALISATION ......................................................................................... 40
JBASE_I18N ..................................................................................................... 40
JBASE_CODEPAGE ........................................................................................ 41
JBASE_LOCALE.............................................................................................. 42
JBASE_TIMEZONE ......................................................................................... 43
DEVELOPMENT ....................................................................................................... 44
JBCDEV_BIN ................................................................................................... 44
JBCDEV_LIB.................................................................................................... 45
JBCTTYNAME................................................................................................. 46
JBCERRFILE .................................................................................................... 47
JBCSPOOLERDIR............................................................................................ 48
JBC_DESPOOLSLEEP..................................................................................... 49
JBC_CRREQ ..................................................................................................... 50
JBCLISTFILE ................................................................................................... 52
JBCSCREEN_WIDTH...................................................................................... 53
JBCPRINTER_DEPTH..................................................................................... 54
JBCPRINTER_WIDTH .................................................................................... 55
JBASE REMOTE FILE SERVER (JRFS) .................................................................... 56
JBCNETACCESS ............................................................................................. 56
JBCNETDIR...................................................................................................... 57
JRFS_CHK_REMOTE...................................................................................... 58
5
Documentation Conventions
This manual uses the following conventions:
Convention Usage
BOLD In syntax, bold indicates commands, function names, and options. In text,
bold indicates keys to press, function names, menu selections, and MS-
DOS commands.
UPPERCASE In syntax, italic indicates information that you supply. In text, italic also
Italic indicates UNIX commands and options, filenames, and pathnames.
Courier
Courier indicates examples of source code and system output.
Courier Bold
Courier Bold In examples, indicates characters that the user types or
keys (for example, <Return>).
[] Brackets enclose optional items. Do not type the brackets unless indicated.
{} Braces enclose nonoptional items from which you must select at least one.
Do not type the braces.
ItemA | itemB A vertical bar separating items indicates that you can choose only one
item. Do not type the vertical bar.
... Three periods indicate that more of the same type of item can optionally
follow.
⇒ A right arrow between menu options indicates you should choose each
option in sequence. For example, “Choose File ⇒Exit” means you should
choose File from the menu bar, and then choose Exit from the File pull-
down menu.
Syntax lines that do not fit on one line in this manual are continued on subsequent lines.
The continuation lines are indented. When entering syntax, type the entire syntax entry,
including the continuation lines, on the same input line.
2
ENVIRONMENT VARIABLES
jBASE uses a number of environment variables to modify jBASE behavior. Suitable defaults
apply to most of them. Although most environment variables can be set any time, the best place
to do so is in the .profile script.
Windows UNIX
echo %variable%
echo $variable
Variables can be configured in the System
environment for all users, and/or on a per user This works for all shells, although one can do
basis via the user environment. Additional “export variable=value” in ksh, etc.
variables for jBASE can also be added to the
Variables are usually configured in the .profile of
current user configuration registry.
the user login directory although global variables
Win9x variables are usually configured in the can be added to the /etc/profile script.
AutoExec.bat. Care should be taken that the
environment area does not become overwritten
on Win9x as it is initially quite small,
approximately 512 bytes. Subsequent .bat
commands should increase the required
environment space. Setting it in the config.sys
file can explicitly increase the environment
space:
shell=c:\command.com /e:2048 /p
3
jBASE PROGRAMS
The jBASE BASIC functions PUTENV and GETENV can be used to manipulate environment
variables. For example:
IF PUTENV (envar=x) THEN ELSE NULL
IF GETENV (envar) THEN ELSE NULL
jBASE Initialization
Some environment variables can only be set before jBASE initialization. jBASE initialization
occurs when the first jBASE program is executed for a particular “PORT”.
The jBASE initialization process reads the environment entries looking for possible variables
required by jBASE. These environment variables continue to be valid as long as the “PORT” is
still active. Some environment variables can be changed by subsequent program execution. The
state of these variables is imported back into the local environment after program execution.
For instance:
T-ATT requires a “PORT” against which it saves the tape device assignment
.SP-ASSIGN requires a “PORT” with which to save assignment status for print jobs
READNEXT in a program after SELECT/GET-LIST
With jBASE 4.1 all programs execute in the same process unless explicitly executed via the
chars(255) *.k construct.
UNIX Windows
4
Initial Environment Variables
Variables cannot be imported again after jBASE initialization.
PATH Pathnames of executables
HOME Pathname of user home directory
LD_LIBRARY_PATH Pathnames of system libraries (UNIX only)
LIBPATH Pathnames of system libraries (AIX only)
SHLIB_PATH Pathnames of system libraries (HPUX only)
LANG Language type (UNIX only)
LC_ALL Locale (Unix only)
TZ Timezone (Unix only)
TERM Specifies terminal type as per terminfo database
TERMINFO Specifies directory for terminal settings
JBCPORTNO Forced Port number for use by user. (Usually allocated)
JBCLOGNAME User name to use in-place of login id
JBCGLOBALDIR Pathname of jBASE global configuration directory
JBCRELEASEDIR Pathname of jBASE release directory
JBCEMULATE Emulation to be used for this user
JEDIFILEPATH Directory Paths of application files location
JEDIFILENAME_MD Pathname of file to be used for MD entries
JEDIFILENAME_SYSTEM Pathname of file to be used for SYSTEM entries
5
Additional jBASE Environment Variables
6
DEVELOPMENT - Environment Variables
JBCDEV_BIN Set to alternate path to catalog executables.
Windows - %home%\bin
UNIX - $HOME/bin
JBCDEV_LIB Set to alternate path to catalog libraries.
Windows - %home%\lib
UNIX - $HOME/bin
7
EMBEDDED SQL - Environment Variables
Setting these environment variables overrides the jcompile built-ins when processing files
containing Embedded SQL using the -Jq<flavour> option.
EXAMPLE
For Oracle Pro*C Embedded SQL pre-compiler, on Windows the following environment
variables can be set (assuming e.g. ORACLE_HOME=C:\Oracle\product\9.2.0.1.0\Client_1):
JBC_SQLLIBS=%ORACLE_HOME%\oci\lib\msvc\oci.lib /libpath:%ORACLE_HOME
%\precomp\lib /libpath:%ORACLE_HOME%\precomp\lib\msvc orasql9.LIB
JBC_SQLPREPROC=proc mode=oracle ltype=none ireclen=255 oreclen=255
iname=
Assuming that the PATH environment is also configured for Embedded SQL, the command
jcompile -Jqo SqlDemo.b compiles the jBASE BASIC program, including passing it through the
Oracle Pro*C pre-processor.
EXAMPLE
To convert all files on “jbackup” tape to J4 files set the following environment variable is using
jrestore.
Export JEDI_PREFILEOP=TYPE=J4 (UNIX) Can use quotes to surround multiple parameters
set JEDI_PREFILEOP=TYPE=J4 (NT)
Don’t use quotes
8
JRFS_HOSTNAME Allows the jRFS client to override the target host
9
PUTENV - Command
Used to set environment variables for the current process
COMMAND SYNTAX
PUTENV (expression)
SYNTAX ELEMENTS
NOTES:
PUTENV only sets environment variables for the current process and processes spawned (say by
EXECUTE) by this process. These variables are known as export only variables.
See also GETENV.
EXAMPLE
10
GETENV - Command
All processes have an environment associated with them that contains a number of variables
indicating the state of various parameters. The GETENV function allows a jBASE BASIC
program to determine the value of any of the environment variables associated with it.
COMMAND SYNTAX
SYNTAX ELEMENTS
The expression should evaluate to the name of the environment variable whose value is to be
returned. The function will then assign the value of the environment variable to variable. The
function itself returns a Boolean TRUE or FALSE value indicating the success or failure of the
function.
NOTES:
See the UNIX documentation for the Bourne shell (sh) or the Windows on-line help for
information on environment variables. Click here for information regarding environment
variables unique to the jBASE system.
See also PUTENV
EXAMPLE
11
PATH
DESCRIPTION
The PATH variable contains a list of all directories that contain executable programs. As a
minimum, this should contain the shell default value plus the path /the shell sees usr/jbc/bin so
that j JBASE commands. You will also wish to add the path of your application executable
directory (such as ${HOME}/bin).
VALUES
DEFAULT
The default depends entirely upon your UNIX system and how it has been set up.
SETTINGS
Normal UNIX environment variable, so it can be set at any time by the commands:
UNIX Windows
12
LD_LIBRARY_PATH
DESCRIPTION
VALUES
DEFAULT
None
SETTINGS
Normal UNIX environment variable, so it can be set at any time by the commands:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/jbc/lib
export LD_LIBRARY_PATH
13
TERM
DESCRIPTION
On UNIX, this variable should be set to your terminal type as defined by the UNIX terminfo
database
On Windows, it should be set to a value in any of the directories under
%JBCRELEASEDIR%\misc.
VALUES
DEFAULT
On UNIX, the default depends upon your system and how it has been set up.
SETTING
UNIX Windows
TERM=vt220
SET TERM=vt220
export TERM
14
TERMINFO
DESCRIPTION
The TERMINFO environment variable is used for terminal handling. The environment variable is
supported only on platforms that provide full support for the terminfo libraries that System V and
Solaris UNIX systems provide.
VALUES
The TERMINFO environment variable defines a directory where the terminal settings are read from.
DEFAULT
On UNIX, the default depends upon your system and how it has been set up.
SETTING
UNIX Windows
TERMINFO=/usr/term
SET TERMINFO=c:\term
export TERMINFO
15
JBCPORTNO
DESCRIPTION
This defines your current port number and is useful when a particular user wishes to keep the
same port number whenever they log on. On UNIX, it takes a sensible default, but this default
may change if the UNIX configuration is changed. On Windows, port numbers are allocated
sequentially from zero.
VALUES
DEFAULT
None
SETTING
UNIX WINDOWS
Set in the .profile prior to execution of set before invoking the jSHELL
initial jBASE program
NOTES
UNIX Windows
On UNIX platforms, jBASE will assign the On Windows, if the specified port number is in
lowest available port number from the list or use then the connecting process is given the
range specified. If all port numbers specified by next highest port number available. jBASE
JBCPORTNO are already in use then the user is OBjEX processes are automatically assigned
denied access. port numbers from 5,000. Processes run in the
Port number is already logged on and in use background (see jstart -b) are assigned port
numbers from 10,000 but a GETENV () on
From Port 45, tty /dev/pts/1, JBASE pid 16754
JBCPORTNO will always return -1.
16
JBCLOGNAME
DESCRIPTION
The account name as perceived by commands such as “WHO” or conversions such as U50BB
will normally be returned as the login name of the UNIX user (LOGNAME variable). However if
you wish your users to login with personal ids but execute as if they were all on the same account
you may set this variable to override the default. The account name will be returned to whatever
this environment variable is set.
VALUES
DEFAULT
None
SETTING
UNIX WINDOWS
NOTES
UNIX Windows
17
JBCGLOBALDIR
DESCRIPTION
VALUES
DEFAULT
UNIX Windows
/usr/jbc C:\JJBASE4\4.1
SETTING
UNIX Windows
As per normal environment variable, should be This is set in the registry when jBASE is
setup in the *.profile installed. See
JBCGLOBALDIR=/usr/jbc
HKEY_LOCAL_MACHINE/SOFTWARE/JA
export JBCGLOBALDIR
C/jJBASE/3.0/CURRENT_CONFIG
This value can be overridden by setting
JBCGLOBALDIR as an environment variable.
18
JBCRELEASEDIR
DESCRIPTION
Defines the release directory for the jBASE system executables and libraries
VALUES
UNIX Windows
SETTING
UNIX Windows
19
JBCDATADIR
DESCRIPTION
Defines the location for jBASE to determine any configured databases. Overrides the default
setting for the spooler directory.
NOTES
When the JBCSPOOLERDIR is not defined, the default setting for the jBASE spooler directory
is $JBCDATADIR/jbase_data. When JBCDATADIR is not set, the default setting is
$JBCGLOBALDIR/jbase_data.
VALUES
UNIX Windows
/opt/jbase4/4/1/jbase_data C:\JBASE4\4.1\jbase_data
SETTING
UNIX Windows
20
JBCEMULATE
DESCRIPTION
When importing legacy applications, this variable tells the jBASE what system it originally ran
on. NOTE: that programs and subroutines imported from different systems may be freely mixed.
VALUES
jBASE, adds, ape, fuj, prime, ros, r83, r91, ultimate, universe
.The values reference labels in the Config_EMULATE file.
DEFAULT
SETTING
UNIX Windows
21
JEDIFILEPATH
DESCRIPTION
This environment variable provides a list of directories in which to search for jBASE data files. If
an MD or VOC file is configured with F / Q pointers, these take precedence over the directories
in the JEDIFILEPATH.
VALUES
DEFAULT
SETTING
As per normal environment variable, so it can be set at any time. The use of relative file paths
(such as “.”) should be avoided as it can result in unintended file access.
UNIX Windows
JEDIFILEPATH=/appvol/WB1:/appvol SET
/WB2:/appvol/WB3 JEDIFILEPATH=F:\apps\WB1;F:\apps
export JEDIFILEPATH \WB2;F:\apps\WB3
22
JEDIFILENAME_MD
DESCRIPTION
This variable should be used if you require the use of the MD/VOC file to hold Q pointers, jCL
programs, paragraphs or entries for the jQL language. If you have loaded an account-save into
your home directory then you might wish to set this variable. This will then allow you to:
Execute jCL programs and paragraphs directly from the MD/VOC (using jsh or
EXECUTE/CHAIN etc.) On systems with 14 char filename limits, create cross-reference items
for executables from the original name to the new name. F pointers and Q pointers in an MD /
VOC take precedence over paths in the JEDIFILEPATH.
VALUES
Valid file path; while it is not required, it is strongly advised that this value be set to the complete
path of the MD and not a relative path (as an example, “/home/bob/MD]D” should be used
instead of “./MD]D”).
DEFAULT
None
SETTING
As per normal environment variable, so it can be set at any time by the commands:
UNIX Windows
JEDIFILENAME_MD=/usr/GLOBAL/MD SET
export JEDIFILENAME_MD JEDIFILENAME_MD=D:\GLOBAL\VOC
23
JEDIFILENAME_SYSTEM
DESCRIPTION
If you are using Q pointers in a defined MD/VOC file then you may well need to create a
SYSTEM file to define the home directories of other accounts. By default Q-pointers are resolved
by using the $JBCRELEASEDIR/src/SYSTEM file. Setting the JEDIFILENAME_SYSTEM
variable to an alternative hash file or directory can change this.
While it is not required, it is strongly advised that this value be set to the complete path of the
system file and not a relative path (as an example, “/home/islandjim/SYSTEM]D” should be used
instead of “./SYSTEM]D”).
VALUES
DEFAULT
None
SETTING
As per normal environment variable, so it can be set at any time by the commands:
UNIX Windows
export SET
JEDIFILENAME_SYSTEM=/home/altern JEDIFILENAME_SYSTEM=D:\home\alte
ative/SYSTEM rnative\SYSTEM
24
JEDIENABLEQ2Q
DESCRIPTION
VALUES
DEFAULT
Not set
SETTING
UNIX Windows
25
JEDI_DISTRIB_DEFOPEN
DESCRIPTION
Setting this environment variable will defer the OPENing of component or part files in a
distributed file set until the component file is required to be opened by the application program.
VALUES
DEFAULT
Not set.
SETTING
UNIX Windows
26
JEDI_SECURE_LEVEL
DESCRIPTION
Defines the security level for files which support configurable flushing.
VALUES
DEFAULT
SETTING
UNIX Windows
Performance Implications
There is a performance penalty to pay for running in secure mode levels 2 and 3.
Level 2 will protect against file corruption by flushing the file from memory to disk when certain
operations occur. However, it will not protect against loss of data. Most operating systems will
periodically flush this data, usually a tuneable system and often with a default of every 60
seconds. Therefore, if you can withstand a loss of up to 60 seconds of data, and your primary
concern is that the files are not corrupted in the event of a system failure, then this is the level for
you. Minimal impact on performance is seen so long as your files are properly sized. Even if they
go out of the main group, performance is only impacted if the extended group size keeps varying
considerably.
Level 3 will protect against almost everything including loss of data. This impacts most on the
system. The actual level of performance impact depends greatly on your application. For
example, most of your updates may be to very large files in a pseudo-random manner (e.g.
updating stock records, customer details etc.). In this situation, all this does is move the overhead
from the operating system flush daemon that runs about every 60 seconds (see Level 2 above) to
the process doing the update. Therefore, it may be a case of “What you lose on the roundabouts
27
you gain on the swings!” On the other hand, you may have a small file regularly being updated
with things like current days orders. In this case the impact will be substantial as you will be
causing a disk update for each application WRITE, whereas without this you might do many of
these WRITEs before the operating system daemon does a single write.
Another way to control your flushing of data to disk is to use transaction boundaries. For
example, the following jBASE BASIC code will cause all data to be flushed to disk for all files
regardless of the file type or file status
TRANSTART ELSE PRINT “Error” ; STOP
In the above example the secure mode is disabled during the COPY, command and so will
perform much quicker. When the COPY is completed, it is normal operating system practice to
flush all modified file data to disk anyway.
See Also: CREATE-FILE, Transaction Boundaries, Transaction Journaling
28
JBC_TCLRESTART
DESCRIPTION
VALUES
Restart Program
DEFAULT
SETTING
UNIX Windows
Create the JBC_TCLRESTART environment Set before any jBASE program is invoked. The
variable in the .profile prior to execution of environment variable should contain the
initial jBASE program command string to execute when the user would
otherwise go to a shell Prompt.
To later enable the feature, use the BITSET(-2); to later disable the feature, use the BITRESET(-
2)
29
JBC_ENDRESTART
DESCRIPTION
VALUES
DEFAULT
SETTING
UNIX Windows
To later enable the feature, use the BITSET (-3); to later disable the feature, use the BITRESET
(-3)
30
JBCOBJECTLIST
DESCRIPTION
Defines the directories to find user shared object libraries where user subroutines are located.
VALUES
DEFAULT
%HOME%\lib (Windows)
$HOME/lib (UNIX)
NOTE: it is good practice to set JBCOBJECTLIST explicitly rather than relying on the default
setting. This is because the value of the HOME environment variable may change (for example
after a LOGTO).
SETTING
UNIX Windows
Set in the .profile before execution of the Set before the jSHELL is invoked.
initial jBASE Program. SET
JBCOBJECTLIST=$HOME/lib:/home/TE JBCOBJECTLIST=%HOME%\lib;C:\dev\
STJBASE/lib TESTJBASE\lib
export JBCOBJECTLIST
31
JBC_BLOCK_SYSTEM14
DESCRIPTION
When this environment variable is set, it calls SYSTEM(14) which results in a 100-millisecond
delay.
VALUES
DEFAULT
not set.
SETTING
As per normal environment variable, the environment variable can be set dynamically with
PUTENV
UNIX Windows
SET JBC_BLOCK_SYSTEM14=1
JBC_BLOCK_SYSTEM14=1
export JBC_BLOCK_SYSTEM14
NOTE: Looking for type ahead data using SYSTEM(14) in a tight loop can have a detrimental
impact on system performance because left unchecked, such loops can consume all available
system resources. With JBC_BLOCK_SYSTEM14 set, each call to SYSTEM(14) incurs a 100-
millisecond delay, so a loop with SYSTEM(14) doesn’t waste system resources by looping too
quickly.
It should be noted that the accuracy of the pause is dependent on the granularity of the system
clock and the load on the system. Most operating systems and hardware will provide a granularity
of 10 milliseconds.
32
JBASEUNIQUE
DESCRIPTION
When this environment variable is set to a directory, jBASE dynamically creates and deletes
workfiles jBASEWORK_nn where nn is the port number. This can be used in place of
JBASETMP.
VALUES
DEFAULT
not set.
SETTING
UNIX Windows
SET JBASEUNIQUE=%HOME%\jBASEWORK
JBASEUNIQUE=$HOME/jBASEWORK
export JBASEUNIQUE
Setting this environment variable is recommended in a high user environment as a single workfile
for all ports can result in a bottleneck.
33
JBASE_ERRMSG_NON_NUMERIC
DESCRIPTION
Defines behaviour when a BASIC program encounters a numeric operation being attempted on a
non-numeric value. The default behaviour is to raise an error and drop into the debugger.
VALUES
DEFAULT
SETTING
The value stored in a bit mask so different behaviours can be combined by adding them together.
For example, to suppress the error message and avoid going into the debugger – set the variable
to 3. As per normal environment variable, the environment variable can be set dynamically with
PUTENV
UNIX Windows
34
JBASE_ERRMSG_TRACE
DESCRIPTION
VALUES
DEFAULT
SETTING
The only valid values for this variable are 1 or 0. Setting this variable will not interfere with the
behaviour set by other JBASE_ERMSG environment variables. As per normal environment
variables, it can be set dynamically using PUTENV
UNIX Windows
35
JBASE_ERRMSG_ZERO_USED
DESCRIPTION
Defines behaviour when a BASIC program encounters a null variable. The default behaviour is to
raise an error and drop into the debugger.
VALUES
DEFAULT
SETTING
The value stored in a bit mask so different behaviours can be combined by adding them together.
For example, to suppress the error message and avoid going into the debugger – set the variable
to 3. As per normal environment variable, the environment variable can be set dynamically with
PUTENV
UNIX Windows
36
JBASE_WIN_TERM_SVR
DESCRIPTION
This should be set on servers running Windows Terminal Server before starting the License Server,
and for all sessions wishing to access jBASE licences. It enables global access to shared memory to
enable MTS sessions to obtain a jBASE licence.
VALUES
Set or unset.
DEFAULT
Unset.
SETTING
UNIX Windows
37
JBASE_SVR_SESSION
DESCRIPTION
On a machine with mixed enterprise and server licenses available, indicates that a server license
is required.
VALUES
Set or unset.
DEFAULT
Unset.
SETTING
On sites with both server and enterprise licenses installed, an enterprise license will be assumed
unless JBASE_SVR_SESSION is set to 1. With server only licenses installed,
JBASE_SVR_SESSION must be set in order to obtain a license. Failure to do so will result in a
licensing error. With enterprise only licenses installed, setting this environment variable will not
allow a license to be allocated and a license error will be produced.
UNIX Windows
38
JBC_INVERT_ALPHA_CHARS
DESCRIPTION
Provided to emulate input on UniVerse systems. If this environment variable is set, all INPUT,
KEYIN() and IN statements will receive input values in the opposite case. In other words, lower
case characters will become upper case and vice-versa. Characters within cursor control
sequences are also inverted, consequently up, down, left and right arrows will no longer work as
required with this variable set.
VALUES
Set or unset.
DEFAULT
Unset..
UNIX Windows
39
Internationalisation
JBASE_I18N
DESCRIPTION
VALUES
Set or unset.
DEFAULT
not set.
SETTING
UNIX Windows
SET JBASEI18N=1
JBASEI18N=1
export JBASEI18N
40
JBASE_CODEPAGE
DESCRIPTION
Setting this environment variable sets the codepage to use for UTF8 conversion. This will have
no effect unless internationalisation is switched on using JBASEI18N..
VALUES
Any valid code page. Use jcodepages utility for a list of supported code pages.
DEFAULT
not set.
SETTING
UNIX Windows
SET JBASE_CODEPAGE=latin1
JBASE_CODEPAGE=latin1
export JBASE_CODEPAGE
41
JBASE_LOCALE
DESCRIPTION
Setting this environment variable sets the locale to use for UTF8 collation, sorting and date
settings. This will have no effect unless internationalisation is switched on using JBASEI18N..
VALUES
Any valid locale. Use jlocales utility for a list of supported locales.
DEFAULT
not set.
SETTING
UNIX Windows
SET JBASE_LOCALE=en_GB
JBASE_LOCALE=en_GB
export JBASE_LOCALE
42
JBASE_TIMEZONE
DESCRIPTION
Setting this environment variable sets the timezone to use for UTF8 timestamp conversion into
local time for display. This will have no effect unless internationalisation is switched on using
JBASEI18N..
VALUES
Any valid timezone. Use jcodepages utility for a list of supported code pages.
DEFAULT
not set.
SETTING
UNIX Windows
SET JBASE_TIMEZONE=Europe/London
JBASE_TIMEZONE=Europe/London
export JBASE_TIMEZONE
43
Development
JBCDEV_BIN
DESCRIPTION
Defines the directory where user executables will be built when programs are CATALOGed.
VALUES
DEFAULT
%HOME%\bin (Windows)
$HOME/bin (UNIX)
NOTE: it is good practice to set JBCDEV_BIN explicitly rather than relying on the default
setting. This is because the value of the HOME environment variable may change (for example
after a LOGTO
The value of JBCDEV_BIN can be overridden with the CATALOG -o option.
See also: JBCDEV_LIB, PATH.
SETTING
UNIX Windows
JBCDEV_BIN=/home/TESTJBASE/bin SET
export JBCDEV_BIN JBCDEV_BIN=C:\dev\TESTJBASE\bin
44
JBCDEV_LIB
DESCRIPTION
Defines the directory where user shared object libraries will be built when subroutines are
CATALOGed.
VALUES
DEFAULT
%HOME%\lib (Windows)
$HOME/lib (UNIX)
NOTE: it is good practice to set JBCDEV_LIB explicitly rather than relying on the default
setting. This is because the value of the HOME environment variable may change (for example
after a LOGTO).
The value of JBCDEV_LIB can be overridden with the CATALOG -L option.
See also: JBCDEV_BIN, JBCOBJECTLIST.
SETTING
UNIX Windows
JBCDEV_LIB=/home/TESTJBASE/lib SET
export JBCDEV_LIB JBCDEV_LIB=C:\dev\TESTJBASE\lib
45
JBCTTYNAME
DESCRIPTION
This variable defines your UNIX tty name. If this variable is not defined then jBASE must use
the UNIX system call ttyname () to locate it. On some systems, this function call is very slow but
the use of this variable will greatly improve execution start-up times.
VALUES
DEFAULT
None
SETTING
As per normal UNIX environment, variable should be setup in the .profile before executing the
initial jBASE program.
JBCTTYNAME=Jterm
export JBCTTYNAME
46
JBCERRFILE
DESCRIPTION
VALUES
DEFAULT
$JBCRELEASEDIR/jbcmessages (UNIX)”
%JBCRELEASEDIR%\jbcmessages (Windows)
SETTING
UNIX Windows
SET
JBCERRFILE=/usr/global/jBASEerrors
JBCERRFILE=C:\jstuff\jbcmessages
export JBCERRFILE
NOTES: Setting this environment variable allows you to have more than one version of the
messages displayed by jBASE. This could be desirable if you want different messages or
different behavior when an error is encountered, depending on the user. For example, to prevent a
program entering the debugger when an uninitialised variable is encountered, remove the
^WARNING^ string from the ZERO_USED message.
47
JBCSPOOLERDIR
DESCRIPTION
This environment variable defines the directory where the jBASE spooler entries are located.
VALUES
DEFAULT
/usr/jspooler (UNIX)
C:\JJBASE30\jspooler
SETTING
UNIX Windows
setup in the .profile before executing the initial set before the jSHELL is invoked. If using telnet
jBASE program it should be set before the first executable in
REMOTE.cmd.
JBCSPOOLERDIR=/home/alternative/jspooler
SET
JBCSPOOLERDIR=C:\home\alternative\jspooler
48
JBC_DESPOOLSLEEP
DESCRIPTION
By default, the jBASE despooler processes on Windows check for queued jobs every 30 seconds.
This environment variable can be used to decrease or increase that interval. The environment
variable is not required on UNIX because the despooler processes are sent a signal when a new
job has been generated.
VALUES
Number of seconds
DEFAULT
30
SETTING
Windows only: As per normal environment variable it should be set before form queues are
started.
SET JBC_DESPOOLSLEEP=12
49
JBC_CRREQ
DESCRIPTION
Controls whether line feeds and form feeds are followed by a carriage return when printing to the
spooler.
VALUES
0 No translation is performed
linefeed -> linefeed (unchanged)
formfeed -> formfeed (unchanged)
1 Specifies that a carriage return is required after each and every line feed when printing to
the spooler
linefeed -> linefeed + carriage return
formfeed -> formfeed (unchanged)
2 Specifies that a carriage return is required after each form feed when printing to the spooler.
linefeed -> linefeed (unchanged)
formfeed -> formfeed + carriage return
3 specifies that a carriage return is required after each line feed and form feed when printing
to the spooler.
linefeed -> linefeed + carriage return
formfeed -> formfeed + carriage return
DEFAULT
zero
NOTE: When printing to a Printronix printer on UNIX (which converts ‘linefeeds’ to ‘linefeed +
carriage return’ but does not append ‘carriage return’ to ‘form feeds’) you should set
JBC_CRREQ=two.
When printing binary data to a laser (or similar printer) on Windows you should set
JBC_CRREQ=3
In addition, the device definition for the appropriate form queue should specify the -l and -n
options to ‘jlp’ e.g. fqfred PROG jlp -d \\printername -l -n
Alternatively, use the default Windows printer e.g. STANDARD NT
SETTING
50
UNIX Windows
51
JBCLISTFILE
DESCRIPTION
This environment variable specifies the file where stored lists are kept.
VALUES
DEFAULT
If not set, jBASE will attempt to store lists in POINTER-FILE. If it can’t be opened then it will
store lists in jBASEWORK.
SETTING
UNIX Windows
JBCLISTFILE=/home/jim/mylists SET
export JBCLISTFILE JBCLISTFILE=C:\globals\SAVEDLIST
S
52
JBCSCREEN_WIDTH
DESCRIPTION
Specifies the page width for paged terminal output, and overrides the value specified by the
TERM type.
VALUES
Decimal number
DEFAULT
None
SETTING
As per normal environment variable, it should be setup before the jSHELL is invoked.
UNIX Windows
53
JBCPRINTER_DEPTH
Description
This environment variable specifies the page depth for paged spooler output, and overrides the
value specified by the TERM type.
VALUES
Decimal number
DEFAULT
None
SETTING
UNIX Windows
54
JBCPRINTER_WIDTH
DESCRIPTION
Specifies the page width for paged spooler output, and overrides the value specified by the
TERM type.
VALUES
Decimal number
DEFAULT
None
SETTING
UNIX Windows
setup in the. profile before the set before any jBASE program is
jbcconnect command. invoked.
JBCPRINTER_WIDTH=125 SET JBCPRINTER_WIDTH=125
export JBCPRINTER_WIDTH
55
jBASE Remote File Server (jRFS)
JBCNETACCESS
DESCRIPTION
VALUES
DEFAULT
/usr/jbc/config (UNIX)
%JBCRELEASEDIR%\config (Windows)
SETTING
UNIX Windows
56
JBCNETDIR
DESCRIPTION
VALUES
DEFAULT
/usr/jbc/config (UNIX)
%JBCRELEASEDIR%\config (Windows)
SETTING
UNIX Windows
57
JRFS_CHK_REMOTE
DESCRIPTION
This environment variable must be set for any SELECT, SSELECT, or COUNT command to be
attempted on the remote system. If it is not set, the command is executed locally.
VALUES
DEFAULT
Not set
SETTINGS
UNIX Windows
58
Comment Sheet
Please give page number and description for any errors found:
Page Error
Please use the box below to describe any material you think is missing; describe any material
which is not easily understood; enter any suggestions for improvement; provide any specific
examples of how you use your system which you think would be useful to readers of this manual.
Continue on a separate sheet if necessary.
Copy and paste this page to a word document and include your name address and telephone
number. Email to [email protected]