//Cookies desde javascript
function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}



//Devuelve 'n' caracteres de la izquierda de la cadena 'str'
function Left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}
//Devuelve 'n' caracteres de la derecha de la cadena 'str'
function Right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}

//Dice si la expresión pasada es numérica
function IsNumeric(sText)
{
  	if (isNaN(parseFloat(sText))) 
    {
    	IsNumber = false;
    }
    else
	{
		IsNumber = true;
	}
   return IsNumber;   
}



/****************************************************************
nombre:trim
descripcion: simula el trim de vbscript
****************************************************************/
function trim(str)
{
   return str.replace(/^\s*|\s*$/g,"");
}


//Para controlar comillas en los campos de entrada
document.onkeydown = mykeyhandler;

/***********************************************
* Nombre: mykeyhandler
* Descripcion: Funcion que nos impide:
*			   - pulsar comillas sobre campos texto y textarea 
*			   - retroceder con tecla delete en campos solo lectura 	
************************************************/
function mykeyhandler() {	

	 var teclaAlt   = event.altKey;
	 var teclaCtrl  = event.ctrlKey;
	 var teclaShift = event.shiftKey;        
                  
	 //Si estamos en un objeto tipo texto         
	if (event.srcElement.type == "text" || event.srcElement.type == "textarea"){    
	
		//Impide retroceder con tecla delete en campos solo lectura
		if (event.srcElement.readOnly && window.event && window.event.keyCode == 8)
		{        	
				window.event.returnValue = false;
				window.event.keyCode = 0;
				return false;
		}		
	}      


}


//*************** FUNCIONES PARA CAMPOS FECHA *************************
//Variables
var campos_llenos;
	campos_llenos="";
var color_fechad;
var color_fechah;
var resultado_fecha="true";

/****************************************************************
nombre:Comparar_Fecha
descripcion: comprueba que fecha String1 es menor que fecha String2
****************************************************************/
function Comparar_Fecha(String1,String2) 
{
//String1 = document.form.fecha_desde.value;
//String2 = document.form.fecha_hasta.value;
// Si los dias y los meses llegan con un valor menor que 10 
// Se concatena un 0 a cada valor dentro del string 
if (String1.substring(1,2)=="/") {
String1="0"+String1
}
if (String1.substring(4,5)=="/"){
String1=String1.substring(0,3)+"0"+String1.substring(3,9)
}

if (String2.substring(1,2)=="/") {
String2="0"+String2
}
if (String2.substring(4,5)=="/"){
String2=String2.substring(0,3)+"0"+String2.substring(3,9)
}

dia1=String1.substring(0,2);
mes1=String1.substring(3,5);
anyo1=String1.substring(6,10);
dia2=String2.substring(0,2);
mes2=String2.substring(3,5);
anyo2=String2.substring(6,10);


if (dia1 == "08") // parseInt("08") == 10 base octogonal
dia1 = "8";
if (dia1 == '09') // parseInt("09") == 11 base octogonal
dia1 = "9";
if (mes1 == "08") // parseInt("08") == 10 base octogonal
mes1 = "8";
if (mes1 == "09") // parseInt("09") == 11 base octogonal
mes1 = "9";
if (dia2 == "08") // parseInt("08") == 10 base octogonal
dia2 = "8";
if (dia2 == '09') // parseInt("09") == 11 base octogonal
dia2 = "9";
if (mes2 == "08") // parseInt("08") == 10 base octogonal
mes2 = "8";
if (mes2 == "09") // parseInt("09") == 11 base octogonal
mes2 = "9";

dia1=parseInt(dia1);
dia2=parseInt(dia2);
mes1=parseInt(mes1);
mes2=parseInt(mes2);
anyo1=parseInt(anyo1);
anyo2=parseInt(anyo2);

if (anyo1>anyo2)
{
return false;
}

if ((anyo1==anyo2) && (mes1>mes2))
{
return false;
}
if ((anyo1==anyo2) && (mes1==mes2) && (dia1>dia2))
{
return false;
} 

return true;
}
/***********************************************
* Nombre: CAMPO_FECHA
* Descripcion: Permite escribir en el campo fecha unicamente valores númericos
*				con un máximo de 10 caracteres.
* Parametros: --> nombre: Nombre del campo fecha	
************************************************/
function CAMPO_FECHA(nombre){

	//Permite unicamente escribir numeros y maxima longitud 10 caracteres
	if ((event.keyCode<"48")||(event.keyCode>"57")){
	event.returnValue = false;
	}
	else{
	texto =nombre.value
	
		if(texto.length==10){
			
			event.returnValue = false;
		}
	event.returnValue = true;
	}
}

