String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
//**************************************************************************
function fFiltrar(){
	SM("F");
}
//
function ChN_BAR_OnChange(){
	document.getElementById('TxtHora').value=0;
}
//
function TxtCod_OnKeyUp(){
	if(document.getElementById("ChN_BAR").checked==false){
		document.getElementById('TxtHora').value=GetHora();
	}else{
		document.getElementById('TxtHora').value=0;
	}
}
//
function fCls(){
	sv("PRO_ID","");
	sv("PRO_COD","");
	sv("PRO_DES","");
	//
	sv("Cod","");
	sv("Des","");
	sv("Pie","");
	sv("Caj","");
	sv("TotPie","");
	sv("TotUni","");
	sv("TotUwi","");
	sv("Pre","");	
	sv("Imp","");
	jF("Cod");
	document.getElementById("DivUni").innerHTML="";
}
//**************************************************************************
function GetFactor(){
	var und=gv("Und");
	var faxtor=0;
	for(i=1;i<=UNI_TOT;i++){
		if(UNI_ABR[i]==und){
			faxtor=UNI_FAC[i];
		}
	}
	return faxtor;
}
//**************************************************************************
function cImporte(){
	var tot_uwi=gv("TotUwi");
	var pre=gv("Pre");
	var tot_imp=jVal(tot_uwi) * jVal(pre);
	sv("Imp",tot_imp.toFixed(2));
}
//**************************************************************************
function fImporte(){	
	var pie=jVal(gv("Pie"));
	var caj=jVal(gv("Caj"));
	var tot_pie=pie * caj;
	//
	sv("TotPie",tot_pie);
	//
	var fx=GetFactor();
	if(fx>0){
		var tot_und=tot_pie/GetFactor();
	}else{
		var tot_und=0;
	}
	sv("TotUni",tot_und.toFixed(3));
	sv("TotUwi",tot_und.toFixed(3));
	cImporte();
}
//**************************************************************************
function fK(cx){
	sv("PRO_KIL",cx);
	SM("INVC_KIL");
}
//**************************************************************************

//**************************************************************************
function fGetTabla(){
	var cod = gv("Cod");
	var des = gv("Des");
	//
	if(jL(des)>0 || jL(cod)>0){
		DivDatos = document.getElementById("TAB_AJAX");
		DivCaption = document.getElementById("TAB_CAPTION");
		ajax=CreateAJAX();
		var StrU="ajaz.php?CMD=INVOICE_LISTAR&P01="+cod+"&P02="+des;
		ajax.open("GET", StrU);	
		ajax.onreadystatechange=function() {
		   if (ajax.readyState==4) {
				var StrDatos=ajax.responseText;
				if(StrDatos.trim().length>0){
					StrDatos = replaceAll(StrDatos,"@", "<tr class=\"zz\" ");
					StrDatos = replaceAll(StrDatos,"#", "</tr>");
					StrDatos = replaceAll(StrDatos,";", "</td>");
					StrDatos = replaceAll(StrDatos,"%", "<td>");
					StrDatos = replaceAll(StrDatos,":", "ondblclick=");
					//											
					DivDatos.innerHTML = StrDatos;
					DivCaption.style.visibility="visible";
					DivDatos.style.visibility="visible";	
					document.getElementById("TAB_AJAX").scrollTop=0;
					//
					PINTAR_ZZ();					
				}else{
					DivCaption.style.visibility="hidden";
					DivDatos.style.visibility="hidden";	
				}
		   }
		}
		ajax.send(null);
	}

}
//**************************************************************************
function PINTAR_ZZ(){
	$('.zz').focus(function() {	
		this.style.backgroundColor="#FFCC00";
	}).blur(function() {
	   this.style.backgroundColor="white";
	});
	$('.zz').keydown(function(e) {
		if(e.which == 40) {
			var r=this.id;
			r=r.replace("z","");
			r=parseInt(r)+1;
			try {
				document.getElementById("z"+r).focus();
				e.preventDefault();
			} catch (e) {
				
			}
		}
		if(e.which == 38) {
			var r=this.id;
			r=r.replace("z","");
			r=parseInt(r)-1;
			if(r==0){
				r=1;
			}
			document.getElementById("z"+r).focus();
			e.preventDefault();
		}
		if(e.which == 13) {
			this.ondblclick();
			e.preventDefault();
		}
		if(e.which == 27) {
			CerrarDIV();			
			e.preventDefault();
			sv("TxtHora","0");
		}
	});	
}
//**************************************************************************

function CerrarDIV(){
	DivDatos = document.getElementById("TAB_AJAX");
	DivCaption = document.getElementById("TAB_CAPTION");
	DivCaption.style.visibility="hidden";
	DivDatos.style.visibility="hidden";	
	document.getElementById("TxtDes").focus();
}

