ACCELL/SQL: Managing an Application

advertisement
R
ACCELL/SQL:
Managing an Application
E )> #40-> 57657(9054 !(*7(3,495 (20-5740( #!
22 70./98 7,8,7;,+ 7049,+ 04 9/, #409,+ !9(9,8 5- 3,70*(
5 6(79 5- 9/08 +5*:3,49 3(> ), 7,675+:*,+ 97(483099,+ 97(48*70),+ 8957,+ 04 ( 7,970,;(2
8>89,3 57 97(482(9,+ 0495 (4> 2(4.:(., 57 *536:9,7 2(4.:(., 04 (4> -573 57 )> (4> 3,(48
,2,*97540* 3,*/(40*(2 3(.4,90* 5690*(2 */,30*(2 3(4:(2 57 59/,7<08, <09/5:9 9/, 67057 <7099,4
*548,49 5- #40-> 57657(9054
#40-> 57657(9054 3(1,8 45 7,67,8,49(90548 57 <(77(490,8 <09/ 7,86,*9 95 9/, *549,498 5- 9/08
+5*:3,49 (4+ 86,*0-0*(22> +08*2(038 (4> 03620,+ <(77(490,8 5- 3,7*/(49()0209> 57 -094,88 -57 (4>
6(790*:2(7 6:7658, :79/,7 #40-> 57657(9054 7,8,7;,8 9/, 70./9 95 7,;08, 9/08 +5*:3,49 (4+ 95
3(1, */(4.,8 -753 903, 95 903, 04 098 *549,49 <09/5:9 ),04. 5)20.(9,+ 95 4590-> (4> 6,7854 58:*/ 7,;080548 57 */(4.,8
"/, !5-9<(7, +,8*70),+ 04 9/08 +5*:3,49 08 -:7408/,+ :4+,7 ( !5-9<(7, 0*,48, .7,,3,49 "/,
!5-9<(7, 3(> ), :8,+ 57 *560,+ 542> 04 (**57+(4*, <09/ 9/, 9,738 5- 9/, 20*,48, (.7,,3,49 9 08
(.(0489 9/, 2(< 95 *56> 9/, !5-9<(7, 54 9(6, +081 57 (4> 59/,7 3,+0:3 -57 (4> 6:7658, 59/,7
9/(4 9/(9 +,8*70),+ 04 9/, 20*,48, (.7,,3,49
#40-> 57657(9054 ;(2:,8 (4+ (667,*0(9,8 (4> *533,498 >5: 3(> /(;, *54*,7404. 5:7 675+:*98 57 9/08
+5*:3,49 2,(8, (++7,88 *533,498 95
75+:*9 (4(.,7
#40-> 57657(9054
7,4( 5:2,;(7+ !9, !(*7(3,495 & #' $! (4+ 9/, #40-> 5.5 (7, 7,.089,7,+ 97(+,3(718 5- #40-> 57657(9054 #40->
(9(!,7;,7 08 ( 97(+,3(71 5- #40-> 57657(9054 #& 08 ( 7,.089,7,+ 97(+,3(71 5- 9/, 6,4 75:6 04 9/,
#409,+ !9(9,8 (4+ 59/,7 *5:4970,8 "/, & %04+5< !>89,3 08 ( 675+:*9 5- 9/, (88(*/:8,998 48909:9, 5",*/4525.> 590- ! (4+ !590- (7, 97(+,3(718 5- 6,4 !5-9<(7, 5:4+(9054 4* !'! 08 (
7,.089,7,+ 97(+,3(71 (4+ ! !,7;,7 @0)7(7> (4+ 6,4 !,7;,7 (7, 97(+,3(718 5- !>)(8, 4*
& 08 ( 7,.089,7,+ 97(+,3(71 5- 4-5730= !5-9<(7, 4* ( 8:)80+0(7> 5- ! 08 (
97(+,3(71 5- 536:9,7 885*0(9,8 49,74(9054(2 4* 08 ( 7,.089,7,+ 97(+,3(71 5- 7(*2,
57657(9054 !:4 08 ( 7,.089,7,+ 97(+,3(71 (4+ !:4$0,< !:4@
!:4@ &,%! !:4! @! (4+
6,4 %04+5<8 (7, 97(+,3(718 5- !:4 0*758>89,38 22 ! 97(+,3(718 (7, 97(+,3(718 57 7,.089,7,+
97(+,3(718 5- ! 49,74(9054(2 4* ! 89(9054 08 20*,48,+ ,=*2:80;,2> 95 !:4 0*758>89,38 4*
5;,22 08 ( 7,.089,7,+ 97(+,3(71 5- 5;,22 4* (*04958/ 08 ( 97(+,3(71 5- 662, 536:9,7 4*
0*7585-9 ! !@! (4+ %04+5<8 (7, 7,.089,7,+ 97(+,3(718 5- 0*7585-9 57657(9054 22 59/,7
675+:*98 57 8,7;0*,8 3,49054,+ /,7,04 3(> ), 7,.089,7,+ 97(+,3(718 97(+,3(718 57 8,7;0*, 3(718 5- 9/,07
7,86,*90;, 3(4:-(*9:7,78 *536(40,8 57 57.(40?(90548
(79 :3),7 @
2
-,&)'30!2)-, !0)!"*%1 %/3)0%$ -,&)'30!2)-, !0)!"*%1 !2!"!1% $%,2)&)#!2)-, !0)!"*%1 1),' !, ..*)#!2)-, -,&)'30!2)-, )*% -,&)'30),' ! %*%!1% ,4)0-,+%,2 (% !12%0 -,&)'30!2)-,
)*% -,&)'30),' !, ..*)#!2)-, ,4)0-,+%,2 (% ..*)#!2)-,
-,&)'30!2)-, )*% 0%!2),' !, ..*)#!2)-, -,&)'30!2)-, )*% .%#)&5),' 2(% -#!2)-, -& 2(% ..*)#!2)-, -,&)'30!2)-, )*%
(% -+.)*%$ ..*)#!2)-, -,&)'30!2)-, )*% #-.% -& 2(% -+.)*%$ ..*)#!2)-, -,&)'30!2)-, )*% 0%4%,2),' 2(% 4%00)$),' -& ..*)#!2)-, -,&)'30!2)-, )*%
!0)!"*%1 -,&)'30),' ! 1%0 ,4)0-,+%,2 %22),' -,&)'30!2)-, !0)!"*%1 %22),' !0)!"*%1 ), -,&)'30!2)-, )*%1 %22),' !0)!"*%1 !2 2(% .%0!2),' 512%+ -++!,$ %4%* %2%0+),),' ()#( !0)!"*%1 312 % %2 ), !
-,&)'30!2)-, )*% 1),' ""0%4)!2)-,1 ), -,&)'30!2)-, !0)!"*% %22),'1 1),' %&),%$ !*3%1 ), -,&)'30!2)-, !0)!"*% %22),'1 -,&)'30!2)-, !0)!"*% %!0#( 0)-0)25 )1.*!5 -0+!21 )1.*!5),' 300%,#5 +-3,21 300%,#5 +-3,2 )1.*!5 !0)!"*%1 !,$ -0+!2 %+.*!2%1
)1.*!5),' !2%1 -0 )+%1 -,&)'30!2)-, !0)!"*% !2%'-0)%1 -#!2),' -0+ !,$ %*. 0#()4% )*%1 , 3*2).*% )0%#2-0)%1 .%#)&5),' 3*2).*% )0%#2-05 !+%1 !,$ !,!'%0 3
4
%&*$ ,,(& /&+* +-). *! 0* /&+*. +*/-+((&*$ %" /+-$" #+- /%" ,,(& /&+* +*/-+((&*$ %" /+-$" #+- * *!&1&!0( +-) +- 0* /&+*
0*&*$ %" &4" ,""!&*$ +-) ".. /+-&*$ "2/ *! &*-3 (0". *&,0(/&*$ "2/ *! &*-3 (0". -+) +-) -&,/ *&,0(/&*$ "2/ *! &*-3 (0". -+) 5++' ,/&)&4&*$ "2/ *! &*-3 /+-$" +*#&$0-/&+* Maintaining a Secure Application Environment . . . . . . . . . . . . . . . . .
49
.&*$ ,"-/&*$ 3./") " 0-&/3 "/0-". .&*$ " 0-&/3 "/0-". .&*$ " 0-&/3 "/0-". !"*/&#3&*$ /%" ."- +*/-+((&*$ ."- ,,(& /&+* ".. -&1&("$". *&/&(&4&*$ ."- ,,(& /&+* -&1&("$". %*$&*$ ."- ,,(& /&+* ".. -&1&("$". +*/-+((&*$ +-) ".. -&1&("$". *&/&(&4&*$ +-) ".. -&1&("$". %*$&*$ +-) ".. -&1&("$". &)&/&*$ ."- ,"-/&+*. Moving, Renaming, and Deleting Application Files . . . . . . . . . . . . . . .
59
+1&*$ * ,,(& /&+* ,,(& /&+* &-" /+-&". ,,(& /&+* &(". +1&*$ -+) +),0/"- /+ +),0/"- "."//&*$ +*#&$0-/&+* -&(". "*)&*$ * ,,(& /&+* "*)&*$ /%" &-" /+-3 "*)&*$ /%" ,,(& /&+* &(". ,!/&*$ +-) -&,/ &(". ,!/&*$ /%" ,,(& /&+* &./ ,!/&*$ /%" ./"- ,,(& /&+* +-) +),&(&*$ *! */"$-/&*$ /%" ,,(& /&+* "("/&*$ * ,,(& /&+* Performing Application Management Tasks . . . . . . . . . . . . . . . . . . . . .
69
%++.&*$ "*0 ,/&+*. -+) "*0 *!("- -+) *1&-+*)"*/ +*/-+(('*% +*!0--#*!4 '* *1'-+*)#*/ &# (# *$+-)/'+* .'*% /&# "#1)*/ /'('/4 .'*% /'('/'#. Appendix A: Building Application Systems . . . . . . . . . . . . . . . . . . . . . .
81
,,'*% ,,('!/'+*. /+ / .#. -#/'*% /&# ,,('!/'+* / .# , '(# #//'*% #//'*% 3#!0/'*% * ,,('!/'+* '* * ,,('!/'+* 4./#) +2 *%#- 3#!0/#. ,,('!/'+*. 3#!0/'*% * ,,('!/'+* -+) /&# ,#-/'*% 4./#) 3#!0/'*% * ,,('!/'+* -+) #*0 *"(##//'*% , /&# 0*/')# *1'-+*)#*/ &# #*0 *"(#- ,,('!/'+* #!+-" 3#!0/'*% 0*/')# ,,('!/'+* ),(# 0*/')# ,,('!/'+* 4./#) #1#(+,)#*/ '-#!/+-4 /-0!/0-# 0*/')# '-#!/+-4 /-0!/0-# #//'*% , /&# './'*% ,,('!/'+* 3#!0/'*% /&# ,,('!/'+* Appendix B: ACCELL/SQL Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
'(#. !!#..#" 4 /'('/'#. '(#. '* /&# #(#.# '* '-#!/+-4 99
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
109
5
6
describes tools and techniques
that application administrators and developers can use to manage an
application. (This information applies regardless of the
RDBMS or the user interface option with which is being
run.)
How to Use This
Manual
This manual uses various graphic conventions to help you distinguish
between commands that you type, keys that you press, information that
displays on your screen, and the different elements of and
the user interface.
Item Names
References to program names, database table and column names, file
names, and form field names appear in bold typeface, for example:
Use the same procedure to define the address_1 and address_2
fields that you used to define the co_name field.
The Target Table field lets you specify which database table this
form will directly query and update.
Keyboard Keys
A word or letter framed to look like a key indicates the corresponding
key on your keyboard, for example:
RETURN
Represents the return key. This key could be labeled as
“Enter”, “RTN”, or .
ACCELL/SQL Commands
Words that appear in bold, italic, sans serif typeface indicate
commands that you can execute by pressing a defined key
sequence or selecting a menu button; for example:
Press ; then press .
To move to the last record, press the button on the
Next Operations menu.
7
Helpful Information
This manual also uses the following conventions to present helpful
information such as application tips, warnings, and locations of
additional information:
Tip
Tip contains helpful information.
Warning
Warning cautions against actions that could cause data loss or damage to
the database.
Additional Help
Additional Help tells you where to find more information about
described topics.
Dependencies
Dependencies points out features or characteristics that differ from one
RDBMS to another or from one operating system to another.
Syntax
Conventions
This manual uses the following syntax conventions to describe the
format of ACCELL/SQL configuration variables and utilities:
boldface
Boldface words are command keywords or literal strings
that you must type exactly as shown. ACCELL/4GL
statement and section keywords are shown in all
UPPERCASE, but can be typed in either uppercase or
lowercase letters. (Function names such as yesno$( ) are
case-sensitive.)
italic words
Italic words are names, numbers, or expressions that you
must provide. Examples are table names, column names,
and constants.
Italics are also used for manual names and terms defined
in the glossary. All-uppercase italics are used for
configuration variable names.
8
$
All ACCELL/4GL system function names are suffixed by
a dollar sign ($), as in status$( ), to distinguish them
from user-defined functions. This dollar sign is a syntax
element that must be included in the function name. Do
not include a dollar sign when you name or call your
own functions.
[]
Nonbold square brackets indicate that the enclosed word
or item is optional and may be left out. Boldface
brackets, [ ], are syntax elements that must be included,
as in count[character].
||
Vertical bars that enclose a stacked list of options mean
that you can choose one of the listed options, but only
one of them.
...
Ellipsis points indicate that you may repeat the
immediately preceding item any number of times, as
needed.
9
10
Configuring
Application
Environments
11
This chapter explains how to use configuration variables to set up an
ACCELL/SQL application environment. Configuration variables control a
variety of functions, which include these:
specifying the names and locations of the files that are used by
ACCELL/SQL applications
specifying memory limits
formatting data for display
specifying special characters to be used for entering string search
criteria
This chapter contains the following information:
a list of the variables that are required to run any ACCELL/SQL
application
the descriptions of the files that can contain configuration
variables
an explanation of the methods that can be used to set configuration
variables
an explanation of the locations and order in which ACCELL/SQL
searches for configuration variable values
lists of the types of configuration variables that can be set for an
ACCELL/SQL application
12
Configuring Application Environments
Configuration Variables
Configuration variables are used to set up the environment for an
ACCELL/SQL application. configuration variables can be
set in several locations, which determine the scope of the variable:
1. To customize an individual user’s environment, set variables at the
operating system command level, typically in a .profile or .login
file.
2. To specify the variable values to be used throughout the
application, set variables in the application configuration file,
application.cf.
3. To specify the variable values to be used by all ACCELL/SQL
applications that use the associated release, set variables in the
master configuration file, unify.cf.
4. To use the default values that are set in the release
software, do not set the variables in any of the preceding locations.
The following diagram outlines the scope of variables. The numbers in
the diagram correspond to the preceding numbers.
Locations where
configuration
variables can be
set
unify.cf
application.cf
.profile .login
.profile .login
Configuring Application Environments
13
Additional Help
About
Required
Configuration
Variables
See
Setting configuration variables for a
release
“Configuring a Release
Environment” on page 17
Setting configuration variables for an
application
“Configuring an Application
Environment” on page 18
Setting configuration variables for an
individual user
“Configuring a User
Environment” on page 23
Priority followed by ACCELL/SQL
when searching for configuration
variable values
“Configuration Variable
Search Priority” on page 28
After installing ACCELL/SQL , you must set these configuration
variables:
ATERMCAP
(UNIX only) Directory path and file name of the
ACCELL/SQL terminal capabilities file.
PATH
(UNIX only) Directory path list for the application
executable files.
TERM
Terminal type specification.
UNICAP
Directory path for the ACCELL/SQL keyboard
capabilities file.
UNIFY
Directory path for the release lib directory.
You must set all of the required variables if you use the AGEN, ACPL,
ACMB, ALNK, and AMGR utilities directly instead of using
ACCELL/E nvironment to develop, integrate, and execute applications. If
you always use the ACCELL/SQL startup script (accell) to access
ACCELL/E nvironment to develop, compile, integrate, and execute
applications, you must set at least PATH and TERM. The accell script
automatically sets the ATERMCAP, UNICAP, and UNIFY configuration
variables for you.
14
Configuring Application Environments
Database Identification Variables
In addition to these required variables, you must also set the
configuration variables required by your RDBMS to find your database
files:
RDBMS
INFORMIX SE
INFORMIX
Variable
DBPATH
Directory path, without the file name,
of the application database file and
associated files
INFORMIXDIR
Directory path for the INFORMIX
release
INFORMIXDIR
TBCONFIG
Directory path for the INFORMIX
release
Name of the INFORMIX OnLine
system configuration variable file, if
not tbconfig
DBNAME
Name of the database
II_SYSTEM
Path of the parent directory for the
INGRES release software
ORACLE_SID
ORACLE system identifier for the
unique SGA (system global area) to be
Online
INGRES
ORACLE
Description
used
ORACLE_HOME
Path of the root directory for the
ORACLE RDBMS
SYBASE SQL
SYBASE
Server
DSQUERY
Unify DataServer
Configuring Application Environments
Name of the directory that contains the
SYBASE SQL Server interfaces file
Name of the database server that
contains the database to be used
DBPATH
Directory path, without the file name,
for the application database file and
associated files
DBNAME
Simple file name of the application
database file (default = file.db)
15
Using an Application Configuration File
To be able to use an application configuration file, you must also set the
configuration variable or variables that point to the application
configuration file. The variables that must be set depend on the RDBMS
that you are using with ACCELL/SQL :
For every
RDBMS
except Unify
DataServer
For
Unify DataSer
ver
16
Set the ACLCONFIG configuration variable to the
directory path and file name of the application
configuration file, application.cf.
Set the DBPATH and DBNAME configuration variables to
the database directory path and file name. The Unify
DataServer database configuration file, dbname.cf, is
used as the application configuration file when you use
ACCELL/SQL with Unify DataServer.
Configuring Application Environments
Configuring a Release Environment:
The Master Configuration File
The release environment is configured by the variables that are set in the
master configuration file, unify.cf. The master configuration file
variables are preset to system default values that are appropriate for your
hardware and software configuration. The variables that are set in
unify.cf are the variables that most commonly need to be customized for
systems like yours.
Configuration variable values that are set in unify.cf apply to an entire
application system: every application that is used with the current release
of ACCELL/SQL .
The installation program creates the master configuration file when you
install the ACCELL/SQL release. The unify.cf file is located in the
ACCELL/SQL release lib directory, which is the directory that is specified
by the UNIFY configuration variable. (The release directory is where you
installed ACCELL/SQL and is specified by the ACLDIR configuration
variable.)
The next diagram shows an example release and application directory
structure. Yours may be different.
Location of the
master configuration
file
Release directory
$ACLDIR
$UNIFY
Master configuration file
lib
bin
include
applications
unify.cf
Values used
by all
applications
Warning
The master configuration file, unify.cf, permissions must be set to
–rw–rw–rw– (666). If you set the file permissions differently and you
run an application process that opens the database, you will receive an
error message that a file has the wrong permissions, and the program will
end. (The file name will not be indicated in the error message.)
Configuring Application Environments
17
Configuring an Application
Environment: The Application
Configuration File
To set configuration variable values that apply to a specific application
only, you can create an application configuration file, which is usually
named application.cf. You simply copy entries from the master
configuration file to the application configuration file and modify them
for the application.
The application configuration file is an exception file that contains the
configuration variables that are customized for a specific application. The
configuration variable values that are set in the application configuration
file override the master configuration file values for the same variables.
Each application directory can contain an application configuration file.
The following diagram shows an example directory structure in which
each application directory contains its own application configuration file.
Location of
the application
configuration
file
Release directory
$ACLDIR
$UNIFY
Master
configuration
file
lib
include
apps
unify.cf
Application configuration file
(values used by the application
of the same name)
Creating an
Application
Configuration File
bin
app1
app2
app1.cf
app2.cf
app3
app3.cf
To create an application configuration file, take the following steps.
1. Move to the application directory. This is the directory that
contains the application files, such as the application link file (.al)
and form archive file (.fa).
If you are using the Unify DataServer RDBMS, move to the
database directory—the directory that is specified by the DBPATH
configuration variable.
18
Configuring Application Environments
2. Copy the master configuration file (unify.cf) to a file named
application.cf in the application directory, where application is the
name of your application. The .cf file name suffix is required.
For example, if your application link file is named accts.al, the
application configuration file is named accts.cf.
If you are using Unify DataServer, the application configuration file
is usually referred to as the database configuration file, dbname.cf,
where dbname is the database file name without the .db file name
suffix.
For example, if your database file is named accts.db, the
application configuration file is named accts.cf.
3. Start your text editor to edit the application.cf file.
4. Optional step; see the following Tip.
Delete all of the configuration variable entries that you do not need
to customize. The only entries remaining in the file are the ones
that you need to customize.
5. Change the values of the variables that you need to customize. For
details about how to change configuration variable values, see
“Setting Variables in Configuration Files” on page 24.
6. Save your changes and exit the text editor.
You should now have a master configuration file named unify.cf and an
application configuration file named application.cf.
Tip
Performance is better if the application configuration file contains only
the configuration variable entries that you must customize and does not
duplicate the master configuration file. The application configuration file
is recompiled every time ACCELL/SQL opens the database or when you
execute the config utility. (See “The Compiled Application
Configuration File” on page 21.)
Warning
The application configuration file, application.cf, permissions must
be set to –rw–rw–rw– (666). If you set the file permissions differently
and you run an application process that opens the database, you will
receive an error message that a file has the wrong permissions, and the
program will end. (The file name will not be indicated in the error
message.)
Configuring Application Environments
19
Specifying the
Location of the
Application
Configuration File
After creating the application configuration file, you must set the
configuration variables that specify the location of the application
configuration file. ACCELL/SQL uses different variables to find the
configuration file, depending on the RDBMS that you are using.
The variables used to find the application configuration file must be set
at the operating system command level.
If you are using ACCELL/SQL with the Unify DataServer RDBMS,
perform step 7, then skip to step 9. If you are using any other RDBMS,
skip to step 8, then continue to step 9.
7. If you are using ACCELL/SQL for Unify DataServer, you must set
the DBPATH and DBNAME configuration variables to the database
directory path and file name. (The application configuration file is
usually called the database configuration file when using Unify
DataServer.)
For example, if the database file name is accts.db, and the
database directory is /usr/ASQL/apps/accts, set DBPATH to
/usr/ASQL/apps/accts; set DBNAME to accts.db.
ACCELL/SQL uses the DBPATH and DBNAME configuration
variables to locate the application configuration file. When
searching for the application configuration file, ACCELL/SQL
starts in the directory specified by the DBPATH configuration
variable.
ACCELL/SQL searches first for a file named dbname.cf, where
dbname is the database file name that is specified in the DBNAME
configuration variable, without the .db suffix. If DBNAME is not
set, ACCELL/SQL searches for the default application
configuration file name, file.cf.
Skip to step 9.
8. If you are using ACCELL/SQL for any other RDBMS, such as
SYBASE SQL Server or ORACLE, set the ACLCONFIG
configuration variable to the directory path name and file name of
the application configuration file. You must include the .cf file
name suffix.
For example, if the application configuration file name is accts.cf,
and the application directory is /usr/ASQL/apps/accts, set
ACLCONFIG to /usr/ASQL/apps/accts/accts.cf.
9. If you are configuring multiple applications for application
systems, continue to the Appendix “Building Application
Systems.”
20
Configuring Application Environments
The Compiled
Application
Configuration File
To speed retrieval of configuration information, ACCELL/SQL compiles
the application configuration file into a compiled configuration file
named application.cfg. When a specific variable value is needed, and the
variable is not set at the operating system command level or cannot be
overridden at the operating system command level, ACCELL/SQL
searches in application.cfg for the value.
If a configuration variable appears more than once in the application
configuration file, ACCELL/SQL places the first value detected into
application.cfg, as shown in the following diagram:
Compiled
configuration file
excerpt
First AMGR_HPSZ entry
AGEN_ERFL = ”/dev/null”
AMGR_HPSZ = 32k
AGEN_HPSZ = 32k
. . .
AMGR_HPSZ = 12k
Second AMGR_HPSZ
entry
Third AMGR_HPSZ entry
. . .
AMGR_HPSZ = 20k
Entry chosen for the
compiled configuration file
AMGR_HPSZ = 32k
Configuration file compilation is automatic. When ACCELL/SQL opens
the database or when you use the config utility to display configuration
variable values, ACCELL/SQL automatically recompiles the application
configuration file, if necessary. The file must be recompiled if
application.cf has a more recent modification date than application.cfg.
The compiled application configuration file contains only the variables
that are explicitly specified in application.cf. System default values are
used for all other variable values.
Configuring Application Environments
21
Scope of the Compiled Application Configuration File
Variables that are set in the application configuration file affect only the
associated application and database. When you start the application and
ACCELL/SQL reads in the compiled application configuration file, those
variable values are in effect for your entire session. Another user can
modify the configuration file while you are running the application, but
you cannot see the changes until you exit and restart ACCELL/SQL .
Preventing the Overriding of Application Configuration File
Variables
Normally, users can override application configuration file values by
setting the configuration variables at the operating system command
level. You can prevent users from overriding configuration file values by
setting the CONFIG_READONLY configuration variable to TRUE in the
application configuration file.
When CONFIG_READONLY is TRUE, all the configuration variables in
the file are read-only and cannot be overridden by setting them at the
operating system command level. This enables you to ensure that the
variables that are specified in the application configuration file have the
same values for all users of the application.
Additional Help
About
The config utility syntax and usage
See
The CONFIG_READONLY
configuration variable
22
Configuring Application Environments
Configuring a User Environment
Configuring a user environment is a matter of setting configuration
variables at the user’s operating system command level. Configuration
variables that are set at the operating system command level are in effect
during the user’s current session and are reset when the user’s session
ends.
On the UNIX operating system, the operating system command-level
configuration variables are typically set in the user’s .profile or .login
file, depending on the command shell that is being used. The .profile or
.login file is read each time the user logs in to the operating system.
If you want to customize specific ACCELL/SQL configuration variables
for the user, you can create entries for the configuration variables in the
user’s .profile or .login file by using a text editor to edit the file. Or have
the user set the variables by typing the variable names and values directly
on the command line after logging in.
To set an variable in the user environment, at the
operating system command level, you must use the correct syntax for
your operating system.
Additional Help
About
See
Setting configuration variables at
the operating system command
level
“Setting Variables at the
Operating System Command
Level” on page 25
Configuring a user environment
Configuring Application Environments
23
Setting Configuration Variables
Configuration variables can be set in configuration files or at the
operating system command line.
Warning
Change only those variable values that must be changed. Make sure
that you understand how the variable is used and whether it affects other
variables or Unify DataServer utilities. Do not indiscriminately change
configuration variable values.
Setting Variables
in Configuration
Files
Configuration
file excerpt
Because the configuration files are ASCII files, you can use a text editor
to modify configuration variable values. The configuration files contain
configuration variable names, their default values, and where applicable,
alternative choices. The following example shows an excerpt from an
ACCELL/SQL configuration file.
AMGR_ERFL
AGEN_ERFL
AMGR_HPSZ
AGEN_HPSZ
AMGR_SEL_SET_DR
AGEN_SEL_SET_DR
=
=
=
=
=
=
”/dev/null”
”/dev/null”
32k
32k
”/usr/tmp”
”/usr/tmp”
#
#
#
#
#
#
AMGR
AGEN
AMGR
AGEN
AMGR
AGEN
error file
error file
heap size
heap size
selected set directory
selected set directory
Configuration
variable name
Configuration
variable value
Descriptive
comment
The # symbol in configuration file entries delimits descriptive comments
and alternative choices. To change a configuration variable value, change
the number or text to the right of the equal sign (=).
For example, to change the ACCELL/M anager error file name to
amgr_errs, you need only change the ”/dev/null” on the AMGR_ERFL
line to ”amgr_errs”, as shown in this diagram:
24
Original AMGR_ERFL entry
AMGR_ERFL = ”/dev/null”
# AMGR error file
Changed AMGR_ERFL
entry
AMGR_ERFL = ”amgr_errs”
# AMGR error file
Configuring Application Environments
Setting Variables
at the Operating
System Command
Level
Setting ACCELL/SQL configuration variables at the operating system
command level is a quick and easy way to override configuration
variables that are set in a configuration file. Configuration variables that
are set in the operating system are in effect only for a user’s current
session. The operating system resets the variables when the current
session ends.
Almost all configuration variable values can be overridden by setting the
variables at the operating system command level. To set an
variable at the operating system command level, you must
use the correct syntax for your operating system.
Example
For example, if you are using UNIX with the C shell (csh), you type this
command:
setenv configuration_variable value
If you are using UNIX with the Bourne shell, you type these commands:
configuration_variable=value
export configuration_variable
Tip
Set ACCELL/SQL configuration variables at the operating system
command level to customize an individual user’s application
environment.
Configuring Application Environments
25
Determining
Which Variables
Must Be Set in a
Configuration File
A few variables must be set in a configuration file and cannot be
overridden by setting them at the operating system command level. To
determine which configuration variables cannot be overridden at the
operating system command level, you can run the config utility.
The config utility displays the names and values of configuration
variables and indicates with an asterisk (*) the variables that cannot be
overridden.
Example
The config utility displays its information in this format:
Variable Name
–––––––––––––––––
Configuration Value
–––––––––––––––––––
AGEN_ERFL
AGEN_HPSZ
AGEN_SEL_SET_DR
AMGR_ERFL
/dev/null
32k
/usr/tmp
/dev/null
CNO Configuration File
––– ––––––––––––––––––
*
Variable set in configuration
file and cannot be set at OS
command level
/usr/db/file.cf
environment
/usr/db/file.cf
/usr/db/file.cf
Variable set at operating
system command level
Additional Help
For syntax and usage, see the config utility description given in the
.
26
Configuring Application Environments
Using
Abbreviations in
Configuration
Variable Settings
Configuration variable value settings can include several abbreviations:
#!
Using Defined
Values in
Configuration
Variable Settings
"
"!
recognizes several defined values as configuration
variable values. Defined values make the configuration variable settings
more readable and are thus more easily maintained.
The next table summarizes the defined values that can be used in
configuration variable settings.
"
"
! ! "! # ! $
"
A defined value of undefined enables you to use the software default
configuration variable value when another default is defined in a
configuration file.
Configuring Application Environments
27
Configuration Variable Search
Priority
In general, when ACCELL/SQL searches for a specific configuration
variable value, the search is conducted in the following order, from
highest to lowest priority:
Operating system
command level
AGEN_HPSZ value
set in four locations
AGEN_HPSZ = 12k
Compiled application
configuration file
(application.cfg)
Master
configuration file
(unify.cf)
ACCELL/SQL
release software
defaults
Use this
value
AGEN_HPSZ = 8k
AGEN_HPSZ = 32k
AGEN_HPSZ = 32k
In the preceding example, the AGEN_HPSZ configuration variable is set
to 32k in the release software and the master configuration file, 8k in the
application configuration file, and 12k at the operating system command
level. The current AGEN_HPSZ value is 12k, because values set at the
operating system command level have the highest priority.
28
Configuring Application Environments
Display Formats
The search priority is similar for display format configuration variables.
However, display formats can also be specified by the using clause in
ACCELL/4GL form script and Report Writer statements and with the
DISPLAY FORMAT field attribute.
Displaying Currency Amounts
For displaying currency amounts, use the following variables:
Variable
AMTFMT
Description
AMOUNT data display format
Example
%.2f
###,##&.&&
AMTPREC
Number of digits after the radix separator
2
0
CURRSYM
Currency symbol
$
DM
xxx
TRIADSEP
Triad separator character
(to separate thousands, e.g., 999,999)
RADIXSEP
Radix separator (to separate decimal digits in .
a decimal system, e.g., 999.99)
,
,
.
space
character
Currency Amount Display Variables and Format Templates
The CURRSYM , RADIXSEP, and TRIADSEP configuration variables apply
only when a format template is used. A format template can be specified
in any of the following ways:
by specifying a USING clause in an ACCELL/4GL DISPLAY
statement
by specifying a using clause in a Report Writer (RPT) print
statement
by defining the DISPLAY_FORMAT attribute for a field on the
Field Definition form or in a form script
by setting the AMTFMT configuration variable in a configuration
file or at the operating system command level
Configuring Application Environments
29
When searching for a display format for a currency amount,
ACCELL/SQL follows the search priority shown in this table:
(The CURR configuration variable is included in the table because it is
supported for compatibility reasons only. Replace CURR with the
CURRSYM , RADIXSEP, and TRIADSEP configuration variables.)
Currency Amount Display Format Search Priority
Search Path
1. USING Clause
2. Operating System
Command Level
A USING (or using) clause or a
DISPLAY_FORMAT field attribute
is specified
Use the specified format
No USING (or using) clause or
DISPLAY_FORMAT field attribute
is specified
Search the operating system
command level
AMTFMT, AMTPREC,
CURRSYM, TRIADSEP, and
RADIXSEP are set
Use the specified formats
CURRSYM, TRIADSEP, and
RADIXSEP are not set, but CURR
Translate CURR into CURRSYM,
TRIADSEP, and RADIXSEP
is set
CURRSYM, TRIADSEP, and
RADIXSEP are not set, and CURR
Search the application
configuration file (application.cf)
is not set
3. Application
Configuration File
AMTFMT, AMTPREC,
CURRSYM, TRIADSEP, and
RADIXSEP are set
Use the specified formats
CURRSYM, TRIADSEP, and
RADIXSEP are not set, but CURR
Translate CURR into CURRSYM,
TRIADSEP, and RADIXSEP
is set
CURRSYM, TRIADSEP, and
RADIXSEP are not set, and CURR
Search the master configuration
file (unify.cf)
is not set
30
Configuring Application Environments
Currency Amount Display Format Search Priority 4. Master
Configuration File
AMTFMT, AMTPREC,
CURRSYM, TRIADSEP, and
RADIXSEP are set
Use the specified formats
CURRSYM, TRIADSEP, and
RADIXSEP are not set, but CURR
Translate CURR into CURRSYM,
TRIADSEP, and RADIXSEP
is set
CURRSYM, TRIADSEP, and
RADIXSEP are not set, and CURR
Search for the ACCELL/SQL release
software defaults
is not set
5. Release Software
Defaults
(A default always exists)
Use the default format (usually a
printf style)
Displaying Dates or Times
When searching for a display format for a date (or time) value,
ACCELL/SQL follows the search priority shown in this table:
(The DATETP and LDATEFMT configuration variables are included in the
table because they are supported for compatibility reasons only. Replace
DATETP and LDATEFMT by the DATEFMT configuration variable.)
Date or Time Display Format Search Priority
Search Path
1. USING Clause
2. Operating System
Command Level
A USING (or using) clause or a
DISPLAY_FORMAT field attribute
is specified
Use the specified format
No USING (or using) clause or
DISPLAY_FORMAT field attribute
is specified
Search the operating system
command level
DATEFMT
Configuring Application Environments
(or TIMEFMT) is set
Use the specified format
31
(continued)
DATEFMT (or TIMEFMT) is not set,
but DATETP or LDATEFMT is set
Translate the date format variable
into DATEFMT (or TIMEFMT)
(or TIMEFMT) is not set,
and neither DATETP nor LDATEFMT
is set
Search the application
configuration file (application.cf)
DATEFMT
3. Application
Configuration File
DATEFMT
(or TIMEFMT) is set
DATEFMT (or TIMEFMT) is not set,
but DATETP or LDATEFMT is set
Translate the date format variable
into DATEFMT (or TIMEFMT)
(or TIMEFMT) is not set,
and neither DATETP nor LDATEFMT
is set
Search the master configuration
file (unify.cf)
DATEFMT
4. Master
Configuration File
5. Release Software
Defaults
Use the specified format
DATEFMT
(or TIMEFMT) is set
Use the specified format
DATEFMT (or TIMEFMT) is not set,
but DATETP or LDATEFMT is set
Translate the date format variable
into DATEFMT (or TIMEFMT)
DATEFMT
(or TIMEFMT) is not set,
and neither DATETP nor LDATEFMT
is set
Search for the ACCELL/SQL release
software defaults
(A default always exists)
Use the default format (usually a
printf style)
Additional Help
About
USING clause of a DISPLAY
See
ACCELL/SQL: Script and
statement
Function Reference
DISPLAY_FORMAT field
ACCELL/SQL: Script and
attribute
Function Reference
USING clause of the print
statement
ACCELL/SQL: Creating Reports
With RPT Report Writer
(table continued on next page)
32
Configuring Application Environments
About
AMTFMT, AMTPREC , CURRSYM ,
DATEFMT, RADIXSEP, TIMEFMT,
and TRIADSEP configuration
See
variables
Specifying format templates for a
local language
Configuring Application Environments
33
Configuration Variable Categories
Configuration variables can be grouped into several categories related to
their uses, for example, file names and locations, memory and disk
management, display formats, and RPT tables. The following table lists
variables by category. (Some of these variables are specific to an RDBMS
or user interface.) Complete descriptions are given in alphabetical order
in the ACCELL/SQL: Configuration Variable and Utility Reference.
Tip
You can override the default value of a configuration variable by setting
it in a configuration file or at the operating system command level (see
page 24). To display current configuration variable values, use the config
utility, which is described in ACCELL/SQL: Configuration Variable and
Utility Reference.
Category
Configuration Variable Names
ACL_DBUTIL_SCH
ACLCONFIG
ACLDIR
ACLENV
ACLPATH
AGEN_ERFL
AMGR_ERFL
APPMAP
APPRESDIR
ATERMCAP
DBNAME
DBPATH
DSQUERY
EDIT
II_SYSTEM
INFORMIXDIR
M_LIBS
OL_LIBS
OPENWINHOME
ORACLE_HOME
ORACLE_SID
PATH
SYBASE
TBCONFIG
UNICAP
UNIFY
UNIFYTMP
XAPPLRESDIR
XAPPRESLANGPATH
(table continued on next page)
34
Configuring Application Environments
Category
Configuration Variable Names
CH_BURST_CHK
CH_OLD_BURST
CH_TIMER_CHK
CLEAR_FLD_MODE
CMDSCOPE
EXPL_MODE
LENONULL
RNGMETACH
SEPARATOR
ACLTXTNONDSPCH
AMTFMT
AMTNULLCH
AMTPREC
AMTROUND
BOLNULLCH
BOOLFMT
CURRSYM
DATEFMT
DATNULLCH
ERRCH
FLTFMT
FLTNULLCH
FLTROUND
MON1
MON2
MON3
MON4
SPOOLER
SQLFLDCNT
SYBASE_MSGS
SYBASE_RB_ERRNUM
S
SYBASE_RB_RESTART
SYBTRGMSG
SYBTXTSIZE
TERM
MON5
MON6
MON7
MON8
MON9
MON10
MON11
MON12
NULLCH
NUMFMT
NUMNULLCH
RADIXSEP
STRNULLCH
TIMEFMT
TIMNULLCH
TRIADSEP
TXTNULLCH
ACLDBDBG
ACLDBGON
Configuring Application Environments
35
Category
Configuration Variable Names
ACLSCROLL
AGEN_PSCOL
AMGR_NUM_WDWS
CMDSCOPE
DELIMFLD
ERRCH
FKEYGAPS
OPNARCHS
! ACLMXOPNVARF
ACLVARDIR
ACLVARMEMLIM
AGEN_HPSZ
AGEN_SEL_SET_DR
AMGR_FORM_CA_SZ
AMGR_FUNC_CA_SZ
AMGR_HPSZ
AMGR_INI_M_SZ
AMGR_SEL_M_SZ
AMGR_SEL_SET_DR
AMGR_STK_B_SZ
AMSHMKEY
DFLTVCFILE
DFLTVCMEM
OPNARCHS
CONFIG_READONLY
!
!
ACPLPP
SHELL
TERM
ULDFLAGS
ULDLIBS
ULDNAME
UPPNAME
PAGELN
PAGER
RPTCONCNT
RPTFLDCNT
RPTINBUFSZ
RPTNAG
RPTNARGS
RPTNCALL
RPTNCGRP
RPTNCOM
RPTNIF
RPTNITM
RPTNODECNT
RPTNPITM
RPTNPRINT
RPTNSETCL
RPTNSITM
RPTPBUFSIZ
SEPARATOR
SPOOLER
WIDTH
!
ACLMXOPNVARF
ACLTXTNONDSPCH
ACLVARDIR
ACLVARMEMLIM
SYBTXTSIZE
TXTNULLCH
ACLTXMODE
AMGR_LCK_SCH
CTRLCABT
OSEC2WAIT
SQLFLDCNT
STCNRTLK
36
Configuring Application Environments
(continued)
Category
Configuration Variable Names
ACLPRESMODE
APPRESDIR
DBTYPE
DBUSER
M_LIBS
OL_LIBS
OPENWINHOME
UXPUSHSHELL
UXSYSTEM
XAPPLRESDIR
XAPPRESLANGPATH
XENVIRONMENT
Additional Help
About
See
Configuration variable
descriptions
ACCELL/SQL: Configuration
Using Report Writer variables
ACCELL/SQL: Creating Reports
With RPT Report Writer
Using RDBMS-specific variables
ACCELL/SQL: RDBMS
Variable and Utility Reference
Integration
Configuring Application Environments
37
Locating Form and Help Archive Files
In Multiple Directories
If you want to locate form archives (.fa files) and help archives (.hlp
files) in multiple directories, you can set the ACLPATH configuration
variable to the list of the directories that contain the files. To find the
files, searches through the directories in the order in
which they are specified in ACLPATH. ACLPATH is also used to search for
the current application link file, which usually has a .al file name suffix.
Specifying
Multiple Directory
Names
To specify multiple directory names for ACLPATH, list the directory path
names in the following general format:
directory_name[separator_character directory_name]
The directory_name is the complete directory path for a directory that
contains the application form (.fa), help (.hlp), or link
(.al) files, as specified on your operating system. The separator character
is usually a colon ( : ) on the UNIX Bourne Shell and a space on the UNIX
C shell.
For example, if you are using UNIX with the Bourne shell, you can use
this syntax to set ACLPATH:
ACLPATH = directory_name[:directory_name] . . .
export ACLPATH
The next diagram shows three possible ACLPATH values, as set on the
UNIX Bourne shell.
Directory path name
Separator character
/usr/accell/global:/usr/accell/accts/app:/home/fred/apparchs
/home/barney/myapp
.:/usr/accell/apps
38
Configuring Application Environments
ACLPATH and
ACCELL/Manager
When ACCELL/M anager starts, the following events take place:
1. If an application link file name (.al) is specified on the AMGR
command line, that file is opened.
2. If no application link file name is specified or the application link
file cannot be opened, the manager searches for the first .al file in
the directories listed in ACLPATH. If the manager finds an .al file
in a directory specified in ACLPATH, that application link file is
opened.
3. If ACCELL/M anager cannot find a .al file in the directories
specified in ACLPATH, an error is generated.
4. The .fa and .hlp archive files in the directories specified in
ACLPATH are used as needed.
ACCELL/M anager does not check file permissions for application or
archive files. Therefore, if the current user does not have correct
permissions, a permission violation error may be generated.
Configuring Application Environments
39
Caching Application Forms and
Functions
To speed execution of frequently used application forms and global
functions, you can store information for forms and global functions in
two cache areas in memory. ACCELL/SQL uses one cache area for forms
and one for functions.
The advantage of caching forms and functions is that forms and functions
that are cached do not need to be read from disk each time they are
called.
Controlling Cache
Storage for the
Application
To control cache storage for every form and function in the application,
you use two configuration variables:
AMGR_FORM_CA_SZ
Specifies the size in bytes of the form cache and
indicates whether forms are cached. The default is 0,
which indicates that no forms are to be cached.
AMGR_FUNC_CA_SZ
Specifies the size in bytes of the global function cache
and indicates whether functions are cached. The default
is –1, which indicates that the cache is unlimited in size
and all functions are to be cached.
For both variables, a setting of –1 indicates that the cache is unlimited in
size and all forms or functions are cached. A setting of 0 indicates that no
forms or functions are to be cached.
The optimum size for these variables differs for each application. To
determine the optimum cache size, you must consider these points:
the number of forms and functions in the application
the size of each form or function
the relative call frequency of each form or function
Additional Help
For more information about determining the optimum cache size, see
“Tuning Cache Size” on page 42.
40
Configuring Application Environments
Controlling Cache
Storage for an
Individual Form or
Function
If form or function caching has been turned on, you can control whether
an individual form or function is stored in the cache by specifying cache
options in the APPLICATION section of the master application form
script. The form or function is cached by default, but you can use the
optional REQUIRED FORMS and REQUIRED FUNCTIONS clauses to
explicitly control whether individual forms and functions are to be
cached.
For each form specified in the REQUIRED FORMS clause and each
function specified in the REQUIRED FUNCTIONS clause, you can
specify one of these three cache options:
CACHED
On form deactivation, place the form or function in the
appropriate cache, if space is available. This is the
default for functions.
The form or function may subsequently be replaced in
the cache by another form or function. As the cache fills,
the forms or functions that have been activated least
recently are removed to make room for the new form or
function.
UNCACHED
On form deactivation, do not place the form or function
in a cache.
LOCKED_IN_CACHE
On form activation, if space is available, place the form
or function in the appropriate cache and keep the form or
function in the cache throughout application execution.
The CACHED, UNCACHED, and LOCKED_IN_CACHE options take
effect only if caching is turned on for all application forms or functions.
Application-wide form caching is controlled by the AMGR_FORM_CA_SZ
configuration variable, while function caching is controlled by the
AMGR_FUNC_CA_SZ configuration variable.
Example
The following example shows a REQUIRED FORMS clause and a
REQUIRED FUNCTIONS clause in the master application form script for
an application named tutorial.
REQUIRED FORMS
fcompany in ’tutorial.fa’ LOCKED_IN_CACHE,
forders
in ’tutorial.fa’ LOCKED_IN_CACHE,
fsalesrep in ’tutorial.fa’ UNCACHED
REQUIRED FUNCTIONS
calc_pay
in ’tutorial.fa’ LOCKED_IN_CACHE,
init_app
in ’tutorial.fa’ UNCACHED
Configuring Application Environments
41
Tuning Cache Size
You can use statistics about cache usage to tune cache sizes for your
application. To print cache statistics at runtime, use any of the following
methods:
Include the dump_statistics$( ) system function in a form script.
Execute the command (\Eds).
Execute the Debugger statistics stack_cache command.
Regardless of the method used to print them, cache statistics are printed
in the file that is specified by the AMGR_ERFL configuration variable. If
AMGR_ERFL is not set, cache statistics are not kept.
Example
The following example shows a Stack Cache Statistics report for global
functions in an application that has three functions named calc_pay,
calc_vac, and ehandle:
STACK CACHE STATISTICS :
Times
Name
Called
_______________
______
calc_pay
0
calc_vac
0
ehandle
1
Cache
Hits
_____
0
0
0
Size
(bytes)
_______
0
0
470
In
Cache
_____
NO
NO
YES
Cache
Persistence
___________
CACHED
CACHED
CACHED
Maximum Function Cache Size
: <unbounded>
Current Function Cache Size
: 470
Number of Times Cache Full
(preventing addition of new entry): 0
The report is reprinted for forms, if they are also cached.
STACK CACHE STATISTICS :
Times
Name
Called
––––––––––––––––
––––––
Function
statistics
Cache
Hits
–––––
Size
(bytes)
–––––––
In
Cache
–––––
. . .
AMGR_FUNC_CA_SZ val-
Maximum Function Cache Size
: . . .
Current Function Cache Size
: . . .
Number of Times Cache Full
(preventing addition of new entry): . . .
. . .
Name
––––––––––––––––
Form
statistics
42
Cache
Persistence
–––––––––––
Times
Called
––––––
Cache
Hits
–––––
Size
(bytes)
–––––––
ue
Total bytes used by all
global functions in cache
In
Cache
–––––
Cache
Persistence
–––––––––––
. . .
Maximum Form Cache Size
: . . .
Current Form Cache Size
: . . .
Number of Times Cache Full
(preventing addition of new entry): . . .
AMGR_FORM_CA_SZ val-
ue bytes used by all
Total
forms in cache
Configuring Application Environments
The Stack Cache Statistics report contains the following information for
each form or function:
Name
Name of the form or function.
Times Called
Number of times that the form or function has been
activated.
Cache Hits
Number of times that the form or function was read from
the cache instead of from the disk.
Size (bytes)
Size in bytes of the cache space used by the form or
function. This statistic is recorded only if the form or
function has been activated (Times Called > 0).
In Cache
YES, if the form or function is currently stored in the
cache; NO, if the form or function is not currently stored
in the cache.
You can determine the number of forms or functions
currently in the cache by counting the number of YES
values under the “In Cache” heading.
Cache Persistence
Form or function cache persistence status, which is one
of three values:
CACHED
UNCACHED
LOCKED_IN_CACHE
In addition, these statistics are printed:
Maximum Form Cache Size/Maximum Function Cache Size
Value of the AMGR_FORM_CA_SZ or
AMGR_FUNC_CA_SZ configuration variable.
This heading is “Maximum Form Cache Size” on a
Cache Statistics report for forms and “Maximum
Function Cache Size” on a Cache Statistics report for
global functions.
Configuring Application Environments
43
Current Form Cache Size/Current Function Cache Size
Size in bytes of the cache space used by all forms or
functions. This statistic is the total of the “Size (bytes)”
values for all forms or functions.
This heading is “Current Form Cache Size” on a Cache
Statistics report for forms and “Current Function Cache
Size” on a Cache Statistics report for global functions.
Number of Times Cache Full
Number of times that the cache was too full to accept a
new form or function.
44
Configuring Application Environments
Speeding Form
Access
Example
To guarantee that forms can be accessed quickly, in addition to caching,
use string constants instead of string expressions to refer to form names
in form scripts. This enables ACCELL/SQL to search for the form name
by direct lookup instead of sequential access.
Two ways to refer to the fcompany form name are shown in these
examples:
SET $fm_name TO ’fcompany’
. . .
DISPLAY TRIM FOR $fm_name WAIT
DISPLAY TRIM FOR fcompany WAIT
string expression
constant
If you use string expressions to refer to the forms, ACCELL/SQL searches
sequentially for the names. To decrease the search time, list the form
names in the REQUIRED FORMS clause of the APPLICATION section
of the master application form script. Form names that are specified in
the REQUIRED FORMS clause are placed at the head of the table that is
used to track form information.
Additional Help
About
See
Syntax and usage for the
APPLICATION section or the
dump_statistics$( ) system
function
ACCELL/SQL: Script and
The AMGR_FORM_CA_SZ and
The configuration variable
descriptions in ACCELL/SQL:
Configuration Variable and Utility
Reference
AMGR_FUNC_CA_SZ
configuration variables
Using ACCELL/SQL Interactive
Debugger
Executing ACCELL/SQL user
commands
Configuring Application Environments
Function Reference
ACCELL/SQL Interactive
Debugger: Developer's Reference
ACCELL/SQL: Using an
Application
45
Storing Text and Binary Values
When ACCELL/SQL retrieves variable-length text or binary values from
the database for a selected set, the values are stored in memory, similarly
to string values. However, text and binary values are more likely to
overflow the memory space that has been allocated because they are
usually larger than string values.
You can use several configuration variables and attributes to manage
storage for text and binary values:
Use the ACLVARMEMLIM configuration variable to specify the
maximum number of bytes of memory that can be used to store
variable-length text and binary values. If the number of bytes to be
stored is greater than the specified size, ACCELL/SQL stores the
value in a temporary disk file.
The default amount of memory is 1k bytes.
Use the ACLVARDIR configuration variable to specify the directory
that contains the temporary files that are used to store
variable-length text and binary values. The default temporary
directory is /usr/tmp.
The RETRIEVE_VALUE target attribute indicates whether the
target table column value is retrieved when the target table row is
retrieved from the database. The default is TRUE for all data types
except binary, and FALSE for binary.
If the value is not needed, set RETRIEVE_VALUE to FALSE to
conserve memory and speed interactive finds for rows that contain
text or binary values.
46
Configuring Application Environments
Manipulating Text
and Binary Values
From a Form
Script
To manipulate the text or binary values from an ACCELL/4GL form
script, use these two attributes:
Use the IN_MEMORY general attribute to determine whether a
text or binary value is stored in memory (TRUE) or on disk
(FALSE).
Use the FILE_PATH general attribute to determine the directory
path and file name of the temporary file created by ACCELL/SQL
to be used to store text or binary values, when they are stored on
disk. ACCELL/SQL creates separate files for text and binary
values.
Manipulating Text
and Binary Values
From a C-Hook
If you want to manipulate text and binary values from a C-hook, you can
use the following defines from the chookincl.h header file:
Data Type
Text
Binary
Configuring Application Environments
Define
Purpose
A_TXT
M
To manipulate a text value that is stored in
memory or to determine whether the value is in
memory
A_TXTF
To manipulate a text value that is stored in a disk
file or to determine whether the value is in a disk
file
A_BINM
To manipulate a binary value that is stored in
memory or to determine whether the value is in
memory
A_BINF
To manipulate a binary value that is stored in a
disk file or to determine whether the value is in a
disk file
47
Optimizing Text
and Binary
Storage
Configuration
The optimum configuration of the variables and attributes used for text
and binary storage differs for each application. To determine the
optimum configuration, you must consider these points:
the number of text and binary fields that must be retrieved in the
application
the size of each text or binary field
Additional Help
About
IN_MEMORY general attribute,
FILE_PATH general attribute, and
RETRIEVE_VALUE target attribute
ACLVARMEMLIM and ACLVARDIR
The configuration variable
descriptions in configuration variables
48
See
Configuring Application Environments
Maintaining a Secure
Application
Environment
49
This chapter describes features that you can use to implement and
maintain a secure application environment. A secure application
environment ensures that application data is accessed and modified only
by users who have permission to do so.
Implement operating system level security by using your operating
system security facilities.
Implement database security by using your RDBMS security facilities.
Use ACCELL/SQL security facilities to enhance security for your
application in these ways:
by identifying the user
by controlling user application access privileges
by controlling form access privileges
by limiting allowable user operations.
50
Maintaining a Secure Application Environment
Using Operating System Security
Features
Use your operating system security features to perform these basic
security-related tasks:
establish user login names and passwords
define directory-level read, write, and execute permissions for
users and groups of users
define file-level read, write, and execute permissions for users and
groups of users
Additional Help
For more information about implementing security through your
operating system, see your operating system administration manual.
Maintaining a Secure Application Environment
51
Using RDBMS Security Features
Use your RDBMS security features to perform these security-related
tasks:
add and remove database users
grant and revoke permission to read data from the database, add
data to the database, modify database data, or delete database data
grant and revoke permission to create, modify, or delete database
objects such as tables and columns
establish the default database for each user
After using your RDBMS to implement basic security for your database,
use features to enhance security.
Additional Help
For more information about implementing security through your
RDBMS, see your RDBMS database administration manual.
52
Maintaining a Secure Application Environment
Using ACCELL/SQL Security
Features
security features define the interactive database operations
that a user can perform on application forms. Whether a user can read,
add, update, or delete form records depends on a combination of
application access privileges and form access privileges, as well as the
user’s RDBMS permissions.
Identifying the
User
To determine who the current user is, you can use the following
system functions:
group_id$( )
group_name$( )
user_id$( )
user_name$( )
These system functions determine the current user’s operating system
group ID number, group name, user ID number, and user name. When
you have the user’s group ID, group name, user ID, or user name, you
can conditionally set application or form access privileges, or you can
specify individual user operations that the user cannot perform.
Additional Help
For more information about using the group_id$( ), group_name$( ),
user_id$( ), and user_name$( ) system functions, see .
Maintaining a Secure Application Environment
53
Controlling User
Application
Access Privileges
User application access privileges determine the interactive database
operations that a user can perform on any form in the application. These
privileges apply to all forms in the application.
Initializing User Application Privileges
User application access privileges are initialized through the access code
argument that is passed to AMGR when starting for the
user. The access code is a number ranging from 0 to 15 that specifies
whether the user can interactively read, add, update, or delete database
records through application forms.
By default, the application access code is 15. An access code of 15
allows the user to find, add, update, and delete data.
Changing User Application Access Privileges
To change user application access privileges, you can use the following
Boolean system variables:
add_allowed$
delete_allowed$
find_allowed$
update_allowed$
These variables are initialized to TRUE or FALSE by the AMGR access
code. If the variable is set to TRUE, the user can perform the associated
database operation on application forms. If set to FALSE, the user cannot
perform the associated operation on application forms.
You can change the value of any of these variables in a form script by
using the ACCELL/4GL SET statement.
Example
For example, a user named anna starts with an access
code of 15. This user can find, add, update, and delete application
records on forms.
To change the user’s application access privileges so that anna can find,
add, or update records, but not delete records from forms, set
delete_allowed$ to FALSE:
IF (user_name$() = ’anna’) THEN
SET delete_allowed$ TO FALSE
54
Maintaining a Secure Application Environment
Additional Help
About
AMGR and specifying user access
codes
Controlling Form
Access Privileges
See
“ACCELL/SQL Utilities
Reference” in this manual
add_allowed$ system variable
delete_allowed$ system variable
find_allowed$ system variable
update_allowed$ system variable
SET statement
user_name$( ) system function
“Identifying the User,” on
page 53, and Form access privileges determine the interactive database operations that
a user can perform on a form’s target table. These privileges apply only
to the associated form and are controlled through the following
ACCELL/SQL Boolean form attributes:
FIND_ALLOWED
ADD_ALLOWED
UPDATE_ALLOWED
DELETE_ALLOWED
Initializing Form Access Privileges
In ACCELL/G enerator, form access privileges are initialized to TRUE or
FALSE in the Find Allowed, Insert Allowed, Update Allowed, and
Delete Allowed fields on the Form Definition form. If an attribute is set
to TRUE, users can perform the associated database operation on the
form. If the attribute is set to FALSE, users cannot perform the associated
operation on the form.
Maintaining a Secure Application Environment
55
Changing Form Access Privileges
You can change form access privileges in a form script by using the SET
command in the BEFORE FORM event section. ACCELL/M anager
checks the form attribute values when beginning form execution.
Example
For example, a form named inventory can be accessed by two different
groups of users: sales and customers. Members of the sales group must
be allowed to find, add, update, and delete records on the inventory
form. Members of the customers group can only find inventory records,
although members of the customers group are allowed to add and update
records on some other forms.
The inventory form script contains the following statement block in the
BEFORE FORM event section:
IF (group_name$() = ’customers’) THEN
BEGIN
SET inventory:ADD_ALLOWED TO FALSE
SET inventory:UPDATE_ALLOWED TO FALSE
SET inventory:DELETE_ALLOWED TO FALSE
END
This conditional statement removes add, update, and delete privileges
when the user is a member of the customers group.
Additional Help
About
See
FIND_ALLOWED form attribute,
ADD_ALLOWED form attribute,
UPDATE_ALLOWED form attribute,
DELETE_ALLOWED form attribute
Form Definition form
group_name$( ) system function
56
“Identifying the User,” on
page 53, and Maintaining a Secure Application Environment
Limiting User
Operations
User operations are performed when the user presses a user command
key sequence, for example, or . To prevent the user
from performing a specific user operation, use the ACCELL/4GL
REJECT OPERATION statement. The operation that is rejected depends
on the event section that contains the REJECT OPERATION statement.
For example, if the ON NEXT FORM section contains a REJECT
OPERATION statement, the next form operation is not performed when
the user presses . However, all statements before and after
the REJECT OPERATION statement are executed.
When the user executes a user command, ACCELL/M anager executes the
corresponding event section until reaching a REJECT OPERATION
statement. On reaching a REJECT OPERATION statement,
ACCELL/M anager displays a message that the user command is invalid,
and then continues executing the remaining statements in the event
section.
Example
For example, to prevent a user named kirk from adding records to the
inventory form, you can add a REJECT OPERATION statement to the
BEFORE ADD section of the inventory form script:
BEFORE ADD
SET ADD_ALLOWED TO TRUE
IF (user_name$() = ’kirk’ ) THEN
BEGIN
REJECT OPERATION
SET ADD_ALLOWED TO FALSE
END
Then in the AFTER ADD section, you can specify a message to be
displayed if a user other than kirk adds a record on the inventory form:
AFTER ADD
IF ADD_ALLOWED THEN
DISPLAY ’The row has been added to the database’
FOR FYI_MESSAGE WAIT
Maintaining a Secure Application Environment
57
Additional Help
About
REJECT OPERATION statement
See
ACCELL/SQL: Script and
Function Reference
Form Definition form
ACCELL/SQL: Creating Screen
Forms
58
user_name$( ) system function
“Identifying the User,” on page
53, and ACCELL/SQL: Script and
Function Reference
RDBMS-specific information
related to security
ACCELL/SQL: RDBMS
Integration
Maintaining a Secure Application Environment
Moving, Renaming,
and Deleting
Application Files
59
This chapter describes how you can
move an application
rename an application
delete an application
60
Moving, Renaming, and Deleting Application Files
Moving an Application
Applications can be moved from one directory to another or from one
computer to another.
To move an application to another directory, you must copy the
application’s form and script files to the new directory.
To move an application to another computer, you must convert
form and help archives to ASCII format before you move the files.
Convert the ASCII files back to form and help archives after you
move them.
After move an application, you must make sure that you set all
configuration variables that reference the application so that they point to
the new location.
Application
Directories
Possible development
directory structure
Usually, application files are located in one directory. But files can be
located in several directories. Some application developers prefer to
divide files among three directories: development, archives, and runtime.
Development
directory
Archives
directory
Runtime
directory
.aq .fq .as .fs
files files files files
.fa .hlp
files files
.al
file
When you copy application files, make sure that all scripts or forms that
are referenced by the application but which reside in other directories are
also transferred.
Moving, Renaming, and Deleting Application Files
61
Application Files
The files used by an application depend on whether the application is
being used in a runtime or development environment.
Runtime
Runtime applications can be executed but not modified.
Runtime applications need these files:
Development
Development applications are applications that are being
created. Development applications need these files:
Moving From
Computer to
Computer
To move an application from one computer to another type of computer,
you must convert the application’s form and help archives to ASCII
format before you copy them. On the computer from which the files will
be moved, use these utilities:
Q2ASC
Converts a form file (.fq or .aq) to ASCII format.
H2ASC
Converts a help archive (.hlp) to ASCII format.
After you copy the application to the new computer, you must convert
the ASCII files back to application form and help archive files. On the
computer to which you moved the files, use these utilities:
62
ASC2Q
Converts an ASCII form file to a form file (.fq or .aq).
ASC2H
Converts an ASCII help file to a help archive (.hlp).
Moving, Renaming, and Deleting Application Files
Resetting
Configuration
Variables
After you move application files to new directories, you must make sure
that you also reset the ACLENV and ACLPATH configuration variables to
specify the new application directories. If you do not reset these
variables, ACCELL/SQL continues to search for application files in the
old directories.
ACLENV
This variable is required only if you have used
ACCELL/E nvironment (adev) to develop the application
instead of using the development utilities (AGEN,
ACPL, ACMB, and ALNK) directly. Set the ACLENV
variable to the search path for the directory that contains
the new application link file (.al).
ACLPATH
Set the ACLPATH variable to the path name of the
directory that contains the form and help archive (.fa and
.hlp) files, if these files are not located in the same
directory as the application link file (.al).
You must also set the configuration variables that are used by your
RDBMS to find your database files.
If you are using this RDBMS:
Then set:
INFORMIX OnLine
INFORMIXDIR and TBCONFIG
INFORMIX SE
DBPATH and INFORMIXDIR
ORACLE
ORACLE_HOME and ORACLE_SID
SYBASE SQL Server
SYBASE and DSQUERY
Unify DataServer
DBPATH and DBNAME
Additional Help
About
See
The syntax and usage for the
ASC2Q, ASC2H, Q2ASC, and
H2ASC form conversion utilities
ACCELL/SQL: Configuration
Setting configuration variables
“Setting Configuration Variables”
on page 24 of this manual
RDBMS-specific configuration
variables
ACCELL/SQL: RDBMS
Moving, Renaming, and Deleting Application Files
Variable and Utility Reference
Integration
63
Renaming an Application
An application can be renamed after it has been added to ACCELL/SQL
development environment. When you rename an application, you must
perform these tasks:
Rename the application directory as well as the application files.
Update all form script files that reference the application name, the
Application List form, and the master application form.
Recompile and integrate the application.
Renaming the
Directory
To rename an application, you must first rename the application directory
to a new name.
1. Rename the application directory to a new directory name. Choose
a name that is meaningful and corresponds to the new application
name. For example, if you are renaming the application from
finances to accounts, rename the directory name to accounts.
2. Move to the renamed application directory.
Renaming the
Application Files
After you rename the application directory, rename the application files
to reflect the new application name.
3. Rename the application link file, the master application form file,
and the master application form script file. These files usually are
named application.al, application.aq, and application.as.
Updating Form
Script Files
After all application files are renamed, update all form and file names
that are referenced in your form script files so that they refer to the
correct application files.
4. Start your text editor on the master application form script file
(.as), and change all occurrences of the old application name to the
new application name.
5. Start your text editor for each standard form file (.fs), and change
all occurrences of the old application name to the new application
name. These references to the application name are usually in
comments. Although comments do not affect application
performance, you should keep the references up to date, because
comments are often the only documentation for a script.
64
Moving, Renaming, and Deleting Application Files
Updating the
Application List
The Application List form is used by the ACCELL/SQL development
environment to record the application’s name and description. After all
application form scripts have been updated, update the Application List
form so that the development environment has the new application name
and description.
6. If necessary, change the current directory to the application
development directory. This is the directory that contains your
individual application directories.
7. Run the startup script, accell, to start ACCELL/SQL . The Main
menu is displayed.
8. Choose the “ACCELL/SQL Development Environment” option
from the Main menu.
9. Press to display the Application List form.
10. Delete the obsolete application entry from the Application List
form by moving the cursor to the entry and pressing
.
ACCELL/SQL prompts you to confirm your request to delete the
record.
11. Answer YES to the Delete confirmation prompt (Type y and press
RETURN ).
12. Press to clear the form so that you can add the
new application to the Application List form.
The cursor moves to the first blank line on the form.
13. Type in the new application name and description.
14. Press to save your entry.
Updating the
Master Application
Form
After you update the Application List form, update the master
application form so that it refers to the new application name.
15. Move the cursor to highlight the new_app_name.aq master
application form name, and press to display the
Operations menu.
16. Select the “Edit ACCELL/G enerator Form” option from the
Operations menu. Type the menu option number, 1.
The Form Definition form is displayed.
Moving, Renaming, and Deleting Application Files
65
17. Type the new application name in the Form Name field on the
Form Definition form.
18. To save your changes, press .
19. To return to the Operations menu, press .
Compiling and
Integrating the
Application
After the master application form has been updated, compile and
integrate the application again, so that all updates are synchronized.
20. To compile and integrate the new application, select option 3,
“Compile/Integrate Forms & 4GL,” from the Operations menu.
21. To exit ACCELL/E nvironment, press until the
Main menu is displayed. Then press again to
exit ACCELL/SQL .
22. If necessary, move to the directory that contains the application
files.
23. Delete the old application’s .ao, and .fa files.
24. If you have a make file that was used to create the old application,
remove the existing make file and create a new one. You can
execute makeamake to generate a make file for the new
application.
66
Moving, Renaming, and Deleting Application Files
Deleting an Application
To automatically delete an ACCELL/SQL application, use
ACCELL/E nvironment. To manually delete an application, remove the
application files.
Warning
When you use ACCELL/Environment to delete an application, the
application directory, all application forms and scripts, and the
record of the application in the development environment are
permanently removed. If you want to recover the application, you must
restore it from a backup.
To remove application files manually, use the operating system remove
file command, for example, rm on UNIX systems.
Make sure you remove only the application files that are unique to the
application that you want to delete. If several applications use the same
files, do not remove these shared files unless they are not required by all
sharing applications.
Tip
As a precaution against accidental deletion of files, back up the
application before you remove any files.
Additional Help
For a description of how to delete an application from
ACCELL/E nvironment, see .
Moving, Renaming, and Deleting Application Files
67
68
Moving, Renaming, and Deleting Application Files
Performing
Application
Management Tasks
69
Application management tasks can be performed in these ways:
Select menu options from ACCELL/SQL Menu Handler or
ACCELL/E nvironment.
Run an ACCELL/SQL utility.
70
Performing Application Management Tasks
Choosing Menu Options
You can choose menu options from the ACCELL/SQL Menu Handler
Main menu and Menu Handler Maintenance Utilities submenu or the
ACCELL/SQL Development Environment Operation menu to perform
several application management tasks.
From
ACCELL/SQL
Menu Handler
ACCELL/SQL Menu Handler provides a menu-driven environment from
which you can develop projects, create applications, and run finished
applications. These are the tasks that you can perform through Menu
Handler:
access ACCELL/E nvironment to create, modify, compile, integrate,
or run applications
execute queries through the RDBMS version of SQL
execute the ACCELL/SQL tutorials
execute operating system level commands
edit scripts and ASCII files
customize menus by adding, modifying, or deleting programs and
menus
modify program and menu security
add or modify help for menu items
create a default application
Performing Application Management Tasks
71
From ACCELL/Environment
To access ACCELL/E nvironment, either select the ACCELL/SQL
Development Environment option from the Menu Handler Main menu or
execute the adev utility. From the ACCELL/E nvironment Operation
menu, you can perform several application management tasks:
create or modify screen forms
write form scripts
compile, combine, and link forms and form scripts into an
application
execute an application
compile, combine, and link forms and form scripts, and execute an
application
synchronize application forms with the database design after a
database design change
execute operating system commands
While most of these tasks are application development tasks, you can
also access the operating system from the Development Environment
Operation menu to perform additional tasks.
Additional Help
About
See
Using ACCELL/E nvironment to
perform application management tasks Selecting options from ACCELL/SQL
menus
Customizing Menu Handler so that
management tasks can be selected
from menus
72
Performing Application Management Tasks
Controlling Concurrency in
ACCELL/Environment
For an application that is being developed in ACCELL/E nviroment,
concurrency control is automatic. ACCELL/SQL uses a lock table named
ADEVLOCKS to control access to an application that is under
development, instead of using the RDBMS locking facilities. (When an
application is run after it has been developed, ACCELL/SQL depends on
the RDBMS locking facilities to lock database objects, such as tables and
rows.)
The ADEVLOCKS
Table Information
ACCELL/E nvironment inserts lock records into the ADEVLOCKS table
for applications and forms that are being accessed by a user. Each lock
record in the ADEVLOCKS table contains the following information for
a locked item:
a numeric ID used by ACCELL/E nvironment to indicate the object
(application or form) that is locked
a numeric ID that indicates whether the locked object is an
application or a form
the name of the host computer that holds the lock
the process ID of the ACCELL/E nvironment process that holds the
lock
the user ID of the user who is running the ACCELL/E nvironment
process that holds the lock
Because of the complexity of the various networked environments that
ACCELL/E nvironment can run in, ACCELL/E nvironment does not
perform process verification when it encounters an item that is marked as
locked. ACCELL/E nvironment removes all lock records for a process
when it exits.
Performing Application Management Tasks
73
Using the adevmnt
Utility
Occasionally, if a process ends abnormally (such as during a system
crash), lock records may be left in the ADEVLOCKS table for defunct
processes. You can use the adevmnt utility to clear lock records that are
held by defunct processes, such as those that were killed by a user or a
system crash.
The adevmnt utility starts the ACCELL/E nvironment maintenance
application. The maintenance application lets you display and delete lock
records in the ADEVLOCKS table.
Additional Help
For the syntax and usage of the adevmnt utility, see .
74
Performing Application Management Tasks
Using ACCELL/SQL Utilities
You can use the ACCELL/SQL utilities to perform a number of
application management tasks. The following table groups the
ACCELL/SQL utilities into categories that are based on the tasks that are
performed when you run the utilities.
Before you try to run any of the ACCELL/SQL utilities, make sure that
the directory paths specified in your PATH configuration variable include
the ACCELL/SQL release bin directory.
Category
Utility
accell
Motif and OPEN LOOK ckguires
UI options only
Purpose
Prepare the environment and start
ACCELL/.SQL Menu Handler
Verify compatibility of installed
GUI resource files against default
resource files
ckunicap
Verify syntax of unicap file
config
Display information about
configuration variables
SYBASE SQL Server gtlogin
and ORACLE only
Obtain the user name and
password of the current user
SYBASE SQL Server ridutil
only
Perform tasks related to selected
set row identification
ACMB
Combine ACCELL/SQL forms and
form script object files to a form
archive
ACPL
Compile ACCELL/SQL form script
files
adev
Access ACCELL/Environment to
create, modify, compile, integrate,
or run applications
adevmnt
Perform ACCELL/Environment
maintenance tasks
(table continued on next page)
Performing Application Management Tasks
75
Category
Utility
Purpose (continued)
AGEN
Access ACCELL/SQL Generator to
create and modify screen forms
ALNK
Link an ACCELL/SQL archive file
into an application file
amgr.ld
Link C-hooks with
ACCELL/Manager to create a
custom manager
bldcmf
Rebuild a customized message file
make_maf
Generate a master application
form
makeamake
Create a makefile
MKAP
Generate a default prototype
application
PAINTHLP
Access a help form generator to
create and modify help forms
rpt.ld
Link C-hooks with RPT to create a
custom Report Writer
Application
documentation
FRMDOC
Generate a form characteristics
report
accell
Prepare the environment and start
ACCELL/.SQL Menu Handler
AMGR
Execute ACCELL/SQL runtime
applications
PICT
Display a form from an ASCII file
ASC2H
Convert an ASCII help file to a
help form
ASC2Q
Convert an ASCII form file to a
screen form
H2ASC
Convert a help form to an ASCII
help file
Form and file
conversion
76
Performing Application Management Tasks
(continued)
Category
Report generation and
execution
Utility
Purpose (continued)
q2a2q
Convert a screen form to an ASCII
form file and back to a screen
form
Q2ASC
Convert a screen form to an ASCII
form file
irs
Execute Report Writer report
scripts
ORACLE only orcfltr
Filters an input file generated by
ORACLE SQL*Plus for use by RPT
RPT
Produce a Report Writer report or
a Table Usage Information report
from a report script
rpt.ld
Link C-hooks with RPT to create a
custom Report Writer
INFORMIX, ORACLE, SQL
and SYBASE SQL
Server only
Menu Handler operation syncauth
Produce a correctly formatted
input file for RPT
Synchronizes the Menu Handler
database
Additional Help
For a complete description of each utility’s syntax and usage, see
ACCELL/SQL: Configuration Variable and Utility Reference.
Performing Application Management Tasks
77
78
Performing Application Management Tasks
Appendixes
79
80
Appendixes
Appendix A:Building Application
Systems
This appendix describes how to build application systems that consist of
multiple applications and databases.
When several runtime applications each access a different database,
ACCELL/M anager determines the correct database for each application by
searching the application database map file. This file associates an
application with its corresponding database.
Mapping applications to databases is useful when you have several
applications that each access a different database, and you want to be
able to execute all applications from the same menu handler and
manager. The following diagram shows an example application system in
which six applications each access one of three databases.
Example Application System
Application1
Application2
Application3
Database1
Database2
Database3
Application4
Application5
Application6
When you map the applications to databases, you can run the
applications without having to restart AMGR off a pipe each time that
you want to execute a different application. Mapping applications to
databases also enables you to execute applications on different databases
without having to stop and set up the environment for each database.
81
This appendix describes how to map applications to databases and how
to execute an application that is part of an application system. Also
included is a sample application system that you can use as a guide.
The examples shown in this appendix are for the UNIX operating system.
If you are using a different operating system, use the equivalent
commands for your system.
82
Building Application Systems
Mapping Applications to Databases
In an application system, mapping applications to databases ensures that
ACCELL/M anager can find the database to be used with the application
to be executed. To execute an application, ACCELL/M anager gets
information from these sources:
Application link file (.al)
This file contains information about the application
forms and the archives that contain the forms.
All form archive (.fa) and help archive (.hlp) files
These files are located either in the same directory as the
application link file or in a directory that is specified in
the ACLPATH configuration variable
Application database
To enable ACCELL/M anager to locate the appropriate sources, you must
perform three tasks:
1. Create an application database map file.
2. Set the APPMAP configuration variable.
3. Set the ACLPATH configuration variable.
The following sections describe how to perform these tasks.
Building Application Systems
83
Creating the
Application
Database Map File
Step 1
The application database map file is an ASCII file that contains
information that associates an application with its database. To create the
application database map file, take these steps:
Start your text editor for the file. For example, if you are using the vi text
editor on the UNIX operating system and you want to create an
application database map file named appsmap, located in the
/usr/ASQL/ACCOUNTS directory, you use this command:
vi /usr/ASQL/ACCOUNTS/appsmap
The text editor starts so that you can type the text for the application
database map file.
Step 2
Type the application-database map information. Each line of the
application database map file contains two columns of data:
Column 1
Column 2
The full directory path and file
name of an application link file,
without the .al suffix
The values of the configuration
variable(s) that the RDBMS uses to
locate the application database
The format and content of column 2 depends on the RDBMS that is being
used:
On INFORMIX SE, use DBPATH and INFORMIXDIR .
On INFORMIX OnLine, use INFORMIXDIR and TBCONFIG.
On SYBASE SQL Server, use SYBASE and DSQUERY.
On ORACLE, use ORACLE_HOME and ORACLE_SID .
On Unify DataServer, use DBPATH.
The two columns of information in the application database map file
entries must be separated by a space:
application_link_file_path database_identification_information
Space character
84
Building Application Systems
Type one line for each application-database combination that you expect
to be using. If an application can be accessed through several different
directory paths, create a line for each application directory path and file
name (each entry contains the same database identification information).
If several applications access the same database, create a separate line for
each application.
Step 3
Save your edits and exit the text editor.
You have now created an application database map file.
Setting APPMAP
Step 4
You must set the APPMAP configuration variable to the directory path
and file name of the application database map file if you have
applications that access multiple databases.
Set the APPMAP configuration variable to the absolute path and file name
of the application database map file. For example, if you are using the
Bourne shell on the UNIX operating system, you use this command:
APPMAP=full_path_name/application_database_file_name
export APPMAP
The APPMAP configuration variable now points to the application
database file.
After you create the application database map file and set the APPMAP
variable, you can access any of the runtime applications without
manually resetting the database identification configuration variable.
Setting ACLPATH
If the applications’ form archives (.fa) and help archives (.hlp) are not in
the directories from which the applications are to be executed, you must
also set the ACLPATH configuration variable to the directory path list for
the directories that contain these files. To set ACLPATH you use the same
format used for the PATH configuration variable.
Additional Help
For information about setting ACLPATH, APPMAP, and other
configuration variables for ACCELL/SQL applications, see “Configuring
an Application Environment” on page 18 of this manual and
ACCELL/SQL: Configuration Variable and Utility Reference.
Building Application Systems
85
Executing an Application in an
Application System
To execute an ACCELL/SQL application in an application system that
uses an application database map file, you can use either of two methods:
Start the AMGR utility at the operating system command line.
Start Menu Handler and select the application from a menu.
How
ACCELL/Manager
Executes
Applications
Regardless of the method you use, the application is executed by
ACCELL/M anager. ACCELL/M anager uses the directory path and file
name of the application link file (the .al file) to find the current
application files. The value of the APPMAP configuration variable
determines the next action taken by ACCELL/M anager:
If APPMAP is set, ACCELL/M anager opens the specified
application database map file to search for the database that is
associated with the current application.
If APPMAP is set, but ACCELL/Manager cannot open the
application database map file, ACCELL/M anager exits. If the
AMGR_ERFL configuration variable has also been set, the manager
displays an error message to notify you that the file cannot be
opened.
If APPMAP is not set, ACCELL/M anager searches for the database
identification configuration variable that points to the application
database.
On opening the application database map file, ACCELL/M anager
performs these tasks:
1. ACCELL/M anager searches the first column of the application map
file for the name of an application link file that matches the link
file name received.
2. ACCELL/M anager resets the configuration variable that is used by
the RDBMS to locate the database. The value of this variable is
changed to the information listed in the second column of the
matching application database map entry. (The variable that is
used is specific to the underlying RDBMS; see step 2 on page 84.)
86
Building Application Systems
ACCELL/M anager resets the configuration variable used to locate the
database only if the following two conditions are met:
The APPMAP configuration variable is set to a valid application
database map file name.
The name of the application link file can be found in column one
of the application database map file.
Executing an
Application From
the Operating
System
The ACCELL/M anager utility, AMGR, is used to execute an
ACCELL/SQL application from the operating system command line. To
execute an application from the operating system command line, take
these steps:
Step 1
First make sure that you have created the application database map file
and have set the APPMAP configuration variable, as described on page
85.
Step 2
Make sure that all other required configuration variables are set:
ATERMCAP
Set to the directory path and file name of the
ACCELL/SQL termcap file.
UNICAP
Set to the directory path and file name of the
ACCELL/SQL unicap file.
UNIFY
Set to the directory path of the release lib directory.
Set the configuration variables that your RDBMS uses to locate the
database. These variables are listed in the table on the next page.
Step 3
If application files are distributed among several directories, also set the
ACLPATH configuration variable.
Step 4
Start AMGR by typing the command name, followed by the directory
path and file name of the application to be executed.
AMGR application_directory path/application_link_file_name
Additional Help
For the complete AMGR syntax and usage description, see
ACCELL/SQL: Configuration Variable and Utility Reference.
Building Application Systems
87
Configuration Variables Used to Identify the Database
RDBMS
INFORMIX Online
INFORMIX SE
INGRES
ORACLE
Variable
Description
INFORMIXDIR
Path of the directory where the INFORMIX
release is installed
TBCONFIG
Name of the file that contains the configuration
variables for an INFORMIX OnLine system, if
the file is not named tbconfig
DBPATH
Directory path, without the file name, of the
application database file and associated files
INFORMIXDIR
Path of the directory where the INFORMIX
release is installed
DBNAME
Name of the database
II_SYSTEM
Path of the parent directory for the INGRES
release software
(Other needed variables are II_CHECKPOINT,
II_DATABASE, and II_DUMP, which are set at
installation)
ORACLE_SID
ORACLE system identifier for the unique SGA
(system global area) to be used
ORACLE_HOME
Path of the root directory of the ORACLE
RDBMS
SYBASE SQL Server
Unify DataServer
88
SYBASE
Name of the directory that contains the SYBASE
SQL Server interfaces file
DSQUERY
Name of the database server that contains the
database to be used
DBPATH
Directory path, without the file name, of the
directory that contains the application database
file and associated files
DBNAME
Simple file name of the database file, for
example, file.db
Building Application Systems
The following examples show the commands needed to start AMGR,
depending on the first column of the application database map file.
Example # 1
The application database map file for an application that is being
executed on SYBASE SQL Server contains this line:
tutorial asql_dbs
SYBASE
DSQUERY is null
In this case, the application directory path is the current directory.
Therefore, you must execute AMGR from the directory that contains the
application link file, tutorial.al. You would use this command:
AMGR tutorial
Example # 2
The application database map file for an application that is being
executed on Unify DataServer contains this line:
runtimeapps/tutorial /usr/appdb/tutdb
DBPATH
In this case, the application directory path is relative. Therefore, you
must execute AMGR from the directory that contains the runtimeapps
subdirectory. If the runtimeapps directory is in the /usr directory, you
must be in /usr to start AMGR. You use this command:
AMGR runtimeapps/tutorial
Example # 3
The application database map file for an application that is being
executed on ORACLE contains this line:
/usr/runtimeapps/tutorial TUTORIALS
ORACLE_SID
In this case, the application directory path is absolute. Therefore, you can
execute AMGR from any directory, provided you include the entire
application link directory path and file name when calling AMGR. You
would use this command:
AMGR /usr/runtimeapps/tutorial
Building Application Systems
89
Executing an
Application From
ACCELL/SQL
Menu Handler
To execute an ACCELL/SQL application from ACCELL/SQL Menu
Handler, you type accell at the operating system command line prompt.
Menu Handler then displays the Menu Handler main menu and waits for
you to select a menu item. Your runtime applications can be listed on the
main menu, or they can be in submenus that are accessible from the main
menu.
You can access several ACCELL/SQL applications, each with its own
database, from ACCELL/SQL Menu Handler. Menu Handler is the system
that controls the display and selection of menu items.
Setting Up the Runtime Environment
Before you can access multiple databases from Menu Handler, you must
set up the runtime environment by performing these tasks:
1. Create a runtime directory structure.
2. Copy the runtime files for each application to the appropriate
application directory.
3. Use the Menu Handler xecmnt option to register each runtime
application with the listing application (page 91).
After you have registered the runtime applications, created the
application map, and set the APPMAP variable, you can access any of the
runtime applications from Menu Handler without having to manually
reset your database identification configuration variable.
Step 1
Create a runtime directory structure that includes these directories:
a directory to contain the listing application
a database directory to contain the listing application database
an aclenv directory to contain the runtime application directories
a directory under the aclenv directory for each runtime application
For a sample runtime directory structure, see page 94.
Step 2
To enable Menu Handler and ACCELL/M anager to access the runtime
applications, you must copy all runtime files into their respective runtime
application directories under aclenv.
The ACCELL/SQL application runtime files are the application link file
(the .al file), the application form archives (the .fa files), and the
application help archives (the .hlp files). All other application files (.fq ,
.fs, .aq, and .as files) remain in the application’s development directory,
as does the runtime application database.
90
Building Application Systems
Step 3
Register each ACCELL/SQL application with Menu Handler by using the
Menu Handler option “Describe Program to System” (xecmnt).
You can also create menu items on Menu Handler menus for your
runtime applications. These menu items enable you to select a runtime
application from a Menu Handler menu. To create menu items, use the
Menu Handler option “Add, Modify or Delete Menus” (mnumnt).
The Menu Handler Application Record
When using multiple databases through Menu Handler, all the runtime
applications must be registered with ACCELL/SQL Menu Handler. Menu
Handler records information for each registered application by creating
an entry in a table in DBUTIL. (DBUTIL is an owner on INFORMIX, a
user on ORACLE, a database on SYBASE SQL Server, and a schema on
Unify DataServer.)
The application record in DBUTIL is used as the listing application
database. The listing application database is the starting point for
runtime application execution.
Starting Menu Handler
Without a Database
Storing Listing
Application Information
in an Application
Database
ACCELL/SQL Menu Handler must have a database in which to store the
listing application information. If you start Menu Handler with no
database, Menu Handler prompts you, to ask whether you want to create
a database. If you answer yes, the database that is created contains only
the listing information.
To reduce the amount of disk space used, you can use one of your
runtime application databases to store the listing application information.
Before you start Menu Handler with accell, set your database
identification configuration variable(s) to point to the runtime database.
Or pick the application that you want to use, move to that directory, and
start accell.
For an example of accessing multiple runtime applications from Menu
Handler, see “A Sample Runtime Application System” on page 93.
Additional Help
For more information about using the Menu Handler xecmnt and
mnumnt options, see ACCELL/SQL: Localizing an Application.
Building Application Systems
91
Executing a Runtime Application
To execute a runtime application from the listing application through
Menu Handler, take these steps:
Step 1
Move into the listing application’s database directory.
Step 2
Make sure that the TERM environment variable is set correctly.
Step 3
Run the accell script to start Menu Handler for the listing application. At
the operating system command line, type the following command:
accell
Step 4
Select your runtime application.
If you have used mnumnt to create menu options for the runtime
applications, you can select the runtime application from the appropriate
menu. Otherwise, to select the runtime application, enter the application
name at the Menu Handler SELECTION: prompt.
When you select an application, Menu Handler checks the listing
application database for the application name. If the selected application
has been registered, Menu Handler passes the absolute path and file name
of the application’s link file (the .al file) to ACCELL/M anager. This
absolute path and file name is the directory path specified in the ACLENV
configuration variable, plus the name of the application .al file.
ACCELL/M anager then searches for the APPMAP configuration variable
and performs the tasks described on pages 86 through 87, depending
on the APPMAP setting.
92
Building Application Systems
A Sample Runtime Application
System
For this example, four ACCELL/SQL applications, named appA, appB,
appC, and appD, have been developed.
Development
Directory
Structure
The four applications were developed in the directories shown in the
following diagram.
Each application is a subdirectory of the development directory,
/usr/develapps. The application files (.fs, .fq, .aq, .as, .hlp, .al, and .fa
files) are located in each application’s aclenv directory. Applications
appA and appD also have database files are in their db directories.
Applications appB and appC share a common database in the directory
/usr/develapps/appsdb .
Building Application Systems
93
Runtime Directory
Structure
The following diagram shows a corresponding runtime directory
structure for the example applications. The runtime directory structure
contains the listing application and the runtime files for each application.
The directory /usr/runtimeapps contains the listing application. The
/usr/develapps directory has the same structure as shown for the
development directory.
runtimeapps
appA.al
appA.fa
Setting Up the
Listing
Application
appB.al
appB.fa
appC.al
appC.fa
appD.al
appD.fa
To set up a listing application such as the one described in this section,
follow these steps. The parenthesized phrases beside each command
example indicate the basic task performed by the command.
Step 1
Create a subdirectory for the listing application.
Step 2
(change directory)
(create directory)
Create the listdb subdirectory for the listing application’s database.
94
(change directory)
(create directory)
Building Application Systems
Step 3
Create an aclenv subdirectory to store the runtime applications.
mkdir aclenv
Step 4
Create an application subdirectory in the aclenv directory of the listing
application for each of the applications. Each subdirectory should have
the same name as its runtime application.
cd aclenv
mkdir appA appB appC appD
Step 5
(create directory)
(change directory)
(create directory)
Into each new runtime subdirectory, copy only the .al, .fa, and .hlp files
for the runtime application from the development structure.
Change to directory appA:
cd appA
(change directory)
Copy the files in the appA directory by typing these commands:
cp /usr/develapps/appA/aclenv/appA.al appA
(copy files)
cp /usr/develapps/appA/aclenv/appA.fa appA
cp /usr/develapps/appA/aclenv/appA.hlp appA
Repeat step 5 for the files in the directories appB, appC, and appD.
Step 6
Use your text editor to create the application database map file,
appsmap. For example, if you are using the UNIX vi text editor, type the
following command:
vi /usr/runtimeapps/aclenv/appsmap
Building Application Systems
(edit file)
95
When the editor creates the appsmap file, enter the lines of application
information that you need. For example, if you are using the Unify
DataServer RDBMS, enter these lines in the application database map file:
/usr/runtimeapps/aclenv/appA/appA.al
/usr/runtimeapps/aclenv/appB/appB.al
/usr/runtimeapps/aclenv/appC/appC.al
/usr/runtimeapps/aclenv/appD/appD.al
/usr/devlapps/appA/db
/usr/devlapps/appsdb
/usr/devlapps/appsdb
/usr/devlapps/appD/db
Save your changes and exit the editor.
Step 7
Set the APPMAP configuration variable to the absolute path and file name
of the application’s database map file. For example, if you are using the
Bourne shell, type this command:
APPMAP=/usr/runtimeapps/aclenv/appsmap
(set variable)
export APPMAP
Step 8
Move to the listing application database directory.
cd /usr/runtimeapps/listdb
Step 9
(change directory)
Start Menu Handler on the listing application.
accell
Step 10 Register each runtime application by using the Menu Handler xecmnt
utility. The xecmnt option, “Describe Program to System,” is on the
“Menu Handler Maintenance Utilities” submenu.
96
Building Application Systems
Executing the
Application
After you have registered the runtime applications with ACCELL/SQL
Menu Handler, you can execute the sample listing application from
Menu Handler. Follow these steps:
Step 1
If you have exited Menu Handler, make sure that you are working in the
listing application database directory.
cd /usr/runtimeapps/listdb
Step 2
Start Menu Handler on the listing application.
accell
Step 3
Select application appB from the main menu. Menu Handler passes the
directory path and file name of the application link file,
/usr/runtimeapps/aclenv/appB/appB.al , to ACCELL/M anager.
ACCELL/M anager checks for the APPMAP configuration variable. If
APPMAP is set, ACCELL/M anager performs these tasks:
1. opens the indicated application database map:
/usr/runtimeapps/aclenv/appsmap
2. searches for an entry for appB.al, the application link file name
passed by Menu Handler
3. uses the second column of the application database map entry to
set the configuration variable used by the RDBMS to locate the
database
4. starts executing appB
Application appB can now access data from the /usr/develapps/appsdb
database.
Building Application Systems
97
98
Building Application Systems
Appendix B:ACCELL/SQL Files
This appendix describes ACCELL/SQL files. Some of the files are
utilities or scripts that you can execute, while others are files that are
accessed by ACCELL/SQL or ACCELL/SQL utilities.
Files Accessed by
ACCELL/SQL
Utilities
ACCELL/SQL utilities access the following files, listed in order by their
default file name suffixes:
Suffix File Type
Description
Application link file
File produced by the linker ()
when it links the application and used
by ACCELL/Manager to execute the
application
Master application
form script object file
File produced by the compiler ()
when it compiles a master application
form script
Master application
form file
File that stores the trim, screen field
definitions, and other attributes
specified in ACCELL/Generator for a
master application form
Master application
form script file
File that contains ACCELL/4GL
statements and functions for a master
application form
language source
code file
File that contains program functions,
or CĆhooks.
(table continued on next page)
99
(continued)
Suffix File Type
Description
.cd
Compiler code file
File that is produced by ACCELL/SQL
Compiler when the -c option is
included on the command line to ACPL
.cf
Configuration file
File that contains variables and values
that are used to configure the hardware
and software environment for the
application (either the master
configuration file, unify.cf, or the
application configuration file,
application.cf)
.cfg
Compiled
configuration file
Compiled version of the application
configuration file (application.cfg)
.fa
Standard form archive
file
File created by the combiner (ACMB).
This file contains executable images,
with the compiled object code, of each
application form
.fo
Standard form script
object file
File produced by the compiler (ACPL)
when it compiles a standard form script
.fq
Standard form file
File that stores the trim, screen field
definitions, and other attributes
specified in ACCELL/Generator for a
standard form
.fs
Standard form script
file
Form script file associated with a
standard form
.h
Header or include file
File that contains variable and
preprocessor definitions to be used
with C source code and form scripts
.hlp
Help archive file
Files that stores help forms to be used
by ACCELL/Manager at runtime
(table continued on next page)
100
Appendix B: ACCELL/SQL System Files
(continued)
Suffix File Type
Description
preprocessor output
file
File produced by the preprocessor
when the option is included on the
command line to Operating system level File that is used by the C program
command file
loader to create executable files
Relocatable binary
object file
File created as a result of a command and which is usually kept in
an archive file
Compiler symbol file
Symbol file created by ACCELL/SQL
compiler (), when the option is
included on the command line to ACCELL/SQL compiler File created by the ACCELL/SQL C
or preprocessor output compiler () or the ACCELL/SQL
file
preprocessor ()
Appendix B: ACCELL/SQL System Files
101
Files in the
Release bin
Directory
The release bin directory contains utilities and script files. Most of these
are utilities that are described in the “Utilities Reference.” Some of the
files, however, are scripts or utilities that are executed by one of the
ACCELL/SQL components. The exact contents of the release bin
directory may vary slightly, depending on your release and the
underlying RDBMS.
The following table lists the release bin files. If the row is shaded, the
utility or script is executed by one of the ACCELL/SQL components.
Release bin Directory Files
Utility
Description
Where Described
ACCELL/SQL completed
ACCELL/SQL developer's
tutorial, executed when you
select Developer's
Tutorial" in Menu Handler
Tutorial
Starts ACCELL/SQL Menu
Handler
ACCELL/SQL: Configuration
Variable and Utility
Reference
Briefly in ACCELL/SQL:
tutorial, executed when you Developer's Tutorial and
select Completed Tutorial" ACCELL/SQL: Developing an
in Menu Handler
Application
ACCELL/SQL: Developer's
Combines application forms ACCELL/SQL: Configuration
and scripts
Variable and Utility
Reference
Compiles application forms
and scripts
ACCELL/SQL: Configuration
Variable and Utility
Reference
Executes ACCELL/SQL
development environment
ACCELL/SQL: Configuration
Variable and Utility
Reference and in
ACCELL/SQL: Developing an
Application
(table continued on next page)
102
Appendix B: ACCELL/SQL System Files
Release bin Directory Files (continued)
Utility
Description
Where Described
adevmnt
Starts
ACCELL/SQL: Configuration
ACCELL/Environment
Variable and Utility
Reference
maintenance application
AGEN
Starts ACCELL/Generator,
used to create application
forms
ACCELL/SQL: Configuration
ALNK
Links application forms and ACCELL/SQL: Configuration
scripts
Variable and Utility
Reference
AMGR
Starts ACCELL/SQL
ACCELL/SQL: Configuration
application execution by
Variable and Utility
calling the correct version
Reference
of ACCELL/Manager for the
user interface option
amgr.ld
Loads forms, scripts, and
CĆhooks to create a custom
ACCELL/Manager
ACCELL/SQL: Configuration
ASC2H
Converts ASCII help forms
to help forms (.hlp)
ACCELL/SQL: Configuration
ASC2Q
Converts ASCII forms to
forms (.fq)
ACCELL/SQL: Configuration
asqli.ld
Additional loader used by
ACCELL/SQL when linking
a custom ACCELL/Manager
bldcmf
Rebuilds the compiled
message file, unify.cmf
Variable and Utility
Reference and in
ACCELL/SQL: Creating
Screen Forms
Variable and Utility
Reference
Variable and Utility
Reference
Variable and Utility
Reference
ACCELL/SQL: Configuration
Variable and Utility
Reference (Customizing
message files described in
ACCELL/SQL: Localizing an
Application)
(table continued on next page)
Appendix B: ACCELL/SQL System Files
103
Release bin Directory Files (continued)
Utility
Description
Where Described
CAMGR
Executes an ACCELL/SQL
application under the
character UI option when
called by AMGR
AMGR description in
ACCELL/SQL: Configuration
cfiles
Variable and Utility
Reference
Utility used by install to
verify Release files
chk4sch
chk4usr
ckunicap
Verifies the syntax of the
unicap file
ACCELL/SQL: Configuration
Variable and Utility
Reference
config
Displays the current
configuration variable
values and their source
information
ACCELL/SQL: Configuration
Variable and Utility
Reference
cruser
devenv.sql
SQL script used to create
fm_execute
OpenWindows File
Manager integration utility
ACCELL/SQL: Developing an
Application for a Graphical
User Interface
FRMDOC
Generates documentation
for application forms
ACCELL/SQL: Configuration
Variable and Utility
Reference
gtlckfl
Utility that ensures that the
tutorials are run single user
only (SYBASE SQL Server,
ORACLE, INFORMIX)
the development
environment schema and
data
(table continued on next page)
104
Appendix B: ACCELL/SQL System Files
Release bin Directory Files (continued)
Utility
Description
Where Described
gtlogin
Obtains the user name and
password of the current
user (SYBASE SQL Server,
ORACLE)
ACCELL/SQL: Configuration
H2ASC
Converts help form files
(.hlp) to ASCII files
ACCELL/SQL: Configuration
instlic
License installation
program
ACCELL/SQL for (RDBMS):
Installation Guide
irs
Produces RPT reports
ACCELL/SQL: Creating
Reports With RPT Report
Writer and ACCELL/SQL:
Variable and Utility
Reference
Variable and Utility
Reference
Configuration Variable and
Utility Reference
licacl
Licenses optional
ACCELL/SQL for (RDBMS):
load.forms
Loads additional forms for
the ACCELL/SQL
developer's tutorial
ACCELL/SQL: Developing an
make_maf
Generates a prototype
master application form
ACCELL/SQL: Configuration
makeamake
Generates a makefile to
recreate the application
after forms or scripts have
been modified
ACCELL/SQL: Configuration
MKAP
Creates a default
application, with a master
application form and at
least one standard form
ACCELL/SQL: Configuration
mkdesch
Script used to create the
Development Environment
schema
Installation Guide
ACCELL/SQL features
Application
Variable and Utility
Reference
Variable and Utility
Reference
Variable and Utility
Reference
(table continued on next page)
Appendix B: ACCELL/SQL System Files
105
Release bin Directory Files (continued)
Utility
Description
Where Described
mkmnusch
Script used to create the
Menu Handler schema
mktutsch
Script used to create the
Tutorial schema
mnusch.sql
SQL script used to create
orcfltr
Filters input files produced
by ORACLE SQL so that
they can be used by RPT
(ORACLE)
ACCELL/SQL: Configuration
Variable and Utility
Reference
PAINTHLP
Lets you add, modify, or
delete help forms and help
information
ACCELL/SQL: Configuration
Variable and Utility
Reference (help form
customizing is described in
ACCELL/SQL: Localizing an
Application and
ACCELL/SQL: Developing an
Application)
PICT
Displays an ASCII format
file, such as the
ACCELL/SQL logo, on the
screen
ACCELL/SQL: Configuration
Variable and Utility
Reference
pls
ACCELL/SQL enhanced
version of the UNIX which
command
prep_db4acl
Prepares a SYBASE SQL
ACCELL/SQL: Setting Up a
User Environment
Server, ORACLE, or
INFORMIX database for use
with ACCELL/SQL
q2a2q
Converts form files (.fq) to ACCELL/SQL: Configuration
ASCII files and back to form Variable and Utility
files
Reference
the Tutorial schema and
data
(table continued on next page)
106
Appendix B: ACCELL/SQL System Files
Release bin Directory Files (continued)
Utility
Description
Where Described
Q2ASC
Converts form files (.fq) to
ASCII files
ACCELL/SQL: Configuration
resdev
Script that resets the
Developer's Tutorial
schema
ridutil
Sets up and maintains row
ID criteria (SYBASE SQL
Server)
RPT
Produces an RPT report
Variable and Utility
Reference
ACCELL/SQL: Configuration
Variable and Utility
Reference
ACCELL/SQL: Creating
Reports With RPT Report
Writer and ACCELL/SQL:
Configuration Variable and
Utility Reference
rpt.ld
Loads a custom RPT
executable
ACCELL/SQL: Creating
Reports With RPT Report
Writer and ACCELL/SQL:
Configuration Variable and
Utility Reference
SQL
Generates the correct
format input file for RPT
(SYBASE SQL Server)
ACCELL/SQL: Configuration
syncauth
Synchronizes Menu
ACCELL/SQL: Configuration
Handler with database after Variable and Utility
Reference
the database design has
been modified
syncauth.sql
SQL script that creates the
TRAN
Converts form scripts from ACCELL/SQL: Converting
Release 1 format to Release Release 1 Applications to
2 format
Release 2
Variable and Utility
Reference
data used by the syncauth
utility
tran21
(table continued on next page)
Appendix B: ACCELL/SQL System Files
107
Release bin Directory Files (continued)
108
Utility
Description
Where Described
Script used for resetting the
various ACCELL tutorials
Used by to send report
output to the screen
Used by to generate
ACCELL/SQL: Creating
multiple destination reports Reports With RPT Report
(similar to the UNIX Writer
utility)
Executes an ACCELL/SQL
description in
application under the Motif ACCELL/SQL: Configuration
UI option when called by
Variable and Utility
Reference
Executes an ACCELL/SQL
description in
application under the OPEN ACCELL/SQL: Configuration
LOOK UI option when
Variable and Utility
called by Reference
ACCELL/SQL: Creating
Reports With RPT Report
Writer
Appendix B: ACCELL/SQL System Files
%" " " $ $$
#!# $ '$" $ %#" $"$&) " %!$ " $
$# " "# $" % !!$ "#
$$
$# $ %"$ &"# $$
" %#$ * " #! !!$ ' &"" $ #$"
%"$ &%# " $ #
&"#
$$ # !" % ) $
!!$ "
$ "#%$ ! $"$ !!$ $ % %$ $$ " " #"!$
" ") '" $ # #$ "
# $$ $ # $ & $ " " # &") $ $$ $ # ##
%"
!" " $$ #
!!$ "# " #"!$# $ # "& #"!$
!" " $$ &"$#
!!$ # #"!$# $ % $$ (%$ ) $
!%$"
#)#$ "$ !!$ # $$ "
%# '$ $ %""$ "# $$ $# &"# $$ #$ %!
$ &" $ ' !!$ # $ & ! " (%$
$$ # %# $ #$ " ! !!$ # ! #"
"# ! ! "# #
# %#%) & #%(# #%
# &" $$ #!# #!$ $
!!$ & !$ " "%$
&" $ " (! $ #* )$# $ ") %# $ #$ " "
%$ "$ 109
% % # ( %
'& $ % # '#$ #
%% # +$ &$# $
% , $
See application configuration file
$%% '& %% $ $! * !#!# $$ # #%' %% $
'&% * % !#!# $$ # # %
$#!% $ !
!# ( !!% #$ $ # #% &,#' %*
# #% * #$ # $#!%$ ! %#% !!% $
110
"&'% !!#
# ( % $ %# &!% # %$ $ %#
$$ % (% # $#!%
$$ !#$$ $ %% %# %
%#%' %$ !#% $ %% &$# !# # #$ %#% %
%% %$ $%%%$ &% $
#% # * &% % &$ %
$!* $! %*! %
!# # %% $ &$ %
#% * !!% #$
# &! $ % %#$
%% %$ #% $& $
!#!# $$ # #%'$ %% $ *
$'# !# #$ # $ &$&*
' $&)
# &% %# & #% #$ %% $ &$
% $# # #% #$ $
#, * # %% $!*$
#% &% $! % ! #%
% !!% # %$
%% %$ &$% + $&$%
% #% & %# # )! % !!% &#% $ )!% %%
%$ % &$% + $%%$ # (
'#$ %% $ !!# % $%#
&#% See header file.
%% %$ #% % !# $$ * !# # # )! !&% $ !# $$ * % #% $# * $#!% Glossary
')&)$ ++ # %"*
''# + &% ) - #* %+& +
application link file ++ % /,+
0 %)
*&)+ *+) % ++ * /'% 0 +
')')&**&) %+& #)) *+) % ++ *
% % 0 **& + % + . + %$
# %$ ++ &%+ %*
&% ,)+ &% -) #* ++ ) ')*+ +&
*0*+$ ,#+ -#,* ++ )
'')&') + &) + ).) %
*&+.) &% ,)+ &%
&$' # # ++ &%+ %* $ %
#%, %*+),+ &%* ++ % /,+ 0 + &$',+)
# +0 &) *' 0 % &$$%* ++
) /,+ 0 + &')+ % *0*+$ +
&')+ % *0*+$ ')&$'+ # % + *##
% $,#+ 1&,))% &)$ + )&)*
++ '') % + $,#+ 1&,))% )
)+&)0 *) '+ &) )+&)0
*) '+ % # %$ ,* +& #&+
)+&)0 &) # % )+&)0
Glossary
')&)$ ++ ')&)$* ')# $ %)0
')&** % *, * $)& /'%* &% %
) # %#,* &% &) &$' #+ &%
#+ &%# +* %$%+
0*+$ *&+.) ++ $%* )#+ &%# +* *0*+$ &%+)&#* *, &')+ &%* * +# )+ &%
% $& + &% )&. %*)+ &% %
#+ &% % %/ %
* 0 )' # ,*) %+)* +&
% ''# + &% #$%+* *, * &)$
&#&)* % &%+*
/,+ &% + $ &) /$'# ),%+ $
''# + &%* % /,+ ,+ + )
&)$* % *) '+ #* %%&+ $& % +* *,*+ +*
&!+ ++ &%+ %* ,% (, #& #
% + &% & +#* )&.* &#,$%*
%/* % ') - #* &$') * % +* #*& ))) +& * %
authorization
See &)$.
# ++ &%+ %* &$$%* &)
/$'# *## *) '+ &%+ %* &')+ %
*0*+$ &$$%* % *) '+ &%+ %*
&$$%* % *) '+ &%+ %*
&$$%* % &)$ *) '+
&%+ %* &$$%*
111
Glossary
Download