Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *-----------------------------------------------------------------------------
- * <Rating>474</Rating>
- *-----------------------------------------------------------------------------
- SUBROUTINE PRBK.ENQ.CUE.CLI.M(ALL.DATOS)
- *-----------------------------------------------------------------------------
- *
- *-----------------------------------------------------------------------------
- * Modification History :
- *-----------------------------------------------------------------------------
- $INSERT I_COMMON
- $INSERT I_EQUATE
- $INSERT I_ENQUIRY.COMMON
- $INSERT I_F.CUSTOMER
- $INSERT I_F.ACCOUNT
- $INSERT I_F.CURRENCY
- $INSERT I_F.PRBK.APP.CUENTA.MUR.M
- *-----------------------------------------------------------------------------
- DEBUG
- GOSUB INITIALIZE
- GOSUB OPEN.FILE
- GOSUB PROCESS
- RETURN
- INITIALIZE:
- FN.ACCOUNT = 'F.ACCOUNT'
- F.ACCOUNT = ''
- FN.CUSTOMER = 'F.CUSTOMER'
- F.CUSTOMER = ''
- FN.CURRENCY = 'F.CURRENCY'
- F.CURR = ''
- FN.CUENTA = 'F.PRBK.APP.CUENTA.MUR.M'
- F.CUENTA = ''
- RETURN
- OPEN.FILE:
- CALL OPF (FN.ACCOUNT,F.ACCOUNT)
- CALL OPF (FN.CUSTOMER,F.CUSTOMER)
- CALL OPF (FN.CUENTA,F.CUENTA)
- CALL OPF (FN.CURRENCY,F.CURR)
- RETURN
- PROCESS:
- CONTADORFEO = 0
- DEBUG
- ALL.DATOS = ""
- Y.LINEA = ""
- Y.CUSTOMER.ID = ""
- LOCATE "CUSTOMER.ID" IN D.FIELDS<1> SETTING Y.CUSTOMER.ID.POS THEN
- Y.CUSTOMER.ID = D.RANGE.AND.VALUE<Y.CUSTOMER.ID.POS>
- END
- Y.ACCOUNT.ID = ""
- LOCATE "CUENTA.ID" IN D.FIELDS<1> SETTING Y.ACCOUNT.ID.POS THEN
- Y.ACCOUNT.ID = D.RANGE.AND.VALUE<Y.ACCOUNT.ID.POS>
- END
- IF Y.ACCOUNT.ID THEN
- CALL F.READ(FN.ACCOUNT, Y.ACCOUNT.ID,R.ACCOUNT,F.ACCOUNT,Y.ACC.ERR)
- IF Y.ACC.ERR THEN
- ENQ.ERROR = "Y.ACC.ERR"
- RETURN
- END
- CALL F.READ(FN.CUSTOMER, Y.CUSTOMER.ID, R.CUSTOMER, F.CUSTOMER, Y.ERR.CUS)
- IF Y.ERR.CUS THEN
- ENQ.ERROR = Y.ERR.CUS
- RETURN
- END
- Y.CUSTOMER.ID = R.ACCOUNT<AC.CUSTOMER>
- END
- ELSE
- IF NOT (Y.CUSTOMER.ID OR Y.CUENTA.ID) THEN
- SEL.CMD = "SELECT ":FN.CUENTA
- END
- ELSE
- IF Y.CUSTOMER.ID THEN
- SEL.CMD = "SELECT":FN.ACCOUNT:" WITH CUSTOMER EQ ":Y.CUSTOMER.ID
- END
- END
- CRT " TEST"
- CALL EB.READLIST(SEL.CMD,SEL.LIST,'',NO.OF.REC,RET.CODE)
- LOOP
- CONTADORFEO = CONTADORFEO+1
- REMOVE Y.ID FROM SEL.LIST SETTING Y.POS
- WHILE Y.ID:Y.POS
- CALL F.READ(FN.ACCOUNT, Y.ID, R.ACCOUNT, F.ACCOUNT, Y.ACC.ERR)
- CALL F.READ(FN.CUENTA,Y.ID,R.CUENTA,F.CUENTA, Y.CUENTA.ERR)
- IF NOT(Y.ACC.ERR) THEN
- IF NOT (Y.CUENTA.ERR) AND R.CUENTA NE '' THEN
- LT.APP = 'PRBK.APP.CUENTA.MUR.M'
- LREF.FIELDS = 'LT.MM.SALDO'
- LOCAL.REF.POS = ''
- CALL MULTI.GET.LOC.REF(LT.APP,LREF.FIELDS,LOCAL.REF.POS)
- Y.LT.MM.SALDO.POS = LOCAL.REF.POS<1,1>
- Y.SALDO = R.CUENTA<TAB.DOCU.M.LOCAL.REF,Y.LT.MM.SALDO.POS>
- Y.CANT.SALDOS = DCOUNT(Y.SALDO,SM)
- IF Y.CANT.SALDOS GE 2 THEN
- Y.CUSTOMER = R.ACCOUNT<AC.CUSTOMER>
- Y.ESTADO<-1> = R.CUENTA<TAB.DOCU.M.ESTADO>
- Y.CATEGORIA<-1> = R.ACCOUNT<AC.CATEGORY>
- Y.MONEDA.ID<-1> = R.ACCOUNT<AC.CURRENCY>
- CALL F.READ(FN.CURRENCY,Y.MONEDA.ID,R.CURR,F.CURR,Y.CURR.ERR)
- IF NOT(Y.CURR.ERR) THEN
- Y.DESC.MONEDA=R.CURR<EB.CUR.CCY.NAME>
- Y.MONEDA<-1> = Y.DESC.MONEDA
- END
- END
- END
- END
- IF Y.CANT.SALDOS GE 2 THEN
- CHANGE FM TO VM IN Y.MONEDA
- CHANGE FM TO VM IN Y.CATEGORIA
- CHANGE FM TO VM IN Y.CUENTAS
- CHANGE FM TO VM IN Y.SALDOS
- Y.LINEA = Y.ID
- Y.LINEA := "*" : Y.CUSTOMER
- Y.LINEA := "*" : Y.ESTADO
- Y.LINEA := "*" : Y.CATEGORIA
- Y.LINEA := "*" : Y.MONEDA
- ALL.DATOS<-1> = Y.LINEA
- END
- REPEAT
- END
- RETURN
- END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement