// Função de Validação de Campos tipo Valor
function IsTaxa(Numero)
{
	
   var i;
   var aux;
   
   aux=Numero.split(",");
   
   if (IsNumber(Numero))
   {
   	return(false);
   }
   
   if (aux.length>=3)
   {
   	return(false);	
   }
   
   if(aux[1].length > 7)
   {
   	return(false); 
   }
	
	inStr=new String(aux[1])
	
	if(inStr.search("[.]")!=-1)
   {
   	return(false);
   }


  /* else if(Numero.length > 6)
   {
      i = Numero.length;
          while(i >= 3)
          {
             if(Numero.charAt(i) == "." && ((i-2) % 4) != 0)
                 return (false);
             i--;
          }
   }*/
	

		
   if (EValor(FormataValorSQL(Numero)))
      return(true);
   else
      return (false);
}

// Formata Campos tipo Valor para o formato SQL
function FormataValorSQL(pValor)
{
   var i;
   var pNovoValor;

   pNovoValor = "";

   
   if(pValor != "")
   {
      i = 0;
      while(i < pValor.length)
      {
      	if ((pValor.charAt(i) != ".") && (pValor.charAt(i) != ","))
      	{
      		if (i==0)
      			pNovoValor = pValor.charAt(i);
      		else
      			pNovoValor = pNovoValor + pValor.charAt(i);

      	}
      	i = i + 1;
      }

      pNovoValor = pNovoValor.substring(0,(pNovoValor.length - 2)) + "." + pNovoValor.substring((pNovoValor.length - 2),pNovoValor.length)
   }

   return (pNovoValor);
}
// Formata Campos tipo Valor para o formato digitado pelo usuário (9999,99)
function FormataValorDig(pValor)
{
   var i;
   var pNovoValor;

   pNovoValor = "";

   
   if(pValor != "")
   {
      i = 0;
      while(i < pValor.length)
      {
      	if ((pValor.charAt(i) != "."))
      	{
      		if (i==0)
      			pNovoValor = pValor.charAt(i);
      		else
      			pNovoValor = pNovoValor + pValor.charAt(i);

      	}
      	i = i + 1;
      }

   }

   return (pNovoValor);
}


// Formata valores em formato SQL para o Brasileiro.
function FormataValorBRA(pValor)
{
	var i;
	var j;
	var iDecimal;
	var iInteiro;
	var iNovoValor;

	iInteiro = pValor;
	iDecimal = '00';

	// Separa a parte Inteira da parte Decimal
	i = 0;
	for (i = 0; i < pValor.length; i++)
	{
		if (pValor.charAt(i) == ".")
		{
			iInteiro = pValor.substring(0,i);
			iDecimal = pValor.substring(i + 1,pValor.length);
		}
	}

	// Formata a parte decimal para duas casas no mínimo.
	if (iDecimal.length == 1)
	{
		iDecimal = iDecimal + "0";
	}

	// Formata a parte Inteira.
	iNovoValor = '';
	j = 0;
	for (i = iInteiro.length; i > 0; i--)
	{
		j = j + 1;
		if (j == 4)
		{
			iNovoValor = iInteiro.substring(i,i-1) + '.' + iNovoValor;
			j = 1;
		}
		else
		{
			iNovoValor = iInteiro.substring(i,i-1) + iNovoValor;
		}
	}

	// Agrega a Parte decimal ao novo valor
	iNovoValor = iNovoValor + "," + iDecimal;

	return (iNovoValor);
}

// Formata valores em moeda Brasileira para apresentação HTML.
function FormataValorMoedaBRA(pValor) {
	var sAux = new String(pValor);
   var iPosicaoPonto;
   var sParteDecimal = '     ';
   var sParteInteira = '';
   var iContador;
   var iContadorMilhar;

   // Preenche casas decimais com valor padrão caso pValor não venha com cassa decimais
   sParteDecimal = '00';
   // Localiza ponto separador de casas decimais
   iPosicaoPonto = sAux.indexOf(".");

   // Verifica se o ponto foi encontrado
   if (iPosicaoPonto != -1) {
      // Separa a parte decimal
      sParteDecimal = sAux.substring(iPosicaoPonto + 1, sAux.length);
      // Concatena um '0' para garantir que haverá pelo menos duas casas decimais
      sParteDecimal = sParteDecimal + '0';
      // Trunca as casa decimais em duas
      sParteDecimal = sParteDecimal.substring(0, 2);
      // Separa a parte inteira
      sAux = sAux.substring(0, iPosicaoPonto);
   };

   // Delimita as casa de milhar
   for (iContador = sAux.length, iContadorMilhar = 1; iContador >= 0; iContador--, iContadorMilhar++) {
      sParteInteira = sAux.charAt(iContador) + sParteInteira;
      // Acrescenta um ponto caso seja necessário
      if ((iContadorMilhar % 4 == 0) && iContador > 0) {
         sParteInteira = '.' + sParteInteira;
      };
   };

   return(sParteInteira + ',' + sParteDecimal);
};

// Verifica se uma variável só possui números.
function IsNumber(numero)
{
   var i;
   
   for (i = 0; i < numero.length; i++)
   {
      if (numero.charAt(i) < "0" || numero.charAt(i) > "9")
      {
	      return (false);
      }
   
   }
   return (true);
}

// Verifica se uma variável é um valor
function EValor(numero)
{
   var i;
   var nPonto = 0;
   
   for (i = 0; i < numero.length; i++)
   {
      if ((numero.charAt(i) < "0" || numero.charAt(i) > "9") && numero.charAt(i) != ".")
      {
	      return (false);
      } else {
         if (numero.charAt(i) == ".") nPonto++;
         if (nPonto > 1) return (false);
      }
   
   }
   return (true);
}


// Verifica se uma variável tem um separador de milhar
function TemSeparador(numero)
{
   var i;
   
   for (i = 0; i < numero.length; i++)
   {
      if (numero.charAt(i) == ",")
      {
	      return (true);
      }
   
   }
   return (false);
}

