jbase_agent -p 20100
FT14122JNKY7
FT141226YZP2 GB0010001.C-55555.900.ALL FT14122SVQHL
FT14122B9XNB
FT14122S1BMJ D20170621114782807101
FT14122VKXCL
DE.ADDRESS, I GB0010001.C-55555.SMS.1 GB0010001.C-55555.EMAIL.1
320.LD50.1.GB 320.LD51.1.GB LD1412290108
E.LD.INT.LIST
1. GB0010001.C-55555.PRINT.2 DE.ADDRESS, I
2. GB0010001.A-15555.910.ALL DE.PRODUCT, I
3. Txn Complete: FT14122FHX9F 08:39:10 13 JUN 2017 FUNDS.TRANSFER, I
DE.MM.PRINT.MSG D20170703157242111002
D20170613191693115001-910.2.1 CREDIT ADVICE
CHEQUE.ISSUE,TRG
CHEQUE.ISSUE.DS
TRG.CHQ.RTN
LIST F.DATES LAST.WORKING.DAY NEXT.WORKING.DAY
$INSERT I_COMMON
E.GET.AC.ONLINE.ACTUAL.BALANC
$INSERT I_EQUATE
$INSERT I_ENQUIRY.COMMON
$INSERT I_F.EB.CONTRACT.BALANCES
0019
0020 ACCOUNT.ID = O.DATA
0021
0022 CALL EB.READ.HVT('EB.CONTRACT.BALANCES',ACCOUNT.ID,ECB.RECORD,'')
0023
0024 O.DATA = ECB.RECORD<ECB.ONLINE.ACTUAL.BAL>
0025
0026 RETURN
0027 END
ENQ ACC.1
INP.RTN.FT.TEST1
BNK/LD.CUSTOMER
130057 100160
SUBROUTINE LD.CUSTOMER.LOAD
$INSERT ..\T24_BP I_COMMON
$INSERT ..\T24_BP I_EQUATE
$INSERT ..\T24_BP I_F.LD.LOANS.AND.DEPOSITS
$INSERT I_LD.CUSTOMER.COMMON
END
BNK/CUSTOMER.AC
192663
1410952635
jbase_agent -p 20100
SELECT FBNK.ACCOUNT WITH PYRAMID EQ Y
BNK/AC.TEST
SEL.CMD= "SELECT ":FN.CUSTOMER.ACCOUNT
CALL EB.READLIST(SEL.CMD,SEL.LIST,'',NO.OF.SEL,RET.CODE)
LOOP
REMOVE Y.CUS.ID FROM SEL.LIST SETTING POS
WHILE Y.CUS.ID:POS
CALL F.READ(FN.CUSTOMER.ACCOUNT,Y.CUS.ID,R.CUS.ACC,F.CUSTOMER.ACCO
Y.AMT=0
TOTAL.AMT=0
LOOP
REMOVE AC.ID FROM R.CUS.ACC SETTING AC.POS
WHILE AC.ID:AC.POS
GOSUB AC.PROCESS
REPEAT
CALL F.READ(FN.LMM.CUSTOMER,Y.CUS.ID,R.LMM.REC,F.LMM.CUSTOMER,LMM.
S.NOF.CUS.BL 100271 6607.3 MM1308100011 100273
NOFILE.CUS.DE.REPORT
ENQ CUS.DE.REPORT
21001 - 21039
130046 1071.44 MM1305600062
LD1309137517
21052 CATEGORY EQ 21-052
LD.IMRAN1
LD.SCHEDULE.DEFINE LD1305600772 CONTRACT.NO
LD.SCHEDULE.ENQ
PER.ADD.CON.RTN
INIT:
0016 FN.ACCOUNT='F.ACCOUNT'
0017 F.ACCOUNT=''
0018 Y.AC.ID= O.DATA
0019 R.RECORD=''
0020 Y.DATA=''
0021 CALL OPF(FN.ACCOUNT,F.ACCOUNT)
0022 RETURN
0023
0024 PROCESS:
0025 CALL F.READ(FN.ACCOUNT,Y.AC.ID,R.RECORD,F.ACCOUNT,ACC.ERR)
0026 O.DATA= R.RECORD<AC.CURRENCY>:" ":O.DATA
0027 RETURN
0028
0029 END
ACCT.CON.RTN
NOFILE.CUS.REPORT
E.NOF.CUS.AC.DET
CUS.REPORT.ENQ
S.NOF.LD
NOFILE.LD.REPORT
LD.REPORT.ENQ
ENQ LD.REPORT.ENQ 100273 LD1309115610
E.MB.EXCH.PROFIT
E.NOF.CF.MUL.PORT
http://www.t24all.com/index.php/forum/t24-development-a-customization/7515-nofile-
enquiry.html
http://www.t24all.com/index.php/forum/t24-development-a-customization/395-example-
of-nofile-enquiry.html
E.MB.LOAN.PAY.TYPE
ACCOUNT.TEST --> TOTAL
Y.ARRAY= 'KALLIS':@FM:'JONTY':@VM:'NICKY'
LOCATE 'KALLIS' IN Y.ARRAY<2,1> SETTING POS ELSE NULL
I have attached a build routine that should return records whose
> > Working Balance fall within a certain range for the categories 1001
> > and 6001. The restrictions are not applied when I run the enquiry -
> > all records are returned irrespective of the working balance.
>
> > Here is the routine
>
> > SUBROUTINE E.ACWB.BUILD.RTN(ENQ.DATA)
> > $INSERT I_COMMON
> > $INSERT I_EQUATE
> > $INSERT I_ENQUIRY.COMMON
> > LOCATE 'CATEGORY' IN ENQ.DATA<2,1> SETTING Y.CAT.POS ELSE NULL
> > Y.CATEGORY = ENQ.DATA<4,Y.CAT.POS>
> > LOCATE 'WORKING.BALANCE' IN ENQ.DATA<2,1> SETTING Y.WBAL ELSE
> > NULL
> > ENQ.DATA<3,Y.WBAL> = 'RG'
> > IF Y.CATEGORY = 1001 THEN ENQ.DATA<4,Y.WBAL> = '10 50000'
> > IF Y.CATEGORY = 6001 THEN ENQ.DATA<4,Y.WBAL> = '1000 100000'
> > RETURN
> > END
I think the program is not correct. In your enquiry you have only
CATEGORY field in selection fields. But you are testing
WORKING.BALANCE field that should never happen.The other thing is that
selection data should be defined as subvalue set, not space
delimited.
What will happen if you change your program like:
SUBROUTINE E.ACWB.BUILD.RTN(ENQ.DATA)
$INSERT I_COMMON
$INSERT I_EQUATE
$INSERT I_ENQUIRY.COMMON
LOCATE 'CATEGORY' IN ENQ.DATA<2,1> SETTING Y.CAT.POS ELSE
RETURN
END
Y.CATEGORY = ENQ.DATA<4,Y.CAT.POS>
IF Y.CATEGORY MATCHES 1001:VM:6001 ELSE
RETURN
END
LOCATE 'WORKING.BALANCE' IN ENQ.DATA<2,1> SETTING Y.WBAL ELSE
INS ' WORKING.BALANCE' BEFORE ENQ.DATA<2,Y.WBAL>
INS '' BEFORE ENQ.DATA<3,Y.WBAL>
INS '' BEFORE ENQ.DATA<4,Y.WBAL>
END
ENQ.DATA<3,Y.WBAL> = 'RG'
IF Y.CATEGORY = 1001 THEN ENQ.DATA<4,Y.WBAL> = '10':SM:'50000'
IF Y.CATEGORY = 6001 THEN ENQ.DATA<4,Y.WBAL> =
'1000':SM:'100000'
RETURN
END