rhel :how to run bankapp?
1)edit the bankvar file:
3) make:
$make -f bankapp.mk
4) create database:
$ crbankdb
5) edit the ubbshm file
6) load config file:
$ tmloadcf ubbshm
7) create TLog file:
$crtlog -m
8) run bankapp:
$tmboot
$populate
$audit -a 1
# Copyright (c)
2005
BEA Systems
,
Inc.
# All rights reserved
#
# THIS IS UNPUBLISHED PROPRIETARY
# SOURCE CODE OF BEA Systems , Inc.
# The copyright notice above does not
# evidence any actual or intended
# publication of such source code.
#Copyright (c) 1990 Unix System Laboratories , Inc.
#All rights reserved
#ident " @(#) samples/atmi/bankapp/bankvar $Revision: 1.7 $ "
#
# This file sets all the environment variables needed by the TUXEDO software
# to run the bankapp
#
# This directory contains all the TUXEDO software
# System administrator must set this variable
#
if [ -z "${TUXDIR}" ] ; then
if [ ! -z "${ROOTDIR}" ] ; then
TUXDIR = $ROOTDIR
export TUXDIR
fi
fi
TUXDIR = ${TUXDIR:?}
#
# Reset LANG if necessary
#
if [ ! -d ${TUXDIR}/locale/C -a -d ${TUXDIR}/locale/english_us ] ; then
export LANG
LANG = english_us.ascii
fi
#
# This directory contains all the user written code
#
# Contains the full path name of the directory that the application
# generator should place the files it creates
#
APPDIR = ${TUXDIR}/samples/atmi/bankapp
#
# This path contains the shared objects that are dynamically linked at
# runtime in certain environments , e.g. , SVR4.
#
LD_LIBRARY_PATH = ${TUXDIR}/lib:${LD_LIBRARY_PATH}
#
# Set the path to shared objects in HP-UX
#
SHLIB_PATH = ${TUXDIR}/lib:${SHLIB_PATH}
#
# Set the path to shared objects in AIX
#
LIBPATH = ${TUXDIR}/lib:/usr/lib:${LIBPATH}
#
# Logical block size ; Database Administrator must set this variable
#
BLKSIZE = 512
#
# Set default name of the database to be used by database utilities
# and database creation scripts
#
DBNAME = bankdb
#
# Indicate whether database is to be opened in share or private mode
#
DBPRIVATE = no
#
# Set Ipc Key for the database ; this MUST differ from the UBBCONFIG
# *RESOURCES IPCKEY parameter
#
DIPCKEY = 80953
#
# Environment file to be used by tmloadcf
#
ENVFILE = ${APPDIR}/ENVFILE
#
# List of field table files to be used by mc , viewc , tmloadcf , etc.
#
FIELDTBLS = Usysflds , bankflds , creditflds , eventflds
#
FIELDTBLS32 = Usysfl32 , evt_mib , tpadm
#
# List of directories to search to find field table files
#
FLDTBLDIR = ${TUXDIR}/udataobj:${APPDIR}
#
FLDTBLDIR32 = ${TUXDIR}/udataobj:${APPDIR}
#
# Universal Device List for database
#
FSCONFIG = ${APPDIR}/bankdl1
#
# Network address , used in MENU script
#
NADDR =
#
# Network device name
#
NDEVICE =
#
# Network listener address , used in MENU script
#
NLSADDR =
#
# Make sure TERM is set
#
TERM = ${TERM:?}
#
# Set device for the transaction log ; this should match the TLOGDEVICE
# parameter under this site's LMID in the *MACHINES section of the
# UBBCONFIG file
#
TLOGDEVICE = ${APPDIR}/TLOG
#
# Device for binary file that gives /T all its information
#
TUXCONFIG = ${APPDIR}/tuxconfig
#
# Set the prefix of the file which is to contain the central user log ;
# this should match the ULOGPFX parameter under this site's LMID in the
# *MACHINES section of the UBBCONFIG file
#
ULOGPFX = ${APPDIR}/ULOG
#
# System name , used by RUNME.sh
#
UNAME =
#
# List of view files to be used by viewc , tmloadcf , etc.
#
VIEWFILES = aud.V
#
VIEWFILES32 = mib_views , tmib_views
#
# List of directories to search to find view files
#
VIEWDIR = ${TUXDIR}/udataobj:${APPDIR}
#
VIEWDIR32 = ${TUXDIR}/udataobj:${APPDIR}
#
# Specify the Q device (if events included in demo)
#
QMCONFIG = ${APPDIR}/qdevice
#
# Export all variables just set
#
export TUXDIR APPDIR BLKSIZE DBNAME DBPRIVATE DIPCKEY ENVFILE
export LD_LIBRARY_PATH SHLIB_PATH LIBPATH
export FIELDTBLS FLDTBLDIR FSCONFIG MASKPATH OKXACTS TERM
export FIELDTBLS32 FLDTBLDIR32
export TLOGDEVICE TUXCONFIG ULOGPFX
export VIEWDIR VIEWFILES
export VIEWDIR32 VIEWFILES32
export QMCONFIG
#
# Add TUXDIR/bin to PATH if not already there
#
a = " `echo $PATH | grep ${TUXDIR}/bin` "
if [ x"$a" = x ]
then
PATH = ${TUXDIR}/bin:${PATH}
export PATH
fi
#
# Add APPDIR to PATH if not already there
#
a = " `echo $PATH | grep ${APPDIR}` "
if [ x"$a" = x ]
then
PATH = ${PATH}:${APPDIR}
export PATH
fi
#
# Check for other machine types bin directories
#
for DIR in /usr/5bin /usr/ccs/bin /opt/SUNWspro/bin
do
if [ -d ${DIR} ] ; then
PATH = " ${PATH}:${DIR} "
fi
done
2)edit the make file bakapp.mk
# All rights reserved
#
# THIS IS UNPUBLISHED PROPRIETARY
# SOURCE CODE OF BEA Systems , Inc.
# The copyright notice above does not
# evidence any actual or intended
# publication of such source code.
#Copyright (c) 1990 Unix System Laboratories , Inc.
#All rights reserved
#ident " @(#) samples/atmi/bankapp/bankvar $Revision: 1.7 $ "
#
# This file sets all the environment variables needed by the TUXEDO software
# to run the bankapp
#
# This directory contains all the TUXEDO software
# System administrator must set this variable
#
if [ -z "${TUXDIR}" ] ; then
if [ ! -z "${ROOTDIR}" ] ; then
TUXDIR = $ROOTDIR
export TUXDIR
fi
fi
TUXDIR = ${TUXDIR:?}
#
# Reset LANG if necessary
#
if [ ! -d ${TUXDIR}/locale/C -a -d ${TUXDIR}/locale/english_us ] ; then
export LANG
LANG = english_us.ascii
fi
#
# This directory contains all the user written code
#
# Contains the full path name of the directory that the application
# generator should place the files it creates
#
APPDIR = ${TUXDIR}/samples/atmi/bankapp
#
# This path contains the shared objects that are dynamically linked at
# runtime in certain environments , e.g. , SVR4.
#
LD_LIBRARY_PATH = ${TUXDIR}/lib:${LD_LIBRARY_PATH}
#
# Set the path to shared objects in HP-UX
#
SHLIB_PATH = ${TUXDIR}/lib:${SHLIB_PATH}
#
# Set the path to shared objects in AIX
#
LIBPATH = ${TUXDIR}/lib:/usr/lib:${LIBPATH}
#
# Logical block size ; Database Administrator must set this variable
#
BLKSIZE = 512
#
# Set default name of the database to be used by database utilities
# and database creation scripts
#
DBNAME = bankdb
#
# Indicate whether database is to be opened in share or private mode
#
DBPRIVATE = no
#
# Set Ipc Key for the database ; this MUST differ from the UBBCONFIG
# *RESOURCES IPCKEY parameter
#
DIPCKEY = 80953
#
# Environment file to be used by tmloadcf
#
ENVFILE = ${APPDIR}/ENVFILE
#
# List of field table files to be used by mc , viewc , tmloadcf , etc.
#
FIELDTBLS = Usysflds , bankflds , creditflds , eventflds
#
FIELDTBLS32 = Usysfl32 , evt_mib , tpadm
#
# List of directories to search to find field table files
#
FLDTBLDIR = ${TUXDIR}/udataobj:${APPDIR}
#
FLDTBLDIR32 = ${TUXDIR}/udataobj:${APPDIR}
#
# Universal Device List for database
#
FSCONFIG = ${APPDIR}/bankdl1
#
# Network address , used in MENU script
#
NADDR =
#
# Network device name
#
NDEVICE =
#
# Network listener address , used in MENU script
#
NLSADDR =
#
# Make sure TERM is set
#
TERM = ${TERM:?}
#
# Set device for the transaction log ; this should match the TLOGDEVICE
# parameter under this site's LMID in the *MACHINES section of the
# UBBCONFIG file
#
TLOGDEVICE = ${APPDIR}/TLOG
#
# Device for binary file that gives /T all its information
#
TUXCONFIG = ${APPDIR}/tuxconfig
#
# Set the prefix of the file which is to contain the central user log ;
# this should match the ULOGPFX parameter under this site's LMID in the
# *MACHINES section of the UBBCONFIG file
#
ULOGPFX = ${APPDIR}/ULOG
#
# System name , used by RUNME.sh
#
UNAME =
#
# List of view files to be used by viewc , tmloadcf , etc.
#
VIEWFILES = aud.V
#
VIEWFILES32 = mib_views , tmib_views
#
# List of directories to search to find view files
#
VIEWDIR = ${TUXDIR}/udataobj:${APPDIR}
#
VIEWDIR32 = ${TUXDIR}/udataobj:${APPDIR}
#
# Specify the Q device (if events included in demo)
#
QMCONFIG = ${APPDIR}/qdevice
#
# Export all variables just set
#
export TUXDIR APPDIR BLKSIZE DBNAME DBPRIVATE DIPCKEY ENVFILE
export LD_LIBRARY_PATH SHLIB_PATH LIBPATH
export FIELDTBLS FLDTBLDIR FSCONFIG MASKPATH OKXACTS TERM
export FIELDTBLS32 FLDTBLDIR32
export TLOGDEVICE TUXCONFIG ULOGPFX
export VIEWDIR VIEWFILES
export VIEWDIR32 VIEWFILES32
export QMCONFIG
#
# Add TUXDIR/bin to PATH if not already there
#
a = " `echo $PATH | grep ${TUXDIR}/bin` "
if [ x"$a" = x ]
then
PATH = ${TUXDIR}/bin:${PATH}
export PATH
fi
#
# Add APPDIR to PATH if not already there
#
a = " `echo $PATH | grep ${APPDIR}` "
if [ x"$a" = x ]
then
PATH = ${PATH}:${APPDIR}
export PATH
fi
#
# Check for other machine types bin directories
#
for DIR in /usr/5bin /usr/ccs/bin /opt/SUNWspro/bin
do
if [ -d ${DIR} ] ; then
PATH = " ${PATH}:${DIR} "
fi
done
# (c)
2003
BEA Systems
,
Inc. All Rights Reserved.
#Copyright (c) 1990 Unix System Laboratories , Inc.
#All rights reserved
#
# ANAME -- Name of this application (e.g. bankapp).
#
ANAME = bankapp
#
# CNAME -- Name of this component (e.g. engine).
#
CNAME = samples
#
# MODE -- mode used to install targets.
MODE = 0444
#
# PR -- name of command used to print source listings.
# By default pr( 1 ) is used ; a good substitute is cpr(1).
#
PR = pr
#
# PRFLAGS -- Flags for $(PR) command.
#
PRFLAGS =
#
# Root directory of TUXEDO System. This file must either be edited to set
# this value correctly , or the correct value must be passed via " make -f
# bankapp.mk TUXDIR=/correct/rootdir " , or the build of bankapp will fail.
#
TUXDIR = ../../..
#
# Directory where the bankapp application source and executables live.
# This file must either be edited to set this value correctly , or the
# correct value must be passed via " make -f bankapp.mk
# APPDIR=/correct/appdir " , or the build of bankapp will fail.
#
APPDIR = $(TUXDIR)/samples/atmi/bankapp
#
#
# TUXEDO's include directory
#
INCDIR = $(TUXDIR)/include
#
# Library directory
#
LIBDIR = $(TUXDIR)/lib
SUF = .a
DSUF = .a
PRE = $(LIBDIR)/lib
#
# Resource Manager
#
RM = TUXEDO/SQL
#
#
CGFLAG =
#
#
# To use FML32 instead of FML16:
# set FML32 to 32 to use the FML32 commands
# set DFML32 to -D_TMFML32
# set TMTYPESW to tmtypesw.o , copy $TUXDIR/lib/tmtypesw.c to this directory
# change the ubb files to use FML32 instead of FML and VIEW32 instead of VIEW
FML32 =
DFML32 =
TMTYPESW =
#
# C compiler flags: enable TUXEDO System Distributed Transaction
# Processing , search for C header files in TUXEDO's include directory
#
CFLAGS = -DNOWHAT = 1 -I$(INCDIR) $(CGFLAG) $(DFML32)
#
# Lint program
#
LINT = lint
#
# Directory in which to find TUXEDO executables for use in the make process.
# It is called cross-compiler bin directory because when cross-compiling ,
# this value may be something other than $(TUXDIR)/bin
#
XCBINDIR = $(TUXDIR)/bin
#
# See $APPDIR/bankvar file for explanations of the following variables
#
ENVFILE = $(APPDIR)/ENVFILE
#
FIELDTBLS = Usysflds , bankflds , creditflds , eventflds
FLDTBLDIR = $(TUXDIR)/udataobj:$(APPDIR)
MASKPATH = $(APPDIR)
VIEWDIR = $(APPDIR)
VIEWFILES = aud.V
#
# Target name for $(ENVFILE) , is the basename of $(ENVFILE)
#
ENVF = ENVFILE
#
# ENVFILE for the TMUSREVT server
#
USREVTENVF = TMUSREVT.ENV
#
# Shell scripts to be created
#
SCRIPTS = \
crbank \
crbankdb \
crtlog \
driver \
envfile \
populate \
RUNME \
cracl \
crqueue \
crusers \
showq \
usrevtf
#
# Field header files to create
#
HEADERS = \
bankflds.h \
creditflds.h \
eventflds.h
#
VHEADERS = \
aud.h
# Views to create
#
VIEWS = \
aud.V
#
# C executable files to create
#
OBJS = \
BAL \
BALC \
BTADD \
ACCT \
AUDITC \
TLR \
XFER \
audit \
auditcon \
gentran \
gendata \
ACCTMGR \
bankmgr \
bankclt
#
# Menus used by RUNME.sh and menudriver
#
MENUS = \
MENUS/AUDIT \
MENUS/CLN.MAIN \
MENUS/CLN.RUNTIM \
MENUS/INIT.CONFIG \
MENUS/INIT.MAIN \
MENUS/INIT.RUNTIM \
MENUS/MAIN \
MENUS/RSH
#
# List of all the source files in bankapp
#
SRC = \
ACCT.ec \
AUDITC.c \
BAL.ec \
BALC.ec \
BTADD.ec \
FILES \
README \
RUNME.sh \
TLR.ec \
XFER.c \
appinit.c \
aud.v \
audit.c \
auditcon.c \
bankflds \
bank.h \
bankapp.mk \
bankvar \
crbank.sh \
crbankdb.sh \
creditflds \
crtlog.sh \
driver.sh \
envfile.sh \
gendata.c \
gentran.c \
populate.sh \
ubbmp \
ubbshm \
util.c \
$(MENUS) \
ACCTMGR.c \
bankmgr.c \
cracl.sh \
crqueue.sh \
crusers.sh \
eventflds \
showq.sh \
usrevtf.sh \
bankclt.c
#
# C functions
#
CFUNC = \
ACCT.c \
AUDITC.c \
BAL.c \
BALC.c \
BTADD.c \
TLR.c \
XFER.c \
appinit.c \
audit.c \
auditcon.c \
gendata.c \
gentran.c \
util.c \
ACCTMGR.c \
bankmgr.c \
bankclt.c
#
# C functions that are generated from embedded SQL programs
#
CLFUNC = \
BAL.c \
BALC.c \
BTADD.c \
ACCT.c \
TLR.c
#
#
# Object files (.o)
#
COBJ = \
audit.o \
auditcon.o \
gentran.o \
gendata.o \
AUDITC.o \
BAL.o \
BALC.o \
BTADD.o \
ACCT.o \
appinit.o \
util.o \
XFER.o \
TLR.o \
ACCTMGR.o \
bankmgr.o \
bankclt.o
# Exhaustive list of targets to be made
#
INSTALL = $(SCRIPTS) $(HEADERS) $(VIEWS) $(CLFUNC) $(OBJS) $(ENVF) $(USREVTENVF)
INSTALLWS = driver populate envfile $(HEADERS) $(VIEWS) gendata gentran
all: $(INSTALL) Complete
install: $(INSTALL) Complete
installws: $(INSTALLWS)
Complete:
@echo " $(ANAME).mk processing complete "
#
# Rule for linting source
#
lint:
-LIBDIR = $(LINT) $(LINTOPTS) -DNOWHAT -I$(INCDIR) $(CFUNC)
# Rule for cleaning out generated files
#
clean:
rm -f $(SCRIPTS) $(HEADERS) $(VIEWS) $(CLFUNC) $(OBJS) \
$(COBJ) $(ENVF) $(USREVTENVF) $(VHEADERS)
#
# clobber -- Should remove everything which was installed
# (i.e. , inverse of install).
#
clobber: clean
-rm -f $(INSTALL)
#
# print -- Should produce a complete source listing of the
# files in the directory.
#
print::
@$(PR) $(PRFLAGS) $(SRC)
#
# list -- Should produce a listing of every source file prepended
# with the component and sub-component name.
#
list::
@echo $(SRC) `make -f TOOLS/makefile list` | \
sed -e 's/^/$(CNAME)\/$(ANAME)\//' \
-e 's/ / $(CNAME)\/$(ANAME)\//g'|tr ' ' '\ 012 ' | sed '/^$$/d'
# This section contains rules for building bankapp servers
#
ACCT: ACCT.o appinit.o util.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s OPEN_ACCT -s CLOSE_ACCT \
-o ACCT \
-f ACCT.o -f appinit.o -f util.o -f " $(TMTYPESW) "
BAL: BAL.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s ABAL -s TBAL -s ABAL_BID -s TBAL_BID \
-o BAL \
-f BAL.o -f appinit.o -f " $(TMTYPESW) "
BALC: BALC.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s ABALC_BID -s TBALC_BID \
-o BALC \
-f BALC.o -f appinit.o -f " $(TMTYPESW) "
BTADD: BTADD.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s BR_ADD -s TLR_ADD \
-o BTADD \
-f BTADD.o -f appinit.o -f " $(TMTYPESW) "
TLR: TLR.o util.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s DEPOSIT -s WITHDRAWAL -s INQUIRY \
-o TLR \
-f TLR.o -f util.o -f -lm -f " $(TMTYPESW) "
XFER: XFER.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s TRANSFER \
-o XFER \
-f XFER.o -f appinit.o -f " $(TMTYPESW) "
AUDITC: AUDITC.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s AUDITC \
-o AUDITC \
-f AUDITC.o -f " $(TMTYPESW) "
ACCTMGR:ACCTMGR.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s WATCHDOG -s Q_OPENACCT_LOG \
-o ACCTMGR \
-f ACCTMGR.o -f " $(TMTYPESW) "
# User-defined client audit
#
audit: audit.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o audit -f audit.o
# User-defined client bankmgr
#
bankmgr: bankmgr.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o bankmgr -f bankmgr.o
# bankclt program
#
bankclt: bankclt.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o bankclt -f bankclt.o
# User-defined client conversational audit
#
auditcon: auditcon.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o auditcon -f auditcon.o
# Stand-alone C programs to generate ud input
#
gentran gendata:
$(CC) $(CFLAGS) -o $@ [email protected]
# Rule for creating field header file
#
bankflds.h: bankflds
$(XCBINDIR)/mkfldhdr$(FML32) bankflds
#
creditflds.h: creditflds
$(XCBINDIR)/mkfldhdr$(FML32) creditflds
#
eventflds.h: eventflds
$(XCBINDIR)/mkfldhdr$(FML32) eventflds
# Rule for generating ENVFILE
#
$(ENVF): envfile
ENVFILE = $(ENVFILE) \
FIELDTBLS = $(FIELDTBLS) \
FLDTBLDIR = $(FLDTBLDIR) \
MASKPATH = $(MASKPATH) \
VIEWDIR = $(VIEWDIR) \
VIEWFILES = $(VIEWFILES) \
sh envfile
# Rule for generating TMUSREVT.ENV
#
$(USREVTENVF): usrevtf
ENVFILE = $(USREVTENVF) \
FIELDTBLS = $(FIELDTBLS) \
FLDTBLDIR = $(FLDTBLDIR) \
sh usrevtf
.SUFFIXES: .v .V .ec .c .o .sh
# Rule for creating view
#
.v.V:
FIELDTBLS = $(FIELDTBLS) \
FLDTBLDIR = $(FLDTBLDIR) \
VIEWFILES = $(VIEWFILES) \
VIEWDIR = $(VIEWDIR) \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/viewc$(FML32) $*.v
# Rule for creating C programs from embedded SQL programs
#
.ec.c:
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/esqlc -c 30 $*.ec
# Rule for creating object files from C programs
#
.c.o:
$(CC) $(CFLAGS) -c $*.c
# Rule for creating object files from embedded SQL programs
#
.ec.o:
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/esqlc $*.ec
$(CC) $(CFLAGS) -c $*.c
# Rule for creating executable shell scripts from shell script source
#
.sh:
rm -f $@
cat $< >$@
chmod 0555 $@
# --*--DEPENDENCIES--*--
audit.o BAL_BID.o ACCT.o appinit.o TLR.o BALC.o BAL.o XFER.o BTADD.o: bankflds.h
AUDITC.o audit.o BAL_BID.o ACCT.o appinit.o TLR.o BALC.o BAL.o XFER.o BTADD.o: bank.h
ACCT.o TLR.o ACCTMGR.o bankmgr.o: eventflds
#Copyright (c) 1990 Unix System Laboratories , Inc.
#All rights reserved
#
# ANAME -- Name of this application (e.g. bankapp).
#
ANAME = bankapp
#
# CNAME -- Name of this component (e.g. engine).
#
CNAME = samples
#
# MODE -- mode used to install targets.
MODE = 0444
#
# PR -- name of command used to print source listings.
# By default pr( 1 ) is used ; a good substitute is cpr(1).
#
PR = pr
#
# PRFLAGS -- Flags for $(PR) command.
#
PRFLAGS =
#
# Root directory of TUXEDO System. This file must either be edited to set
# this value correctly , or the correct value must be passed via " make -f
# bankapp.mk TUXDIR=/correct/rootdir " , or the build of bankapp will fail.
#
TUXDIR = ../../..
#
# Directory where the bankapp application source and executables live.
# This file must either be edited to set this value correctly , or the
# correct value must be passed via " make -f bankapp.mk
# APPDIR=/correct/appdir " , or the build of bankapp will fail.
#
APPDIR = $(TUXDIR)/samples/atmi/bankapp
#
#
# TUXEDO's include directory
#
INCDIR = $(TUXDIR)/include
#
# Library directory
#
LIBDIR = $(TUXDIR)/lib
SUF = .a
DSUF = .a
PRE = $(LIBDIR)/lib
#
# Resource Manager
#
RM = TUXEDO/SQL
#
#
CGFLAG =
#
#
# To use FML32 instead of FML16:
# set FML32 to 32 to use the FML32 commands
# set DFML32 to -D_TMFML32
# set TMTYPESW to tmtypesw.o , copy $TUXDIR/lib/tmtypesw.c to this directory
# change the ubb files to use FML32 instead of FML and VIEW32 instead of VIEW
FML32 =
DFML32 =
TMTYPESW =
#
# C compiler flags: enable TUXEDO System Distributed Transaction
# Processing , search for C header files in TUXEDO's include directory
#
CFLAGS = -DNOWHAT = 1 -I$(INCDIR) $(CGFLAG) $(DFML32)
#
# Lint program
#
LINT = lint
#
# Directory in which to find TUXEDO executables for use in the make process.
# It is called cross-compiler bin directory because when cross-compiling ,
# this value may be something other than $(TUXDIR)/bin
#
XCBINDIR = $(TUXDIR)/bin
#
# See $APPDIR/bankvar file for explanations of the following variables
#
ENVFILE = $(APPDIR)/ENVFILE
#
FIELDTBLS = Usysflds , bankflds , creditflds , eventflds
FLDTBLDIR = $(TUXDIR)/udataobj:$(APPDIR)
MASKPATH = $(APPDIR)
VIEWDIR = $(APPDIR)
VIEWFILES = aud.V
#
# Target name for $(ENVFILE) , is the basename of $(ENVFILE)
#
ENVF = ENVFILE
#
# ENVFILE for the TMUSREVT server
#
USREVTENVF = TMUSREVT.ENV
#
# Shell scripts to be created
#
SCRIPTS = \
crbank \
crbankdb \
crtlog \
driver \
envfile \
populate \
RUNME \
cracl \
crqueue \
crusers \
showq \
usrevtf
#
# Field header files to create
#
HEADERS = \
bankflds.h \
creditflds.h \
eventflds.h
#
VHEADERS = \
aud.h
# Views to create
#
VIEWS = \
aud.V
#
# C executable files to create
#
OBJS = \
BAL \
BALC \
BTADD \
ACCT \
AUDITC \
TLR \
XFER \
audit \
auditcon \
gentran \
gendata \
ACCTMGR \
bankmgr \
bankclt
#
# Menus used by RUNME.sh and menudriver
#
MENUS = \
MENUS/AUDIT \
MENUS/CLN.MAIN \
MENUS/CLN.RUNTIM \
MENUS/INIT.CONFIG \
MENUS/INIT.MAIN \
MENUS/INIT.RUNTIM \
MENUS/MAIN \
MENUS/RSH
#
# List of all the source files in bankapp
#
SRC = \
ACCT.ec \
AUDITC.c \
BAL.ec \
BALC.ec \
BTADD.ec \
FILES \
README \
RUNME.sh \
TLR.ec \
XFER.c \
appinit.c \
aud.v \
audit.c \
auditcon.c \
bankflds \
bank.h \
bankapp.mk \
bankvar \
crbank.sh \
crbankdb.sh \
creditflds \
crtlog.sh \
driver.sh \
envfile.sh \
gendata.c \
gentran.c \
populate.sh \
ubbmp \
ubbshm \
util.c \
$(MENUS) \
ACCTMGR.c \
bankmgr.c \
cracl.sh \
crqueue.sh \
crusers.sh \
eventflds \
showq.sh \
usrevtf.sh \
bankclt.c
#
# C functions
#
CFUNC = \
ACCT.c \
AUDITC.c \
BAL.c \
BALC.c \
BTADD.c \
TLR.c \
XFER.c \
appinit.c \
audit.c \
auditcon.c \
gendata.c \
gentran.c \
util.c \
ACCTMGR.c \
bankmgr.c \
bankclt.c
#
# C functions that are generated from embedded SQL programs
#
CLFUNC = \
BAL.c \
BALC.c \
BTADD.c \
ACCT.c \
TLR.c
#
#
# Object files (.o)
#
COBJ = \
audit.o \
auditcon.o \
gentran.o \
gendata.o \
AUDITC.o \
BAL.o \
BALC.o \
BTADD.o \
ACCT.o \
appinit.o \
util.o \
XFER.o \
TLR.o \
ACCTMGR.o \
bankmgr.o \
bankclt.o
# Exhaustive list of targets to be made
#
INSTALL = $(SCRIPTS) $(HEADERS) $(VIEWS) $(CLFUNC) $(OBJS) $(ENVF) $(USREVTENVF)
INSTALLWS = driver populate envfile $(HEADERS) $(VIEWS) gendata gentran
all: $(INSTALL) Complete
install: $(INSTALL) Complete
installws: $(INSTALLWS)
Complete:
@echo " $(ANAME).mk processing complete "
#
# Rule for linting source
#
lint:
-LIBDIR = $(LINT) $(LINTOPTS) -DNOWHAT -I$(INCDIR) $(CFUNC)
# Rule for cleaning out generated files
#
clean:
rm -f $(SCRIPTS) $(HEADERS) $(VIEWS) $(CLFUNC) $(OBJS) \
$(COBJ) $(ENVF) $(USREVTENVF) $(VHEADERS)
#
# clobber -- Should remove everything which was installed
# (i.e. , inverse of install).
#
clobber: clean
-rm -f $(INSTALL)
#
# print -- Should produce a complete source listing of the
# files in the directory.
#
print::
@$(PR) $(PRFLAGS) $(SRC)
#
# list -- Should produce a listing of every source file prepended
# with the component and sub-component name.
#
list::
@echo $(SRC) `make -f TOOLS/makefile list` | \
sed -e 's/^/$(CNAME)\/$(ANAME)\//' \
-e 's/ / $(CNAME)\/$(ANAME)\//g'|tr ' ' '\ 012 ' | sed '/^$$/d'
# This section contains rules for building bankapp servers
#
ACCT: ACCT.o appinit.o util.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s OPEN_ACCT -s CLOSE_ACCT \
-o ACCT \
-f ACCT.o -f appinit.o -f util.o -f " $(TMTYPESW) "
BAL: BAL.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s ABAL -s TBAL -s ABAL_BID -s TBAL_BID \
-o BAL \
-f BAL.o -f appinit.o -f " $(TMTYPESW) "
BALC: BALC.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s ABALC_BID -s TBALC_BID \
-o BALC \
-f BALC.o -f appinit.o -f " $(TMTYPESW) "
BTADD: BTADD.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s BR_ADD -s TLR_ADD \
-o BTADD \
-f BTADD.o -f appinit.o -f " $(TMTYPESW) "
TLR: TLR.o util.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s DEPOSIT -s WITHDRAWAL -s INQUIRY \
-o TLR \
-f TLR.o -f util.o -f -lm -f " $(TMTYPESW) "
XFER: XFER.o appinit.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s TRANSFER \
-o XFER \
-f XFER.o -f appinit.o -f " $(TMTYPESW) "
AUDITC: AUDITC.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s AUDITC \
-o AUDITC \
-f AUDITC.o -f " $(TMTYPESW) "
ACCTMGR:ACCTMGR.o $(TMTYPESW)
CFLAGS = " $(CFLAGS) " \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildserver -r $(RM) \
-s WATCHDOG -s Q_OPENACCT_LOG \
-o ACCTMGR \
-f ACCTMGR.o -f " $(TMTYPESW) "
# User-defined client audit
#
audit: audit.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o audit -f audit.o
# User-defined client bankmgr
#
bankmgr: bankmgr.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o bankmgr -f bankmgr.o
# bankclt program
#
bankclt: bankclt.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o bankclt -f bankclt.o
# User-defined client conversational audit
#
auditcon: auditcon.o
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/buildclient -o auditcon -f auditcon.o
# Stand-alone C programs to generate ud input
#
gentran gendata:
$(CC) $(CFLAGS) -o $@ [email protected]
# Rule for creating field header file
#
bankflds.h: bankflds
$(XCBINDIR)/mkfldhdr$(FML32) bankflds
#
creditflds.h: creditflds
$(XCBINDIR)/mkfldhdr$(FML32) creditflds
#
eventflds.h: eventflds
$(XCBINDIR)/mkfldhdr$(FML32) eventflds
# Rule for generating ENVFILE
#
$(ENVF): envfile
ENVFILE = $(ENVFILE) \
FIELDTBLS = $(FIELDTBLS) \
FLDTBLDIR = $(FLDTBLDIR) \
MASKPATH = $(MASKPATH) \
VIEWDIR = $(VIEWDIR) \
VIEWFILES = $(VIEWFILES) \
sh envfile
# Rule for generating TMUSREVT.ENV
#
$(USREVTENVF): usrevtf
ENVFILE = $(USREVTENVF) \
FIELDTBLS = $(FIELDTBLS) \
FLDTBLDIR = $(FLDTBLDIR) \
sh usrevtf
.SUFFIXES: .v .V .ec .c .o .sh
# Rule for creating view
#
.v.V:
FIELDTBLS = $(FIELDTBLS) \
FLDTBLDIR = $(FLDTBLDIR) \
VIEWFILES = $(VIEWFILES) \
VIEWDIR = $(VIEWDIR) \
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/viewc$(FML32) $*.v
# Rule for creating C programs from embedded SQL programs
#
.ec.c:
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/esqlc -c 30 $*.ec
# Rule for creating object files from C programs
#
.c.o:
$(CC) $(CFLAGS) -c $*.c
# Rule for creating object files from embedded SQL programs
#
.ec.o:
TUXDIR = $(TUXDIR) \
$(XCBINDIR)/esqlc $*.ec
$(CC) $(CFLAGS) -c $*.c
# Rule for creating executable shell scripts from shell script source
#
.sh:
rm -f $@
cat $< >$@
chmod 0555 $@
# --*--DEPENDENCIES--*--
audit.o BAL_BID.o ACCT.o appinit.o TLR.o BALC.o BAL.o XFER.o BTADD.o: bankflds.h
AUDITC.o audit.o BAL_BID.o ACCT.o appinit.o TLR.o BALC.o BAL.o XFER.o BTADD.o: bank.h
ACCT.o TLR.o ACCTMGR.o bankmgr.o: eventflds
3) make:
$make -f bankapp.mk
4) create database:
$ crbankdb
5) edit the ubbshm file
# (c)
2005
BEA Systems
,
Inc. All Rights Reserved.
#Copyright (c) 1991 Unix System Laboratories , Inc.
#All rights reserved
#ident " @(#) samples/atmi/bankapp/ubbshm $Revision: 1.6 $ "
#
# The banking demo application , bankapp , has been enhanced to demonstrate
# some of the new features introduced in release 6 . For a list of the new
# features and how they appear in bankapp , refer to the file README2 under
# the bankapp directory ($TUXDIR/apps/bankapp/README2). The bankapp
# application comes " armed " with these features but not " activated " . The
# README2 file lists the steps required to " activate " the new features.
#
# Lines in this file beginning with the characters '##' relate to the new
# features in bankapp. (Recall that lines beginning with the '#' character
# are treated as comments). Comments are inserted in-line to briefly explain
# the new features where they appear.
#
*RESOURCES
IPCKEY 80952
UID 0
GID 0
PERM 0660
MAXACCESSERS 40
MAXSERVERS 35
MAXSERVICES 75
MAXCONV 10
MASTER SITE1
SCANUNIT 10
MODEL SHM
LDBAL Y
##SECURITY ACL
##AUTHSVC " ..AUTHSVC "
#
#
*MACHINES
rhelserver LMID = SITE1
TUXDIR = " /home/oracle/tuxedo10gR3 "
APPDIR = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp "
ENVFILE = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/ENVFILE "
TLOGDEVICE = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/TLOG "
TLOGNAME = TLOG
TUXCONFIG = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/tuxconfig "
ULOGPFX = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/ULOG "
#
#
*GROUPS
#
# Group for Authentication Servers
#
##AUTHGRP LMID = SITE1 GRPNO = 101
#
# Group for Application Queue (/Q) Servers
#
##QGRP1 LMID = SITE1 GRPNO = 102
## TMSNAME = TMS_QM TMSCOUNT = 2
## OPENINFO = " TUXEDO/QM:<APPDIR1>/qdevice:QSP_BANKAPP "
#
# Group for Application Manager's Servers
#
##MGRGRP1 LMID = SITE1 GRPNO = 103
#
# Group for Event Broker Servers
#
##EVBGRP1 LMID = SITE1 GRPNO = 104
DEFAULT: TMSNAME = TMS_SQL TMSCOUNT = 2 LMID = SITE1
BANKB1 GRPNO = 1
OPENINFO = " TUXEDO/SQL:/home/oracle/tuxedo10gR3/samples/atmi/bankapp/bankdl1:bankdb:readwrite "
BANKB2 GRPNO = 2
OPENINFO = " TUXEDO/SQL:/home/oracle/tuxedo10gR3/samples/atmi/bankapp/bankdl2:bankdb:readwrite "
BANKB3 GRPNO = 3
OPENINFO = " TUXEDO/SQL:/home/oracle/tuxedo10gR3/samples/atmi/bankapp/bankdl3:bankdb:readwrite "
#
#
*SERVERS
#
# TUXEDO System /T server providing application specific authentication.
# Ref. AUTHSVR( 5 ).
#
##AUTHSVR SRVGRP = AUTHGRP SRVID = 1 RESTART = Y GRACE = 0 MAXGEN = 2
## CLOPT = " -A "
#
# TUXEDO System /T Message Queue Manager. It is a server that enqueues and
# dequeues messages on behalf of programs calling tpenqueue( 3 ) and
# tpdequeue( 3 ) respectively. Ref. TMQUEUE( 5 ).
#
##TMQUEUE SRVGRP = QGRP1 SRVID = 1 CONV = N GRACE = 0
## CLOPT = " -s QSP_BANKAPP:TMQUEUE "
#
# TUXEDO System /T Message Forwarding Server that forwards messages that have
# been stored using tpenqueue( 3 ) for later processing. Ref. TMQFORWARD( 5 ).
#
##TMQFORWARD SRVGRP = QGRP1 SRVID = 2 CONV = N REPLYQ = N GRACE = 0
## CLOPT = " -- -e -n -d -q Q_OPENACCT_LOG "
#
# TUXEDO System /T User Event Broker that manages user events by notifying
# subscribers when those events are posted. Ref. TMUSREVT( 5 ).
#
##TMUSREVT SRVGRP = EVBGRP1 SRVID = 1 GRACE = 3600
## ENVFILE = " <APPDIR1>/TMUSREVT.ENV "
## CLOPT = " -e tmusrevt.out -o tmusrevt.out -A --
## -f <APPDIR1>/tmusrevt.dat "
## SEQUENCE = 11
#
# TUXEDO Application Server that subscribes to certain events.
#
##ACCTMGR SRVGRP = MGRGRP1 SRVID = 1
## CLOPT = " -A -o ACCTMGR.LOG -- -w 1000.00 "
## SEQUENCE = 12
#
# TUXEDO System /T Metadata Repository Server that manages application
# services information for retrieving and updating. Ref. TMMETADATA( 5 ).
#
##TMMETADATA SRVGRP = MGRGRP1 SRVID = 1 CONV = N RESTART = Y
## CLOPT = " -A -- -f <APPDIR1>/metarepos.bk "
DEFAULT: RESTART = Y MAXGEN = 5 REPLYQ = Y CLOPT = " -A "
TLR SRVGRP = BANKB1 SRVID = 1 CLOPT = " -A -- -T 100 -e 1000.00 "
TLR SRVGRP = BANKB2 SRVID = 2 CLOPT = " -A -- -T 500 -e 1000.00 "
TLR SRVGRP = BANKB3 SRVID = 3 CLOPT = " -A -- -T 800 -e 1000.00 "
XFER SRVGRP = BANKB1 SRVID = 4
XFER SRVGRP = BANKB2 SRVID = 5
XFER SRVGRP = BANKB3 SRVID = 6
ACCT SRVGRP = BANKB1 SRVID = 7
ACCT SRVGRP = BANKB2 SRVID = 8
ACCT SRVGRP = BANKB3 SRVID = 9
BAL SRVGRP = BANKB1 SRVID = 10
BAL SRVGRP = BANKB2 SRVID = 11
BAL SRVGRP = BANKB3 SRVID = 12
BTADD SRVGRP = BANKB1 SRVID = 13
BTADD SRVGRP = BANKB2 SRVID = 14
BTADD SRVGRP = BANKB3 SRVID = 15
AUDITC SRVGRP = BANKB1 SRVID = 16 CONV = Y MIN = 1 MAX = 10 RQADDR = " auditc "
BALC SRVGRP = BANKB1 SRVID = 27
BALC SRVGRP = BANKB2 SRVID = 28
BALC SRVGRP = BANKB3 SRVID = 29
#
#
*SERVICES
DEFAULT: LOAD = 50 AUTOTRAN = Y TRANTIME = 30
WITHDRAWAL PRIO = 50 ROUTING = ACCOUNT_ID
DEPOSIT PRIO = 50 ROUTING = ACCOUNT_ID
TRANSFER PRIO = 50 ROUTING = ACCOUNT_ID
INQUIRY PRIO = 50 ROUTING = ACCOUNT_ID
CLOSE_ACCT PRIO = 40 ROUTING = ACCOUNT_ID
OPEN_ACCT PRIO = 40 ROUTING = BRANCH_ID
BR_ADD PRIO = 20 ROUTING = BRANCH_ID
TLR_ADD PRIO = 20 ROUTING = BRANCH_ID
ABAL PRIO = 30 ROUTING = b_id
TBAL PRIO = 30 ROUTING = b_id
ABAL_BID PRIO = 30 ROUTING = b_id
TBAL_BID PRIO = 30 ROUTING = b_id
ABALC_BID PRIO = 30 ROUTING = b_id
TBALC_BID PRIO = 30 ROUTING = b_id
*ROUTING
ACCOUNT_ID FIELD = ACCOUNT_ID
BUFTYPE = " FML "
RANGES = " 10000-49999:BANKB1,
50000-79999:BANKB2,
80000-109999:BANKB3 "
BRANCH_ID FIELD = BRANCH_ID
BUFTYPE = " FML "
RANGES = " 1-4:BANKB1,
5-7:BANKB2,
8-10:BANKB3 "
b_id FIELD = b_id
BUFTYPE = " VIEW:aud "
RANGES = " 1-4:BANKB1,
5-7:BANKB2,
8-10:BANKB3 "
#Copyright (c) 1991 Unix System Laboratories , Inc.
#All rights reserved
#ident " @(#) samples/atmi/bankapp/ubbshm $Revision: 1.6 $ "
#
# The banking demo application , bankapp , has been enhanced to demonstrate
# some of the new features introduced in release 6 . For a list of the new
# features and how they appear in bankapp , refer to the file README2 under
# the bankapp directory ($TUXDIR/apps/bankapp/README2). The bankapp
# application comes " armed " with these features but not " activated " . The
# README2 file lists the steps required to " activate " the new features.
#
# Lines in this file beginning with the characters '##' relate to the new
# features in bankapp. (Recall that lines beginning with the '#' character
# are treated as comments). Comments are inserted in-line to briefly explain
# the new features where they appear.
#
*RESOURCES
IPCKEY 80952
UID 0
GID 0
PERM 0660
MAXACCESSERS 40
MAXSERVERS 35
MAXSERVICES 75
MAXCONV 10
MASTER SITE1
SCANUNIT 10
MODEL SHM
LDBAL Y
##SECURITY ACL
##AUTHSVC " ..AUTHSVC "
#
#
*MACHINES
rhelserver LMID = SITE1
TUXDIR = " /home/oracle/tuxedo10gR3 "
APPDIR = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp "
ENVFILE = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/ENVFILE "
TLOGDEVICE = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/TLOG "
TLOGNAME = TLOG
TUXCONFIG = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/tuxconfig "
ULOGPFX = " /home/oracle/tuxedo10gR3/samples/atmi/bankapp/ULOG "
#
#
*GROUPS
#
# Group for Authentication Servers
#
##AUTHGRP LMID = SITE1 GRPNO = 101
#
# Group for Application Queue (/Q) Servers
#
##QGRP1 LMID = SITE1 GRPNO = 102
## TMSNAME = TMS_QM TMSCOUNT = 2
## OPENINFO = " TUXEDO/QM:<APPDIR1>/qdevice:QSP_BANKAPP "
#
# Group for Application Manager's Servers
#
##MGRGRP1 LMID = SITE1 GRPNO = 103
#
# Group for Event Broker Servers
#
##EVBGRP1 LMID = SITE1 GRPNO = 104
DEFAULT: TMSNAME = TMS_SQL TMSCOUNT = 2 LMID = SITE1
BANKB1 GRPNO = 1
OPENINFO = " TUXEDO/SQL:/home/oracle/tuxedo10gR3/samples/atmi/bankapp/bankdl1:bankdb:readwrite "
BANKB2 GRPNO = 2
OPENINFO = " TUXEDO/SQL:/home/oracle/tuxedo10gR3/samples/atmi/bankapp/bankdl2:bankdb:readwrite "
BANKB3 GRPNO = 3
OPENINFO = " TUXEDO/SQL:/home/oracle/tuxedo10gR3/samples/atmi/bankapp/bankdl3:bankdb:readwrite "
#
#
*SERVERS
#
# TUXEDO System /T server providing application specific authentication.
# Ref. AUTHSVR( 5 ).
#
##AUTHSVR SRVGRP = AUTHGRP SRVID = 1 RESTART = Y GRACE = 0 MAXGEN = 2
## CLOPT = " -A "
#
# TUXEDO System /T Message Queue Manager. It is a server that enqueues and
# dequeues messages on behalf of programs calling tpenqueue( 3 ) and
# tpdequeue( 3 ) respectively. Ref. TMQUEUE( 5 ).
#
##TMQUEUE SRVGRP = QGRP1 SRVID = 1 CONV = N GRACE = 0
## CLOPT = " -s QSP_BANKAPP:TMQUEUE "
#
# TUXEDO System /T Message Forwarding Server that forwards messages that have
# been stored using tpenqueue( 3 ) for later processing. Ref. TMQFORWARD( 5 ).
#
##TMQFORWARD SRVGRP = QGRP1 SRVID = 2 CONV = N REPLYQ = N GRACE = 0
## CLOPT = " -- -e -n -d -q Q_OPENACCT_LOG "
#
# TUXEDO System /T User Event Broker that manages user events by notifying
# subscribers when those events are posted. Ref. TMUSREVT( 5 ).
#
##TMUSREVT SRVGRP = EVBGRP1 SRVID = 1 GRACE = 3600
## ENVFILE = " <APPDIR1>/TMUSREVT.ENV "
## CLOPT = " -e tmusrevt.out -o tmusrevt.out -A --
## -f <APPDIR1>/tmusrevt.dat "
## SEQUENCE = 11
#
# TUXEDO Application Server that subscribes to certain events.
#
##ACCTMGR SRVGRP = MGRGRP1 SRVID = 1
## CLOPT = " -A -o ACCTMGR.LOG -- -w 1000.00 "
## SEQUENCE = 12
#
# TUXEDO System /T Metadata Repository Server that manages application
# services information for retrieving and updating. Ref. TMMETADATA( 5 ).
#
##TMMETADATA SRVGRP = MGRGRP1 SRVID = 1 CONV = N RESTART = Y
## CLOPT = " -A -- -f <APPDIR1>/metarepos.bk "
DEFAULT: RESTART = Y MAXGEN = 5 REPLYQ = Y CLOPT = " -A "
TLR SRVGRP = BANKB1 SRVID = 1 CLOPT = " -A -- -T 100 -e 1000.00 "
TLR SRVGRP = BANKB2 SRVID = 2 CLOPT = " -A -- -T 500 -e 1000.00 "
TLR SRVGRP = BANKB3 SRVID = 3 CLOPT = " -A -- -T 800 -e 1000.00 "
XFER SRVGRP = BANKB1 SRVID = 4
XFER SRVGRP = BANKB2 SRVID = 5
XFER SRVGRP = BANKB3 SRVID = 6
ACCT SRVGRP = BANKB1 SRVID = 7
ACCT SRVGRP = BANKB2 SRVID = 8
ACCT SRVGRP = BANKB3 SRVID = 9
BAL SRVGRP = BANKB1 SRVID = 10
BAL SRVGRP = BANKB2 SRVID = 11
BAL SRVGRP = BANKB3 SRVID = 12
BTADD SRVGRP = BANKB1 SRVID = 13
BTADD SRVGRP = BANKB2 SRVID = 14
BTADD SRVGRP = BANKB3 SRVID = 15
AUDITC SRVGRP = BANKB1 SRVID = 16 CONV = Y MIN = 1 MAX = 10 RQADDR = " auditc "
BALC SRVGRP = BANKB1 SRVID = 27
BALC SRVGRP = BANKB2 SRVID = 28
BALC SRVGRP = BANKB3 SRVID = 29
#
#
*SERVICES
DEFAULT: LOAD = 50 AUTOTRAN = Y TRANTIME = 30
WITHDRAWAL PRIO = 50 ROUTING = ACCOUNT_ID
DEPOSIT PRIO = 50 ROUTING = ACCOUNT_ID
TRANSFER PRIO = 50 ROUTING = ACCOUNT_ID
INQUIRY PRIO = 50 ROUTING = ACCOUNT_ID
CLOSE_ACCT PRIO = 40 ROUTING = ACCOUNT_ID
OPEN_ACCT PRIO = 40 ROUTING = BRANCH_ID
BR_ADD PRIO = 20 ROUTING = BRANCH_ID
TLR_ADD PRIO = 20 ROUTING = BRANCH_ID
ABAL PRIO = 30 ROUTING = b_id
TBAL PRIO = 30 ROUTING = b_id
ABAL_BID PRIO = 30 ROUTING = b_id
TBAL_BID PRIO = 30 ROUTING = b_id
ABALC_BID PRIO = 30 ROUTING = b_id
TBALC_BID PRIO = 30 ROUTING = b_id
*ROUTING
ACCOUNT_ID FIELD = ACCOUNT_ID
BUFTYPE = " FML "
RANGES = " 10000-49999:BANKB1,
50000-79999:BANKB2,
80000-109999:BANKB3 "
BRANCH_ID FIELD = BRANCH_ID
BUFTYPE = " FML "
RANGES = " 1-4:BANKB1,
5-7:BANKB2,
8-10:BANKB3 "
b_id FIELD = b_id
BUFTYPE = " VIEW:aud "
RANGES = " 1-4:BANKB1,
5-7:BANKB2,
8-10:BANKB3 "
6) load config file:
$ tmloadcf ubbshm
7) create TLog file:
$crtlog -m
8) run bankapp:
$tmboot
$populate
$audit -a 1