//--------------------------------------------------------------------------
function z(lpStrId){
	if(lpStrId>0){
		ajax=CreateAJAX();
		ajax.open("GET","ajaz.php?CMD=INVOICE_GET_PRO&P01="+lpStrId);	
		ajax.onreadystatechange=function() {
			   if (ajax.readyState==4) {			  
					   var d = ajax.responseText
					   var r=d.split("|");
					   if(r[1]=="OK"){
						   var cod=r[3];
						   var des=r[4];
						   var pre=r[5];
						   var uni=r[6];
						   var med=r[7];
						   sv("PRO_COD",cod);
						   sv("Cod",cod);
						   sv("PRO_DES",des);
						   sv("Des",des);
						   sv("PRO_PRE",pre);
						   sv("Und",uni);
						   sv("Pre",pre);
						   sv("Mea",med);
						   jF("Pie");
						   document.getElementById("DivUni").innerHTML=uni;
						   sv("Und",uni);
					   }
					   //
					   DivDatos = document.getElementById("TAB_AJAX");
					   DivCaption = document.getElementById("TAB_CAPTION");
					   DivCaption.style.visibility="hidden";
					   DivDatos.style.visibility="hidden";		
							   
			   }
		}
		ajax.send(null);
		svv("PRO_ID,PRO_COD,PRO_DES,PRO_PRE");
		svv("Cod,Des,Pre,Pie,Caj,TotPie,Imp");
	}
}

