Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.36 KB | None | 0 0
  1. *-----------------------------------------------------------------------------
  2. * <Rating>439</Rating>
  3. *-----------------------------------------------------------------------------
  4. SUBROUTINE NOFILE.ENQ.RR1(ALL.DATA)
  5. *-----------------------------------------------------------------------------
  6. *
  7. *-----------------------------------------------------------------------------
  8. * Modification History :
  9. *-----------------------------------------------------------------------------
  10. $INSERT I_COMMON
  11. $INSERT I_EQUATE
  12. $INSERT I_ENQUIRY.COMMON
  13. $INSERT I_F.CUSTOMER
  14. $INSERT I_F.ACCOUNT
  15. $INSERT I_F.CURRENCY
  16. $INSERT I_F.APP.CUENTA.RUSSILLO2
  17. *-----------------------------------------------------------------------------
  18. DEBUG
  19. GOSUB INITIALIZE
  20. GOSUB OPEN.FILE
  21. GOSUB PROCESS
  22.  
  23. RETURN
  24.  
  25.  
  26. INITIALIZE:
  27. FN.ACCOUNT = 'F.ACCOUNT'
  28. F.ACCOUNT = ''
  29.  
  30. FN.CUSTOMER = 'F.CUSTOMER'
  31. F.CUSTOMER = ''
  32.  
  33. FN.CURRENCY = 'F.CURRENCY'
  34. F.CURR = ''
  35.  
  36. FN.APP.CUENTA.RUSSILLO.2 = 'F.APP.CUENTA.RUSSILLO2'
  37. F.APP.CUENTA.RUSSILLO.2 = ''
  38.  
  39. RETURN
  40.  
  41.  
  42.  
  43. OPEN.FILE:
  44.  
  45. CALL OPF (FN.ACCOUNT,F.ACCOUNT)
  46. CALL OPF (FN.CUSTOMER,F.CUSTOMER)
  47. CALL OPF (FN.APP.CUENTA.RUSSILLO.2,F.APP.CUENTA.RUSSILLO.2)
  48. CALL OPF (FN.CURRENCY,F.CURR)
  49. RETURN
  50.  
  51.  
  52.  
  53. PROCESS:
  54. DEBUG
  55. ALL.DATA = ""
  56. Y.LINEA = ""
  57.  
  58. Y.CUSTOMER.ID = ""
  59. LOCATE "CUSTOMER.ID" IN D.FIELDS<1> SETTING Y.CUSTOMER.ID.POS THEN
  60. Y.CUSTOMER.ID = D.RANGE.AND.VALUE<Y.CUSTOMER.ID.POS>
  61. END
  62.  
  63. Y.ACCOUNT.ID = ""
  64. LOCATE "CUENTA.ID" IN D.FIELDS<1> SETTING Y.ACCOUNT.ID.POS THEN
  65. Y.ACCOUNT.ID = D.RANGE.AND.VALUE<Y.ACCOUNT.ID.POS>
  66. END
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73. IF Y.ACCOUNT.ID THEN
  74. CALL F.READ(FN.ACCOUNT, Y.ACCOUNT.ID,R.ACCOUNT,F.ACCOUNT,Y.ACC.ERR)
  75.  
  76. IF Y.ACC.ERR THEN
  77. ENQ.ERROR = "Y.ACC.ERR"
  78. RETURN
  79. END
  80. CALL F.READ(FN.CUSTOMER, Y.CUSTOMER.ID, R.CUSTOMER, F.CUSTOMER, Y.ERR.CUS)
  81.  
  82. IF Y.ERR.CUS THEN
  83. ENQ.ERROR = Y.ERR.CUS
  84. RETURN
  85. END
  86. Y.CUSTOMER.ID = R.ACCOUNT<AC.CUSTOMER>
  87.  
  88. END
  89.  
  90. ELSE
  91.  
  92.  
  93.  
  94.  
  95. IF NOT (Y.CUSTOMER.ID OR Y.CUENTA.ID) THEN
  96. SEL.CMD = "SELECT ":FN.APP.CUENTA.RUSSILLO.2
  97. END
  98. ELSE
  99. IF Y.CUSTOMER.ID THEN
  100. SEL.CMD = "SELECT":FN.ACCOUNT:" WITH CUSTOMER EQ ":Y.CUSTOMER.ID
  101. END
  102. END
  103.  
  104. CRT " TEST"
  105. CALL EB.READLIST(SEL.CMD,SEL.LIST,'',NO.OF.REC,RET.CODE)
  106.  
  107. LOOP
  108.  
  109. REMOVE Y.ID FROM SEL.LIST SETTING Y.POS
  110. WHILE Y.ID:Y.POS
  111. CALL F.READ(FN.ACCOUNT, Y.ID, R.ACCOUNT, F.ACCOUNT, Y.ACC.ERR)
  112. CALL F.READ(FN.APP.CUENTA.RUSSILLO.2,Y.ID,R.CUENTA,.F.APP.CUENTA.RUSSILLO.2, Y.CUENTA.ERR)
  113. IF NOT(Y.ACC.ERR) THEN
  114. IF NOT (Y.CUENTA.ERR) AND R.CUENTA NE '' THEN
  115. LT.APP = 'APP.CUENTA.RUSSILLO2'
  116. LREF.FIELDS = 'LT.ULTSALDO'
  117. LOCAL.REF.POS = ''
  118.  
  119. CALL MULTI.GET.LOC.REF(LT.APP,LT.FIELDS,LOCAL.REF.POS)
  120. Y.LT.ULTSALDO.POS = LOCAL.REF.POS<1,1>
  121. Y.SALDOS = R.CUENTA<APP.CU.RR2.LOCAL.REF,Y.LT.ULTSALDO.POS>
  122. Y.CANT.SALDOS = DCOUNT(Y.SALDO,VM)
  123. IF Y.CANT.SALDOS GE 2 THEN
  124.  
  125. Y.CUSTOMER = R.ACCOUNT<AC.CUSTOMER>
  126. Y.ESTADO<-1> = R.CUENTA<APP.CU.RR2.ESTADO>
  127. Y.CATEGORIA<-1> = R.ACCOUNT<AC.CATEGORY>
  128. Y.MONEDA.ID<-1> = R.ACCOUNT<AC.CURRENCY>
  129.  
  130. CALL F.READ(FN.CURRENCY,Y.MONEDA.ID,R.CURR,F.CURR,Y.CURR.ERR)
  131. IF NOT(Y.CURR.ERR) THEN
  132. Y.DESC.MONEDA=R.CURR<EB.CUR.CCY.NAME>
  133. Y.MONEDA<-1> = Y.DESC.MONEDA
  134. END
  135. END
  136.  
  137. END
  138. END
  139.  
  140. IF Y.CANT.SALDOS GE 2 THEN
  141. CHANGE FM TO VM IN Y.MONEDA
  142. CHANGE FM TO VM IN Y.CATEGORIA
  143. CHANGE FM TO VM IN Y.CUENTAS
  144. CHANGE FM TO VM IN Y.SALDOS
  145.  
  146. Y.LINEA = Y.ID
  147. Y.LINEA := "*" : Y.CUSTOMER
  148. Y.LINEA := "*" : Y.ESTADO
  149. Y.LINEA := "*" : Y.CATEGORIA
  150. Y.LINEA := "*" : Y.MONEDA
  151.  
  152. ALL.DATA<-1> = Y.LINEA
  153. END
  154.  
  155. REPEAT
  156.  
  157.  
  158. END
  159.  
  160.  
  161. END
  162.  
  163. RETURN
  164.  
  165.  
  166.  
  167. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement