12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- $PBExportHeader$f_aps_mtrl_will_scll.srf
- global type f_aps_mtrl_will_scll from function_object
- end type
- forward prototypes
- global function integer f_aps_mtrl_will_scll (s_aps_orderrqmtrl arg_s_rqmtrl, ref string arg_msg)
- end prototypes
- global function integer f_aps_mtrl_will_scll (s_aps_orderrqmtrl arg_s_rqmtrl, ref string arg_msg);Int rslt = 1
- Long ll_i
- Long ll_mtrlid,ll_scid,ll_wrkgrpid,ll_orderid
- String ls_status,ls_woodcode,ls_pcode
- Decimal ld_qty
- DateTime ldt_rqdate
- Int li_ordertype
- FOR ll_i = 1 To UpperBound(arg_s_rqmtrl.mtrlid)
- ll_mtrlid = arg_s_rqmtrl.mtrlid[ll_i]
- ls_status = arg_s_rqmtrl.status[ll_i]
- ls_woodcode = arg_s_rqmtrl.woodcode[ll_i]
- ls_pcode = arg_s_rqmtrl.pcode[ll_i]
- ld_qty = arg_s_rqmtrl.qty[ll_i]
- ll_scid = arg_s_rqmtrl.scid[ll_i]
- ll_orderid = arg_s_rqmtrl.orderid[ll_i]
- ll_wrkgrpid = arg_s_rqmtrl.wrkgrpid[ll_i]
-
- ld_qty = 0 - ld_qty
-
- SELECT top 1 rqdate
- INTO :ldt_rqdate
- FROM u_orderrqmtrl
- WHERE orderid = :ll_orderid
- AND mtrlid = :ll_mtrlid
- AND wrkGrpid = :ll_wrkgrpid
- AND scid = :ll_scid
- AND status = :ls_status
- AND woodcode = :ls_woodcode
- And pcode = :ls_pcode;
- IF sqlca.SQLCode <> 0 THEN CONTINUE
-
- IF f_aps_mtrl_will_add(ll_scid,ll_mtrlid,ls_status,ls_woodcode,ls_pcode,ldt_rqdate,ld_qty,2,arg_msg,mrp_sqlca,True) = 0 THEN
- rslt = 0
- GOTO ext
- END IF
-
- NEXT
- ext:
- RETURN rslt
- end function
|