All pastes #186473 Raw Edit

Anonymous

public text v1 · immutable
#186473 ·published 2006-09-30 00:12 UTC
rendered paste body
	function run_proc(byref cmd, proc_name, exec_type)
		on error resume next
		
		dim member, param
		
		cmd.activeConnection = ado
		cmd.commandText = proc_name
		cmd.commandType = adCmdStoredProc
		cmd.parameters.refresh
		
		for each member in cmd.parameters
			param = replace(member.name, "@", "")
			if trim( request(param) &"" ) <> "" then
				cmd.parameters(member.name) = request(param)
			else
				cmd.parameters(member.name) = null
			end if
		next
		
		cmd.execute , , exec_type
		
		if err.number <> 0 then
			run_proc = err.description
		else
			run_proc = true
		end if
	end function

	function run_proc_return(byref cmd, proc_name, exec_type, byref retval, ret_type)
		on error resume next
		
		dim member, param
		
		cmd.activeConnection = ado
		cmd.commandText = proc_name
		cmd.commandType = adCmdStoredProc
		cmd.parameters.refresh
		
		for each member in cmd.parameters
			param = replace(member.name, "@", "")
			if trim( request(param) &"" ) <> "" then
				cmd.parameters(member.name) = request(param)
			elseif param = "RETURN_VALUE" then
				cmd.parameters("@RETURN_VALUE").direction = adParamReturnValue
				cmd.parameters("@RETURN_VALUE").type = ret_type
			else
				cmd.parameters(member.name) = null
			end if
		next
		
		cmd.execute , , exec_type
		
		if err.number <> 0 then
			retval = empty
			run_proc_return = err.description
		else
			retval = cmd.parameters("@RETURN_VALUE")
			run_proc_return = true
		end if
	end function