/// <summary> /// Recalculate model results /// </summary> /// <param name="sender"></param> /// <param name="e"></param> #if false private void RecalculateModelResultsMenuItem_Click(object sender, EventArgs e) { DataRow dr; UcdbDatabase ucdb, ucdb2; UserObject uo; int ri; if (!GetFocusedUo(out ri, out dr, out ucdb, out uo)) { return; } ucdb2 = Udbs.SelectDatabaseHeader(ucdb.DatabaseId); // get new form of database if (ucdb2 == null) { return; // shouldn't happen } if (Udbs.UpdateIsRunning(ucdb2)) { MessageBoxMx.ShowError("Update is currently running"); return; } UcdbModel[] models = Udbs.SelectDatabaseModels(ucdb.DatabaseId); if (models.Length == 0) { MessageBoxMx.ShowError("No models for database"); return; } ucdb2.PendingCompoundCount = ucdb2.CompoundCount; ucdb2.PendingCompoundId = 0; ucdb2.PendingUpdateDate = DateTime.MinValue; ucdb2.PendingStatus = UcdbWaitState.ModelPredictions; ucdb2.RowState = UcdbRowState.Modified; Udbs.UpdateDatabase(ucdb2); foreach (UcdbModel model in models) { model.PendingStatus = UcdbWaitState.ModelPredictions; model.RowState = UcdbRowState.Modified; } Udbs.UpdateDatabaseModelAssoc(ucdb2, models); string command = "UpdateUcdbModelResults Pending " + ucdb2.DatabaseId; CommandLine.StartBackgroundSession(command); ucdb2.PendingUpdateDate = DateTime.Now; // set value assuming background process started; dr["Ucdb"] = ucdb2; SetupDataRow(dr, ucdb2); }