$PBExportHeader$f_aps_mtrl_will_add.srf global type f_aps_mtrl_will_add from function_object end type forward prototypes global function integer f_aps_mtrl_will_add (long arg_scid, long arg_mtrlid, string arg_status, string arg_woodcode, string arg_pcode, datetime arg_rqdate, decimal arg_qty, integer arg_col, ref string arg_msg, transaction arg_sqlca, boolean arg_if_commit) end prototypes global function integer f_aps_mtrl_will_add (long arg_scid, long arg_mtrlid, string arg_status, string arg_woodcode, string arg_pcode, datetime arg_rqdate, decimal arg_qty, integer arg_col, ref string arg_msg, transaction arg_sqlca, boolean arg_if_commit);// --col 定义 // --1.taskqty 订单需求数 // --2.rqqty 生产需求数 // --3.wfjgrqqty 外协需求数 // --4.buytaskqty 采购未到货数 // --5.ordermlqty 生产未完成数 // --6.wfjgqty 外协未到货数 // --7.not_zlqty 生产计划未排指令数 // --8.rqbuyqty 申购未采购数 // --9.rqbuyqty_notaudit 未审申购数 Int rslt = 1 IF sys_option_if_newmrp = 0 THEN rslt = 1 GOTO ext END IF DECLARE pro1 PROCEDURE FOR dt_sys_add_aps_mtrl_will scid = :arg_scid, mtrlid = :arg_mtrlid, status = :arg_status, woodcode = :arg_woodcode, pcode = :arg_pcode, rqdate = :arg_rqdate, qty = :arg_qty, col = :arg_col Using arg_sqlca ; EXECUTE pro1; IF arg_sqlca.SQLErrText <> '' THEN rslt = 0 arg_msg = '更新物料监控表失败,' + arg_sqlca.SQLErrText GOTO ext END IF CLOSE pro1; ext: IF rslt = 0 THEN ROLLBACK Using arg_sqlca; ELSEIF rslt = 1 And arg_if_commit THEN COMMIT Using arg_sqlca; END IF RETURN rslt end function