//**************************************************************************
function fGetRuc(lpStrPro,Obj){
	var StrProveedor=lpStrPro;
	ajax=CreateAJAX();
	ajax.open("GET", "ajax_funciones.php?Cmd=GET_RUC&TxtPar="+StrProveedor);	
	ajax.onreadystatechange=function() {
		   if (ajax.readyState==4) {			   	   
				   document.getElementById(Obj).value=ajax.responseText;
				   Obj=Obj+"_";
				   document.getElementById(Obj).value=ajax.responseText;
		   }
	}
    ajax.send(null);
}
//**************************************************************************
function fCancelarPHP(){
	SM("L");
}
//**************************************************************************
function DetOK(cod,des,pie,caj,med){
	var j=jVal(gv("DET_TOT"));
	for(i=1;i<=j;i++){
		if(DET_COD[i]==cod && DET_DES[i]==des && jVal(DET_PIE[i])==jVal(pie) && DET_MED[i]==med){
			   return i;
		}
	}
	return 0;
}
//**************************************************************************
function fAgregar(){
	var hwn=gv("HW");
	var pro_cod=gv("PRO_COD");
	var pro_des=gv("PRO_DES");	
	//
	var cod=gv("Cod");
	var des=gv("Des");
	var med=gv("Mea");
	var pie=gv("Pie");
	var caj=gv("Caj");
	var und=gv("Und");
	var tot_pie=gv("TotPie");
	var tot_uni=gv("TotUni");
	var tot_uwi=gv("TotUwi");
	var pre=gv("Pre");
	var imp=gv("Imp");
	//
	if(jL(pro_cod)==0){
		fCls();
		return AF("No se puede determinar el "+
		"codigo del producto seleccionado","Cod");
	}
	if(jL(pro_des)==0){
		fCls();
		return AF("No se puede determinar la "+
		"descripcion del producto seleccionado","Cod");
	}
	//
	if(jL(cod)==0){
		return AF("No se puede determinar el codigo","Cod");
	}
	if(jL(des)==0){
		return AF("El campo descripcion esta vacio","Des");
	}
	if(jL(pre)==0){
		return AF("Ingrese el precio del producto","Pre");
	}
	if(jL(pie)==0){
		return AF("Ingrese la cantidad de piezas","Pie");
	}
	if(jL(caj)==0){
		return AF("Ingrese la cantidad de cajas","Pie");
	}
	if(jVal(imp)<=0){
		return AF("El importe debe ser mayor a cero","Imp");
	}
	var det_ok=DetOK(cod,des,pie,caj,med);
	if(det_ok==0){
		document.getElementById("CmdAdd").disabled=true;
		SM("INVC_ADD");
	}else{
		alert("Codigo, descripcion y piezas ya registrado en el item "+det_ok.toString());
		jF("Pre");
	}
}
/**************************************************************************
	onkeypress="return pulsar(event);"
**************************************************************************/
function pulsar(e) { 	
	var tecla = (document.all) ? e.keyCode :e.which; 
	var Obj=event.srcElement.name;	
	if(Obj=="TxtNom"){
		if(tecla==13){			
			document.getElementById('CmdG').click();			
		}
	}	
	return (tecla!=13); 
} 
//**************************************************************************
function cDes(e){	
	var k;
	k=(document.all) ? e.keyCode :e.which;
	DivDatos = document.getElementById("TAB_AJAX");
	DivCaption = document.getElementById("TAB_CAPTION");
	if(k==40){
		if(DivDatos.style.visibility!="hidden"){
			document.getElementById("z1").focus();
			event.preventDefault();	
		}
		return true;
	}
	if(k==13){
		//jF("TxtPre");		
		DivCaption.style.visibility="hidden";
		DivDatos.style.visibility="hidden";	
		event.preventDefault();
		return true;
	}
}
//
function cDesUP(e){	
	var k;
	k=(document.all) ? e.keyCode :e.which;	
	if(k==40 || k==27 || k==13){
		
	}else{
		sv('TxtHora',GetHora());
	}
}
//
function InsPro(){
	Ow("proveedores_p.php",470*ZO(),220*ZO());
}
//
function fProveedores(){
	R=fLista("pro_nombre","proveedores","id_proveedor>=0");
	FCBO('CboPro',R);
	jF("CboPro");
}
//
function EMP_OC(){
	var emp=gv("Emp");
	svv("Dir,Ruc");
	if(jL(emp)>0){
		var d=AZ("EMPC_GD",emp);
		var r=d.split("|");
		if(r[1]=="OK"){
			sv("Dir",r[6]);
			sv("Ruc",r[5]);
		}else{
			alert("No se pudo obtener respuesta");
		}
	}
}
//
function PER_OC(){
	var per=gv("Per");
	sv("Per1","");
	sv("Per2","");
	if(jL(per)>0){
		var d=AZ("PER_G",per);
		var r=d.split("|");
		if(r[1]=="OK"){
			sv("Per1",r[2]);
			sv("Per2",r[3]);
		}else{
			alert("No se pudo obtener respuesta");
		}
	}
}
//
function PRV_OC(){
	var cod=gv("TxtId");
	var prv_ori=gv("PRV_ORI");
	var prv_num=gv("PRV_NUM");
	//++
	var prv=gv("Prv");
	sv("PrvAni","");
	sv("ProSer","");
	sv("ProNum","");
	sv("InvSer","");
	sv("InvNum","");
	sv("ExpAge","");
	sv("ExpAgeAcc","");
	sv("TheBan","");
	sv("Add","");
	sv("Swi","");	
	//
	if(jL(prv)>0){
		var d=AZ("PRV_GSA",prv,cod,prv_ori,prv_num);
		var r=d.split("|");
		if(r[1]=="OK"){
			sv("ProSer",r[2]);
			sv("InvSer",r[2]);
			sv("ExpAge",r[3]);
			sv("ExpAgeAcc",r[4]);
			sv("TheBan",r[5]);
			sv("Add",r[6]);
			sv("Swi",r[7]);
			sv("PrvAni",r[8]);
			sv("ProNum",r[9]);
			sv("InvNum",r[9]);
		}else{
			alert("No se pudo obtener respuesta");
		}
	}
}
//
function fLEliminar(){
	var kod=gv("TxtId");
	if(document.getElementById("CH_INV_ELI").checked==false){
		alert("Para eliminar requiere confirmar, active el check correspondiente");
		document.getElementById("DivInvEli").style.display="";
		return;
	}
	if(pre("¿ Esta seguro que desea eliminar?")){
		var ret=AX("FAC_XML_KIL",kod);
		var dat=ret.split("|");
		if(dat[1]=="OK"){
			SM("E");
		}else{
			if(dat[1]=="MS"){
				alert(dat[2]);
			}else{
				alert("Error de conexion");
			}
		}
	}
}
//
function CHE_NUM(){
	if(document.getElementById("CheNum").checked==true){
		document.getElementById("ProNum").readOnly=false;
		document.getElementById("ProNum").style.backgroundColor="#FFFFFF";
		document.getElementById("InvNum").readOnly=false;
		document.getElementById("InvNum").style.backgroundColor="#FFFFFF";
		jF("ProNum");
	}else{
		document.getElementById("ProNum").readOnly=true;
		document.getElementById("ProNum").style.backgroundColor="#CCC";
		document.getElementById("InvNum").readOnly=true;
		document.getElementById("InvNum").style.backgroundColor="#CCC";
	}
}
//
function CHE_CLI(){
	if(document.getElementById("CheFle").checked==true){
		document.getElementById("PreFle").readOnly=false;
		document.getElementById("PreFle").style.backgroundColor="#FFFFFF";
		document.getElementById("NumFle").readOnly=false;
		document.getElementById("NumFle").style.backgroundColor="#FFFFFF";	
			
		sv("NumFle","1");
		sv("PreCfr",gv("PreFob"));
		sv("NumCfr","1");
		sv("AmoCfr",gv("AmoFob"));		
		//++
		sv("SayTot",NumeroALetrasEx(gv("AmoCfr")));
		jF("PreFle");
		
		
	}else{
		document.getElementById("PreFle").readOnly=true;
		document.getElementById("PreFle").style.backgroundColor="#CCC";
		document.getElementById("NumFle").readOnly=true;
		document.getElementById("NumFle").style.backgroundColor="#CCC";
		//
		sv("PreFle","");
		sv("NumFle","");
		sv("AmoFle","");
		//
		sv("PreCfr","");
		sv("NumCfr","");
		sv("AmoCfr","");
		//++
		sv("SayTot",NumeroALetrasEx(gv("AmoFob")));
	}
	sv("TotAmo",gv("AmoFob"));
}
//
function kalcular(){
	var Pre_Fle=jVal(gv("PreFle"));
	var Num_Fle=jVal(gv("NumFle"));
	var Amo_Fle=jVal(gv("AmoFle"));
	//
	var Pre_Fob=jVal(gv("PreFob"));
	var Num_Fob=jVal(gv("NumFob"));
	var Amo_Fob=jVal(gv("AmoFob"));
	//
	var Pre_Cfr=jVal(gv("PreCfr"));
	var Num_Cfr=jVal(gv("NumCfr"));
	var Amo_Cfr=jVal(gv("AmoCfr"));
	//
	if(document.getElementById("CheFle").checked==true){
		Amo_Fle=redondear(Pre_Fle * Num_Fle,3);		
		sv("AmoFle",Amo_Fle);
		
		Pre_Cfr=redondear(Pre_Fle + Pre_Fob,3);
		sv("PreCfr",Pre_Cfr);
		
		Amo_Cfr=Amo_Fle + Amo_Fob;
		sv("AmoCfr",Amo_Cfr);
		//++
		sv("SayTot",NumeroALetrasEx(gv("AmoCfr")));
		sv("TotAmo",gv("AmoCfr"));
	}else{
		sv("PreFle","");
		sv("NumFle","");
		sv("AmoFle","");
		//
		sv("PreCfr","");
		sv("NumCfr","");
		sv("AmoCfr","");
		//++
		sv("SayTot",NumeroALetrasEx(gv("AmoFob")));
		sv("TotAmo",gv("AmoFob"));
	}
	//
	KalkularEx();
}

