Guidelines for Learning Outcomes for Therapeutic Recreation ...
Steps for Recreation
-
Upload
sikandarbatcha -
Category
Documents
-
view
219 -
download
0
Transcript of Steps for Recreation
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 1/21
Steps for recreation:
1. Take client’s environment with the updates R09_TT_Foundation_6 and
R09_TT_Contract_14 and installed.
2. Have the TELLER.TRANSACTION Record as shown below.
3. Have the FT.COMMISSION.TYPE Record as shown below.
4. Have the TAX record as shown below.
5. Have the TT.GROUP.CONDITION record as shown below.
6. Have the APPL.GEN.CONDITION record as shown below.
7. Now input a teller transaction with customer account category equals to
1001, the system recalculates the CHRG.AMT.LOCAL and its corresponding
TAX amount.
8. Now change the value in the field CHRG.AMT.LOCAL, the system now does
not change the TAX amount instead it retains the same tax amount which
was calculated previously.
Debug
BASE debugger->S
ource changed to
D:\R9\Temenos\R09\bnk\bnk.run\BIAT1.BP\TT.CHECK.FIELDS
0346 GOSUB INITIALISE
jBASE debugger->C
DEBUG statement seen
Source changed to
D:\R9\Temenos\R09\bnk\bnk.run\BIAT2.BP\TT.PERFORM.DEF.PROCESSING
0319 DEBUG
jBASE debugger->C
DEBUG statement seen
0886 DEBUG
jBASE debugger->S
0887 CHG.COUN = DCOUNT(TELLER.CHARGE,VM)
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 2/21
jBASE debugger->S
0888 IF CONTRACT.GRP THEN ;* If TT.GROUP.CONDITION defined then
jBASE debugger->S
0889 SAVE.TELLER.CHARGE = TELLER.CHARGE ;*CI_10046309 - S
jBASE debugger->S
0890 CALL
CALCULATE.CHARGE(C.CUST,C.AMT,C.CCY,C.MKT,C.RATE,C.CROSS.CCY,C.DRAW.CC
Y,TELLER.CHARGE,CUST.CONDITION,"","") ;* For general charges defined in
TELLER.TRANSACTION
jBASE debugger->T CUST.CONDITION
t 4: CUST.CONDITION
jBASE debugger->S
0891 GENERAL.CHARGE = TELLER.CHARGE ;*CI_10046309 - E
COMMON variables
TELLER.CHARGE :
BIAT]18^COM]TAX^52052]USD172050001^10.00]1.80^^^962]465^961]464^NO
^^^^]18^]PLUS^^^USD^18^^^^USD]USD^]1^]^^^^^^^^^^^^^^^^^^
^^^^^^10^]^]^]^^^^FLAT
COMMON variables
R.NEW(37) : 5.00]0.04
jBASE debugger->S
0892 TELLER.CHARGE = SAVE.TELLER.CHARGE
jBASE debugger->S
0893 FOR S.LOOP = 1 TO CHG.COUN ;* If more than one charge code is
defined....
COMMON variables
TELLER.CHARGE : BIAT
jBASE debugger->S
0894 GOSUB PROCESS.TT.GROUP.COND
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 3/21
0920 PROCESS.TT.GROUP.COND:
0921 CHG.CODE = ''
COMMON variables
TELLER.CHARGE : BIAT
jBASE debugger->S
0922 CHG.CODE = TELLER.CHARGE<1,S.LOOP>
jBASE debugger->S
0923 TGC.REC = ''
jBASE debugger->S
0924 TGC.ERR = ''
jBASE debugger->S
0925 TGC.ID = "C-":C.CUST ;*BG_100001355 S
jBASE debugger->S
0926 CALL CACHE.READ(FN.TGC,TGC.ID,TGC.REC,TGC.ERR)
;*BG_100007243
jBASE debugger->S
0927 IF TGC.REC EQ '' THEN
jBASE debugger->S
0928 TGC.ID = R.NEW(TT.TE.CONTRACT.GRP)
jBASE debugger->S
0929 CALL CACHE.READ(FN.TGC,TGC.ID,TGC.REC,TGC.ERR)
;*BG_100007243
jBASE debugger->S
0930 END ;*BG_100001355 E
jBASE debugger->V TGC.ID
TGC.ID : 1234
jBASE debugger->S
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 4/21
0931 IF TGC.REC NE '' THEN
jBASE debugger->S
0932 IF TGC.REC<TT.GRP.COND.CHG.TYPE,1> = 'ALL' THEN
jBASE debugger->S
0934 END ELSE
jBASE debugger->S
0935 LOCATE CHG.CODE IN TGC.REC<TT.GRP.COND.CHG.TYPE,1> SETTING
CHG.POS THEN
jBASE debugger->S
0936 IF TGC.REC<TT.GRP.COND.CHG.PERCENT,CHG.POS> NE '' THEN
jBASE debugger->S
0937 CUST.CONDITION<1,S.LOOP> =
TGC.REC<TT.GRP.COND.CHG.PERCENT,CHG.POS>
jBASE debugger->S
0943 END
CUST.CONDITION : 2
jBASE debugger->S
0944 END
jBASE debugger->S
0945 END ;* CI_10025601/S
jBASE debugger->S
0946 END
jBASE debugger->S
0947 RETURN
jBASE debugger->s
0895 NEXT S.LOOP
COMMON variables
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 5/21
jBASE debugger->S
0896 CALL
CALCULATE.CHARGE(C.CUST,C.AMT,C.CCY,C.MKT,C.RATE,C.CROSS.CCY,C.DRAW.CC
Y,TELLER.CHARGE,CUST.CONDITION,"","") ;* Process for TT.GROUP.CONDITION
jBASE debugger->V C.AMT
C.AMT : 100
jBASE debugger->
jBASE debugger->V C.CCY
C.CCY : USD
jBASE debugger->
jBASE debugger->V C.MKT
C.MKT : 10
jBASE debugger->
jBASE debugger->V C.RATE
C.RATE :
jBASE debugger->
jBASE debugger->V C.CROSS.CCY
C.CROSS.CCY : USD
jBASE debugger->
jBASE debugger->V C.DRAW.CCY
C.DRAW.CCY : USD
jBASE debugger->
jBASE debugger->V CUST.CONDITION
CUST.CONDITION : 2
jBASE debugger->S
0897 FOR S.LOOP = 1 TO CHG.COUN
COMMON variables
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 6/21
TELLER.CHARGE :
BIAT]18^COM]TAX^52052]USD172050001^0.20]0.04^^^962]465^961]464^NO^
^^^]18^]PLUS^^^USD^18^^^^USD]USD^]1^]^^^^^^^^^^^^^^^^^^^
^^^^^10^]^]^]^^^^FLAT
COMMON variables
R.NEW(37) : 5.00]0.04
CUST.CONDITION : 2
0898 IF C.DRAW.CCY EQ LCCY THEN ;*CI_10046309 - S
COMMON variables
TELLER.CHARGE :
BIAT]18^COM]TAX^52052]USD172050001^0.20]0.04^^^962]465^961]464^NO^
^^^]18^]PLUS^^^USD^18^^^^USD]USD^]1^]^^^^^^^^^^^^^^^^^^^^^^^^10^]^]^]^^^^FLAT
COMMON variables
R.NEW(37) : 5.00]0.04
CUST.CONDITION : 2
jBASE debugger->S
0899 IF (C.CUST.AMT<1,S.LOOP> NE '' AND C.CUST.AMT<1,S.LOOP> NE
TELLER.CHARGE<4,S.LOOP> AND C.CUST.AMT<1,S.LOOP> NE
GENERAL.CHARGE<4,S.LOOP>) THEN ;* If the charge amount in R.NEW
COMMON variables
jBASE debugger->V S.LOOP
S.LOOP : 1
jBASE debugger->V C.CUST.AMT<1,1>
C.CUST.AMT<1,1> : 5.00
jBASE debugger->V TELLER.CHARGE<4,1>
COMMON variables
TELLER.CHARGE<4,1> : 4 bytes (out of 143) : 0.20
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 7/21
jBASE debugger->V GENERAL.CHARGE<4,1>
GENERAL.CHARGE<4,1> : 5 bytes (out of 144) : 10.00
jBASE debugger->S
0900 TELLER.CHARGE<4,S.LOOP> = C.CUST.AMT<1,S.LOOP> ;* is
different from TT.GROUP.CONDITION charge and general charges
COMMON variables
TELLER.CHARGE :
BIAT]18^COM]TAX^52052]USD172050001^0.20]0.04^^^962]465^961]464^NO^
^^^]18^]PLUS^^^USD^18^^^^USD]USD^]1^]^^^^^^^^^^^^^^^^^^^
^^^^^10^]^]^]^^^^FLAT
jBASE debugger->V TELLER.CHARGE<4,1>
COMMON variables
TELLER.CHARGE<4,1> : 4 bytes (out of 143) : 5.00
CALL TT.GENERAL.LIBRARY(CALL.CLEAR.FIELDS)
R.NEW(37) :
jBASE debugger->
jBASE debugger->S
0811 R.NEW(TT.TE.CHRG.AMT.LOCAL)<1,IDX> =
TELLER.CHARGE<4,IDX> ;* Local
COMMON variables
TELLER.CHARGE :
BIAT]18^COM]TAX^52052]USD172050001^5.00]0.04^^^962]465^961]46
4^NO^^^^]18^]PLUS^^^USD^18^^^^USD]USD^]1^]^^^^^^^^^^^^^
^^^^^^^^^^^10^]^]^]^^^^FLAT
COMMON variables
R.NEW(37) : 5.00
CUST.CONDITION : 2
jBASE debugger->V TELLER.CHARGE<4,2>
COMMON variables
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 8/21
TELLER.CHARGE<4,2> : 4 bytes (out of 143) : 0.04
jBASE debugger->S
0812 R.NEW(TT.TE.CHRG.AMT.FCCY)<1,IDX> =
TELLER.CHARGE<5,IDX> ;* Foreign
COMMON variables
TELLER.CHARGE :
BIAT]18^COM]TAX^52052]USD172050001^5.00]0.04^^^962]465^961]46
4^NO^^^^]18^]PLUS^^^USD^18^^^^USD]USD^]1^]^^^^^^^^^^^^^
^^^^^^^^^^^10^]^]^]^^^^FLAT
COMMON variables
R.NEW(37) : 5.00]0.04
CUST.CONDITION : 2
Screen shots:
1. Take client’s environment with the updates R09_TT_Foundation_6 and
R09_TT_Contract_14 and installed.
2. Have the TELLER.TRANSACTION Record as shown below.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 9/21
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 10/21
3. Have the FT.COMMISSION.TYPE Record as shown below.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 11/21
4. Have the STANDARD SELECTION record for teller as shown below
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 12/21
5. Have the TAX record as shown below.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 13/21
6. Have the TT.GROUP.CONDITION record as shown below.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 14/21
7. Have the APPL.GEN.CONDITION record as shown below.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 15/21
8. Now input a teller transaction with customer account category equals to1001, the system recalculates the CHRG.AMT.LOCAL and its corresponding
TAX amount.
I) Teller record after entering TRANSACTION.CODE and AMOUNT.LOCAL.1
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 16/21
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 17/21
2.) Now teller record after entering the ACCOUNT.2 field with customer categoryequals to 1001.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 18/21
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 19/21
9. Now change the value in the field CHRG.AMT.LOCAL, the system now does
not change the TAX amount instead it retains the same tax amount which
was calculated previously.
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 20/21
Analysis:
On checking with the given problem it was found that the tax amount was
not recalculated accordingly with the CHARGE.AMT.LOCAL field i.e. whenever the
CHARGE.AMT.LOCAL is inputted manually by the user. This problem happens only
when the customer account involved in the teller transaction falls under any
TT.GROUP.CONDITION.
Code Analysis:
Routine flow:
TT.CHECK.FIELDS TT.PERFORM.DEF.PROCESSING CALCULATE.CHARGE
TT.PERFORM.DEF.PROCESSING
8/3/2019 Steps for Recreation
http://slidepdf.com/reader/full/steps-for-recreation 21/21
In the routine TT.PERFORM.DEF.PROCESSING as the below highlighted conditions
gets satisfied the value that is inputted by manually in CHARGE.AMT.LOCAL is alone
is assigned with the TELLER.CHARGE array which holds the charge related details
results in change only in CHARGE.AMT.LOCAL.
SET.CUST.CONDITION:
CHG.COUN = DCOUNT(TELLER.CHARGE,VM)
IF CONTRACT.GRP THEN ;* If TT.GROUP.CONDITION defined then
SAVE.TELLER.CHARGE = TELLER.CHARGE ;*CI_10046309 - S
CALL CALCULATE.CHARGE(C.CUST,C.AMT,C.CCY,C.MKT,C.RATE,C.CROSS.CCY,C.DRAW.CCY,
TELLER.CHARGE,CUST.CONDITION,"","")
GENERAL.CHARGE = TELLER.CHARGE
TELLER.CHARGE = SAVE.TELLER.CHARGE
FOR S.LOOP = 1 TO CHG.COUN
GOSUB PROCESS.TT.GROUP.COND
NEXT S.LOOP
CALL CALCULATE.CHARGE(C.CUST,C.AMT,C.CCY,C.MKT,C.RATE,C.CROSS.CCY,C.DRAW.CCY,
TELLER.CHARGE,CUST.CONDITION,"","")
FOR S.LOOP = 1 TO CHG.COUNIF C.DRAW.CCY EQ LCCY THEN
IF (C.CUST.AMT<1,S.LOOP> NE '' AND C.CUST.AMT<1,S.LOOP> NE
TELLER.CHARGE<4,S.LOOP> AND C.CUST.AMT<1,S.LOOP> NE GENERAL.CHARGE<4,S.LOOP>) THEN
TELLER.CHARGE<4,S.LOOP> = C.CUST.AMT<1,S.LOOP>
END
END ELSE
IF (C.CUST.AMT<1,S.LOOP> NE '' AND C.CUST.AMT<1,S.LOOP> NE
TELLER.CHARGE<5,S.LOOP> AND C.CUST.AMT<1,S.LOOP> NE GENERAL.CHARGE<5,S.LOOP>) THEN
TELLER.CHARGE<4,S.LOOP> = R.NEW(TT.TE.CHRG.AMT.LOCAL)<1,S.LOOP>
TELLER.CHARGE<5,S.LOOP> = C.CUST.AMT<1,S.LOOP>
END
END ;*CI_10046309 - E
NEXT S.LOOP
But the tax amount is not recalculated based on new CHARGE.AMT.LOCAL
inputted .This is due to the TT.GROUP.CONDITION setup. If TT.GROUP.CONDITION
defined for the customer account involved then CALCUALTE.CHARGE is called with
CUST.CONDTION with the TT.GROUP.CONDITION definition not with the amount
entered. Hence calculate charge will always returns tax amount based on
TT.GROUP.CONDITION not based on the entered value in CHARGE.AMT.LOCAL
jBASE debugger->V CUST.CONDITION
CUST.CONDITION : 2
0896 CALLCALCULATE.CHARGE(C.CUST,C.AMT,C.CCY,C.MKT,C.RATE,C.CROSS.CCY,C.DRAW.CC
Y,TELLER.CHARGE,CUST.CONDITION,"","") ;* Process for TT.GROUP.CONDITION