public void modificacion(String tabla, String columna_clave, String clave, DataRow valores) { DataTable fragmentos = dame_fragmentos_de(tabla); foreach (DataRow fragmento in fragmentos.Rows) { Sitio sitio = dame_sitio_del_fragmento(fragmento); List <String> columnas_val = new List <string>(); if (fragmento[TIPO].ToString() == "V") { List <String> columnas_FV = enlista_columnas_FV(fragmento[NOM].ToString()); foreach (String atributo in columnas_FV) { if (atributo != columna_clave) { columnas_val.Add(atributo + "=" + valores[atributo].ToString()); } } } else { int n_columnas = valores.Table.Columns.Count; for (int i = 0; i < n_columnas; i++) { String nom_col = valores.Table.Columns[i].ColumnName; columnas_val.Add(nom_col + "=" + valores[i].ToString()); } } if (columnas_val.Count != 0) { sitio.modifica(fragmento[NOM].ToString(), columna_clave, clave, columnas_val); } else { MessageBox.Show("columnas_val Count = 0"); } } llena_superGrid_de(tabla); }