if(document.facturadeventa.elements[0].value!="") tasa()
function tasa()
{
	z00 =document.facturadeventa.elements[2]
	z01 =document.facturadeventa.elements[16]
	if(z00.value=="") {alert("NO HA DEFINIDO FECHA DE LA OPERACION");z01.value="";return }
	indi=z00.value+z01.value
	tas=1
	if(z01.value!="002") tas=tasas[indi]
	if(tas==undefined) {alert("NO HA DEFINIDO TASA PARA "+z00.value+" EN MONEDA "+z01.options[z01.selectedIndex].innerHTML);z01.value="";tas=1}
	return tas
}

function prd1(codp)
{
	x=codp.name
        z=x.substr(17,2)
        reg=(nhd+ncd*nrd+1)/1+z*(ncd+1)/1
        y=document.facturadeventa.elements[(reg+1)]
        w=document.facturadeventa.elements[(reg+2)]
        s=document.facturadeventa.elements[(reg+5)]
        sp=document.facturadeventa.elements[(reg+6)]
        q=document.facturadeventa.elements[(reg+7)]
        r=document.facturadeventa.elements[(reg+8)]
	//alert("reg="+reg+" x="+x+" z="+z+" +" y="+y.name+" w="+w.name+" s="+s.name+" "+codp.value)
	//alert(codp.value +" "+ prc[codp.value])
        if(codp.value!="" && codp.value!=" ") { w.value=codp.value; y.value=sku[codp.value]; s.value=prc[codp.value]; q.value=und[codp.value]}
        else { w.value="";y.value="";s.value="";q.value="" }
        document.facturadeventa.elements[(reg+9)].value=""
        document.facturadeventa.elements[(reg+10)].value=""
	if(codp.value=="000000")
	{
		d=document.facturadeventa.elements[(reg+3)]
		w.hidden=true
                d.type = "text"
		d.size=42
	}
	else 
        {
                d=document.facturadeventa.elements[(reg+3)]
                d.type = "hidden"
                w.hidden=false
        }
	sp.value=punt2(s.value*tas)
        totl()
}
function prd2(codp)
{
        x=codp.name
        z=x.substr(17,2)
        reg=(nhd+ncd*nrd+2)/1+z*(ncd+1)/1
        y=document.facturadeventa.elements[(reg-1)]
        w=document.facturadeventa.elements[(reg+1)]
        s=document.facturadeventa.elements[(reg+5)]
        q=document.facturadeventa.elements[(reg+6)]
	//alert("reg="+reg+" x="+x+" z="+z+" reg="+reg+" y="+y.name+" w="+w.name+" s="+s.name)
        if(codp.value!="" &&  codp.value!=" ") { y.value=codp.value; w.value=codp.value; s.value=prc[codp.value]; q.value=und[codp.value]}
        else { w.value="";y.value="";s.value="";q.value="" }
        document.facturadeventa.elements[(reg+7)].value=""
        document.facturadeventa.elements[(reg+8)].value=""
        document.facturadeventa.elements[(reg+9)].value=""
	if(codp.value=="000000")
        {
                d=document.facturadeventa.elements[(reg+2)]
                w.hidden=true
                d.type = "text"
                d.size=42
        }
        else
        {
                d=document.facturadeventa.elements[(reg+2)]
                d.type = "hidden"
                w.hidden=false
        }

        totl()
}
function prd3(codp)
{
        x=codp.name
        z=x.substr(17,2)
        reg=(nhd+ncd*nrd+3)/1+z*(ncd+1)/1
        y=document.facturadeventa.elements[(reg-2)]
        w=document.facturadeventa.elements[(reg-1)]
        s=document.facturadeventa.elements[(reg+3)]
        sp=document.facturadeventa.elements[(reg+4)]
        q=document.facturadeventa.elements[(reg+5)]
	//alert("reg="+reg+" x="+x+" z="+z+" reg="+reg+" y="+y.name+" w="+w.name+" s="+s.name+" q.name="+q.name+" codp.value="+und[codp.value])
        if(codp.value!="" &&  codp.value!=" ") { w.value=sku[codp.value]; y.value=codp.value; s.value=prc[codp.value]; q.value=und[codp.value]}
        else { w.value="";y.value="";s.value="";q.value="" }
        document.facturadeventa.elements[(reg+6)].value=""
        document.facturadeventa.elements[(reg+7)].value=""
        document.facturadeventa.elements[(reg+8)].value=""
        if(codp.value=="000000")
        {
                d=document.facturadeventa.elements[(reg+1)]
                codp.hidden=true
                d.type = "text"
                d.size=42
        }
        else
        {
                d=document.facturadeventa.elements[(reg+1)]
                d.type = "hidden"
                codp.hidden=false
                d.size=42
        }
	sp.value=punt2(s.value*tas)
        totl()
}
function calct(codp)
{
	//if(codp.value > 30) codp.value=""
        x=codp.name
        z=x.substr(17,2)
        reg=(nhd+ncd*nrd)/1+z*(ncd+1)/1
	alert(x + " z=" +z)
        a =document.getElementById("cantidad"+z) // Cantidad
        b =document.getElementById("precio"+z) // Precio
        c =document.getElementById("descuentp"+z) // Descuento
        d =document.getElementById("totallinea"+z) // Total

	//alert(a.id+"="+a.value+":"+b.id+"+"+b.value+":"+c.id+"="+c.value+":")

        f =document.facturadeventa.elements[reg+15] // Descuento Monto
        h =document.facturadeventa.elements[reg+16] // Descuento
        k =document.facturadeventa.elements[reg+17] //Total
        d.value=a.value*b.value*(100-c.value)/100
        f.value=a.value*b.value*c.value/100
	if(f.value) alert ("desc:"+f.value+ " f="+ f.id+ " "+f.name)
        if(d.value==0) d.value=""
        else d.value=punt(d.value)
        totl()
}
function punt0(h)
{
        sig=""
        if (h/1 <0) { sig="-" ;h *= -1 }
        h = h/1 + .005
        h=h + ""
        sp=h.split(".")
        if(sp[1]==undefined) sp[1]="00"
        sp[1]=sp[1].substr(0,2)
        zz=sp[0].toString()
        r=zz.length
        xx=""
        for (i=r;i>3;i -=3) xx= "." + zz.substr(i-3,3)+ xx
        if(r<4) xx= zz.substr(0,r)
        else xx= zz.substr(0,i)+ xx
        return(sig+xx)
}
function punt2(h)
{
        sig=""
        if (h/1 <0) { sig="-" ;h *= -1 }
        h = h/1 + .005
        h=h + ""
        sp=h.split(".")
        if(sp[1]==undefined) sp[1]="00"
        sp[1]=sp[1].substr(0,2)
        return(sig+sp[0]+"."+sp[1])
}
function punt(h)
{
	if(h/1==0||h=="NaN") return ("")
        sig=""
        if (h/1 <0) { sig="-" ;h *= -1 }
        h = h/1 + .5
        h=h + ""
        sp=h.split(".")
	if(sp[1]!=undefined)
        sp[1]=sp[1].substr(0,4)
	else sp[1]="0000"
        return(sig+sp[0])
}

