﻿//DECLARA VARIÁVEIS PARA BROWSER'S
var isNav4, isNav, isIE;

//VERIFICA SE O BROWSER É ACIMA DA VERSÃO 4 IE OU OUTROS.
if(parseInt(navigator.appVersion.charAt(0)) >= 4){
	isNav	= (navigator.appName=="Netscape") ? true : false;
	isIE	= (navigator.appName.indexOf("Microsoft") != -1) ? true : false;
}

//VERIFICA SE O BROWSER É VERSÃO 4 DO NETSCAPE.
if(navigator.appName=="Netscape"){
	isNav4 = (parseInt(navigator.appVersion.charAt(0))==4);
}

//VERIFICA SE O VALOR DIGITADO É UM NÚMERO
function fctNumero(e){
	var chaveTec = (isIE) ? event.keyCode : e.which;
	if (((chaveTec<48)||(chaveTec>57)) && (chaveTec!=13) && (chaveTec!="0") && (chaveTec!=8)){
		if(isIE){
			event.keyCode = 0;
		}
		return false;
	}
	return true;
}

String.prototype.mask = function(m) {
    var m, l = (m = m.split("")).length, s = this.split(""), j = 0, h = "";
    for(var i = -1; ++i < l;)
        if(m[i] != "#"){
            if(m[i] == "\\" && (h += m[++i])) continue;
            h += m[i];
            i + 1 == l && (s[j - 1] += h, h = "");
        }
        else{
            if(!s[j] && !(h = "")) break;
            (s[j] = h + s[j++]) && (h = "");
        }
    return s.join("") + h;
};

function mask(_mask, val) 
{ 
  var i, mki; 
  var aux= ''; 
  
  for(i=mki=0; i < val.length; i++, mki++) 
  { 
    if(_mask.charAt(mki)=='' || _mask.charAt(mki)=='#' || _mask.charAt(i)==val.charAt(i)) 
    { 
        aux+=val.charAt(i); 
    } 
    else 
    { 
        aux+=_mask.charAt(mki)+ val.charAt(i); 
        mki++; 
    } 
  } 
  return aux; 
} 

//General mask type
function maskEvent(field, _mask, event) { 
  var key =''; 
  var aux=''; 
  var len=0; 
  var i=0; 
  var aux2=''; 
  var strCheck = '0123456789'; 
  var rcode = (window.Event) ? event.which : event.keyCode; 
  
  //ie8 gambi
  if(rcode == '' || rcode == null)
    rcode = event.keyCode;
  
  
  if(rcode == 13) 
  { 
    event.returnValue = true;
    return true; //Enter
  } 
  key=String.fromCharCode(rcode); //Get key value from key code 
  if(strCheck.indexOf(key)==-1) 
  { 
    event.returnValue = false;
    return false; //Not a valid key
  }
  aux=field.value; 
  aux2=_mask; 
  if(aux.length < aux2.length) 
  { 
    aux=field.value+key; 
    aux=mask(_mask,aux); 
    field.value=aux; 
  } 
  else if(aux.length >= aux2.length)
  {
    var selectedText = document.selection.createRange().text;
    //alert(selectedText.length);
    if(selectedText.length == aux.length)
    {
        document.selection.clear();
        field.value='';
        aux=field.value+key; 
        aux=mask(_mask,aux); 
        field.value=aux; 
    }
  }
  event.returnValue = false;
  return false;
}
//MaskType.Moeda
function currencyFormat(fld, milSep, decSep, MaxLen, e) { 
	if (fld.readOnly){
	    event.returnValue = false;
		return false;
	}

  var sep = 0; 
  var key = ''; 
  var i = j = 0; 
  var len = len2 = 0; 
  var strCheck = '0123456789'; 
  var aux = aux2 = ''; 
  var whichCode = (window.Event) ? e.which : e.keyCode; 
  
    //ie8 gambi
  if(whichCode == '' || whichCode == null)
    whichCode = e.keyCode;
  
  if (whichCode == 13) { 
      event.returnValue = true;
      return true; // Enter 
  } 
  key = String.fromCharCode(whichCode); // Get key value from key code 
  if (strCheck.indexOf(key) == -1) { 
      event.returnValue = false;
      return false; // Not a valid key 
  } 
  len = fld.value.length;
  if(len == MaxLen)
  {
      event.returnValue = false;
	  return false;
  }
  for(i = 0; i < len; i++) { 
  if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)){ 
  break; 
  } 
  } 
  aux = ''; 
  for(; i < len; i++) { 
  if (strCheck.indexOf(fld.value.charAt(i))!=-1){ 
  aux += fld.value.charAt(i); 
  } 
  } 
  aux += key; 
  len = aux.length; 
  if (len == 0) { 
  fld.value = ''; 
  } else if (len == 1) { 
  fld.value = '0'+ decSep + '0' + aux; 
  } else if (len == 2) { 
  fld.value = '0'+ decSep + aux; 
  } else if (len > 2) { 
  aux2 = ''; 
  for (j = 0, i = len - 3; i >= 0; i--) { 
  if (j == 3) { 
  aux2 += milSep; 
  j = 0; 
  } 
  aux2 += aux.charAt(i); 
  j++; 
  } 
  fld.value = ''; 
  len2 = aux2.length; 
  for (i = len2 - 1; i >= 0; i--) { 
  fld.value += aux2.charAt(i); 
  } 
  fld.value += decSep + aux.substr(len - 2, len); 
  } 
  
  event.returnValue = false;
  return false; 
}

function currencyFormatNegativo(fld, milSep, decSep, MaxLen, e) 
{ 
	if (fld.readOnly)
	{
		return false;
	}

    var key = '';
    var neg = '';
    var i = j = 0; 
    var len = len2 = 0; 
    var strCheck = '0123456789'; 
    var aux = aux2 = '';
    
    var whichCode = (window.Event) ? e.which : e.keyCode; 
    
        //ie8 gambi
    if(whichCode == '' || whichCode == null)
    whichCode = e.keyCode;
    
    //verifica se é um enter
    if (whichCode == 13) 
    { 
        return true; 
    }
    
    //captura e tranforma o código ascii em simbolo
    key = String.fromCharCode(whichCode); 
       
    //verifica se o sinal de negativo foi o primeiro digito
    //e se o que foi digitado está dentro do strcheck
    if (key == '-' && fld.value.length == 0)
    {
        return true;
    }
    else if (key == '-' && fld.value.length > 0)
    {
        return false;
    }
    else if (strCheck.indexOf(key) == -1)
    { 
        return false; 
    }

    //Verifica se o tamanho já foi todo ocupado
    len = fld.value.length;
    if(len == MaxLen)
    {
	    return false;
    }
    
    //verifica os zeros e virgula à esquerda
    //e posiciona os numero para acrscentar o digitado
    for(i = 0; i < len; i++) 
    { 
        if (fld.value.charAt(i) == '-')
        {
            neg = fld.value.charAt(i);
            continue;
        }
        else if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep))
        { 
            break; 
        } 
    } 
       
    for(; i < len; i++) 
    { 
        if (strCheck.indexOf(fld.value.charAt(i))!= -1)
        { 
            aux += fld.value.charAt(i); 
        } 
    } 
    
    aux += key; 
    len = aux.length; 
    
    if (len == 0) 
    { 
        fld.value = ''; 
    } 
    else if (len == 1) 
    { 
        fld.value = neg + '0' + decSep + '0' + aux;
    }
    else if (len == 2)
    { 
        fld.value = neg + '0' + decSep + aux; 
    } 
    else if (len > 2) 
    { 
        aux2 = '';
            
        for (j = 0, i = len - 3; i >= 0; i--) 
        { 
            if (j == 3) 
            { 
                aux2 += milSep; 
                j = 0; 
            } 
            
            aux2 += aux.charAt(i); 
            j++; 
        }
                    
        fld.value = neg;  
        len2 = aux2.length; 
        
        for (i = len2 - 1; i >= 0; i--) 
        { 
            fld.value += aux2.charAt(i); 
        }
        
        fld.value += decSep + aux.substr(len - 2, len);
    } 
    return false; 
}

function currencyFormatCustom(fld, milSep, decSep, MaxLen, e) 
{ 
	if (fld.readOnly){
		return false;
	}

	var sep = 0; 
	var key = ''; 
	var i = j = 0; 
	var len = len2 = 0; 
	var strCheck = '0123456789'; 
	var aux = aux2 = ''; 
	var whichCode = (window.Event) ? e.which : e.keyCode; 
	
	//ie8 gambi
    if(whichCode == '' || whichCode == null)
    whichCode = e.keyCode;

	if (whichCode == 13) { 
		return true; // Enter 
	} 

	if (whichCode == 9) { 
		return true; // Tab 
	} 
	
	key = String.fromCharCode(whichCode); // Get key value from key code 
	if (strCheck.indexOf(key) == -1) { 
		return false; // Not a valid key 
	} 
	
	len = fld.value.length;
	if(len == MaxLen){
	  return false;
	}
	
	for(i = 0; i < len; i++) { //for tamanho
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)){ 
			break; 
		} 
	} 
	
	aux = ''; 
	
	for(; i < len; i++) { 
		if (strCheck.indexOf(fld.value.charAt(i))!=-1){ 
			aux += fld.value.charAt(i); 
		} 
	} 
	
	aux += key; 
	len = aux.length; 
	
	if (len == 0) { 
		fld.value = ''; 
	} else if (len == 1) { 
		fld.value = '0'+ decSep + '0' + aux; 
	} else if (len == 2) { 
		fld.value = '0'+ decSep + aux; 
	} else if (len > 2) { 
		aux2 = ''; 
		
		for (j = 0, i = len - 3; i >= 0; i--) { 
			if (j == 3) { 
				aux2 += milSep; 
				j = 0; 
			} 
		
			aux2 += aux.charAt(i); 
			j++; 
		} 
		
		fld.value = ''; 
		len2 = aux2.length; 
		
		for (i = len2 - 1; i >= 0; i--) { 
			fld.value += aux2.charAt(i); 
		} 
		
		fld.value += decSep + aux.substr(len - 2, len); 
	}
	
	fld.value = fld.value.substr(0, fld.value.length - 1);
	
//	alert(key + " - " + fld.value);

	return true; 
}

function ToUpperText(textbox)
{
	textbox.value = textbox.value.toUpperCase()
	return true;
}

function onlyNumberCustom(field, Maxlen, event) 
{ 
	if (field.readOnly)
	{
	    event.returnValue = false;
		return false;
	}

	var key = ''; 
	var len = 0;
	var strCheck = '0123456789';
	var rcode = (window.Event) ? event.which : event.keyCode;
	
	  //ie8 gambi
  if(rcode == '' || rcode == null)
    rcode = event.keyCode;

	if (rcode == 13) { 
	    event.returnValue = true;
		return true; //Enter
	}
	
	len = field.value.length;
	if (len == Maxlen){
	    event.returnValue = false;
		return false; //tamanho
	}
	
	key = String.fromCharCode(rcode); //Get key value from key code 
	if (strCheck.indexOf(key) == -1) { 
	    event.returnValue = false;
		return false; //Not a valid key 
	}
	
	//field.value += key; 
	event.returnValue = true;
	return true; 
}
function numdias(mes,ano) {
  if((mes<8 && mes%2==1) || (mes>7 && mes%2==0)) return 31;
  if(mes!=2) return 30;
  if(ano%4==0) return 29;
  return 28;
}

function somadias(data, dias) {
var control =  document.getElementById('ctl00_ContentPlaceHolder1_TC01_Tb01_txtLimitePedido');
 data=data.split('/');
 diafuturo=eval(data[0])+dias;
 mes=parseFloat(data[1]);
 ano=parseFloat(data[2]);
 while(diafuturo>numdias(mes,ano)) {
     diafuturo-=numdias(mes,ano);
     mes++;
     if(mes>12) {
         mes=1;
         ano++;
     }
 }

 if(diafuturo<10) diafuturo='0'+diafuturo;
 if(mes<10) mes='0'+mes;

 control.value = diafuturo+"/"+mes+"/"+ano;
}

