コード例 #1
0
        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);
        }