valor1=0;
valor2=0;
valor3=0;
valor4=0;
valor5=0;
valor_titulo=0;
valor_multa=0;
valor_juros=0;
valor_desconto=0;
valor_liquido=0;
valor_nota=0;
valor_notafiscal="";


function f_calcula_impostos() {
	// Calcula o valor de cada imposto da nota
	valor_nota=document.fm_nf_receber.notafiscal_vl_nota.value; // Valor da Nota Fiscal
	retem_iss =document.fm_nf_receber.notafiscal_dm_retem_iss.value;
	n=0;
	while (n < 20) {
		if (valor_nota.substring(n,n+1) == ".") {
 			valor_nota = valor_nota.substring(0,n)+valor_nota.substring(n+1,20);
 			n++;
 		}
 		if (valor_nota.substring(n,n+1) == ",") {
 			valor_nota = valor_nota.substring(0,n)+"."+valor_nota.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	valor2 = (valor_nota*(perc_iss/100));   // Valor do ISSQN
	valor3 = (valor_nota*(perc_ir/100));    // Cálculo do IR
	if (valor3<10) {
		valor3=0;
	}
	if (retem_iss!="Sim") {
		valor4 = (valor_nota-valor3);
	}
	else {
		valor4 = (valor_nota-valor2-valor3);
	}
	valor2 = f_formata_valor(valor2,2);
	valor3 = f_formata_valor(valor3,2);
	valor4 = f_formata_valor(valor4,2);

	valor2 = Formata_Valor(valor2,14,event);
	valor3 = Formata_Valor(valor3,14,event);
	valor4 = Formata_Valor(valor4,14,event);

	document.fm_nf_receber.notafiscal_vl_iss.value=valor2;   // Valor do ISS
	document.fm_nf_receber.notafiscal_vl_ir.value=valor3;   // Valor do ISS
	document.fm_nf_receber.notafiscal_vl_liquido.value=valor4;   // Valor do ISS
}

function f_calcula_vl_liquido_com_vl_iss() {
	valor_nota = document.fm_nf_receber.notafiscal_vl_nota.value;   // Valor da Nota Fiscal
	valor_iss  = document.fm_nf_receber.notafiscal_vl_iss.value;    // Valor do ISSQN
	valor_ir   = document.fm_nf_receber.notafiscal_vl_ir.value;     // Valor do IR
	retem_iss  = document.fm_nf_receber.notafiscal_dm_retem_iss.value; // Retém ISSQN na Nota
	n=0;
	while (n < 20) {
		if (valor_nota.substring(n,n+1) == ".") {
 			valor_nota = valor_nota.substring(0,n)+valor_nota.substring(n+1,20);
 			n++;
 		}
 		if (valor_nota.substring(n,n+1) == ",") {
 			valor_nota = valor_nota.substring(0,n)+"."+valor_nota.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	n=0;
	while (n < 20) {
		if (valor_iss.substring(n,n+1) == ".") {
 			valor_iss = valor_iss.substring(0,n)+valor_iss.substring(n+1,20);
 			n++;
 		}
 		if (valor_iss.substring(n,n+1) == ",") {
 			valor_iss = valor_iss.substring(0,n)+"."+valor_iss.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	n=0;
	while (n < 20) {
		if (valor_ir.substring(n,n+1) == ".") {
 			valor_ir = valor_ir.substring(0,n)+valor_ir.substring(n+1,20);
 			n++;
 		}
 		if (valor_ir.substring(n,n+1) == ",") {
 			valor_ir = valor_ir.substring(0,n)+"."+valor_ir.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	if (retem_iss!="Sim") {
		valor_liquido = (valor_nota-valor_ir);
	}
	else {
		valor_liquido = (valor_nota-valor_iss-valor_ir);
	}
	valor_liquido = f_formata_valor(valor_liquido,2);
	valor_liquido = Formata_Valor(valor_liquido,14,event);
	document.fm_nf_receber.notafiscal_vl_liquido.value=valor_liquido;   // Valor do ISS
}

function f_calcula_vl_liquido_com_vl_ir() {
	valor_nota = document.fm_nf_receber.notafiscal_vl_nota.value;   // Valor da Nota Fiscal
	valor_iss  = document.fm_nf_receber.notafiscal_vl_iss.value;    // Valor do ISSQN
	valor_ir   = document.fm_nf_receber.notafiscal_vl_ir.value;     // Valor do IR
	retem_iss  = document.fm_nf_receber.notafiscal_dm_retem_iss.value; // Retém ISSQN na Nota
	n=0;
	while (n < 20) {
		if (valor_nota.substring(n,n+1) == ".") {
 			valor_nota = valor_nota.substring(0,n)+valor_nota.substring(n+1,20);
 			n++;
 		}
 		if (valor_nota.substring(n,n+1) == ",") {
 			valor_nota = valor_nota.substring(0,n)+"."+valor_nota.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	n=0;
	while (n < 20) {
		if (valor_iss.substring(n,n+1) == ".") {
 			valor_iss = valor_iss.substring(0,n)+valor_iss.substring(n+1,20);
 			n++;
 		}
 		if (valor_iss.substring(n,n+1) == ",") {
 			valor_iss = valor_iss.substring(0,n)+"."+valor_iss.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	n=0;
	while (n < 20) {
		if (valor_ir.substring(n,n+1) == ".") {
 			valor_ir = valor_ir.substring(0,n)+valor_ir.substring(n+1,20);
 			n++;
 		}
 		if (valor_ir.substring(n,n+1) == ",") {
 			valor_ir = valor_ir.substring(0,n)+"."+valor_ir.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	if (retem_iss!="Sim") {
		valor_liquido = (valor_nota-valor_ir);
	}
	else {
		valor_liquido = (valor_nota-valor_iss-valor_ir);
	}
	valor_liquido = f_formata_valor(valor_liquido,2);
	valor_liquido = Formata_Valor(valor_liquido,14,event);
	document.fm_nf_receber.notafiscal_vl_liquido.value=valor_liquido;   // Valor do ISS
}

function f_calcula_vl_liquido_titulo(formu) {
		var valor_titulo		= document.forms[formu].titulo_vl_titulo.value;      // Valor do Título
		var valor_multa			= document.forms[formu].titulo_vl_multa.value;       // Valor da Multa
		var valor_juros			= document.forms[formu].titulo_vl_juros.value;       // Valor do Juros
		var valor_acrescimos	= document.forms[formu].titulo_vl_acrescimos.value;  // Valor do Acréscimo
		var valor_tarban    	= document.forms[formu].titulo_vl_tarban.value;		 // Valor da Tarifa Bancária
		var valor_desconto		= document.forms[formu].titulo_vl_desconto.value;    // Valor do Desconto
		var valor_desconto_funcionarios = document.forms[formu].titulo_vl_desconto_funcionarios.value;    // Valor do Desconto de Funcionários
		var valor_deducoes		= document.forms[formu].titulo_vl_deducoes.value;    // Valor do Deducoes
		// Valor titulo
		n=0;
		while (n < 20) {
			if (valor_titulo.substring(n,n+1) == ".") {
				valor_titulo = valor_titulo.substring(0,n)+valor_titulo.substring(n+1,20);
				n++;
			}
			if (valor_titulo.substring(n,n+1) == ",") {
				valor_titulo = valor_titulo.substring(0,n)+"."+valor_titulo.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor multa
		n=0;
		while (n < 20) {
			if (valor_multa.substring(n,n+1) == ".") {
				valor_multa = valor_multa.substring(0,n)+valor_multa.substring(n+1,20);
				n++;
			}
			if (valor_multa.substring(n,n+1) == ",") {
				valor_multa = valor_multa.substring(0,n)+"."+valor_multa.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor juros
		n=0;
		while (n < 20) {
			if (valor_juros.substring(n,n+1) == ".") {
				valor_juros = valor_juros.substring(0,n)+valor_juros.substring(n+1,20);
				n++;
			}
			if (valor_juros.substring(n,n+1) == ",") {
				valor_juros = valor_juros.substring(0,n)+"."+valor_juros.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor acrescimos
		n=0;
		while (n < 20) {
			if (valor_acrescimos.substring(n,n+1) == ".") {
				valor_acrescimos = valor_acrescimos.substring(0,n)+valor_acrescimos.substring(n+1,20);
				n++;
			}
			if (valor_acrescimos.substring(n,n+1) == ",") {
				valor_acrescimos = valor_acrescimos.substring(0,n)+"."+valor_acrescimos.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor tarifa bancaria
		n=0;
		while (n < 20) {
			if (valor_tarban.substring(n,n+1) == ".") {
				valor_tarban = valor_tarban.substring(0,n)+valor_tarban.substring(n+1,20);
				n++;
			}
			if (valor_tarban.substring(n,n+1) == ",") {
				valor_tarban = valor_tarban.substring(0,n)+"."+valor_tarban.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor desconto
		n=0;
		while (n < 20) {
			if (valor_desconto.substring(n,n+1) == ".") {
				valor_desconto = valor_desconto.substring(0,n)+valor_desconto.substring(n+1,20);
				n++;
			}
			if (valor_desconto.substring(n,n+1) == ",") {
				valor_desconto = valor_desconto.substring(0,n)+"."+valor_desconto.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor desconto funcionario
		n=0;
		while (n < 20) {
			if (valor_desconto_funcionarios.substring(n,n+1) == ".") {
				valor_desconto_funcionarios = valor_desconto_funcionarios.substring(0,n)+valor_desconto_funcionarios.substring(n+1,20);
				n++;
			}
			if (valor_desconto_funcionarios.substring(n,n+1) == ",") {
				valor_desconto_funcionarios = valor_desconto_funcionarios.substring(0,n)+"."+valor_desconto_funcionarios.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Valor deducoes
		n=0;
		while (n < 20) {
			if (valor_deducoes.substring(n,n+1) == ".") {
				valor_deducoes = valor_deducoes.substring(0,n)+valor_deducoes.substring(n+1,20);
				n++;
			}
			if (valor_deducoes.substring(n,n+1) == ",") {
				valor_deducoes = valor_deducoes.substring(0,n)+"."+valor_deducoes.substring(n+1,20);
				n++;
			}
			n++;
		}
		// Calcular Valor Liquido
		valor_liquido = valor_titulo;
		valor_liquido = parseFloat(valor_titulo);
		if (valor_multa != "0.00") {
			valor_multa = parseFloat(valor_multa);
			valor_liquido = eval("valor_liquido + valor_multa");
		}
		if (valor_juros != "0.00") {
			valor_juros = parseFloat(valor_juros);
			valor_liquido = eval("valor_liquido + valor_juros");
		}
		if (valor_acrescimos != "0.00") {
			valor_acrescimos = parseFloat(valor_acrescimos);
			valor_liquido = eval("valor_liquido + valor_acrescimos");
		}
		if (valor_tarban != "0.00") {
			valor_tarban = parseFloat(valor_tarban);
			valor_liquido = eval("valor_liquido + valor_tarban");
		}
		if (valor_desconto != "0.00") {
			valor_desconto = parseFloat(valor_desconto);
			valor_liquido = eval("valor_liquido - valor_desconto");
		}
		if (valor_desconto_funcionarios != "0.00") {
			valor_desconto_funcionarios = parseFloat(valor_desconto_funcionarios);
			valor_liquido = eval("valor_liquido - valor_desconto_funcionarios");
		}
		if (valor_deducoes != "0.00") {
			valor_deducoes = parseFloat(valor_deducoes);
			valor_liquido = eval("valor_liquido - valor_deducoes");
		}
		valor_liquido = f_formata_valor(valor_liquido,2);
		valor_liquido = Formata_Valor(valor_liquido,14,event);
		document.forms[formu].titulo_vl_liquido.value = valor_liquido;
}

function Formata_Valor(variavel,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = variavel;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	tam = vr.length + 1;
	if (tecla == 0){
		tam = tam - 1 ;
		if ( tam <= 2 ){ 
	 		variavel = vr ; }
	 	if ( (tam > 2) && (tam <= 5) ){
	 		variavel = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 6) && (tam <= 8) ){
            variavel = vr.substr( 0, tam - 5 );
            variavel = vr.substr( tam - 5, 3);
            variavel = vr.substr( tam - 2, tam);
			variavel = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 9) && (tam <= 11) ){
	 		variavel = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 12) && (tam <= 14) ){
	 		variavel = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 15) && (tam <= 17) ){
	 		variavel = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
	}		
	return variavel;
}


function f_formata_valor(valor, decimais)
{
 var str = "" + Math.round (eval(valor) * Math.pow(10,decimais))
 while (str.length <= decimais)
 {
  str = "0" + str
 }
 var decpoint = str.length - decimais
 return str.substring(0,decpoint) + "," +
		str.substring(decpoint,str.length);
}

function f_verifica_vl_item() {
	// Acha o valor do item selecionado
	if (vl_item > 0) {
		vl_item = f_formata_valor(vl_item,2);
		vl_item = Formata_Valor(vl_item,14,event);
		document.fm_notafiscal_item.nfitem_vl_unitario.value=vl_item;   // Valor do Item Formatado
    }
}

function f_vl_total() {
	vl_unitario = document.fm_notafiscal_item.nfitem_vl_unitario.value;
	vl_qt_item  = document.fm_notafiscal_item.nfitem_qt_item.value;
	n=0;  // Decompondo vl_unitario
	while (n < 20) {
		if (vl_unitario.substring(n,n+1) == ".") {
 			vl_unitario = vl_unitario.substring(0,n)+vl_unitario.substring(n+1,20);
 			n++;
 		}
 		if (vl_unitario.substring(n,n+1) == ",") {
 			vl_unitario = vl_unitario.substring(0,n)+"."+vl_unitario.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	n=0;  // Decompondo vl_qt_item
	while (n < 20) {
		if (vl_qt_item.substring(n,n+1) == ".") {
 			vl_qt_item = vl_qt_item.substring(0,n)+vl_qt_item.substring(n+1,20);
 			n++;
 		}
 		if (vl_qt_item.substring(n,n+1) == ",") {
 			vl_qt_item = vl_qt_item.substring(0,n)+"."+vl_qt_item.substring(n+1,20);
 			n++;
 		}
		n++;
	}
	vl_total    = vl_unitario * vl_qt_item;
	vl_total    = f_formata_valor(vl_total,2);
	vl_total    = Formata_Valor(vl_total,14,event);
	document.fm_notafiscal_item.nfitem_vl_total.value=vl_total;   // Valor Total do Item
}