function NumeroALetrasEx(num){
	var r=NumeroALetras(num);
	var d=replaceAll(r,"UN MIL", "MIL");
	return d;
}

function FILL_1(obj){
	var n=gv(obj.id);
	if(jL(n)>0){
		if(jL(n)==1)n="00000"+n;
		if(jL(n)==2)n="0000"+n;
		if(jL(n)==3)n="000"+n;
		if(jL(n)==4)n="00"+n;
		if(jL(n)==5)n="0"+n;
		sv(obj.id,n);
	}
}


function cCod(e){	
	var k;
	k=(document.all) ? e.keyCode :e.which;
	DivDatos = document.getElementById("TAB_AJAX");
	DivCaption = document.getElementById("TAB_CAPTION");
	if(k==40){
		if(DivDatos.style.visibility!="hidden"){
			document.getElementById("z1").focus();
			event.preventDefault();
			
		}
		return true;
	}
	if(k==13){
		var cod=gv("Cod");		
		if(jL(cod)==0){
			jF("Des");
			return;
		}
		if(k==13){
			GetCod(cod);
		}
	}
}

function GetCod(Cod){	
	svv("PRO_ID,PRO_COD,PRO_DES");
	svv("Cod,Des,Pre,Pie,Caj,TotPie,Imp");
	
	var d=AZ("GET_PRO_COD",Cod);
	var r=d.split("|");
	if(r[1]=="MS"){
		alert(r[2]);
	}else{
		if(r[1]=="OK"){
			var kod=r[2];
			var cod=r[3];
			var des=r[4];
			var pre=r[5];
			//
			sv("PRO_ID",kod);
			sv("PRO_COD",cod);
			sv("PRO_DES",des);
			sv("Cod",cod);
			sv("Des",des);
			sv("Pre",pre);
			jF("Pie");
			//
		}else{
			alert("Error de conexion");
		}
	}
}

function cCodUP(e){	
	var k;
	k=(document.all) ? e.keyCode :e.which;	
	if(k==40 || k==27 || k==13){
		
	}else{
		sv('TxtHora',GetHora());
	}
}

function myStopFunction(){
	clearInterval(myVar);
}

