f_set_moneyid.srf 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. $PBExportHeader$f_set_moneyid.srf
  2. global type f_set_moneyid from function_object
  3. end type
  4. forward prototypes
  5. global function integer f_set_moneyid ()
  6. end prototypes
  7. global function integer f_set_moneyid ();Long i ,cnt,rslt = 1
  8. Long empid[]
  9. String ls_powerstring[]
  10. Long it_mx
  11. i = 1
  12. String ls_update
  13. ls_update = f_ProfileString (0,'moneyid','update_moneyid', "no")
  14. IF ls_update = 'no' THEN
  15. Long ll_moneyid
  16. SELECT moneyid INTO :ll_moneyid FROM cw_currency Where native = 1;
  17. IF sqlca.SQLCode <> 0 THEN
  18. rslt = 0
  19. GOTO ext
  20. END IF
  21. UPDATE u_buytask
  22. SET mrate = 1 ,
  23. moneyid = :ll_moneyid
  24. Where moneyid = 0 ;
  25. IF sqlca.SQLCode <> 0 THEN
  26. rslt = 0
  27. GOTO ext
  28. END IF
  29. UPDATE u_inware
  30. SET relint_3 = :ll_moneyid ,
  31. mrate = 1
  32. WHERE u_inware.relint_3 = 0 AND
  33. u_inware.billtype In (1,2,4);
  34. IF sqlca.SQLCode <> 0 THEN
  35. rslt = 0
  36. GOTO ext
  37. END IF
  38. UPDATE u_Bmstpay
  39. SET moneyid = :ll_moneyid
  40. Where moneyid = 0 ;
  41. IF sqlca.SQLCode <> 0 THEN
  42. rslt = 0
  43. GOTO ext
  44. END IF
  45. UPDATE u_Bmstpaymx
  46. SET moneyid = :ll_moneyid
  47. Where moneyid = 0 ;
  48. IF sqlca.SQLCode <> 0 THEN
  49. rslt = 0
  50. GOTO ext
  51. END IF
  52. UPDATE u_spt_amerce
  53. SET moneyid = :ll_moneyid
  54. Where moneyid = 0 ;
  55. IF sqlca.SQLCode <> 0 THEN
  56. rslt = 0
  57. GOTO ext
  58. END IF
  59. UPDATE U_buybill
  60. SET moneyid = :ll_moneyid
  61. Where moneyid = 0 ;
  62. IF sqlca.SQLCode <> 0 THEN
  63. rslt = 0
  64. GOTO ext
  65. END IF
  66. UPDATE u_cusamt
  67. SET moneyid = :ll_moneyid ,
  68. u_cusamt.mrate = 1
  69. Where moneyid = 0 AND billtype = 1;
  70. IF sqlca.SQLCode <> 0 THEN
  71. rslt = 0
  72. GOTO ext
  73. END IF
  74. ext:
  75. IF rslt = 0 THEN
  76. ROLLBACK;
  77. ELSE
  78. COMMIT;
  79. f_setProfileString (0,'moneyid','update_moneyid', "yes")
  80. END IF
  81. END IF
  82. RETURN rslt
  83. end function