/* Nombre: PONER_BARRAS
   Descripcion: Esta función se encarga de poner barras / automaticamente en los campos fecha 
   Parametros: nombreCampo -- Se pasa mediante this el nombre el campo fecha
*/
function PONER_BARRAS(nombreCampo){
	texto_anterior=nombreCampo.value;
	texto ="";

// Comprobamos barras cuando no pulsamos las teclas borrar o suprimir
if(event.keyCode!="8" &&
   event.keyCode!="46"){
	
	if (texto_anterior.length>1){
		if ((texto_anterior.charAt(2)!="/")&&
		    (texto_anterior.charAt(1)!="/")){
			
			//Poner la barra en el caracter tercero
			dia=texto_anterior.substring(0,2);
			resto=texto_anterior.substring(2,texto_anterior.length);
			texto=dia+"/"+resto;
			nombreCampo.value=texto;
		}
	}

	if(texto_anterior.length>4){
		if((texto_anterior.charAt(5)!="/")&&
		   (texto_anterior.charAt(4)!="/")&&
		   (texto_anterior.charAt(3)!="/"))
		   {
		   
   			//Poner la barra en el caracter sexto
			
			diames=texto_anterior.substring(0,5);
			resto=texto_anterior.substring(5,texto_anterior.length);
			texto=diames+"/"+resto;
			nombreCampo.value=texto;
		   
		   }
		   
		   if(texto_anterior.charAt(2)!="/" &&
		      texto_anterior.charAt(1)!="/" &&
			  texto_anterior.charAt(0)!="/"){
			  dia=texto.substring(0,2)+"/";
			  resto=texto.substring(3,texto.length);
			  texto=dia+resto;
			  nombreCampo.value=texto;
			  }
	}
	
}

}



var resultado_fecha="true";

