uf_wfjg_warebalc_check_inoutflag.srf 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. $PBExportHeader$uf_wfjg_warebalc_check_inoutflag.srf
  2. global type uf_wfjg_warebalc_check_inoutflag from function_object
  3. end type
  4. forward prototypes
  5. global function integer uf_wfjg_warebalc_check_inoutflag (datetime arg_balcdate, ref string arg_msg)
  6. end prototypes
  7. global function integer uf_wfjg_warebalc_check_inoutflag (datetime arg_balcdate, ref string arg_msg);Long rslt = 1
  8. Long cnt = 0
  9. //String ls_storagename
  10. //
  11. //SELECT storagename
  12. // INTO :ls_storagename
  13. // FROM u_storage
  14. // Where storageid = :arg_storageid;
  15. //IF sqlca.SQLCode <> 0 THEN
  16. // rslt = 0
  17. // arg_msg = '查询操作失败,仓库名称'
  18. // GOTO ext
  19. //END IF
  20. //检查日期前
  21. cnt = 0
  22. SELECT count(*)
  23. INTO :cnt
  24. FROM ow_wfjg_in
  25. WHERE flag = 0
  26. AND indate <= :arg_balcdate ;
  27. IF sqlca.SQLCode <> 0 THEN
  28. rslt = 0
  29. arg_msg = '查询操作失败,结存日期前是否有外协进仓单未审'
  30. GOTO ext
  31. END IF
  32. IF cnt > 0 THEN
  33. rslt = 0
  34. arg_msg = '结存日期前有外协进仓单未审'
  35. GOTO ext
  36. END IF
  37. cnt = 0
  38. SELECT count(*)
  39. INTO :cnt
  40. FROM ow_wfjg_out
  41. WHERE flag = 0
  42. AND outdate <= :arg_balcdate ;
  43. IF sqlca.SQLCode <> 0 THEN
  44. rslt = 0
  45. arg_msg = '查询操作失败,结存日期前是否有外协出仓单未审'
  46. GOTO ext
  47. END IF
  48. IF cnt > 0 THEN
  49. rslt = 0
  50. arg_msg = '结存日期前有外协出仓单未审'
  51. GOTO ext
  52. END IF
  53. //检查日期后
  54. cnt = 0
  55. SELECT count(*)
  56. INTO :cnt
  57. FROM ow_wfjg_in
  58. WHERE flag = 1
  59. AND indate > :arg_balcdate ;
  60. IF sqlca.SQLCode <> 0 THEN
  61. rslt = 0
  62. arg_msg = '查询操作失败,结存日期后是否有外协进仓单已审'
  63. GOTO ext
  64. END IF
  65. IF cnt > 0 THEN
  66. rslt = 0
  67. arg_msg = '结存日期后有外协进仓单已审'
  68. GOTO ext
  69. END IF
  70. cnt = 0
  71. SELECT count(*)
  72. INTO :cnt
  73. FROM ow_wfjg_out
  74. WHERE flag = 1
  75. AND outdate > :arg_balcdate ;
  76. IF sqlca.SQLCode <> 0 THEN
  77. rslt = 0
  78. arg_msg = '查询操作失败,结存日期后是否有外协出仓单已审'
  79. GOTO ext
  80. END IF
  81. IF cnt > 0 THEN
  82. rslt = 0
  83. arg_msg = '结存日期后有外协出仓单已审'
  84. GOTO ext
  85. END IF
  86. ext:
  87. RETURN rslt
  88. end function