jBASE Files
jBASE Files
jBASE 4.1
Copyright
Copyright (c) 2003 TEMENOS HOLDINGS NV
This document contains proprietary information 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. TEMENOS UK
Limited, makes no warranty of any kind with regard to the material contained in this manual, including
but not limited to the implied warranties of merchantability and fitness for a particular purpose.
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, jBASIC, 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.
iii
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.
TEMENOS UK Limited
Hemel Hempstead
Hertfordshire
HP1 1JY
England
Please include your name, company, address, and telephone and fax numbers, and email address if
applicable. documentation@temenos.com
iv
Contents
Documentation Conventions...................................................................................................................vi
CHAPTER 1 ACCOUNTS...................................................................................1
INDEX ..................................................................................................................I
v
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, uppercase indicates JBASE commands, keywords, and options; BASIC
statements and functions; and SQL statements and keywords. In text, uppercase
also indicates JBASE identifiers such as filenames, account names, schema
names, and Windows NT filenames and pathnames.
UPPERCASE In syntax, italic indicates information that you supply. In text, italic also indicates
Italic
UNIX commands and options, filenames, and pathnames.
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.
A vertical bar separating items indicates that you can choose only one item. Do
ITEMA | ITEMB
not type the vertical bar.
... Three periods indicate that more of the same type of item can optionally follow.
vi
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.
All punctuation marks included in the syntax—for example, commas, parentheses, or quotation
marks—are required unless otherwise indicated.
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.
vii
CHAPTER 1 ACCOUNTS
SYSTEM FILE
The JEDIFILENAME_SYSTEM environment or registry variable determines the location of the
jBASE SYSTEM file. The setup of the environment or registry variable usually occurs when the user
logs on. By default jBASE uses a hash file, named SYSTEM, in a subdirectory, named src, in the
jBASE release directory as defined by the environment or registry variable JBCRELEASEDIR.
Use of the SYSTEM file also depends upon the setting of the environment or registry variable
JEDIFILENAME_MD, which describes the users MD/VOC file. This environment or registry
variable should be set to the users required MD file. E.g. to use an MD file in the users home
directory set the environment or registry variable, JEDIFILENAME_MD to $HOME/MD or
%HOME%\MD
In its minimum form, a record in the SYSTEM file must contain two fields. Field 1 contains the
character “D” to specify a local account, and field 2 contains the absolute path of the account
directory. For example:
ACCOUNTX
001 D
002 C:\users\accx or /accounts/accx
Fields 7 and 11 of the SYSTEM record are used by the jBASE LOGTO and PASSWORD commands.
All other fields are reserved. The full format of a SYSTEM record is as follows:
AccountId
001 Type
002 Absolute Pathname
003 Reserved
004 Reserved
005 Reserved
006 Reserved
007 {Optional encrypted password}
008 Reserved
009 Reserved
010 Reserved
011 {Optional parameters}
ENCRYPTED PASSWORD
Maintain this optional field only through the jBASE PASSWORD command. The PASSWORD
command prompts for an Account Name, which must be a valid entry in the SYSTEM file (i.e. the
file defined by the JEDIFILENAME_SYSTEM environment variable). Enter the password twice for
verification.
NOTE: this password is case sensitive (e.g. “MyPassword” is different than “mypassword”).
OPTIONAL PARAMETERS
The jBASE LOGTO command uses the optional parameters field and allows the environment of each
account to be set up during the LOGTO event. When using the -X option, enclose multiple parameters
or parameters with spaces in single (‘) or double quotes (“).
EXAMPLES
A Dev
Sets JBCLOGNAME to ‘Dev’
H d:\jHOME Windows
-H /usr/home UNIX
Sets the HOME directory
V vt220
Sets the terminal type to ‘vt220’
X “JBCDEV_BIN=d:\jHOME\bin JBCDEV_LIB=d:\jHOME\lib
JBCOBJECTLIST=d:\jHOME\lib”
-X “JBCDEV_BIN=/usr/home/bin JBCDEV_LIB=/usr/home/lib
JBCOBJECTLIST=/usr/home/lib”
NOTE: that the entire environment variable set is enclosed in double quotes.
All of the above examples could be included in attribute 11 of a system record as follows (Windows
example):
2
MD
Use the jBASE MD (or VOC) file to locate jQL modifiers and resolve Q-pointer filenames; the
jSHELL also uses the MD file to lookup jCL programs. The JEDIFILENAME_MD environment
variable determines the location of the jBASE MD file. This environment variable is usually set-up in
the “. Profile” script when the user logs on. If the environment variable is not set-up then the default
path uses $HOME/MD when attempting to open the jBASE MD file. Most accounts/user directories
have an MD file specific to that account/user directory. If users wish to use an MD where the MD file
does not exist the user should use the jBASE CREATE-FILE command to create a single level
dictionary file.
Increase the modulo of the MD file depending on the number of jCL programs and Qpointers it is
expected to contain. In order to use the jQL modifiers such as SORT and SELECT copy the jQL
modifiers into the new MD file. Achieve this using a jBASE script called UpdateMD or by copying
from the jBASE release directory file:
UNIX Windows
/usr/jbc/src/MD \JJBASE30\src\MD
E.g. UpdateMD
3
LOGTO
Switches to the specified user account
LOGTO account-name
Where: account-name is the pseudo account (defined in the SYSTEM file) or, under UNIX, the user
account to switch to
NOTES
The provision of this command is for legacy use and applications. Ideally, new developments should
use “su - account-name” (for UNIX) or the Windows Logout/Login functions.
Execution of this command changes environmental variables differently depending upon the type of
account (pseudo or real) and the OS being used, as shown in the table below:
JBCDEV_BIN Under Windows, only reset if set prior to LOGTO. Under UNIX pseudo
accounts, this is always set. For UNIX accounts, this is not set.
JBCDEV_LIB Under Windows, only reset if set prior to LOGTO. Under UNIX pseudo
accounts, this is always set. For UNIX accounts, this is not set.
JBCLOGNAME Under Windows (and UNIX pseudo accounts), set to the name of the
account you log to. With UNIX accounts, LOGNAME is set.
LOGNAME With UNIX accounts, set to the name of the account you LOGTO
For use under Windows, the user must have a valid SYSTEM file entry defined for the command to
work. In addition, this command does not work when ran from “cmd.exe” (instead, use
jLoginNT.exe).
This command does not directly support any options. However, it is possible to specify options
specific to the new account’s environment via the SYSTEM file entry as follows:
4
-A Accountname Parsed Into JBCLOGNAME
UNIX Only
NOTE: Do not use this command in the command stream for PH-START.
Do not use this command in the Primary input buffer of a jCL command.
EXAMPLES
LOGTO homer
Logs off the current account and into the account “homer”
5
CHAPTER 2 REMOTE FILES
Q Pointers
Remote file pointers are one mechanism by which a client application can access files located on a
remote system.
A Q-pointer is created in the MD file and set to point to a SYSTEM file entry as normal for Q
pointers. E.g
QPTR
001 Q
002 AccountName
003 FileName
The Qpointer is resolved in the normal way to the SYSTEM file entry. However, the SYSTEM file
entry is an Rpointer, usually of the following form.
AccountName
001 R
002
003
004 HostName
The full format of and R pointer SYSTEM entry is as follows:
AccountName
001 R
002 {RemoteAccountName} {ServerName}
003
004 {HostName}
Where
RemoteAccountName - Optional Remote Host SYSTEM file reference.
ServerName - Optional network service name.
HostName - Remote HostName or IP Address
If the optional RemoteAccountName is specified, then searching for remote relative filenames will
start in the directory path specified by the SYSTEM entry on the remote host. If the specified
RemoteAccountName is an invalid accountname entry in the remote SYSTEM file then the open
request will fail with file not found. If left blank then searching for remote relative filenames will
begin in the home directory of the network userid.
Use the optional ServerName to specify an alternative network service required by locating a
matching entry in the services file. If left blank the server name will default to jRFS, which is then
used to reference the services file and find the required network service.
6
NOTE: use a dash, “-“, should as a placeholder to signify a blank RemoteAccountName when only
specifying an alternate ServerName
The HostName is optional and used if specified to determine the network address of the target system
by locating a matching entry in the hosts file. If left blank the target system name will default to the
local host node name or on some systems localhost, which is then used to reference the host’s file and
find the network address of the local system. You can enter the HostName as a dotted IP address.
In order to gain access to the remote system via the jRFS, the client must provide a remoteusername,
which will either be the same as the client user name or a mapped alternative (see later). The supplied
remoteusername must be a valid user name on the remote system or it will deny the connection. The
remoteusername also determines file access permissions.
The combination of the second attribute from the remote Dpointer, or the remote home directory of
the remoteusername, and the third attribute from the Qpointer produces the filepath for the file
referenced by the Qpointer. However, if the third attribute from the Qpointer is an absolute path then
it uses this reference on the remote system.
Before the jRFS process can accept client requests the services file must be updated to include an
entry for the server. This entry describes the connection type and an arbitrary connecting port. Choose
a port which does not clash with any existing services on both the server and client systems.
UNIX NT
Initiate the jRFS at boot time or manually as Install the jRFS process as a service by the
root by installing the script, jRFS.init.d, jRFSInstall.exe and remove from the services by
located in the “src” subdirectory of the the jRFSRemove.exe. Once installed and
jBASE release directory. configured start the jRFS by the services applet in
the control panel To install and start the jRFS the
7
the control panel. To install and start the jRFS the
user must have administrator privileges.
Once started the jRFS process attempts to read the jRFS configuration file, jrfs_config, This
configuration file contains flags which can be asserted to “flag” the jRFS and client request modules
to produce trace information for remote file operations. The trace facility can be useful for
determining successful Rpointer resolution or confirm successful construction of a sent and received
remote file operation. The jRFS process passes control to the jConnect library, which reads the
jConnect configuration file, jnet_config. This configuration file contains flags, utilized to specify the
security mechanism for client requests, and “flag” the jConnect library to provide trace information.
Use the jConnect trace information to ascertain why a client connect request has been denied.
WARNING: The trace features can severely degrade performance and generate large trace files. Only
enable the trace features when required and take care to allow sufficient space in the log file partition.
8
jCONNECT LIBRARY
UNIX NT
The jConnect library provides for two mutually The jConnect library provides user security on
exclusive security mechanisms. The default NT by the jnet_access file. This file should be
mechanism is the standard UNIX ruserok placed in a NTFS directory set with
mechanism usually utilized by ftp, rcp, etc. This administrator read only privileges. Configure
mechanism first checks the /etc/hosts.equiv file the directory location into a system
and then the target users ‘ rhosts’ file to environment variable JBCNETACCESS.
determine whether further processing is allowed
An alternative method, which can be configured
in the jnet_config configuration file, is to use the
jnetok mechanism. The jnetok mechanism
requires that certain components included in the
client connect request match an entry in the
/etc/jnet_access file. For security purposes, this
file should only be readable by root.
NOTE: Both security mechanisms utilize the connecting hostname as listed in the hosts file, the
remoteusername and the client username as supplied by the client connect request. The jnetok
mechanism also requires the correct servername before granting permission to continue the client
connection. The jConnect library will deny access to clients whose remoteusername resolves to a user
id of less than one hundred.
Once the security check has completed successfully the jConnect library then proceeds to set the
groupid, userid and home directory along with certain other required environment variables. The
jConnect library then attempts to match the client connects request components with an entry in the
jnet_env file. If successful then any related environment entries are setup before returning control
back to the jBASE Remote File Service modules.
CLIENT CONNECTIONS
By using the client mapping feature of the jConnect library to configure client connections to map
client connect request components to alternative values . The client-mapping feature requires that
certain components from the client connect request match an entry in the jnet_map file. If a valid
9
entry is found then map some of the components to alternatives before executing the connect request
proper. The components that can be mapped are the hostname, the servername and the
remoteusername. This feature enables administrators to configure an alternative remoteusername for
specific clients or rename a remote system without having to change all the references in the local
SYSTEM file.
NOTE: Invoke client mapping before the resolution of the network address and service, therefore it
will use the mapped names in place of original to obtain the connection parameters.
CONFIGURATION FILES
You can find templates for all jRFS configuration files the “config” subdirectory of the jBASE release
directory. It is recommended that you copy the template file to a read only directory and accessed
using the JBCNETDIR environment variable. Use the following files for configuration:
File Description
jnet_config jConnect client and server configuration file
QPOINTERS
Due to the additional overhead of resolving Q-to-Q pointers, which is not normally necessary in a
well-maintained system, an environment variable JEDIENABLEQ2Q must be set. The use of Q-to-Q
pointers should be discouraged.
NOTE: If an ACCOUNT name does not exist in the JEDIFILENAME_SYSTEM when resolving
system entries then on UNIX, the ACCOUNT is looked up in the /etc/password file. If successful then
the home directory from the /etc/password file is used for SystemEntryAttr2.
Structure Resolution
1.
<1> Q Reflexive Qpointer to MD
<2> JEDIFILENAME_MD else HOME/MD
<3>
10
Structure Resolution
2.
<1> Q Append File to HOME directory
<2> HOME/RealFILE
<3> RealFILE
3.
<1> F Append File to HOME directory
<2> RealFILE HOME/RealFILE or HOME/RealDictFile
<3> RealDictFILE
4.
<1> F Append File to HOME directory
<2> RealFILE HOME/RealFILE or HOME/RealDictFile]D
<3> D_RealDictFILE
5.
<1> Q Recursively look up until failure AnotherQpointer or
<2> AnotherFpointer in
<3>AnotherQ/Fpointer HOME/MD or JEDIFILENAME_MD
Then resolve as 2 or 3
HOME/RealFILE
6.
<1> Q Qpointer to SYSTEM
<2> SYSTEM JEDIFILENAME_SYSTEM
<3>
7.
<1> Q Qpointer to SYSTEM
<2> SYSTEM JEDIFILENAME_SYSTEM
<3> SYSTEM
8.
<1> Q Qpointer to ACCOUNT MD
<2> SYSTEM SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
<3> RealACCOUNT SystemEntryAttr2/MD
9.
<1> Q Qpointer to ACCOUNT MD
<2> SYSTEM Recursively look up until failure QpointerACCOUNT in
<3> QpointerACCOUNT JEDIFILENAME_SYSTEM
Then resolve as 8.
SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
SystemEntryAttr2/MD
11
Structure Resolution
10.
<1> Q Qpointer to ACCOUNT MD
SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
<2> RealACCOUNT
SystemEntryAttr2/MD
<3>
11.
<1> Q Qpointer to ACCOUNT MD
<3> JEDIFILENAME_SYSTEM
Then resolve as 10
SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
SystemEntryAttr2/MD
12.
<1> Q Qpointer to ACCOUNT FILE
<3> RealFile
13.
<1> Q Qpointer to ACCOUNT FILE
<2> QpointerACCOUNT
Recursively look up until failure QpointerACCOUNT in
<3> RealFile
JEDIFILENAME_SYSTEM
Then resolve as 12
SystemEntryAttr2/RealFILE
14.
<1> Q Qpointer to ACCOUNT FILE
Recursively look up until failure AnotherQpointer or
<2> RealACCOUNT
AnotherFpointer in
SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
<3> AnotherQ/Fpointer
SystemEntryAttr2/MD
Then resolve as 12
12
Structure Resolution
15.
<1> Q Qpointer to ACCOUNT FILE
AnotherFPointer in
SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
SystemEntryAttr2/MD
Then resolve as 12
16.
<1> Q Qpointer to ACCOUNT FILE,SECTION
<3> RealFILE,SECTION
17.
<1> Q Qpointer to ACCOUNT FILE,SECTION
SystemEntryAttr2/SuffixofJEDIFILENAME_MD or
SystemEntryAttr2/MD
Then resolve as 16
SystemEntryAttr2/FILE]MSECTION
18.
<1> Q Remote Q pointer for use with the jBASE Remote file
service. See jRFS
<2> Remote Account
13
Structure Resolution
19.
<1> QL Remote Q pointer for use with the jBASE Remote file
service. See jRFS. The L indicates that updates to remote
<2> Remote Account
file are not logged.
20.
<1> F Fpointer to absolute file
<3> /absolute/path/for/DICT
14
CHAPTER 3 FILES
This chapter describes how to create and maintain files for jBASE applications.
Most legacy application files will be imported by using the ACCOUNT-RESTORE command. It is
important to use the correct modulo ratio when using the ACCOUNT-RESTORE command. Refer to
the Maintenance chapter for more information.
CREATE-FILE
The CREATE-FILE command enables the user to create a new file for use within the jBASE system.
Where:
FileName This is the name to be used for the created file. The name can include
absolute or relative path information.
Section Use this name when creating the new data section.
HASHMETHOD The hash method defines how the records are allocated into the file
buckets or groups. The hash methods can make slight differences to
performance dependent upon the values of the record keys, however
the methods can also improve the performance of the Account
Restore dependent upon source of file. The numeric parameter can be
15
one of the following:
TYPE The tname parameter is used to specify the type of file to be created.
The following file types are provided as standard.
HASH1 or j1 The HASH1 file format was an early portable file format, which uses
read() and write() system calls to perform a file I/O. This file type
will use jRLA locking when enabled. This file type has been
succeeded by later file types, but is kept for backward compatibility.
The bucket size of a HASH1 file is 512 bytes.
HASH2 or j2 The HASH2 file type is a memory mapped file type offering 5 times
the throughput of the HASH1 file type. This file type will use jRLA
locking when enabled. This file type is only available on systems
with memory mapping and has since been succeeded by a later type,
but is kept for backward compatibility. This file type is not portable
across platforms. The bucket size of a HASH2 file is 4096 bytes.
HASH3 or j3 The HASH3 file type is an improved HASH1 file type, which is
portable across platforms and is network friendly in that if a network
connection is disconnected during the update procedure then file
integrity can still be guaranteed. The HASH3 file type does not use
the jRLA locking even when enabled but uses the default system
locking capability, thus allowing record or item locking with
networked applications. The default bucket size of a HASH3 file is
1024 bytes.
HASH4 or j4 The HASH4 file type is an improved HASH2 file type. It uses
memory mapping when available, otherwise defaults to reads, writes,
and is portable across platforms. When enabled the HASH4 file type
will use jRLA locking but can also be configured to use the default
system locking method for networking. The default bucket size of a
HASH4 file is 4096 bytes.
16
TJLOG Creates a stub file in the current directory that points to the current
transaction log set. An additional parameter, SET can be used to
specify the log set. For more information, see jlogdup.
DISTRIB Creates a stub file in the current directory that references a distributed
file. See distributed files for further information.
PERM Use the PERM parameters to set the permissions of the file as per the
chmod command, i.e. an octal number nnn. By default, the value is
666 and will be masked by the current umask setting.
LOG=YES|NO The LOG parameters set or clear the flag, which allows the file to be
included or excluded when utilizing the item or transaction logging
mechanism, if licensed on your system. The value is set to YES by
default.
TRANS=YES|NO The TRANS parameters set or clear the flag, which allows the file to
be included or excluded from within any transaction boundaries,
defined by an executing program. The value is set to YES by default.
BACKUP=YES|NO The BACKUP parameters set or clear the flag, which allows the file
to be included automatically by the jBASE jbackup utility. The value
is set to YES by default.
NETWORK=YES|NO The NETWORK parameters disable or enable the file for use over a
network and are only applicable to HASH4 file types. The value is
set to AUTO by default to use jRLA when enabled.
SECURE=YES|NO The SECURE parameters disable or enable secure file updates and is
only applicable to HASH3 file types. The value is set to NO by
default.
BucketMult BucketMult defines the size of each bucket in multiples of block size,
usually 512, for HASH1 files or page size, usually 4k, for HASH2
files defaulting to 1 (one) if omitted. The first instance of this
construct specifies the size of the dictionary section of the file while
the second instance specifies the size of the data section of the file.
SecSize SecSize can be used to change the maximum record size that will be
stored within the primary bucket. SecSize is specified as a multiple of
the primary bucket size. If a record requiring storage exceeds this
17
size, it is allocated new space within the file and a pointer to the
record is installed in its hash bucket. If the file is to contain many
unevenly sized records, the most efficient way of creating the file is
to specify a secondary bucket size of zero. This will cause all records
to be stored as pointers to their physical location on disk.
NOTES
A hashed file should be created with enough space to hold the expected number of records. Given the
number of records and the average size of each record the number of buckets can be calculated. The
default bucket size of 512 bytes or 4k should only be changed if the average record size is much
greater than this value.
The value of NumBuckets must be an odd number and usually works best if it is a prime number.
CREATE-FILE will change the value of NumBuckets if you supply an even value.
The CREATE-FILE command will always create the file in the current working directory;
environment variable JEDIFILEPATH has no with meaning in the context of file creation.
Beware of creating a file and then immediately deleting it using the DELETE-FILE command. The
DELETE-FILE command will respect the JEDIFILEPATH variable and if it finds a file of the same
name in a directory earlier in the path than the current working directory it will delete that file. For
this reason it is best to define the JEDIFILEPATH variable as “.” (The current working directory)
The file options can be modified after the file has been created using the jchmod utility.
There are certain restricted filenames on Windows. See the Microsoft Knowledge jBASE article here.
EXAMPLES
CREATE-FILE File1 1 37
File File1] D created, type = j4
Creates a dictionary file modulo 1, (1 bucket of 4096 bytes), and a data file modulo 37, (37 buckets,
primary size 151552, (37*4096)). The actual file size will be slightly larger to accommodate internal
bucket pointers.
18
Creates a dictionary file modulo 1, (1 bucket of 4096), and a data file modulo 37 with separation of 3,
(37 buckets at 3 times page size, primary size 454656, (37*(3*4096))). The actual file size will be
slightly larger to accommodate internal bucket pointers.
Creates a dictionary only file of type j3 modulo 23, with secure updates enabled.
Creates a dictionary and data section file of type j4, which only uses network locks.
Creates a dictionary and data section of type j4 on network drive H, directory Payables.
Dictionary-Only Files
Dictionary-only files can be created with the CREATE-FILE command by specifying the DICT
keyword before the filename.
When dictionary-only files are created, a reflexive Qpointer record is written to the file. The reflexive
Qpointer enables the user to refer to the filename without having to specify the DICT keyword or the
suffix “]D”. If a default data section is created later (using the CREATE-FILE command), the
reflexive Qpointer entry is deleted. Similarly, if the default data section is deleted (using the
DELETE-FILE command), the reflexive Qpointer is recreated. For example:
19
separated by a comma. The naming convention for multiple data sections is to suffix the jBASE
filename with the string “]M” followed by the section name. For example:
The field definitions in the dictionary file SALES]D can be used for both the default data section
SALES and the multiple data section SALES95. To access the SALES95 multiple data section, the
jBASE name must be specified as well as the section name. For example:
To avoid entering long jBASE names and section name descriptions, you can also create Qpointer
entries in the MD. These Qpointers can be used to indirectly reference the multiple data section.
SALES95
001 Q
002
003 SALES,SALES95
For example, an MD entry shown above will allow the multiple data section SALES95 to be accessed
by using the following shortened statement.
20
CHAPTER 4 FILE MANAGEMENT
COMMANDS
CLEAR-FILE
The jBASE CLEAR-FILE command allows the user to clear all records from the dictionary file or
data section files.
COMMAND SYNTAX
SYNTAX ELEMENTS
Filename: is the name the file to be cleared. The file type must be one of the supported jBASE file
types. If the file type supports separate data and dictionary files, the DICT keyword may be used to
clear the dictionary file.
NOTES:
CLEAR-FILE will always clear all records from the specified file. To clear a selection of records use
DELETE.
EXAMPLES
21
COPY
The jBASE COPY command allows the user to copy specific or selected records from a specified file
to the terminal, printer or another file. The DICT keyword can be used to specify that the record or
records should be copy from or to a dictionary file.
COMMAND SYNTAX
SYNTAX ELEMENTS
filename: is the name of a valid file. The file type must be one of the supported jBASE file types.
Recordlist: is the list of record identifiers to be copied. If the recordlist is omitted then the active
SELECT list if present is used.
Option Explanation
A Force ASCII mode. Newline becomes attribute mark and vice versa
22
EXAMPLES
23
DELETE
The jBASE DELETE command allows the user to delete specific or selected records from a specified
file. The DICT keyword can be used to specify that the record or records should be deleted from the
dictionary file.
COMMAND SYNTAX
SYNTAX ELEMENTS
Filename: is the name of a valid file. The file type must be one of the supported jBASE file types. If
the file type supports separate data and dictionary files, the DICT keyword may be used to delete from
the dictionary file.
Recordlist: is the list of record identifiers to be deleted. If the recordlist is omitted then the active
SELECT list if present is used.
EXAMPLES
GET-LIST DeleteList
DELETE File1
Deletes all records from File1 that match the record ids selected by the active select list.
24
DELETE-FILE
The jBASE DELETE-FILE command allows the user to delete complete file sets, i.e. Dictionary file,
default data section and multiple data sections, or individual data sections.
COMMAND SYNTAX
SYNTAX ELEMENTS
Filename: is the name the file to be deleted. The file type must be one of the supported jBASE file
types. If the file type supports separate data and dictionary files, the DICT or DATA keywords may
be used to delete either the data file or the dictionary file.
NOTES
The command will detect inconsistencies in the use of the command and issue suitable error
messages.
Warning: Beware of creating a file and then immediately deleting it using the DELETE-FILE
command. The DELETE-FILE command will respect the JEDIFILEPATH variable and if it finds a
file of the same name in a directory earlier in the path than the current working directory it will delete
that file. For this reason it is best to define the JEDIFILEPATH variable as “.” (The current working
directory)
EXAMPLES
25
JCHMOD
The jchmod utility provides a mechanism to modify Hash file parameters.
Option Explanation
-t Tabulate description about the file
26
JGREP
The jgrep command is used to search for strings in jBASE files or directories.
Option Description
-c or © Make search case in-sensitive
27
INDEX
A J
-A jbackup ...................................... 18, 27
Optional parameter ........................2 jBASE DELETE........................ 25, 26
ACCOUNT ..............11, 12, 13, 14, 16 jBASE LOGTO ............................. 1, 2
accountname ......................................7 jBASE MD
ACCOUNT-RESTORE...................16 VOC file ........................................ 3
jBASE PASSWORD......................... 1
B jBASE Remote File Service modules.
BucketMult ................................16, 18 ..................................................... 10
jBASE SYSTEM file......................... 1
C JBC_ENDRESTART ........................ 6
JBC_TCLRESTART......................... 6
Client connections ...........................10 JBCDEV_BIN ........................... 2, 3, 5
CONFIGURATION FILES.............11 JBCDEV_LIB ........................... 2, 3, 5
Configuration of JBCLOGNAME ............................ 2, 5
UNIX .................................9, 10, 11 JBCNETACCESS ........................... 10
CREATE-FILE JBCNETDIR ................................... 11
Command...............3, 16, 19, 20, 21 JBCOBJECTLIST ..................... 2, 3, 5
CT ......................................................4 JBCRELEASEDIR............................ 1
JCHMOD......................................... 27
D
jConnect library........................... 9, 10
DATA ................15, 16, 20, 21, 22, 26 jEDI ................................................... 8
DELETE-FILE ....................19, 20, 26 JEDIENABLEQ2Q ......................... 11
DICT ..3, 15, 16, 20, 22, 23, 24, 25, 26 JEDIFILENAME_MD .. 1, 3, 6, 11, 12
DISTRIB..........................................18 JEDIFILENAME_SYSTEM 1, 11, 12,
Dpointer .............................................8 13, 14
JEDIFILEPATH........................ 19, 26
E JGREP ............................................. 28
-E jnet_config............................. 9, 10, 11
optional parameter .........................2 jnet_env ..................................... 10, 11
jnet_map .................................... 10, 11
F jRFS......................... 7, 8, 9, 11, 14, 15
jrfs_config ................................... 9, 11
FILE.....................8, 13, 14, 19, 22, 26
jRFSInstall.exe .................................. 8
FileName ...................................16, 28
jRLA.......................................... 17, 18
H jSHELL ............................................. 3
-H L
Optional parameter ........................2
-L
HASH1 or j1 ....................................17
optional parameter......................... 2
HASH2 or j2 ....................................17
LOGNAME............................................ 5
HASH3 or j3 ....................................17
LOGTO ......................................... 2, 5
HASH4 or j4 ....................................17
HASHMETHOD .............................16 M
HOME ...................1, 2, 3, 5, 6, 11, 12
HostName ..........................................8 -M
Optional parameter ........................ 2 R
modulo -R
MD file .......................................... 3 optional parameter..........................2
Multiple Data Sections .................... 20 R pointer.............................................7
RemoteAccountName ........................7
N
reserved ..............................................1
ncypted password
jBASE PASSWORD..................... 1 S
NumBuckets ........................ 16, 18, 19 -S
optional parameter..........................2
O
SALES]D ...................................20, 21
Optional parameters SecSize .......................................16, 18
-S 2 Section......................16, 22, 23, 25, 26
-T 2 SELECT
Optional Parameters .......................... 2 jQL modifier ..................................3
-A................................................... 2 SORT
-E 2 jQL modifier ..................................3
-H................................................... 2
-L 2 T
-M .................................................. 2 -T
-V................................................... 2 optional parameter..........................2
-X................................................... 2 TERM.................................................6
TJLOG .............................................18
P
TYPE....................................16, 17, 20
PASSWORD commands................... 1
PATH .................................................. 5 U
PERM ........................................ 16, 18 UD....................................................17
PH-START........................................ 6 UpdateMD..........................................3
PWD
Present Working Directory............ 5 V
Q -V
optional parameter..........................2
Q Pointers .......................................... 7
Q-pointer X
created in the MD file.................... 7
QPOINTERS -X
JEDIENABLE2Q ........................ 11 Optional parameter.........................2
-X option ............................................2
ii
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 documentation@temenos.com