/* Nombre: VALIDAR_FECHA
   Parametros: nombreCampo -- Se pasa mediante this el nombre el campo fecha
   Descripción: Esta función se encarga de validar si la fecha introducida existe
   Si las fechas son incorrectas al abandonar el campo aparecen alert.	
*/
function VALIDAR_FECHA(nombreCampo){


//Inicializacion de variables

	texto=nombreCampo.value;
	
	dato_anio=texto.substring(6,10);
	numanio=dato_anio/1;
	
	dato_mes=texto.substring(3,5);
	nummes=dato_mes/1;
	
	dato_dia=texto.substring(0,2);
	numdia=dato_dia/1;

	if((numanio<1900)&&(numanio!=0))
	{
		alert('El a'+String.fromCharCode('241')+'o es demasiado peque'+String.fromCharCode('241')+'o')
	}
	else
	{
		//Control del numero de dias por mes y del numero de meses
		
		if(texto.length==10){
			if(dato_mes=="01" ||
			   dato_mes=="03" ||
			   dato_mes=="05" ||
			   dato_mes=="07" ||
			   dato_mes=="08" ||
			   dato_mes=="10" ||
			   dato_mes=="12"){
		   
				   if(numdia>31){
				   		alert('El mes introducido no puede tener m'+String.fromCharCode('225')+'s de 31 d'+String.fromCharCode('237')+'as');
						FECHA_INCORRECTA(nombreCampo);
				   }
				   else if(numdia==0)
				   {
					alert('El mes introducido no puede tener 0 d'+String.fromCharCode('237')+'as');
					FECHA_INCORRECTA(nombreCampo);
				   }
				   else{
				   		FECHA_CORRECTA(nombreCampo);
				   }
			}//Fin meses de 31 dias
		
			else{
				if(dato_mes=="02"){
					var dato_ano=texto.substring(8,texto.length);
					var num_ano=dato_ano/1;
				
					if(num_ano%4==0){
						if(numdia>29){
							alert('El a'+String.fromCharCode('241')+'o introducido no es bisiesto');
							FECHA_INCORRECTA(nombreCampo);
						}
						else{
							FECHA_CORRECTA(nombreCampo);
						}
					}
				else{
						if(numdia>28){
							alert('El a'+String.fromCharCode('241')+'o introducido no es bisiesto');
							FECHA_INCORRECTA(nombreCampo);
						}	
						else{
							FECHA_CORRECTA(nombreCampo);
						}
							
					}//Fin else anno no bisiesto
				}//Fin mes
			
				else{
					if(dato_mes=="04" ||
					   dato_mes=="06" ||
					   dato_mes=="09" ||
					   dato_mes=="11"){
					   
					   if(numdia>30){
					   		alert('El mes introducido no puede tener m'+String.fromCharCode('225')+'s de 30 d'+String.fromCharCode('237')+'as');
							FECHA_INCORRECTA(nombreCampo);
					   }
					   else if(numdia==0)
					   {
						alert('El mes introducido no puede tener 0 d'+String.fromCharCode('237')+'as');
							FECHA_INCORRECTA(nombreCampo);
				   	   }	
					   else{
					   		FECHA_CORRECTA(nombreCampo);		
					   }
					}
				
					else{
						if(nummes>12){
							alert('El a'+String.fromCharCode('241')+'o no puede tener m'+String.fromCharCode('225')+'s de 12 meses');
							FECHA_INCORRECTA(nombreCampo);
						}
		              	        	else if(nummes==0)
						{
							alert('El a'+String.fromCharCode('241')+'o no puede tener 0 meses');
							FECHA_INCORRECTA(nombreCampo);
						}

						else{
							FECHA_CORRECTA(nombreCampo);		
						}
					}
				}
			}
		}//Fin if si texto 10
		else{
			if((texto.length<10)&&(texto.length>0)){
					alert('Formato de fecha no v'+String.fromCharCode('225')+'lido, debe ser: dd/mm/aaaa');
					FECHA_INCORRECTA(nombreCampo);
			}
		}
	}
	
}//Fin funcion