$(document).keydown(function(e){
	var AT=gv("TxtAT");
	
	if(e.which==71 && e.altKey){		
		if(AT=="1"){	
		document.getElementById("CmdG").click();
		return;
		}
	}
	
	if(e.which==78 && e.altKey){
		if(AT=="1"){
		document.getElementById("CmdC").click();
		return;
		}
	}
	
	if(e.which==75 && e.altKey){
		if(AT=="1"){	
		document.getElementById("CmdE").click();
		return;
		}
	}

	if(e.which==66 && e.altKey){
		if(AT=="1"){	
		document.getElementById("CmdB").click();
		return;
		}
	}

	if(e.which==77 && e.altKey){
		if(AT=="1"){
		document.getElementById("CmdZ").click();
		return;
		}
	}
  
});

function myTimer(){
	t=GetHora();
	tt=document.getElementById("TxtHora").value;
	if(tt>0 && document.getElementById("ChN_BAR").checked==false){	
		if(t-tt>=1){
			document.getElementById("TxtHora").value=0;
			fGetTabla();		
		}
	}
}

function fE(cx){
	var hw=gv("HW");
	Ow("ges_invoice_editar.php?TMP_KOD="+cx+"&HWN="+hw,1300,470);
}

function fR(cx,pid,ite){
	var inv_kod=gv("TxtId");
	if(jVal(inv_kod)==0){
		alert("No se puede determinar el Id del registro activo, guarde o active un registro");
		return;
	}
	if(jVal(pid)==0){
		alert("No se puede determinar el producto del item seleccionado");
		return;
	}
	var hwn=gv("HW");
	Ow("ges_inv_prod_edit.php?INV_KOD="+inv_kod+"&INV_ITE="+ite+"&INV_PID="+pid+"&HWN="+hwn+"&TMP_KOD="+cx,1300,670);
}
//
function CHE_SEG(){
	
	if(document.getElementById("CheSeg").checked){
		//
		document.getElementById("PreSeg").readOnly=false;
		document.getElementById("PreSeg").style.backgroundColor="#FFF";
		document.getElementById("NumSeg").readOnly=false;
		document.getElementById("NumSeg").style.backgroundColor="#FFF";
		//
		sv("NumSeg","1");
		sv("NumCfi","1");		
	}else{
		//
		sv("PreSeg","");
		sv("NumSeg","");
		sv("AmoSeg","");
		//
		sv("PreCfi","");
		sv("NumCfi","");
		sv("AmoCfi","");
		//
		document.getElementById("PreSeg").readOnly=true;
		document.getElementById("PreSeg").style.backgroundColor="#CCC";
		document.getElementById("NumSeg").readOnly=true;
		document.getElementById("NumSeg").style.backgroundColor="#CCC";
	}
	kalcular();
	KalkularEx();
}
//
function KalkularEx(){
	if(document.getElementById("CheSeg").checked==true){
		//
		var seg_pre=jVal(gv("PreSeg"));
		var seg_num=jVal(gv("NumSeg"));
		var seg_tot=redondear(seg_pre * seg_num,3);
		sv("AmoSeg",seg_tot);
		//
		var cfr_pre=gv("PreCfr");
		var cfr_num=gv("NumCfr");
		var cfr_tot=gv("AmoCfr");
		
		var cfi_pre=redondear(jVal(seg_pre) + jVal(cfr_pre),3);
		var cfi_tot=redondear(jVal(seg_tot) + jVal(cfr_tot),3);
		
		sv("PreCfi",cfi_pre);
		sv("AmoCfi",cfi_tot);
		//
		sv("SayTot",NumeroALetrasEx(gv("AmoCfi")));
		sv("TotAmo",gv("AmoCfi"));
	}else{
		sv("AmoSeg","");
		sv("PreCfi","");
		sv("AmoCfi","");
	}
	
}
function validarExtensionXML(file) {
    const extension = file.name.split('.').pop().toLowerCase();
    return extension === 'xml';
}
//
function fGuardar(){
	var ori=gv("Ori");
	var cod=gv("TxtId");
	var ser=gv("Ser");	
	var num=gv("Num");
	var fec=gv("Fec");
	var emi_ruc=gv("EmiRuc");
	var cli_ruc=gv("CliRuc");
	var cli_ruc=gv("CliRuc");
	var sto=gv("Sto");
	var igv=gv("Igv");
	var tot=gv("Tot");
	//
	if(jVac(ori,"Seleccione el origen de datos","Ori"))return;
	if(jVac(ser,"No se puede determinar la serie del comprobante","Ser"))return;
	if(jVac(num,"No se puede determinar el numero del comprobante","Num"))return;
	if(jVac(fec,"Ingrese la fecha","Fec"))return;
	if(!EsFechaEx(fec)){
		return AF("Fecha no valida","Fec");
	}
	if(jVac(emi_ruc,"No se puede determinar el ruc del emisor","EmiRuc"))return;
	if(jVac(cli_ruc,"No se puede determinar el ruc del cliente","CliRuc"))return;
	/*
	if(jVal(cx)==0){
		return AF("La lista esta vacia","Ser");
	}
	*/
	if(jL(emi_ruc)!=11){
		return AF("El numero de ruc del emisor debe tener 11 digitos","EmiRuc");
	}
	if(jL(cli_ruc)!=11){
		return AF("El numero de ruc del cliente debe tener 11 digitos","CliRuc");
	}
	//
	if(jL(sto)>0 || jL(igv)>0 || jL(tot)>0){
		var cal=jVal(sto)+jVal(igv);
		if(jsR(cal)!=jsR(jVal(tot))){
			alert("El total ("+tot+") no coincide con la suma ("+cal+") del subtotal ("+sto+") mas el igv ("+ igv+")");
			return;
		}
	}
	//
	if(jVal(cod)==0){
		if(pre("¿Esta seguro que desea guardar?")){
			document.getElementById("CmdG").disabled=true;
			SM("G");
		}
	}else{
		if(pre("¿Esta seguro que desea modificar?")){
			document.getElementById("CmdG").disabled=true;
			SM("M");
		}
	}
}
//
function fxImpXml(){
	var ori=gv("Ori");
	if(ori!="XML"){
		alert("Seleccione el XML como origen de datos");
		return;
	}
	var adj=gv("Productos");
	var obj=document.getElementById("Productos");
	if(jL(adj)==0){
		return AF("Seleccione el archivo a adjuntar","Productos");
	}
	if(validarExtensionXML(obj.files[0])){
		SM("IMP_XML");
	}else{
		alert("Solo se permite archivos xml");
	}
	
}
//
function O_Z1(){
	var hw=gv("HW");
	Ow('lq_com_xls_01.php?Z=1&HW='+hw,1020*ZO(),490*ZO());
}