function AbreDiv() {
    var control =  document.getElementById('ctl00_ContentPlaceHolder1_MPE1');
    control.style.display == 'none';    
}
function fechaDiv() {
    var control =  document.getElementById('ctl00_ContentPlaceHolder1_MPE1');
    control.style.display == 'Block';    
}
function ImgClik() {
    var control =  document.getElementById('ctl00_ContentPlaceHolder1_imgClick');
    if(control.value==true)
        control.value = false;
    else
        control.value = true;
}
function chkClick() {
    var control =  document.getElementById('ctl00_ContentPlaceHolder1_chkClick');
    if(control.value==true)
        control.value = false;
    else
        control.value = true;
}
function validarData(campo, valor) {
    var expReg = /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[1-2][0-9]\d{2})$/;
    //var control =  document.getElementById('ctl00_ContentPlaceHolder1_TC01_Tb01_ConfigDataLimite');
    var msgErro = 'Formato inválido de data.';
    if ((campo.value.match(expReg)) && (campo.value!='')) {                               
        //if(Date.UTC(campo.value) >= Date.UTC(dataAtual))
            somadias(campo.value,eval(valor))
        //else
        //  alert('Data menor que a data atual.');
    } else {
        alert(msgErro);
        //campo.focus();
    } 
}

function ValidaCalculo(objT,arrControles ) {

    var arrDados = new Array();
    arrDados = arrControles.split('|');
    
    var arrCampos = new Array();    
    var arrAux = new Array();    
    for(i=0;i<arrDados.length-1;i++)
    {
        
        Aux = arrDados[i];
        arrAux = Aux.split('-');
        arrCampos[arrAux[0]] = arrAux[1];
        
    }


    var controlRec                  = document.getElementById(arrCampos['txtVlrDescItem']);
    var controlVlr                  = document.getElementById(arrCampos['txtPrcCustoItem']);
    var controlPerc                 = document.getElementById(arrCampos['txtPercDescItem']);
    var controlICms                 = document.getElementById(arrCampos['txtVlrIcmsItem']);    
    var controlICmsPerc             = document.getElementById(arrCampos['txtPercIcmsItem']);
    var controlLqd                  = document.getElementById(arrCampos['txtVlrLiqItem']);
    var controlQtd                  = document.getElementById(arrCampos['txtQuantidade']);
    var controlTotal                = document.getElementById(arrCampos['txtVlrTotalItem']);
    var controlErro                 = document.getElementById(arrCampos['LblErroItem']);
    
    var vlrPerc                     = 0;
    var vlrIcms                     = 0;
    var arrValue = new Array();


    controlRec.value                  = (controlRec.value=='')?'0':controlRec.value.replace('.','');
    controlVlr.value                  = (controlVlr.value=='')?'0':controlVlr.value.replace('.','');
    controlPerc.value                 = (controlPerc.value=='')?'0':controlPerc.value.replace('.','');
    controlICms.value                 = (controlICms.value=='')?'0':controlICms.value.replace('.','');
    controlICmsPerc.value             = (controlICmsPerc.value=='')?'0':controlICmsPerc.value.replace('.','');
    controlLqd.value                  = (controlLqd.value=='')?'0':controlLqd.value.replace('.','');
    controlQtd.value                  = (controlQtd.value=='')?'0':controlQtd.value.replace('.','');
    controlTotal.value                = (controlTotal.value=='')?'0':controlTotal.value.replace('.','');

   
   controlErro.innerHTML = '';
   
   
   if(controlQtd.value == '0')
   {       
        controlErro.innerHTML           = 'Quantidade deve ser maior que zero.';
        controlQtd.focus();
        return;
   }
   if(controlVlr.value == '0')
   {
        controlErro.innerHTML           = 'O preço de custo é obrigatório.';
        controlVlr.focus();
        return;
   }
        
    if(objT == "P")
    {
            var vldesc = Number(controlRec.value.replace(',','.')).toFixed(2);
            var vlcusto = Number(controlVlr.value.replace(',','.')).toFixed(2);
           if(Number(vldesc) > Number(vlcusto))
           {       
                controlErro.innerHTML            = 'Valor desconto não pode ser maior que o custo.';
                //controlRec.focus();
                return;
           }
         if(controlRec.value != '0')
         {                     
            vlrPerc                 =   Math.round(100*
                                                ( (Number(controlRec.value.replace(',','.')).toFixed(2) / 
                                                    Number(controlVlr.value.replace(',','.')).toFixed(2)) * 100))/100;
                                                    
            controlPerc.value = vlrPerc;
            arrValue = controlPerc.value.split('.');
            
            if(arrValue[1] !=null)
                controlPerc.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
            else
                controlPerc.value       = arrValue[0]+'.000';//eval(vlrPerc);        
            
            if(controlPerc.value.length >=5)
                controlPerc.value   = controlPerc.value.replace('.',',').substring(0,5);  
            else
                controlPerc.value   = controlPerc.value.replace('.',',');
         }

         if(controlICms.value != '0')
         {                     
            vlrIcms                 =  (
                                        Number(controlICms.value.replace(',','.')).toFixed(2) / 
                                        Number(controlVlr.value.replace(',','.')).toFixed(2) 
                                        ) * 100;            
                                        
            controlICmsPerc.value   = vlrIcms;        
            arrValue = controlICmsPerc.value.split('.');
            if(arrValue[1] !=null)
                controlICmsPerc.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
            else
                controlICmsPerc.value       = arrValue[0]+'.000';//eval(vlrPerc);        

            if(controlICmsPerc.value.length >=5)
                controlICmsPerc.value   = controlICmsPerc.value.replace('.',',').substring(0,5);  
            else
                controlICmsPerc.value   = controlICmsPerc.value.replace('.',',');
         }
                                     
    }
    else
    {
       if(eval(controlPerc.value.replace(',','.')) > 100)
       {       
            controlErro.innerHTML           = '% desconto não pode ser maior que 100.';
            //controlPerc.focus();
            return;
       }
       
       if(eval(controlICmsPerc.value.replace(',','.')) > 100)
       {       
            controlErro.innerHTML           = '% ICMS não pode ser maior que 100.';
            //controlICmsPerc.focus();
            return;
       }

        if(controlPerc.value != '0')
        {
            vlrPerc                  = ((Number(controlVlr.value.replace(',','.')).toFixed(2) * 
                    					 Number(controlPerc.value.replace(',','.')).toFixed(2))/100);    

            controlRec.value         = vlrPerc;
            arrValue = controlRec.value.split('.');
            if(arrValue[1] !=null)
                controlRec.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
            else
                controlRec.value       = arrValue[0]+'.00';//eval(vlrPerc);        
            if(controlRec.value.length >=5)
                controlRec.value     = controlRec.value.replace('.',',').substring(0,5);  
            else
                controlRec.value     = controlRec.value.replace('.',',');  
         }        
            
         if(controlICmsPerc.value != '0')
         {                     
            vlrIcms                  =  (
                                            (Math.round(100*(
                                                            Number(controlVlr.value.replace(',','.')).toFixed(2)/100
                                                            )
                                                        )/100) * 
                                            Number(controlICmsPerc.value.replace(',','.')).toFixed(2)
                                         );    
                                         
            controlICms.value        = vlrIcms;        
            arrValue = controlICms.value.split('.');
            if(arrValue[1] !=null)
                controlICms.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
            else
                controlICms.value       = arrValue[0]+'.00';//eval(vlrPerc);   
                     
            if(controlICms.value.length >=5)
                controlICms.value   = controlICms.value.replace('.',',').substring(0,5);  
            else
                controlICms.value   = controlICms.value.replace('.',',');
         }    }
    
    if(controlRec.value == '')
    {  
        controlRec.value            = 0;
    }
    if(controlICms.value == '')
    {   
        controlICms.value           = 0;          
    }
    controlLqd.value               = Math.round(100*(Number(controlVlr.value.replace(',','.')).toFixed(2) - Number(controlRec.value.replace(',','.')).toFixed(2) - Number(controlICms.value.replace(',','.')).toFixed(2)))/100;
    controlTotal.value             = (Number(controlLqd.value) * Number(controlQtd.value)).toFixed(2);   
    arrValue = controlTotal.value.split('.');
    var Total, TotalLiq;
    if(arrValue[1] != null)
        Total                      = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //controlTotal.value;     
    else
        Total                      = arrValue[0]+'.00'; //controlTotal.value;     
    arrValue = controlLqd.value.split('.');
    if(arrValue[1] !=null)
        TotalLiq                   = arrValue[0]+'.'+ (arrValue[1]+'00').substring(0,2);//controlLqd.value;  
    else
        TotalLiq                   = arrValue[0]+'.00';//controlLqd.value;  

    if(TotalLiq.lastIndexOf('.') > 0)
        TotalLiq                   = TotalLiq.substr(0, TotalLiq.lastIndexOf('.') + 3);    
        
    if(Total.lastIndexOf('.') > 0)
        Total                      = Total.substr(0, Total.lastIndexOf('.') + 3);    
        
    TotalLiq               = TotalLiq.replace('.',',');
    Total                  = Total.replace('.',',');

    controlRec.value                  = addPontos(controlRec.value);
    controlPerc.value                 = addPontos(controlPerc.value);
    controlICms.value                 = addPontos(controlICms.value);
    controlICmsPerc.value             = addPontos(controlICmsPerc.value);
    controlQtd.value                  = addPontos(controlQtd.value);
    controlVlr.value                  = addPontos(controlVlr.value);
    controlLqd.value               = addPontos(TotalLiq);
    controlTotal.value             = addPontos(Total);
}

