123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- $PBExportHeader$uf_spt_warebalc_check_inoutflag.srf
- global type uf_spt_warebalc_check_inoutflag from function_object
- end type
- forward prototypes
- global function integer uf_spt_warebalc_check_inoutflag (long arg_scid, long arg_sptid, datetime arg_balcdate, ref string arg_msg)
- end prototypes
- global function integer uf_spt_warebalc_check_inoutflag (long arg_scid, long arg_sptid, datetime arg_balcdate, ref string arg_msg);Long rslt = 1
- Long cnt = 0
- String ls_sptname
- string ls_scname
- if arg_scid < 0 then
- rslt = 0
- arg_msg = '请选择分部'
- goto ext
- end if
- select scname into :ls_scname
- from u_scdef
- where scid = :arg_scid;
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- arg_msg = '查询操作失败,分部名称'
- GOTO ext
- END IF
- SELECT name
- INTO :ls_sptname
- FROM u_spt
- Where sptid = :arg_sptid;
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- arg_msg = '查询操作失败,外协商名称'
- GOTO ext
- END IF
-
- //检查日期前
- cnt = 0
- SELECT count(*)
- INTO :cnt
- FROM ow_wfjg_in
- WHERE flag = 0
- AND indate <= :arg_balcdate
- and sptid = :arg_sptid
- and scid = :arg_scid ;
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- arg_msg = '查询操作失败,结存日期前是否有进仓单未审'
- GOTO ext
- END IF
- IF cnt > 0 THEN
- rslt = 0
- arg_msg = '外协商['+ls_sptname+'],分部['+ls_scname+'],结存日期前有进仓单未审'
- GOTO ext
- END IF
- cnt = 0
- SELECT count(*)
- INTO :cnt
- FROM ow_wfjg_out
- WHERE flag = 0
- AND outdate <= :arg_balcdate
- and sptid = :arg_sptid
- and scid = :arg_scid;
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- arg_msg = '查询操作失败,结存日期前是否有出仓单未审'
- GOTO ext
- END IF
- IF cnt > 0 THEN
- rslt = 0
- arg_msg = '外协商['+ls_sptname+'],分部['+ls_scname+'],结存日期前有出仓单未审'
- GOTO ext
- END IF
- //检查日期后
- cnt = 0
- SELECT count(*)
- INTO :cnt
- FROM ow_wfjg_in
- WHERE flag = 1
- AND indate > :arg_balcdate
- and sptid = :arg_sptid
- and scid = :arg_scid;
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- arg_msg = '查询操作失败,结存日期后是否有进仓单已审'
- GOTO ext
- END IF
- IF cnt > 0 THEN
- rslt = 0
- arg_msg = '外协商['+ls_sptname+'],分部['+ls_scname+'],结存日期后有进仓单已审'
- GOTO ext
- END IF
- cnt = 0
- SELECT count(*)
- INTO :cnt
- FROM ow_wfjg_out
- WHERE flag = 1
- AND outdate > :arg_balcdate
- and sptid = :arg_sptid
- and scid = :arg_scid;
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- arg_msg = '查询操作失败,结存日期后是否有出仓单已审'
- GOTO ext
- END IF
- IF cnt > 0 THEN
- rslt = 0
- arg_msg = '外协商['+ls_sptname+'],分部['+ls_scname+'],结存日期后有出仓单已审'
- GOTO ext
- END IF
- ext:
- RETURN rslt
- end function
|