/*  File name   :general.js
    Description :It administers all public functions common in the application.

    Observation :
    Author      : German Arroyave
    Date        : 2006/01/02

    arguments   :
    IN/OUT      Variable                        Type                    Description
    IN

    Return      :
    OUT

    History of modifications
   
*/
	// Definition of the errorhandler for the Grid. In case of an error the function would print out the error message to the errorSpan.
	
	var urlServletReporte = "";
	var blnGenerarReporte = 1;
	
	//FUNCIONES PARA SELECCIONAR EL TIPO DE REPORTE QUE SE DESEA GENERAR	
	function fnSelTipoReporte(){
        document.all.spnTipoReporte.style.display = '';   
    }
    
    function fnGenerarTipoReporte(){    	
    	var tpoReporte='PDF';
	    if(document.all.tipoReporte.value!='PDF') tpoReporte='XLS';
	    urlServletReporte += '&tipoReporte='+tpoReporte;

        //document.all.divDtail.style.display = "none";
		if(formTipoReporte.validate()!=null) return;

		//LLAMAR AL SERVLET
		if ( blnGenerarReporte == 1 ){
			document.frmeDownload.location.href=urlServletReporte;
		} else {
			fnContinuarFuncion();
		}
		
    	document.all.spnTipoReporte.style.display = 'none';
    	setTimeout("fnDeleteBlankReg('myGrid',0)",500);
    	setTimeout("cerrarVentana()",3000);    	
    }
	
	function fnErrorHandler(strGrid) {
		//eval("alert("+strGrid + ".object.lastError);");
		//errorSpan.innerHTML	= 
	}
	
	function fnClearErrorHandler() {
		errorSpan.innerHTML = "";
	}
	
	function fnOnBeforeInsert(strGrid, strI){
		if(strI != 'S'){
			alert("Usted no posee privilegios para INSERTAR registros, contacte al administrador.");
			return(false);
		}
		
		return(fnValidateRow(strGrid));
	}
	
	function fnOnBeforeDelete(strB){
		if(strB != 'S'){
			alert("Usted no posee privilegios para BORRAR registros, contacte al administrador.");
			return(false);
		}
		return(true);
	}
	
	function fnOnBeforeEdit(strGrid, strM){
	    var objGrid = eval(strGrid+".object;");
	    var xk = objGrid.getKey(objGrid.getRow());
	    var FieldMap    = objGrid.makeFieldMap();
        xNode   = objGrid.oXML.documentElement.selectSingleNode("*[@xk = '"+xk+"']");
        
        if(xNode.getAttribute(FieldMap["ID"].substring(1))!=null){
            if(strM == "S"){
    			return(true);
    		}
    		else{
    		    alert("Usted no posee privilegios para MODIFICAR, contacte al administrador.");
    			return(false);
    		}    
        }
        
	}
	
	function fnOnBeforeSave(strGrid){
	    if (fnValidateRow(strGrid)) {
			abrirVentana('1', "Guardando...");
			return(true);
		} else {
			return(false);
		}
	    
	}
	
	function fnOnAfterSave(strGrid) {
		eval(strGrid+".object.GetPage(0);");
		
		if(eval(strGrid+".object.lastError") != ""){
			eval("alert("+strGrid+".object.lastError);");
		}	
		setTimeout("cerrarVentana()",3000);
		setTimeout("fnDeleteBlankReg('"+strGrid+"')",500);

	}
	
	function fnGenerateKey(strGrid) {
		// get the latest key from the server
		return Number(eval(strGrid + ".object.rowCount()+1"));
	}
	
	

	function fnValidateRow(strGrid){
	    var strMessage	= "Debe ingresar los campos: ";
		var FieldsNotIn = 0;
		
		for (i = 0; i < eval(strGrid + ".object.columnCount()"); i++) {
			if (eval(strGrid + ".object.columns[" + i + "].Required") != "FALSE"){
				if (eval(strGrid + ".object.columns[" + i + "].type") != "NUMBER") {
					if (eval(strGrid + ".object.columns[" + i + "].onvalidate") != undefined) {
						if (eval(strGrid + ".object.getCellValue(" + eval(strGrid + ".object.rowCount()-1") + ",i)") == "") {
							FieldsNotIn++;
							strMessage = strMessage + eval(strGrid + ".object.columns[" + i + "].msg") + ' | ';
						}else{
						  if (eval(strGrid + ".object.getCellValue(" + eval(strGrid + ".object.rowCount()-1") + ",i)") == " ") {
							FieldsNotIn++;
							strMessage = strMessage + eval(strGrid + ".object.columns[" + i + "].msg") + ' | ';
						}
						}
					}
					if(eval(strGrid + ".object.rowCount()") > 0){
    					if (eval(strGrid + ".object.columns[" + i + "].Validation") != undefined){
    					    var p1 = "'"+eval(strGrid + ".object.getCellValue(" + eval(strGrid + ".object.rowCount()-1") + ",i)")+"'";
    					    var p2 = eval(strGrid + ".object.columns[" + i + "].Validation");
    					    msg = eval(strGrid + ".object.columns[" + i + "].msgValidation");
    					    eval("var Val = eval(p1+p2)?true:false;");
    					    if(!Val){
    					        alert(msg);
    						    return false;
    					    }
    					}
					}	
				} else {
					if (eval(strGrid + ".object.getCellValue(" + eval(strGrid + ".object.rowCount()-1") + ",i)") < 0) {
							FieldsNotIn++;
							strMessage = strMessage + eval(strGrid + ".object.columns[" + i + "].msg") + ' | ';
					}
					if(eval(strGrid + ".object.rowCount()") > 0){
					    if (eval(strGrid + ".object.columns[" + i + "].Validation") != undefined){
    					    var p1 = eval(strGrid + ".object.getCellValue(" + eval(strGrid + ".object.rowCount()-1") + ",i)");
    					    var p2 = eval(strGrid + ".object.columns[" + i + "].Validation");
    					    msg = eval(strGrid + ".object.columns[" + i + "].msgValidation");
    					    eval("var Val = eval(p1+p2)?true:false;");
    					    if(!Val){
    					        alert(msg);
    						    return false;
    						}
    					}
					}	
				}
			}	
		}
        
		if (FieldsNotIn > 0) {
			alert(strMessage);
			return(false);
		}
		
		return(true);
	}
	
	function fnOnValidate(strGrid) {
		if (eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].type") != "NUMBER") {
			if (eval(strGrid + ".object.getCellValue( " + eval(strGrid + ".object.getRow()") + "," + eval(strGrid + ".object.getColumn()") + ")") == "") {
				alert("Debe ingresar "+ eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msg"));
				return(false);
			}
			if (eval(strGrid + ".object.getCellValue( " + eval(strGrid + ".object.getRow()") + "," + eval(strGrid + ".object.getColumn()") + ")") == " ") {
				alert("Debe ingresar "+ eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msg"));
				return(false);
			}
		} else {
		    if (eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].Validation") != undefined){
		    	var p1 = eval(strGrid + ".object.getCellValue( " + eval(strGrid + ".object.getRow()") + "," + eval(strGrid + ".object.getColumn()") + ")");
			    var p2 = eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].Validation");
			    msg = eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msgValidation");
			    eval("var Val = eval(p1+p2)?true:false;");
			    
			    if(!Val){
			    	alert(msg);
			        //alert("Debe ingresar un valor " +p2 + " en el campo "+eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msg"));
			        return false;
			    }
			}
			if (eval(strGrid + ".object.getCellValue( " + eval(strGrid + ".object.getRow()") + "," + eval(strGrid + ".object.getColumn()") + ")") <= 0) {
				alert("Debe ingresar "+ eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msg"));
				return(false);
			}
		}
		
		return(true);
	}
    
	function fnValidationField(strGrid) {
	    if (eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].Validation") != undefined){
	    	var p1 = eval(strGrid + ".object.getCellValue( " + eval(strGrid + ".object.getRow()") + "," + eval(strGrid + ".object.getColumn()") + ")");
		    var p2 = eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].Validation");
		    msg = eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msgValidation");
		    eval("var Val = eval(p1+p2)?true:false;");
		    
		    if(!Val){
		    	alert(msg);
		        //alert("Debe ingresar un valor " +p2 + " en el campo "+eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msg"));
		        return false;
		    }
		}
		if (eval(strGrid + ".object.getCellValue( " + eval(strGrid + ".object.getRow()") + "," + eval(strGrid + ".object.getColumn()") + ")") < 0) {
			alert("Debe ingresar "+ eval(strGrid + ".object.columns[" + eval(strGrid + ".object.getColumn()") + "].msg"));
			return(false);
		}
		return(true);
	}
	
	function fnGetLookUpId(strGrid, strFielTrgt) {
        var objGrid = eval(strGrid+".object;");
        var LookupFldId = objGrid.getSelectedLookupColumn("ID");
        
        if (LookupFldId != null) {
	        var xk = objGrid.getKey(objGrid.getRow());
	        var FieldMap    = objGrid.makeFieldMap();
	        
	        xNode   = objGrid.oXML.documentElement.selectSingleNode("*[@xk = '"+xk+"']");
	        xNode.setAttribute(FieldMap[strFielTrgt].substring(1),LookupFldId);
        }
        
        return true;
    }
    
    String.prototype.trim = function() {
	   return this.replace(/^\s+|\s+$/g,"");
    }
    //****************************************************************************************
    //AJAX
    
	var XMLCompany;
  	//************************************* FUNCIONES DE SOPORTE *************************************************

    var failure = function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);
    }

    function LoadXmlFile(xmlFile, cbFun)
    {
        var xdoc;

        if( window.ActiveXObject && /Win/.test(navigator.userAgent) )
        {
            xdoc = new ActiveXObject("Microsoft.XMLDOM");
            xdoc.async = false;
            xdoc.load(xmlFile);
            cbFun(xdoc);
        }
        else if( document.implementation && document.implementation.createDocument )
        {
            xdoc = document.implementation.createDocument("", "", null);
            xdoc.load(xmlFile);
            xdoc.onload = function() { cbFun(xdoc); }
        }
        else
            return alert("No se puede cargar archivo");
    }
    
    function parseXML (strXml)
    {
     	if ( window.DOMParser )
        {
            var xmlDoc = document.implementation.createDocument("", "", null);
            var dparser = new DOMParser();
            xmlDoc = dparser.parseFromString( strXml, "application/xml" );
            if ( ! xmlDoc ) return;
        }
        else if ( window.ActiveXObject )
        {
            var xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
            xmlDoc.async = false;
            xmlDoc.loadXML( strXml );
        }
        return ( xmlDoc );
    }

    function getXMLNodeSerialisation(xmlNode)
    {
        var strText = "";
        if ( window.XMLSerializer )
        {
            // Gecko-based browsers, Safari, Opera, Mozilla.
            var serializer = new XMLSerializer();
            strText = serializer.serializeToString(xmlNode);
        }
        else if ( window.ActiveXObject )
            // Internet Explorer.
            strText = xmlNode.xml;
        return ( strText );
    }

    function AddNodeParent(oXMLChildNodes)
    {
    	var xml = '<ROWSET></ROWSET>';
        var xmlDoc = parseXML(xml);
        var oRoot  = xmlDoc.documentElement;
        var DataNode = oRoot.selectNodes("//ROWSET");
        oRoot.appendChild(oXMLChildNodes);
        return ( oRoot );
    }

	function fnFillLookUpFromXML(oRoot, strSelect, strID, strDescription)
    {
		var nodes   = oRoot.selectNodes("//ROW");
		
		myNewOption = new Option(" ", "NULL");
		$(strSelect).options[0] = myNewOption;
		if (nodes.length > 0)
        {
            for (i = 0; i <= nodes.length-1; i++)
            {
                strValueID          = "";
			    strValueDescription = "";
			    strValueID          = nodes[i].selectSingleNode(strID+"/text()").nodeValue;
			    strValueDescription = nodes[i].selectSingleNode(strDescription+"/text()").nodeValue;
			    myNewOption         = new Option(strValueDescription, strValueID);
			    $(strSelect).options[i+1] = myNewOption;
            }
		}
	}

    function xmlTree(xmlNode,ident){
        var treeTxt=""; //var to content temp
        for(var i=0;i<xmlNode.childNodes.length;i++)
        {//each child node
            if(xmlNode.childNodes[i].nodeType == 1)
            {//no white spaces
                //node name
                treeTxt += ident + xmlNode.childNodes[i].nodeName + ": "
                if(xmlNode.childNodes[i].childNodes.length==0)
                {
                    //no children. Get nodeValue
                    treeTxt += xmlNode.childNodes[i].nodeValue
                    for(var z=0;z<xmlNode.childNodes[i].attributes.length;z++)
                    {
                        var atrib = xmlNode.childNodes[i].attributes[z];
                        treeTxt += " (" + atrib.nodeName + " = " + atrib.nodeValue + ")";
                    }
                    treeTxt += "<br />\n";
                }
                else if (xmlNode.childNodes[i].childNodes.length>0)
                {
                    //children. get first child
                    treeTxt = treeTxt + xmlNode.childNodes[i].firstChild.nodeValue;
                    for(var z=0;z<xmlNode.childNodes[i].attributes.length;z++)
                    {
                        var atrib = xmlNode.childNodes[i].attributes[z];
                        treeTxt += " (" + atrib.nodeName + " = " + atrib.nodeValue + ")";
                    }
                    //recursive to child of children
                    treeTxt += "<br />\n" + xmlTree(xmlNode.childNodes[i],ident + "> > ");
                }
            }
        }
        return treeTxt;
    }

 	/*function fnxmlAlert(xmlTable)
    {
		var DataXML;
		var DataNode;
		var start;
		var end;

		DataXML   = xmlTable; //document.all(xmlTable).XMLDocument;
		DataNode  = DataXML.selectNodes("//ROWSET/ROW");

		if ((DataXML.text.substr(3,4)=="ORA-") || (DataXML.text.substr(2,7)=="EIS-GRL")){

		if  (DataNode.length < 1) { return(true); }
		start = DataNode(0).selectSingleNode("DESCRIPTION").text.indexOf(':') + 1;
		end =  DataNode(0).selectSingleNode("DESCRIPTION").text.length - start ;

		alert(DataNode(0).selectSingleNode("DESCRIPTION").text.substr(start,end));
		return(DataNode(0).selectSingleNode("CODE").text);
		}

		return(0);
	}*/
 	
 	function fnGetXmlTag(xmlTable, strTag) {
		
		DataNode  = xmlTable.selectNodes("//ROWSET/ROW");
		
		if  (DataNode.length < 1) { return(-1); }
		
		if(DataNode(0).selectSingleNode(strTag) != null){
			return(DataNode(0).selectSingleNode(strTag).text);
		}	
		return(-1);
	}
	
 	function fnxmlAlert(xmlTable) {
		
		DataNode  = xmlTable.selectNodes("//ROWSET/ROW");
		
		if  (DataNode.length < 1) { return(0); }
		
		if(DataNode(0).selectSingleNode("CODE") != null){
			alert(DataNode(0).selectSingleNode("DESCRIPTION").text);
			return(DataNode(0).selectSingleNode("CODE").text);
		}	
		
		if(DataNode(0).selectSingleNode("MSGCODE") != null){
			alert(DataNode(0).selectSingleNode("MSGDESCRIPTION").text);
			return(DataNode(0).selectSingleNode("MSGCODE").text);
		}	
		return(0);
	}
	
	function BuildXML(strUser, strPass, strDB, strPackage, strXML)
    {
        var nodeTag, nodeText;
		var xml = '<ROW></ROW>';
        var xmlDoc = parseXML(xml);
        var oRoot  = xmlDoc.documentElement;
        var DataNode = oRoot.selectNodes("//ROW");

		if ( ! DataNode[0].selectSingleNode("PACKAGE") ){
            nodeTag  = xmlDoc.createElement("PACKAGE");
            nodeText = xmlDoc.createTextNode(strPackage);
            nodeTag.appendChild(nodeText);
            oRoot.appendChild(nodeTag);
		}
		else
			DataNode[0].selectSingleNode("PACKAGE/text()").nodeValue = strPackage;

		if ( ! DataNode[0].selectSingleNode("USER") ){
            nodeTag  = xmlDoc.createElement("USER");
            nodeText = xmlDoc.createTextNode(strUser);
            nodeTag.appendChild(nodeText);
            oRoot.appendChild(nodeTag);
		}
		else
			DataNode[0].selectSingleNode("USER/text()").nodeValue = strUser;

		if ( ! DataNode[0].selectSingleNode("PASSWORD") ){
            nodeTag  = xmlDoc.createElement("PASSWORD");
            nodeText = xmlDoc.createTextNode(strPass);
            nodeTag.appendChild(nodeText);
            oRoot.appendChild(nodeTag);
		}
		else
			DataNode[0].selectSingleNode("PASSWORD/text()").nodeValue = strPass;

		if ( ! DataNode[0].selectSingleNode("DB") ){
            nodeTag  = xmlDoc.createElement("DB");
            nodeText = xmlDoc.createTextNode(strDB);
            nodeTag.appendChild(nodeText);
            oRoot.appendChild(nodeTag);
		}
		else
			DataNode[0].selectSingleNode("DB/text()").nodeValue = strDB;

		if(strXML != undefined){

			strXML = strXML.replace(/\</g, "[");
			strXML = strXML.replace(/\>/g, "]");

			if ( ! DataNode[0].selectSingleNode("XML") ){
                nodeTag  = xmlDoc.createElement("XML");
                nodeText = xmlDoc.createTextNode(strXML);
                nodeTag.appendChild(nodeText);
                oRoot.appendChild(nodeTag);
			}
			else
				DataNode[0].selectSingleNode("XML/text()").nodeValue = strXML;
		}
		return(oRoot);
    }

    String.prototype.trim = function() 
	{
	  return this.replace(/^\s*(\b.*\b|)\s*$/, "$1");
	}
	
	function delay(milisegundos)
	{
		for(i=0;i<=milisegundos;i++)
		{
			setTimeout('return 0',1);
		}
	}

	function fnDeleteBlankReg(strGrid, Field){
		if(Field == undefined){ Field = 1; }
		if (eval(strGrid + ".object.getCellValue(0,"+Field+") ") == " " || eval(strGrid + ".object.getCellValue(0,"+Field+") ") == "") {
  			var objGrid = eval(strGrid+".object;");
			var oRows       = document.getElementById("rows"+objGrid.element.uniqueID);
  			var oFreezeRows = document.getElementById("freezerows"+objGrid.element.uniqueID);
    		var tmp         = oRows.children(0);
    		objGrid.deactivateCell();
    		tmp.outerHTML   = "";
		}
 	}

 	function abrirVentana(ventana, strMsg)
	{
		if (ventana=="1")
		{
			document.getElementById("capaFondo1").style.visibility="visible";
		}
		else if (ventana=="2")
		{
			document.getElementById("capaFondo1").style.visibility="hidden";
		}
		spnMensaje.innerText = strMsg;
		document.getElementById("capaVentana").style.visibility="visible";
		//document.formulario.bAceptar.focus();
	}
	
	function cerrarVentana()
	{
		document.getElementById("capaFondo1").style.visibility="hidden";
		document.getElementById("capaVentana").style.visibility="hidden";
		//document.formulario.bAceptar.blur();
	}
	
	function fnCheckValueXml(XmlNode, strTag)
	{
	    if (XmlNode[0].selectSingleNode(strTag)!=null){
	        return(XmlNode[0].selectSingleNode(strTag).nodeValue);
	    }else{
	        return("");
	    }
	}
	
	function fnMostrarAyuda(modulo){
		var url = "../ayuda/";
		var archivo = "";
		
		switch (modulo){
			//MODULO DE CONFIGURACION
			case "acuerdos": 
				archivo = "Acuerdos.html";
			break;
			case "acuerdosSubpartida": 
				archivo = "AcuerdosporSubpartida.html";
			break;
			case "aduanas": 
				archivo = "Aduanas.html";
			break;
			case "anexos": 
				archivo = "Anexos.html";
			break;
			case "anexosTransaccion": 
				archivo = "AnexosTransaccion.html";
			break;
			case "bloquearTransitorios": 
				archivo = "BloquearTransitorios.html";
			break;
			case "campos": 
				archivo = "Campos.html";
			break;
			case "camposDocumento": 
				archivo = "CamposDocumento.html";
			break;
			case "camposTransaccion": 
				archivo = "CamposTransaccion.html";
			break;
			case "companias": 
				archivo = "Companias.html";
			break;
			case "desprecintos": 
				archivo = "Desprecintos.html";
			break;
			case "embalajes": 
				archivo = "Embalaje.html";
			break;
			case "errores": 
				archivo = "Errores.html";
			break;
			case "estadosFormularios": 
				archivo = "EstadosFormularios.html";
			break;
			case "gruposUsuarios": 
				archivo = "GruposUsuarios.html";
			break;
			case "importador": 
				archivo = "Importador.html";
			break;
			case "tipoPrecinto": 
				archivo = "TipoPrecintos.html";
			break;
			case "transportadoras": 
				archivo = "Transportadoras.html";
			break;
			case "monedas": 
				archivo = "Monedas.html";
			break;
			case "paises": 
				archivo = "Paises.html";
			break;
			case "parametros": 
				archivo = "Parametros.html";
			break;
			case "perfilesOperaciones": 
				archivo = "PerfilesOperacionales.html";
			break;
			case "rechazos": 
				archivo = "Rechazos.html";
			break;
			case "seguimiento": 
				archivo = "Seguimiento.html";
			break;
			case "sia": 
				archivo = "SIA.html";
			break;
			case "subpartidas": 
				archivo = "Subpartidas.html";
			break;
			case "tipoActividades": 
				archivo = "TipoActividades.html";
			break;
			case "tasasCambio": 
				archivo = "TasaCambio.html";
			break;
			case "tiposIngreso": 
				archivo = "TipoIngresos.html";
			break;
			case "tiposItem": 
				archivo = "TipoItem.html";
			break;
			case "tipoMercancia": 
				archivo = "TipoMercancia.html";
			break;
			case "tipoTransacciones": 
				archivo = "TipoTransacciones.html";
			break;
			case "transacciones": 
				archivo = "Transacciones.html";
			break;
			case "transporte": 
				archivo = "Transporte.html";
			break;
			case "unidadesMedida": 
				archivo = "UnidadesMedida.html";
			break;
			case "usuarios": 
				archivo = "Usuarios.html";
			break;
			case "localizaciones": 
				archivo = "Localizaciones.html";
			break;
			case "observacionesCamion": 
				archivo = "ObservacionesCamion.html";
			break;
			//MODULO CAMIONES
			case "capturaPesoIngreso": 
				archivo = "CapturaPesoIngreso.html";
			break;
			case "entradas": 
				archivo = "Entradas.html";
			break;
			case "salidas": 
				archivo = "Salidas.html";
			break;
			case "actasAereas": 
				archivo = "ActasAereas.html";
			break;
			case "actasTransito": 
				archivo = "ActasTransito.html";
			break;
			case "actasTransitoCierre": 
				archivo = "ActasTransitoCierre.html";
			break;
			case "modificarCamiones": 
				archivo = "ModificarCamiones.html";
			break;
			case "controlIngresos": 
				archivo = "ControlIngresos.html";
			break;
			case "entradasRegistroIngreso": 
				archivo = "EntradasRegistroIngresos.html";
			break;
			case "entradasRegistroTransito": 
				archivo = "EntradasRegistroTransito.html";
			break;
			case "verificarTransito": 
				archivo = "VerificarTransito.html";
			break;
			case "usuarioCalificadoConsulta": 
				archivo = "UsuarioCalificadoConsulta.html";
			break;
			case "monitoreoTransito": 
				archivo = "MonitoreoTransito.html";
			break;
			case "usuarioCalificadoCarga": 
				archivo = "UsuarioCalificadoCarga.html";
			break;
			case "usuarioCalificadoDespreciente": 
				archivo = "UsuarioCalificadoDesprecinte.html";
			break;
			case "usuarioCalificadoInventario": 
				archivo = "UsuarioCalificadoInventario.html";
			break;
			case "usuarioCalificadoRegistro": 
				archivo = "UsuarioCalificadoRegistro.html";
			break;
			case "observacionesPorCamion": 
				archivo = "ObservacionesPorCamion.html";
			break;
			case "consultaCamiones": 
				archivo = "ConsultaCamiones.html";
			break;
			//MODULO MONITOREO CAMIONES
			case "monitoreoCamiones": 
				archivo = "MonitoreoCamiones.html";
			break;
			//MODULO VISITANTES
			case "registroPersonas": 
				archivo = "RegistroPersonas.html";
			break;
			case "registroRecepcion": 
				archivo = "RegistroRecepcion.html";
			break;
			case "ingresoVisitantes": 
				archivo = "IngresoVisitantes.html";
			break;
			case "consultaPersonas": 
				archivo = "ConsultaPersonas.html";
			break;
			case "salidaVisitantes": 
				archivo = "SalidaVisitantes.html";
			break;
			//MODULO ITEMS
			case "items": 
				archivo = "Items.html";
			break;			
			case "importarItems":
				archivo = "ImportarItems.html";
			break;
			case "importarComponentes":
				archivo = "ImportarComponentes.html";
			break;
			//MODULO AREAS
			case "solicitudAreas":
				archivo = "SolicitudAreas.html";
			break;
			case "aprovarRechazarSolicitudes":
				archivo = "AprobarRechazarSolicitudes.html";
			break;
			case "consultaSolicitudes":
				archivo = "ConsultaSolicitudes.html";
			break;
			//MODULO ESTADISTICOS
			case "camposPorReporte":
				archivo = "CamposPorReporte.html";
			break;
			case "ejecutarReportes":
				archivo = "EjecutarReportes.html";
			break;
			case "dane":
				archivo = "Dane.html";
			break;
			case "operacionesDiarias":
				archivo = "OperacionesDiarias.html";
			break;
			case "archivosMinisterio":
				archivo = "ArchivosMinisterio.html";
			break;
			//MODULO CONTACTOS COMERCIALES
			case "clientesComerciales":
				archivo = "ClientesComerciales.html";
			break;
			case "ciudadesComerciales":
				archivo = "CiudadesComerciales.html";
			break;
			case "empresasComerciales":
				archivo = "EmpresasComerciales.html";
			break;
			case "alternativaComercial":
				archivo = "AlternativaComercial.html";
			break;
			case "actividadComercial":
				archivo = "ActividadComercial.html";
			break;
			case "tipoProducto":
				archivo = "TipoProducto.html";
			break;
			case "tipoContacto":
				archivo = "TipoContacto.html";
			break;
			case "estadoComercial":
				archivo = "EstadoComercial.html";
			break;
			//MODULO SEGURIDAD
			case "menu":
				archivo = "Menu.html";
			break;
			case "modulos":
				archivo = "Modulos.html";
			break;
			case "modulosGrupoUsuario":
				archivo = "ModulosGrupoUsuario.html";
			break;
			case "objetosPorModulo":
				archivo = "ObjetosPorModulos.html";
			break;
			case "objetosPorGrupoPermiso":
				archivo = "ObjetosPorGrupoPermiso.html";
			break;
			case "reportesPorGrupo":
				archivo = "ReportesPorGrupo.html";
			break;
			case "conexiones":
				archivo = "Conexiones.html";
			break;
			case "cambioContrasena":
				archivo = "CambioContrasena.html";
			break;
			//MODULO MOVIMIENTOS
			case "formularios":
				archivo = "Formularios.html";
			break;
			case "consultaFormularios":
				archivo = "ConsultaFormularios.html";
			break;
			case "certificados":
				archivo = "Certificados.html";
			break;
			case "movimientos":
				archivo = "Movimientos.html";
			break;
			case "ventaServicios":
				archivo = "VentaServicios.html";
			break;
			case "consultaServicios":
				archivo = "ConsultaServicios.html";
			break;
			case "movimientosComponentes":
				archivo = "MovimientosComponentes.html";
			break;
			case "salidasFraccionadas":
				archivo = "SalidasFraccionadas.html";
			break;
			case "consultaSalidasFraccionadas":
				archivo = "ConsultaSalidasFraccionadas.html";
			break;
			case "registroReempaque":
				archivo = "RegistroReempaques.html";
			break;
			case "consultaReempaques":
				archivo = "ConsultaReempaques.html";
			break;
			case "transitorios":
				archivo = "Transitorios.html";
			break;
			case "saldosItem":
				archivo = "SaldosItem.html";
			break;
			case "inspeccionesFisicas":
				archivo = "InspeccionesFisicas.html";
			break;
			//MODULO FACTURACION
			case "planesTarifarios":
				archivo = "PlanesTarifarios.html";
			break;
			case "descuentosTarifas":
				archivo = "DescuentosTarifas.html";
			break;
			case "inspeccionFacturacion":
				archivo = "InspeccionFacturacion.html";
			break;
			case "asociarPlanTarifario":
				archivo = "AsociarPlanTarifario.html";
			break;
			case "facturacionPeriodo":
				archivo = "FacturacionPeriodo.html";
			break;
		}

		ancho = 700;
		alto = 500;
		x = (screen.width - ancho) / 2;
		y = (screen.height - alto) / 2;

		window.open(url + archivo,'Ayuda','height=' + alto + ',width=' + ancho + ',left=' + x + ',top=' + y + ',resizable=no,scrollbars=yes,toolbar=no,status=no');
	}