function ValidaCalculoNF(arrControles) {
    var arrDados = new Array();
    arrDados = arrControles.split('|');
    
    var arrCampos = new Array();    
    var arrAux = new Array();    
    for(i=0;i<arrDados.length-1;i++)
    {
        
        Aux = arrDados[i];
        arrAux = Aux.split('-');
        arrCampos[arrAux[0]] = arrAux[1];
        
    }
    var txtBaseICMS = document.getElementById(arrCampos['txtBaseICMS']);
    var txtValorICMS = document.getElementById(arrCampos['txtValorICMS']);
    var txtBaseSub = document.getElementById(arrCampos['txtBaseSub']);
    var txtValorSub = document.getElementById(arrCampos['txtValorSub']);
    var txtTotalProduto = document.getElementById(arrCampos['txtTotalProduto']);
    var txtValorFrete = document.getElementById(arrCampos['txtValorFrete']);
    var txtValorSeguro = document.getElementById(arrCampos['txtValorSeguro']);
    var txtOutrasDespesas = document.getElementById(arrCampos['txtOutrasDespesas']);
    var txtTotalIPI = document.getElementById(arrCampos['txtTotalIPI']);
    var txtValorDesconto = document.getElementById(arrCampos['txtValorDesconto']);
    var txtTotalNota = document.getElementById(arrCampos['txtTotalNota']);
    
    var arrValue = new Array();
    
/*            
    (Valor Total dos Produtos (ENFVLTOTP) + 
    frete (ENFVLFRET) + 
    seguro (ENFVLSEG) + 
    outras despesas (ENFDESP)+ 
    Valor IPI (ENFVLIPI) + 
    Vlr ICMS Substituição) – 
    Valor Descontos (ENFVLDESC). 
    */
            
    txtTotalProduto.value = (txtTotalProduto.value =='')?0:txtTotalProduto.value.replace('.','');
    arrValue = txtTotalProduto.value.split(',');
    if(arrValue[1] !=null)
        txtTotalProduto.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtTotalProduto.value       = arrValue[0]+'.00';//eval(vlrPerc);        

    txtValorFrete.value = (txtValorFrete.value =='')?0:txtValorFrete.value.replace('.','');
    arrValue = txtValorFrete.value.split(',');
    if(arrValue[1] !=null)
        txtValorFrete.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtValorFrete.value       = arrValue[0]+'.00';//eval(vlrPerc);        
    txtValorSeguro.value = (txtValorSeguro.value =='')?0:txtValorSeguro.value.replace('.','');
    arrValue = txtValorSeguro.value.split(',');
    if(arrValue[1] !=null)
        txtValorSeguro.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtValorSeguro.value       = arrValue[0]+'.00';//eval(vlrPerc);        
    txtOutrasDespesas.value = (txtOutrasDespesas.value =='')?0:txtOutrasDespesas.value.replace('.','');
    arrValue = txtOutrasDespesas.value.split(',');
    if(arrValue[1] !=null)
        txtOutrasDespesas.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtOutrasDespesas.value       = arrValue[0]+'.00';//eval(vlrPerc);        
    txtTotalIPI.value = (txtTotalIPI.value =='')?0:txtTotalIPI.value.replace('.','');
    arrValue = txtTotalIPI.value.split(',');
    if(arrValue[1] !=null)
        txtTotalIPI.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtTotalIPI.value       = arrValue[0]+'.00';//eval(vlrPerc);        
    txtValorSub.value = (txtValorSub.value =='')?0:txtValorSub.value.replace('.','');
    arrValue = txtValorSub.value.split(',');
    if(arrValue[1] !=null)
        txtValorSub.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtValorSub.value       = arrValue[0]+'.00';//eval(vlrPerc);        
    txtValorDesconto.value = (txtValorDesconto.value =='')?0:txtValorDesconto.value.replace('.','');
    arrValue = txtValorDesconto.value.split(',');
    if(arrValue[1] !=null)
        txtValorDesconto.value       = arrValue[0]+'.'+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtValorDesconto.value       = arrValue[0]+'.00';//eval(vlrPerc);        
    
    var vltotnf = 0;
    var totprod = Number(txtTotalProduto.value);
    var vlFrete = Number(txtValorFrete.value);
    var vlSeguro = Number(txtValorSeguro.value);
    var vlOutras = Number(txtOutrasDespesas.value);
    var vlIpi = Number(txtTotalIPI.value);
    var vlSub = Number(txtValorSub.value);
    var vlDesc = Number(txtValorDesconto.value);
    
    vltotnf = (totprod + vlFrete + vlSeguro + vlOutras + vlIpi + vlSub) - vlDesc; 
       
    txtTotalNota.value = vltotnf;
    arrValue = txtTotalNota.value.split('.');
    if(arrValue[1] !=null)
        txtTotalNota.value       = arrValue[0]+','+(arrValue[1]+'00').substring(0,2); //eval(vlrPerc);        
    else
        txtTotalNota.value       = arrValue[0]+',00';//eval(vlrPerc);        
        
    txtTotalNota.value = addPontos(txtTotalNota.value);
    txtTotalProduto.value = addPontos(txtTotalProduto.value.replace('.',','));
    txtValorFrete.value = addPontos(txtValorFrete.value.replace('.',','));
    txtValorSeguro.value = addPontos(txtValorSeguro.value.replace('.',','));
    txtOutrasDespesas.value = addPontos(txtOutrasDespesas.value.replace('.',','));
    txtTotalIPI.value = addPontos(txtTotalIPI.value.replace('.',','));
    txtValorSub.value = addPontos(txtValorSub.value.replace('.',','));
    txtValorDesconto.value = addPontos(txtValorDesconto.value.replace('.',','));

    return false;
}
function addPontos(nStr)
{
	nStr += '';
	x = nStr.split(',');
	x1 = x[0];
	x2 = x.length > 1 ? ',' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + '.' + '$2');
	}
	return x1 + x2;
}

function MudaEstadoControles(controles, rdb)
{   
    if(rdb != null)
        rdb.checked = true;
        
    if(controles.habilita != null)
    {
        for(i=0; i < controles.habilita.length; i++)
        {
          //  controles.habilita[i].disabled = false;
        }
    }

    if(controles.desabilita != null)
    {
        for(j=0; j < controles.desabilita.length; j++)
        {
           // controles.desabilita[j].disabled = true;
            controles.desabilita[j].value = '';
        }
    }        
}

function ctl(ctrl)
{
    return(document.getElementById(ctrl))
}