var arreglo;
var indice;
var grid;

function preparaEnvio(url,ind,grd){
   indice=ind;
   grid=grd;
   send(url);
}

function send(url){
  if (window.XMLHttpRequest){
    xmlhttp=new XMLHttpRequest();
    xmlhttp.onreadystatechange=state_Change;
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
  }

  else if (window.ActiveXObject){
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    if (xmlhttp){
      xmlhttp.onreadystatechange=state_Change;
      xmlhttp.open("GET",url,true);
      xmlhttp.send();
    }
  }
}

function state_Change()
{
	 if (xmlhttp.readyState==4){
    if (xmlhttp.status==200){
			 procesarResultado(xmlhttp.responseXML.documentElement);
    }
    else{
		   alert(xmlhttp.status+'\n'+xmlhttp.statusText);
    }
  }
}

function procesarResultado(xml){
		 if(xml.getElementsByTagName('resultado')[0].text.indexOf('exito')>=0){
            if(xml.getElementsByTagName('tipo')[0].text.indexOf('grid')>=0){
						   	 gestionarGrid(xml.getElementsByTagName('celda'));
						}
		 }
}

function gestionarGrid(xml){
		 var ind=obj.getSelectionProperty("index");
		 for(i=0;i<xml.length;i++){
		    for(j=0;j<xml[i].childNodes.length;j++){
						myData[ind][xml[i].getElementsByTagName('indice')[0].text]=xml[i].getElementsByTagName('valor')[0].text;
				}
		 }
		 obj.refresh();
}

function insertRow(){
		 var fila = new Array(myColumns.length);
		 for(i=0;i<fila.length;i++){
		 		fila[i]="";
		 }
		 myData.splice(myData.length,0,fila);
		 obj.setRowProperty("count", myData.length);
		 obj.refresh();

}

function deleteRow(){
		 var i=obj.getSelectionProperty("index");
		 myData.splice(i,1);
		 obj.setRowProperty("count", myData.length);
		 obj.refresh();

}


function appendForm(form){
        var objHtml;
        for(i=0;i<form.elements.length;i++){
          form.elements[i].disabled=true;
        }
        for(i=0;i<myData.length;i++){
          for(j=0;j<myData[i].length;j++){
              objHtml=document.createElement('INPUT');
              objHtml.setAttribute('type','hidden');
              objHtml.setAttribute('name',myColumns[j]);
              objHtml.setAttribute('value',myData[i][j]);
              form.appendChild(objHtml);
          }
        }
}

function reporte(variable){
	var forma = parent.document.createElement('FORM');
        forma.setAttribute('action',reportAction);
        forma.setAttribute('method','post');
        appendForm(forma);
        objHtml=document.createElement('INPUT');
        objHtml.setAttribute('type','hidden');
        objHtml.setAttribute('name','dispatch');

        if(variable=='pdf'){
            objHtml.setAttribute('value','reportePDF');
        }
        else if(variable=='excel'){
            objHtml.setAttribute('value','reporteExcel');
        }
        else if(variable=='html'){
            objHtml.setAttribute('value','reporteHtml');
        }
        forma.appendChild(objHtml);
        parent.document.body.appendChild(forma);
        forma.submit();
}