function punto(h)
{
        sig=""
        h = h/1 + .00005
        h=h + ""
        sp=h.split(".")
        if(sp[1]==undefined) sp[1]="0000"
        sp[1]=sp[1].substr(0,4)
        return(sig+sp[0]+"."+sp[1])
}
function totl()
{
        swapin()
        sume=0
        suma=0
        sumc=0
        sumd=0
        sumi=0
        sumt=0
        for(i=0;i<nrd;i++)
        {
                row=nhd+ncd*i
                if(document.facturadeventa.elements[row/1].value!="")
		{
			sumc +=(document.facturadeventa.elements[row/1+8].value)/1
			if (document.facturadeventa.elements[row/1+4].value/1)
			sume +=(document.facturadeventa.elements[row/1+10].value)/1
			else suma +=(document.facturadeventa.elements[row/1+10].value)/1
		}
        }
	dg=document.facturadeventa.facturadeventaH08.value/1
	if(dg >50)
	{
		alert("NO SE PERMITE MAS DE UN 50% DE DESCUENTO\r\rSOBRE ESTE VALOR SE CONSIDERA COMO DESCUENTO GLOBAL")
		dga=suma*dg/(suma+sume)
		dge=sume*dg/(suma+sume)
	}
	else
	{
		dga=suma*dg/100
		dge=sume*dg/100
	}
	sumd=dga+dge
	sumn=suma
	sumi=(sumn-dga)*.19+.5
	sumx =dge-dga
	sumt =sumn+sume+sumi-sumd
        if(!sumc) document.facturadeventa.cant.value=""
        else document.facturadeventa.cant.value=punt0(sumc)
        if(!sumn) document.facturadeventa.net.value=""
        else { document.facturadeventa.net.value=punt0(sumn)
	if(tas!=undefined) document.facturadeventa.neto.value=punt(sumn*tas)
	}
        if(!sume)  document.facturadeventa.exen.value=""
        else { document.facturadeventa.exen.value=punt0(sume)
	if(tas!=undefined) document.facturadeventa.exeno.value=punt(sumx*tas)
	}
        if(!sumd) document.facturadeventa.dgb.value=""
        else { document.facturadeventa.dgb.value=punt0(sumd)
	if(tas!=undefined) document.facturadeventa.dgbo.value=punt(sumd*tas)
	}
	if(!sumi) document.facturadeventa.iva.value=""
        else { document.facturadeventa.iva.value=punt0(sumi)
	if(tas!=undefined) document.facturadeventa.ivao.value=punt(sumi*tas)
	}
        if(!sumt) document.facturadeventa.total.value=""
        else { document.facturadeventa.total.value=punt0(sumt)
	if(tas!=undefined) document.facturadeventa.totalo.value=punt(sumt*tas)
	}
}
function emision()
{
	swapin()
 document.facturadeventa.action = "./emisiondte.cgi"; 
 document.facturadeventa.submit()
}
function extrad(x)
{

	z=x.id
	//alert(z+" "+x.name)
	rr=z.substr(9,2)
	
	z0="producto"+z.substr(10-1)
	z1=document.getElementById(z0)
	zz1=z1.options[z1.selectedIndex].text

	z0="description"+z.substr(10-1)
	z2=document.getElementById(z0)
	zz2=z2.options[z2.selectedIndex].text
	z0="extradescr"+z.substr(10-1)
	z3=document.getElementById(z0)
	zz3=z3.value
	//alert("z0="+z0 +" z1="+z1.value+" zz1="+zz1+" zz2="+zz2+" zz3="+zz3)
	row=nhd+ncd*rr+1
	lreg=nhd+nrd*ncd+rr*(ncd+1)
        vari="../extradescription.html?"+row+"|"+lreg
        if(z1.value!="")
        {
                param="width=450,height=280,top=350,left=240,location=no,toolbar=no,menubar=no,titlebar=no,scrollbars=no,resizable=no,mimimizable=no,dialog=no"
                var obj_calwindow = window.open(vari,"",param)
        }
}
if(document.facturadeventa.elements[0].value!="") totl()
function refer()
{
        vari="../referenciasDTE.html"
        if(document.facturadeventa.elements[3].value!="")
        {
                param="width=900,height=410,top=350,left=240,location=no,toolbar=no,menubar=no,titlebar=no,scrollbars=no,resizable=no,mimimizable=no,dialog=no"
                var obj_calwindow = window.open(vari,"",param)
        }
}
if(document.facturadeventa.elements[0].value!="")
for (i=0;i<lin;i++)
{
        reg=(nhd+ncd*nrd+1)/1+i*(ncd+1)/1
	if(document.facturadeventa.elements[reg].value=="000000")
	{
		w=document.facturadeventa.elements[(reg+2)]
                d=document.facturadeventa.elements[(reg+3)]
                w.hidden=true
                d.type = "text"
                d.size=48
        }
}
