1)edit the bankvar file:
# 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
# (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 $@ $@.c
# 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"
6) load config file:
$ tmloadcf ubbshm
7) create TLog file:
$crtlog -m
8) run bankapp:
$tmboot
$populate
$audit -a 1