function msiRequestExec(urlRequest,func,param,method,funcFail,debug,parameters){
	try{
		var ev;
		if(method.toLowerCase()!="get" && method.toLowerCase()!="post"){
			if(debug=="on")
				alert("Invalid argument on Method(" +  method + ")");
			return;
		}
		if(param.toLowerCase()=="text")
			ev = func + "(responseText,"+parameters+")";
		else
			if(param.toLowerCase()=="xml")
				ev = func + "(responseXML,"+parameters+")";
			else{
				if(debug=="on")
					alert("Invalid argument on Param(" +  param + ")");
				return;
			}
			var req = new Request({
				method: method,
				url: urlRequest,
				onFailure: function(instance){
					if(debug=="on"){
						alert("Invalid Request: " + urlRequest);
						return;
					}
					try{
						if(funcFail!="null")
							eval(funcFail + "("+parameters+")");
					}catch(err){
						if(debug=="on"){
						  txt="There was an error on this Request.\n";
						  txt+=err.name + ": " + err.description + "\n";
						  txt+="Click OK to continue.\n\n";
						  alert(txt);
						}
					}
				},
				onException: function(headerName, value){
					if(funcFail!="null")
						eval(funcFail + "("+parameters+")");
				},
				onComplete: function(responseText, responseXML){
					try{
						if(responseXML!=undefined || responseText!=undefined)
							eval(ev);
					}catch(err){
						if(debug=="on"){
						  txt="There was an error on this Request.\n";
						  txt+=err.name + ": " + err.description + "\n";
						  txt+="Click OK to continue.\n\n";
						  alert(txt);
						}
					}
				}
			});
			req.send();
	}catch(err){
		if(funcFail!="null")
			eval(funcFail + "("+parameters+")");
		if(debug=="on"){
			txt="There was an error on this Request.\n";
			txt+=err.name + ": " + err.description + "\n";
			txt+="Click OK to continue.\n\n";
			alert(txt);
		}
	}
}
