public void UpdateUDT(int tableIndex, string[] Columns, string[] Values, string primaryColumn, string PrimaryValue) { RefreshUDT(CurrentUDT.NAME); DataTable dtTable = CurrentDataSet.Tables[tableIndex]; DataRow[] dr = dtTable.Select(primaryColumn + "='" + PrimaryValue + "'"); for (int i = 0; i < Columns.Count(); i++) { dr[0][Columns[i]] = Values[i]; } var udtTable = new UdtTable(); udtTable.UDTROWDATA = dr[0].ItemArray.Select(o => o.ToString()).ToList(); udtTable.UdtTableName = dr[0].Table.TableName; List <UdtTable> udtTables = new List <UdtTable> { udtTable }; CurrentUDT.UDTTABLE = udtTables; _mObjUdtHandler.UpadteUdtRow(CurrentUDT); }
public void InsertUDTData(int tableIndex, string[] Columns, string[] Values) { RefreshUDT(CurrentUDT.NAME); DataTable dtTable = CurrentDataSet.Tables[tableIndex]; DataRow dr = dtTable.NewRow(); for (int i = 0; i < Columns.Count(); i++) { dr[Columns[i]] = Values[i]; //delete this } if (dr.Table.Columns.Contains("Visibility") && string.IsNullOrEmpty(Convert.ToString(dr["Visibility"]))) { dr["Visibility"] = true; } if (!Columns.Contains("ID") && dtTable.Columns.Contains("ID")) { DataRow drlast = dtTable.Rows[dtTable.Rows.Count - 1]; int id = 0; if (drlast != null && drlast["ID"] != null) { int.TryParse(Convert.ToString(drlast["ID"]), out id); } id++; dr["ID"] = id; } var udtTable = new UdtTable(); udtTable.UDTPREVIOUSROWDATA = null; udtTable.UDTROWDATA = dr.ItemArray.Select(o => o.ToString()).ToList(); udtTable.UdtTableName = dr.Table.TableName; List <UdtTable> udtTables = new List <UdtTable> { udtTable }; CurrentUDT.UDTTABLE = udtTables; _mObjUdtHandler.AddDefaultRow(CurrentUDT); //Testing merging at same time //sreenath added }