/* Nombre: VALIDAR_FECHA_CORTA
   Parametros: nombreCampo -- Se pasa mediante this el nombre el campo fecha
   Descripción: Esta función se encarga de validar si la fecha introducida existe
   Si las fechas son incorrectas al abandonar el campo aparecen alert.	
*/
function VALIDAR_FECHA_CORTA(nombreCampo){


//Inicializacion de variables

	texto=nombreCampo.value;
	
	dato_anio=texto.substring(6,10);
	numanio=dato_anio/1;
	
	dato_mes=texto.substring(3,5);
	nummes=dato_mes/1;
	
	dato_dia=texto.substring(0,2);
	numdia=dato_dia/1;

	if((numanio<0)&&(numanio!=0))
	{
		alert('El a'+String.fromCharCode('241')+'o es demasiado peque'+String.fromCharCode('241')+'o')
	}
	else
	{
		//Control del numero de dias por mes y del numero de meses
		
		if(texto.length==8){
			if(dato_mes=="01" ||
			   dato_mes=="03" ||
			   dato_mes=="05" ||
			   dato_mes=="07" ||
			   dato_mes=="08" ||
			   dato_mes=="10" ||
			   dato_mes=="12"){
		   
				   if(numdia>31){
				   		alert('El mes introducido no puede tener m'+String.fromCharCode('225')+'s de 31 d'+String.fromCharCode('237')+'as');
						FECHA_INCORRECTA(nombreCampo);
				   }
				   else if(numdia==0)
				   {
					alert('El mes introducido no puede tener 0 d'+String.fromCharCode('237')+'as');
					FECHA_INCORRECTA(nombreCampo);
				   }
				   else{
				   		FECHA_CORRECTA(nombreCampo);
				   }
			}//Fin meses de 31 dias
		
			else{
				if(dato_mes=="02"){
					var dato_ano=texto.substring(6,texto.length);
					var num_ano=dato_ano/1;
				
					if(num_ano%4==0){
						if(numdia>29){
							alert('El a'+String.fromCharCode('241')+'o introducido no es bisiesto');
							FECHA_INCORRECTA(nombreCampo);
						}
						else{
							FECHA_CORRECTA(nombreCampo);
						}
					}
				else{
						if(numdia>28){
							alert('El a'+String.fromCharCode('241')+'o introducido no es bisiesto');
							FECHA_INCORRECTA(nombreCampo);
						}	
						else{
							FECHA_CORRECTA(nombreCampo);
						}
							
					}//Fin else anno no bisiesto
				}//Fin mes
			
				else{
					if(dato_mes=="04" ||
					   dato_mes=="06" ||
					   dato_mes=="09" ||
					   dato_mes=="11"){
					   
					   if(numdia>30){
					   		alert('El mes introducido no puede tener m'+String.fromCharCode('225')+'s de 30 d'+String.fromCharCode('237')+'as');
							FECHA_INCORRECTA(nombreCampo);
					   }
					   else if(numdia==0)
					   {
						alert('El mes introducido no puede tener 0 d'+String.fromCharCode('237')+'as');
							FECHA_INCORRECTA(nombreCampo);
				   	   }	
					   else{
					   		FECHA_CORRECTA(nombreCampo);		
					   }
					}
				
					else{
						if(nummes>12){
							alert('El a'+String.fromCharCode('241')+'o no puede tener m'+String.fromCharCode('225')+'s de 12 meses');
							FECHA_INCORRECTA(nombreCampo);
						}
		              	        	else if(nummes==0)
						{
							alert('El a'+String.fromCharCode('241')+'o no puede tener 0 meses');
							FECHA_INCORRECTA(nombreCampo);
						}

						else{
							FECHA_CORRECTA(nombreCampo);		
						}
					}
				}
			}
		}//Fin if si texto 8
		else{
			if((texto.length<8)&&(texto.length>0)){
					alert('Formato de fecha no v'+String.fromCharCode('225')+'lido, debe ser: dd/mm/aa');
					FECHA_INCORRECTA(nombreCampo);
			}
		}
	}
	
}//Fin funcion


/***********************************************
* Nombre: FECHA_CORRECTA
* Descripcion: Si la fecha es correcta se puede salir del campo	
* Parametros: nombreCampo --> Nombre del campo fecha
************************************************/
function FECHA_CORRECTA(nombreCampo){
	resultado_fecha="true";
	return resultado_fecha;
}

/***********************************************
* Nombre: FECHA_INCORRECTA
* Descripcion: Si la fecha no es correcta no se puede salir del campo	
* Parametros: nombreCampo --> Nombre del campo fecha
************************************************/
function FECHA_INCORRECTA(nombreCampo){
	nombreCampo.focus();
	resultado_fecha="false";
	return resultado_fecha;
}
//***********************************************************************
//	FIN FUNCIONES FECHA
//**********************************************************************


//***********************************************************************
//	Nombre: control_numerico 
//  Descripcion: Sólo permite pulsar texto númerico
//**********************************************************************
function control_numerico(){
	
	if ((event.keyCode<"48")||(event.keyCode>"57")) 
		{
			return false;
		}
		else 
		{
			return true;
		}
}


//***********************************************************************
//	Nombre: somenteMaisculas 
//  Descripcion: Trasformar texto en mayusculas
//**********************************************************************
function somenteMaiusculas()
{
	if ((window.event.keyCode < 65 || window.event.keyCode > 90) &&
		(window.event.keyCode < 97 || window.event.keyCode > 122) &&
		(window.event.keyCode < 48 || window.event.keyCode > 57) &&
		window.event.keyCode != 32)
		
		return false;

	if (window.event.keyCode > 96 && window.event.keyCode < 123)
		window.event.keyCode -= 32;

	return true;
}


