f_aps_mrp_rst_lockemp.srf 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. $PBExportHeader$f_aps_mrp_rst_lockemp.srf
  2. global type f_aps_mrp_rst_lockemp from function_object
  3. end type
  4. forward prototypes
  5. global function integer f_aps_mrp_rst_lockemp (long arg_scid, ref string arg_msg)
  6. global function integer f_aps_mrp_rst_lockemp (long arg_scid, ref string arg_ref_lockemp, ref string arg_msg)
  7. end prototypes
  8. global function integer f_aps_mrp_rst_lockemp (long arg_scid, ref string arg_msg);Int rslt = 1
  9. Int li_iflock
  10. DateTime ldt_lastlocktime,ldt_locktime
  11. Long ll_h,ll_m
  12. SELECT iflock,
  13. lastlocktime,
  14. locktime,
  15. DATEDIFF(hh,lastlocktime,getdate()),
  16. DATEDIFF(mi,locktime,getdate())
  17. INTO :li_iflock,
  18. :ldt_lastlocktime,
  19. :ldt_locktime,
  20. :ll_h,
  21. :ll_m
  22. FROM aps_mrp_lock
  23. Where scid = :arg_scid;
  24. IF sqlca.SQLCode = -1 THEN
  25. arg_msg = '查询MRP运算锁定标记失败,'+sqlca.SQLErrText
  26. rslt = 0
  27. GOTO ext
  28. ELSEIF sqlca.SQLCode = 100 THEN
  29. rslt = 1
  30. GOTO ext
  31. END IF
  32. IF li_iflock = 0 THEN
  33. rslt = 1
  34. GOTO ext
  35. ELSE
  36. IF ll_h >= 12 THEN
  37. rslt = 1
  38. GOTO ext
  39. ELSE
  40. IF ll_m <= 20 THEN
  41. rslt = 0
  42. arg_msg = 'MRP运算当中,请稍后操作'
  43. GOTO ext
  44. ELSE
  45. rslt = 1
  46. GOTO ext
  47. END IF
  48. END IF
  49. END IF
  50. ext:
  51. RETURN rslt
  52. end function
  53. global function integer f_aps_mrp_rst_lockemp (long arg_scid, ref string arg_ref_lockemp, ref string arg_msg);Int rslt = 1
  54. String ls_lockemp
  55. SELECT lockemp
  56. INTO :ls_lockemp
  57. FROM aps_mrp_lock
  58. Where scid = :arg_scid;
  59. IF sqlca.SQLCode <> 0 THEN
  60. arg_msg = '查询MRP运算锁定操作人失败,'+sqlca.SQLErrText
  61. rslt = 0
  62. GOTO ext
  63. END IF
  64. arg_ref_lockemp = ls_lockemp
  65. ext:
  66. RETURN rslt
  67. end function