123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- $PBExportHeader$f_aps_mrp_cklock.srf
- global type f_aps_mrp_cklock from function_object
- end type
- forward prototypes
- global function integer f_aps_mrp_cklock (long arg_scid, ref string arg_msg)
- end prototypes
- global function integer f_aps_mrp_cklock (long arg_scid, ref string arg_msg);Int rslt = 1
- Int li_iflock
- DateTime ldt_lastlocktime,ldt_locktime
- Long ll_h,ll_m
- IF sys_option_mrp_locktype = 0 THEN
- rslt = 1
- GOTO ext
- END IF
- SELECT iflock,
- lastlocktime,
- locktime,
- DATEDIFF(hh,lastlocktime,getdate()),
- DATEDIFF(mi,locktime,getdate())
- INTO :li_iflock,
- :ldt_lastlocktime,
- :ldt_locktime,
- :ll_h,
- :ll_m
- FROM aps_mrp_lock
- Where scid = :arg_scid;
- IF sqlca.SQLCode = -1 THEN
- arg_msg = '查询MRP运算锁定标记失败,'+sqlca.SQLErrText
- rslt = 0
- GOTO ext
- ELSEIF sqlca.SQLCode = 100 THEN
- rslt = 1
- GOTO ext
- END IF
- IF li_iflock = 0 THEN
- rslt = 1
- GOTO ext
- ELSE
- IF ll_h >= 12 THEN
- rslt = 1
- GOTO ext
- ELSE
- IF ll_m <= 20 THEN
- rslt = 0
- arg_msg = 'MRP运算当中,请稍后操作'
- GOTO ext
- ELSE
- rslt = 1
- GOTO ext
- END IF
- END IF
- END IF
- ext:
- RETURN rslt
- end function
|