function fxImpCuo(){
	var ori=gv("Ori");
	if(jL(ori)==0){
		alert("Seleccione un origen de datos");
		return;
	}
	var cuo_fec=gv("CuoFec");
	var cuo_tot=gv("CuoTot");
	var cuo_tip=gv("CuoTip");
	if(jVac(cuo_fec,"Ingrese una fecha dd-mm-yyyy","CuoFec"))return;
	if(jL(cuo_tot)==0){
		return AF("Ingrese el total de la cuota","CuoTot");
	}
	if(!EsFechaEx(cuo_fec)){
		return AF("Fecha no valida","CuoFec");
	}
	if(jVac(cuo_tip,"Seleccione un tipo de cuota","CuoTip"))return;
	document.getElementById("CmdAddCuo").disabled=true;
	SM("ADD_CUO");
}

function ros(obj){
	document.getElementById(obj).value="";
	document.getElementById(obj).readOnly=true;
	document.getElementById(obj).style.backgroundColor="#CCC";
}
function ron(obj){
	document.getElementById(obj).value="";
	document.getElementById(obj).readOnly=false;
	document.getElementById(obj).style.backgroundColor="#FFF";
}
function OriOC(){
	var ori=gv("Ori");
	if(ori=="MANUAL"){
		ron("Ser");
		ron("Num");
		ron("Fec");
		ron("Mnd");
		ron("EmiRuc");
		ron("EmiNom");
		ron("CliRuc");
		ron("CliNom");
		ron("Sto");
		ron("Igv");
		ron("Tot");
		ron("Fdp");
		/*
		ron("DetCan");
		ron("DetDes");
		ron("DetPre");
		ron("DetImp");	
		document.getElementById("CmdAddDet").disabled=false;
		*/
		ron("CuoNro");	
		ron("CuoFec");	
		ron("CuoTot");
		document.getElementById("CmdAddCuo").disabled=false;
		//
		document.getElementById("Productos").value="";
		document.getElementById("Productos").disabled=true;
		document.getElementById("CmdXls1").disabled=true;
	}
	if(ori=="XML"){
		ros("Ser");
		ros("Num");
		ros("Fec");
		ros("Mnd");
		ros("EmiRuc");
		ros("EmiNom");
		ros("CliRuc");
		ros("CliNom");
		ros("Sto");
		ros("Igv");
		ros("Tot");
		ros("Fdp");
		/*
		ros("DetCan");
		ros("DetDes");
		ros("DetPre");
		ros("DetImp");	
		document.getElementById("CmdAddDet").disabled=true;
		*/
		ros("CuoNro");	
		ros("CuoFec");	
		ros("CuoTot");
		document.getElementById("CmdAddCuo").disabled=true;
		//
		document.getElementById("Productos").value="";
		document.getElementById("Productos").disabled=false;
		document.getElementById("CmdXls1").disabled=false;
	}
}
//
function fxDetAdd(){
	var can=gv("DetCan");
	var des=gv("DetDes");
	var pre=gv("DetPre");
	var imp=gv("DetImp");
	//
	if(jVac(can,"Ingrese la cantidad","DetCan"))return;
	if(jVac(des,"Ingrese la descripcion","DetDes"))return;
	if(jVac(pre,"Ingrese el precio","DetPre"))return;
	if(jVac(imp,"Ingrese el importe","DetImp"))return;
	SM("ADD_DET");
}
//
function xlsCalImp(){
	var tca=jVal(gv("Tca"));
	var varImpA=jVal(gv("VarImpA"));
	var varImpB=jsR(varImpA/tca,2);
	sv("VarImpB",varImpB);
	//
	ZumaA();SumaA();
}
//
function xlsCalFle(){
	var tca=jVal(gv("Tca"));
	var varFleB=jVal(gv("VarFleB"));
	var varFleA=jsR(varFleB*tca,2);
	sv("VarFleA",varFleA);
	//
	ZumaA();SumaA();
}
//
function xlsCalThc(){
	var tca=jVal(gv("Tca"));
	var varThcB=jVal(gv("VarThcB"));
	var varThcA=jsR(varThcB*tca,2);
	sv("VarThcA",varThcA);
	//
	ZumaA();SumaA();
}
//
function xlsCalVisto(){
	var tca=jVal(gv("Tca"));
	var varVisBueB=jVal(gv("VarVisBueB"));
	var varVisBueA=jsR(varVisBueB*tca,2);
	sv("VarVisBueA",varVisBueA);
	//
	ZumaA();SumaA();
}
//
function xlsCalGate(){
	var tca=jVal(gv("Tca"));
	var varGatB=jVal(gv("VarGatB"));
	var varGatA=jsR(varGatB*tca,2);
	sv("VarGatA",varGatA);
	//
	ZumaA();SumaA();
}
//
function xlsCalGastos(){
	var tca=jVal(gv("Tca"));
	var varGasB=jVal(gv("VarGasB"));
	var varGasA=jsR(varGasB*tca,2);
	sv("VarGasA",varGasA);
	//
	ZumaA();SumaA();
}
//
function xlsCalEmi(){
	var tca=jVal(gv("Tca"));
	var varEmiB=jVal(gv("VarEmiB"));
	var varEmiA=jsR(varEmiB*tca,2);
	sv("VarEmiA",varEmiA);
	//
	ZumaA();SumaA();
}
//
function xlsCalAge(){
	var tca=jVal(gv("Tca"));
	var varAgeB=jVal(gv("VarAgeB"));
	var varAgeA=jsR(varAgeB*tca,2);
	sv("VarAgeA",varAgeA);
	//
	ZumaA();SumaA();
}
//
function xlsCalTrans(){
	var tca=jVal(gv("Tca"));
	var varTraA=jVal(gv("VarTraA"));
	var varTraB=jsR(varTraA/tca,2);
	sv("VarTraB",varTraB);
	//
	ZumaA();SumaA();
}
//
function xlsCalCus(){
	var tca=jVal(gv("Tca"));
	var varCusA=jVal(gv("VarCusA"));
	var varCusB=jsR(varCusA/tca,2);
	sv("VarCusB",varCusB);
	//
	ZumaA();SumaA();
}
//
function xlsCalSerExt(){
	var tca=jVal(gv("Tca"));
	var varSerB=jVal(gv("VarSerB"));
	var varSerA=jsR(varSerB*tca,2);
	sv("VarSerA",varSerA);
	//
	ZumaA();SumaA();
}
//
function xlsCalEstiba(){
	var tca=jVal(gv("Tca"));
	var varEstA=jVal(gv("VarEstA"));
	var varEstB=jsR(varEstA/tca,2);
	sv("VarEstB",varEstB);
	//
	ZumaA();SumaA();
}
//
function SumaA(){
	var varImp=jVal(gv("VarImpA"));
	var varFle=jVal(gv("VarFleA"));
	var varThc=jVal(gv("VarThcA"));
	var varVis=jVal(gv("VarVisBueA"));
	var varGat=jVal(gv("VarGatA"));
	var varGas=jVal(gv("VarGasA"));
	var varEmi=jVal(gv("VarEmiA"));
	var varAge=jVal(gv("VarAgeA"));
	var varTra=jVal(gv("VarTraA"));
	var varCus=jVal(gv("VarCusA"));
	var varSer=jVal(gv("VarSerA"));
	var varEst=jVal(gv("VarEstA"));
	//
	var SUMA=varImp + varFle + varThc + varVis + varGat + varGas + varEmi + varAge + varTra + varCus + varSer + varEst;
	//
	sv("VarGasImpA",jsR(SUMA,2));
}
//
//
function ZumaA(){
	var varImp=jVal(gv("VarImpB"));
	var varFle=jVal(gv("VarFleB"));
	var varThc=jVal(gv("VarThcB"));
	var varVis=jVal(gv("VarVisBueB"));
	var varGat=jVal(gv("VarGatB"));
	var varGas=jVal(gv("VarGasB"));
	var varEmi=jVal(gv("VarEmiB"));
	var varAge=jVal(gv("VarAgeB"));
	var varTra=jVal(gv("VarTraB"));
	var varCus=jVal(gv("VarCusB"));
	var varSer=jVal(gv("VarSerB"));
	var varEst=jVal(gv("VarEstB"));
	//
	var SUMA=varImp + varFle + varThc + varVis + varGat + varGas + varEmi + varAge + varTra + varCus + varSer + varEst;
	//
	sv("VarGasImpB",jsR(SUMA,2));
}
//
function funTcaOC(){
	xlsCalImp();
	xlsCalFle();
	xlsCalThc();
	xlsCalVisto();
	xlsCalGate();
	xlsCalGastos();
	xlsCalEmi();
	xlsCalAge();
	xlsCalTrans();
	xlsCalCus();
	xlsCalSerExt();
	xlsCalEstiba();
	//
	ZumaA();
	SumaA();
	
}
//
function fKeyEmiRuc(obj_sig){
	var k;
	k=(document.all) ? event.keyCode :event.which; 
	//if(k==13 || k==9){
	if(k==13){
		sv("EmiNom","");
		var emi_ruc=gv("EmiRuc");
		if(jL(emi_ruc)==11){
			//ajax.php
			var dat=AX("XML_GET_RUC",emi_ruc);
			var ret=dat.split("|");
			if(ret[1]=="OK"){
				sv("EmiNom",ret[3]);
				jF(obj_sig);
			}else{
				if(ret[1]=="CD"){
					jF("EmiNom");
				}else{
					alert("Error de conexion");
				}
			}
		}
		event.preventDefault();	
	}
}
//
function fKeyCliRuc(obj_sig){
	var k;
	k=(document.all) ? event.keyCode :event.which; 
	//if(k==13 || k==9){
	if(k==13){
		sv("CliNom","");
		var emi_ruc=gv("EmiRuc");
		if(jL(emi_ruc)==11){
			//ajax.php
			var dat=AX("XML_GET_RUC",emi_ruc);
			var ret=dat.split("|");
			if(ret[1]=="OK"){
				sv("CliNom",ret[3]);
				jF(obj_sig);
			}else{
				if(ret[1]=="CD"){
					jF("CliNom");
				}else{
					alert("Error de conexion");
				}
			}
		}
		event.preventDefault();	
	}
}
//
function fCalTotal(){
	if(gv("Ori")=="MANUAL"){
		var sto=gv("Sto");
		var igv=gv("Igv");
		var tot=jVal(sto) + jVal(igv);
		sv("Tot",jsR(tot));
	}
}
//
function fxSto(){
	var ori=gv("Ori");
	if(ori=="MANUAL"){
	var sto=jVal(gv("Sto"));
		var igv=jsR((sto/100) * 19 ,2);
		var tot=jsR(sto + igv,2);
		sv("Igv",jsF(igv));
		sv("Tot",jsF(tot));	
	}
}
//
function fxCuoAnu(id){
	if(confirm("Esta seguro que desea anular?")){
		sv("CUO_KEY",id);
		SM("CUOTA_ANULAR");
	}
}

function fxCuoPag(id,obj){
	//Ow(url,ancho,alto)
	if(obj.value=="Pagar"){
		Ow("ges_facturas_pagar.php?KEY="+id,560,370);
	}else{
		if(confirm("Esta seguro que desea deshacer el pago?")){
			sv("CUO_KEY",id);
			SM("PAGO_DESHACER");
		}
	}
}
//
function fxCuoKil(id,tip){
	if(tip=="XML"){
		alert("La presente cuota fue importada desde un xml, no se puede eliminar, intente anular");
		return;
	}
	if(confirm("Esta seguro que desea eliminar la cuota?")){
		//ajax.php
		var r=AX("XML_CUO_KIL",id);
		var tr="tr_"+id;
		document.getElementById(tr).style.display="none";
		SM("DET_KIL");
	}
}
function fxFep(id,fec){
	var fec=prompt("Ingrese una fecha dd-mm-yyyy",fec);
	if(jL(fec)>0){
		if(EsFechaEx(fec)){
			//ajax.php
			var r=AX("XML_SET_FEC",id,fec);
			SM("CUO_KIL");
		}else{
			alert("Fecha no valida");
		}
	}
}