$PBExportHeader$f_workremind.srf global type f_workremind from function_object end type forward prototypes global function integer f_workremind (long arg_scid, long arg_funcid, long arg_powerid, long arg_storageid, string arg_powername, long arg_qty, boolean arg_ifcommit, boolean arg_ifreset) end prototypes global function integer f_workremind (long arg_scid, long arg_funcid, long arg_powerid, long arg_storageid, string arg_powername, long arg_qty, boolean arg_ifcommit, boolean arg_ifreset);Int rslt = 1 IF arg_ifreset THEN UPDATE sys_workremind SET powername = :arg_powername, qty = :arg_qty WHERE scid = :arg_scid AND storageid = :arg_storageid and funcid = :arg_funcid; IF sqlca.SQLCode = 0 THEN IF sqlca.SQLNRows = 0 THEN INSERT INTO sys_workremind (scid,funcid,powerid,storageid,powername,qty) Values(:arg_scid,:arg_funcid,:arg_powerid,:arg_storageid,:arg_powername,:arg_qty); IF sqlca.SQLCode <> 0 THEN rslt = 0 GOTO ext END IF END IF ELSE rslt = 0 GOTO ext END IF ELSE UPDATE sys_workremind SET qty = qty + :arg_qty WHERE scid = :arg_scid AND funcid = :arg_funcid AND storageid = :arg_storageid; IF sqlca.SQLCode <> 0 THEN rslt = 0 GOTO ext END IF END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF rslt = 1 AND arg_ifcommit THEN COMMIT; END IF RETURN rslt end function