//*****************************************
//**** FUNCIONES CAMPO IMPORTE ************
// Campo numérico cuyos decimales son puntos
// LLamada en el campo: onblur="this.value=FormatCurrency(this.value);" 
//						onKeyPress="return comprobarDecimal(this)"
//*****************************************

function FormatCurrency(num)
{       
		if(num=="")
		{return num}
		var sVal='';
        var Decimal=',';
		var entero;
		var fraccion;
		if (num.lastIndexOf(Decimal) < 0) { num = num + ',00'; }
		entero = num.substring(0, num.lastIndexOf(Decimal))		
        fraccion = num.substring(num.lastIndexOf(Decimal)+1, num.length)
		entero = FormatClean(entero)
		sVal = FormatEntero(entero,'.') + "," + FormatCents(fraccion); 
        return sVal;
}

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+'.'+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + num + ',' + cents);
}


function FormatClean(num)
{
     var sVal='';
     var nVal = num.length;
     var sChar='';
     
   try
   {
       for(i=0;i<nVal;i++)
      {
         sChar = num.charAt(i);
         nChar = sChar.charCodeAt(0);
         if ((nChar >=48) && (nChar <=57))  { sVal += num.charAt(i);   }
      }
   }
    catch (exception) { AlertError("Format Clean",e); }
    return sVal;
}

function FormatCents(amount)
{
     var cents = '';
      try
      {
           if (amount.length == 1) { return amount + '0'}
		   if (amount.length == 2) { return amount}
           
           cents =  amount.substring(0,3);
		   cents = cents/1;
		   cents = Math.round(cents/10);
		   if (cents < 10) { return '0' + cents} 
      }
      catch (exception) { AlertError("Format Cents",e); }
      return cents;
}

function FormatEntero(amount,CommaDelimiter)
{
   try 
   {
        amount = parseInt(amount);
        var samount = new String(amount);

        if (samount.length < 3) { return samount; }  
        //samount =  samount.substring(0,samount.length -2);
        
        for (var i = 0; i < Math.floor((samount.length-(1+i))/3); i++)
        {
           samount = samount.substring(0,samount.length-(4*i+3)) + CommaDelimiter + samount.substring(samount.length-(4*i+3));
        }
  }
    catch (exception) { AlertError("Format Comma",e); }
    return samount;
}

function comprobarDecimal(campo)
{
	var cadena = campo.value ;
	if ((event.keyCode<"48" || event.keyCode>"57") && (event.keyCode!="44")) 
	{	
		return false;
	}
	else 
	{
		if (event.keyCode == "44")
		{
			var cadena = campo.value ;
			var una_coma = cadena.indexOf(",");	
				if (una_coma>=0)
				{
					return false;
				}
				else
				{
					return true;
				}
				
		}
		else
		{	
			return true;
		}
	}
}
// Fin



//***********************************************************************
//	Nombre: rtrim 
//  Descripcion: Función que quita los espacios en blanco a la derecha de una cadena
//  Parametros: --> cadena: Cadena que se transforma
//**********************************************************************
function rtrim (cadena)
{
     var uu = cadena.charAt (cadena.length -1)
     var posicion= cadena.length -1     
     while (uu==" " && posicion>=0)
        {
           posicion--
           uu = cadena.charAt (posicion)
        }
     var salida =cadena.substr (0 ,posicion + 1) 
     return cadena.substr ( 0 , posicion + 1 )
}


//***********************************************************************
//	Nombre: EliminaEspacio 
//  Descripcion: Función que quita los 4 espacios en blanco a la izquierda
//  Parametros: --> cadena: Cadena que se transforma
//**********************************************************************
function EliminaEspacio (cadena)
{	

	if(cadena.indexOf("-")==4)
	{
	 	var salida = cadena.substr (5,cadena.length) 
	}
	else if (cadena.indexOf("-")==8)
	{
		var salida = cadena.substr (9,cadena.length) 
	}
	else
	{
		var	salida=cadena
	}
     return salida
}
//***********************************************************************
//	Nombre: ltrim 
//  Descripcion: Función que quita los espacios en blanco a la izquierda de una cadena
//  Parametros: --> cadena: Cadena que se transforma
//**********************************************************************
function ltrim (cadena)
{
     var uu = cadena.charAt (0)
     var posicion= 0
     while (uu==" " && posicion>=0)
        {
           posicion++
           uu = cadena.charAt (posicion)
        }
     var salida =cadena.substr (0 ,posicion + 1) 
     return salida
}


