public string ObtieneTablasRelacionadas(String tablas) { string respuesta = "{\"resp\":{\"listaGen\":"; string resp1 = ""; string sep = ""; if (tablas != "") { string[] words = tablas.Split('|'); ArrayList listaTablas = new ArrayList(); int cont; for (cont = 0; cont < words.Length; cont++) { if (words[cont] != "") { listaTablas.Add(words[cont]); } } ArrayList colbd = new ArrayList(); colbd = ServiciosGen.getTablasRelacionadas(listaTablas); cont = 0; while (cont < colbd.Count) { ArrayList reg = new ArrayList(); reg = (ArrayList)colbd[cont]; resp1 = resp1 + sep + "\"" + ((string)reg[1]) + "\" "; sep = ","; cont++; } respuesta = respuesta + "[" + resp1 + "], \"respuesta\":\"Exito\"}}"; } else { respuesta = respuesta + "[], \"respuesta\":\"Error\", \"Error\":\"Error\"}}"; } return(respuesta); }
protected void AgregaTablaBase_Click(object sender, EventArgs e) { if ((TablasBD.Items.Count > 0) && (TablasBD.SelectedIndex > -1)) { if (TablaBaseSel.Items.Count == 0) { aliasTaSel.Clear(); } CamposTalbaBaseSel.Items.Clear(); if (aliasTaSel.IndexOf("alias" + TablasBD.SelectedItem.Text /*+idTablas*/) < 0) { TablaBaseSel.Items.Add(TablasBD.SelectedItem.Text); aliasTaSel.Add("alias" + TablasBD.SelectedItem.Text /*+idTablas*/); idTablas++; // TablasBD.Items.RemoveAt(TablasBD.SelectedIndex) ArrayList colTBS = new ArrayList(); int cont = 0; while ((cont < TablaBaseSel.Items.Count)) { colTBS.Add(TablaBaseSel.Items[cont].Text); cont++; } ArrayList colbd = new ArrayList(); colbd = ServiciosGen.getTablasRelacionadas(colTBS); cont = 0; TablasBD.Items.Clear(); while (cont < colbd.Count) { ArrayList reg = new ArrayList(); reg = (ArrayList)colbd[cont]; TablasBD.Items.Add((string)reg[1]); cont++; } } } agregaFiltros(); }
protected void QuitaTablaBase_Click(object sender, EventArgs e) { CamposTalbaBaseSel.Items.Clear(); if ((TablaBaseSel.Items.Count > 0) && (TablaBaseSel.SelectedIndex > -1)) { //Elimina relaciones de todas las listas string nombreTabla = TablaBaseSel.SelectedItem.Text; ArrayList listaTablasCampos = ((ArrayList)Session["tablasCampos"]); for (int index = 0; index < listaTablasCampos.Count; index++) { if ((string)listaTablasCampos[index] == nombreTabla) { ArrayList filtrosTablasAlias = ((ArrayList)Session["filtrosTablasAlias"]); for (int index2 = 0; index2 < filtrosTablasAlias.Count; index2++) { if ((string)filtrosTablasAlias[index2] == nombreTabla) { ((ArrayList)Session["filtrosTablasAlias"]).RemoveAt(index2); ((ArrayList)Session["filtrosSinAlias"]).RemoveAt(index2); ((ArrayList)Session["filtrosConAlias"]).RemoveAt(index2); ((ArrayList)Session["filtrosCampos"]).RemoveAt(index2); CamposSeleccionadosFin.Items.RemoveAt(index2); filtrosTablasAlias = ((ArrayList)Session["filtrosTablasAlias"]); index2 = -1; } } ((ArrayList)Session["tablasCampos"]).RemoveAt(index); ((ArrayList)Session["campos"]).RemoveAt(index); ((ArrayList)Session["aliasCampos"]).RemoveAt(index); CamposSeleccionados.Items.RemoveAt(index); nomTaCamSel.RemoveAt(index); index = -1; listaTablasCampos = ((ArrayList)Session["tablasCampos"]); } } TablasBD.Items.Add(TablaBaseSel.SelectedItem.Text); aliasTaSel.RemoveAt(TablaBaseSel.SelectedIndex); TablaBaseSel.Items.RemoveAt(TablaBaseSel.SelectedIndex); ArrayList colTBS = new ArrayList(); int cont = 0; while (cont < TablaBaseSel.Items.Count) { colTBS.Add(TablaBaseSel.Items[cont].Text); cont++; } if (TablaBaseSel.Items.Count > 0) { //Quitar condicíón cuando la tabla de relaciones este completa ArrayList colbd = new ArrayList(); colbd = ServiciosGen.getTablasRelacionadas(colTBS); cont = 0; TablasBD.Items.Clear(); while ((cont < colbd.Count)) { ArrayList reg = new ArrayList(); reg = (ArrayList)colbd[cont]; TablasBD.Items.Add((String)reg[1]); cont++; } } //Quitar condicíón cuando la tabla de relaciones este completa else //Quitar condicíón cuando la tabla de relaciones este completa { nomCamSel.Clear(); nomTaCamSel.Clear(); nomTaSel.Clear(); aliasTaSel.Clear(); CamposSeleccionados.Items.Clear(); principal(); }//Quitar condicíón cuando la tabla de relaciones este completa } else { aliasTaSel.Clear(); nomTaCamSel.Clear(); } agregaFiltros(); }