// Nombre: MaxlongitudCampo
// Descripcion: Función que no permite escribir en un campo un numero máximo de caracteres
// Parametros:
// 			valor(this.value) valor que contiene el campo
// 			long - numero que nos indica el valor máximo de caracteres permitido
function MaxlongitudCampo(valor, long)
{
	if (valor.length >= long)
		return false;
	else
		return true;
}

/****************************************************************
nombre:rdSeleccionado
descripcion: Recorre un array de radiobutton y nos devuelve el seleccionado
parametros: radio-->Objeto radiobutton que queremos recorrer(this)
			nombre-->Nombre del radiobutton
			valor-->Parametro de salida, item seleccionado
			valor=0 primer radiobutton seleccionado
			valor=-1 unico radiobutton checkeado 
			valor=-2 no exite ningun radiobutton checkeado 
****************************************************************/
function rdSeleccionado(nombre)
{
var valor;
valor = -2/1;
var lon = nombre.length
	//Si solo existe un radiobutton (lon no se un numero)
	if (isNaN(lon))
	{
		valor = 0;
	}
	else
	{
		//Recorremos todos los radiobutton para ver cual esta checkeado
		for (i=0; i<lon; i++)
		{
			if(nombre[i].checked == true)
			{
				valor = i;
			}
		}
	}
	return valor;
}


/****************************************************************
nombre:escribirSeleccion(campo)
descripcion: El valor seleccionado en la lista de una busqueda auxiliar se escribe
			en el campo de la página padre
parametros: campo--> Nombre del campo donde se deposita el item seleccionado del listado
****************************************************************/
function escribirSeleccion(campo)
{
	eval("window.opener.document.all."+campo+".value = document.all.hdnNombreSel.value");
	window.close();
}


/****************************************************************
nombre:devolverNumero(cadena)
descripcion: devuelve un numero para poder operar con él
parametros: campo--> string de entrada
****************************************************************/
function devolverNumero(cadena)
{
	//quitamos los puntos
	var i = cadena.indexOf("."); 
	while(i!=-1) 
	{ 
   		millares = cadena.substring(0, cadena.indexOf("."))
		resto = cadena.substring(cadena.indexOf(".")+1,cadena.length) 
		cadena = millares + resto
   		i = cadena.indexOf(".")
	} 
	//Cambiamos la coma pr el punto
	if (cadena.indexOf(",") != -1)
	{
		entero = cadena.substring(0, cadena.indexOf(","))
		decimal = cadena.substring(cadena.indexOf(",")+1,cadena.length) 
		cadena = entero + "." + decimal
	}
	
	return cadena

}
/****************************************************************
nombre:devolverString(numero)
descripcion: devuelve un string para mostrar el numero en pantalla
parametros: campo--> numero de entrada
****************************************************************/
function devolverString(numero)
{
	numero=new String(numero)
	if (numero.indexOf(".") != -1)
	{
		entero = numero.substring(0, numero.indexOf("."))
		decimal = numero.substring(numero.indexOf(".")+1,numero.length) 
		numero = entero + "," + decimal
	}
	return FormatCurrency(numero)
}	

function ModoConsulta()
{
	for(i=0; i<document.all.length; i++) 
	{
		if(document.all(i).tagName=="INPUT" || document.all(i).tagName=="SELECT" ||
		 document.all(i).tagName=="BUTTON" || document.all(i).tagName=="TEXTAREA")
		{
			//Desabilita todos los botones menos el boton salir
			if (document.all(i).name != "btnSalir")
			{
				document.all(i).disabled=true
			}
			//Tampoco deshabilitamos los hidden
			if(document.all(i).type == "hidden")
			{
				document.all(i).disabled=false
			}
		}
	}
}
