protected void botMigrateModel_Click(object sender, EventArgs e) { lblStatus.Text = "Start Migration"; DBHelper.ConnectionString = txtSourceConnection.Text; ModeloCompetencias _modelo = ModeloCompetencias.getDBModelo("JC", int.Parse(DDLModelos.SelectedValue)); // agora vai criar o modelo na base de dados de produção _modelo.loadFull("JC", null); DBHelper.ConnectionString = this.txtDestConnection.Text; // cria o modelo ModeloCompetencias NovoModelo = new ModeloCompetencias(); NovoModelo = _modelo; NovoModelo.reset(); NovoModelo.updateDBModelo("JC"); for (int i = 0; i < _modelo.Familias.Count; i++) { FamiliaCompetencias novaFam = new FamiliaCompetencias(NovoModelo); novaFam = NovoModelo.Familias.Values[i]; novaFam.Modelo = NovoModelo; novaFam.reset(); novaFam.SortIndex = i; novaFam.cloneDBFamilia("JC"); for (int j = 0; j < _modelo.Familias.Values[i].Competencias.Count; j++) { Competencia novaComp = new Competencia(); novaComp = NovoModelo.Familias.Values[i].Competencias.Values[j]; novaComp.reset(); novaComp.SortIndex = j; novaComp.Familia = novaFam; novaComp.cloneDBCompetencia("JC"); for (int k = 0; k < _modelo.Familias.Values[i].Competencias.Values[j].Praticas.Count; k++) { Pratica novaPrat = new Pratica(); novaPrat = NovoModelo.Familias.Values[i].Competencias.Values[j].Praticas.Values[k]; novaPrat.Competencia = novaComp; novaPrat.reset(); novaPrat.SortIndex = k; novaPrat.cloneDBPratica("JC"); for (int l = 0; l < _modelo.Familias.Values[i].Competencias.Values[j].Praticas.Values[k].Perguntas.Count; l++) { Pergunta novaPerg = new Pergunta(); novaPerg = NovoModelo.Familias.Values[i].Competencias.Values[j].Praticas.Values[k].Perguntas.Values[l]; novaPerg.reset(); novaPerg.Pratica = novaPrat; novaPerg.SortIndex = l; novaPerg.cloneDBPergunta("JC"); } } } } lblStatus.Text = "Migration Ended"; // depois volta a colocar a limpar a coisa DBHelper.ConnectionString = ""; }
public Pergunta(Pratica prat) { pratica = prat; perguntaID = -1; }
public Pergunta Copy(Pratica prat) { Pergunta perg = new Pergunta(); perg.TextoBase = this.textoBase; perg.Name = this.name; perg.tipoPergunta = this.tipoPergunta; perg.valor = this.valor; perg.ponderador = this.ponderador; perg.Codificacao = this.Codificacao; perg.Pratica = prat; return perg; }
public void updatePratica(Pratica pratComp) { foreach (Pratica prat in praticas.Values) { if (prat.PraticaID == pratComp.PraticaID) { praticas[prat.SortIndex] = pratComp; break; } } }
public void removePratica(Pratica prat) { SqlConnection conn = new SqlConnection(DBHelper.ConnectionString); SqlCommand command = new SqlCommand(); command.Connection = conn; command.CommandText = "removePratica"; command.CommandType = System.Data.CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter("praticaID", prat.PraticaID)); command.Parameters.Add(new SqlParameter("competenciaID", competenciaID)); conn.Open(); command.ExecuteNonQuery(); conn.Close(); praticas.Remove(prat.PraticaID); }
/// <summary> /// Carrega práticas desta competência /// </summary> public bool loadPraticas(string owner) { SqlConnection conn = new SqlConnection(DBHelper.ConnectionString); SqlCommand command = new SqlCommand(); command.Connection = conn; command.CommandText = "getPraticas"; command.CommandType = System.Data.CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter("competenciaID", competenciaID)); command.Parameters.Add(new SqlParameter("familiaID", familia.FamiliaID)); command.Parameters.Add(new SqlParameter("modeloID", familia.Modelo.ModeloID)); command.Parameters.Add(new SqlParameter("owner", owner)); SqlDataAdapter da = new SqlDataAdapter(command); DataSet ds = new DataSet(); conn.Open(); da.Fill(ds); conn.Close(); if (ds.Tables[0].Rows.Count <= 0) return false; Pratica prat; int allow; foreach (DataRow dr in ds.Tables[0].Rows) { prat = new Pratica(); prat.CreationDate = Convert.ToDateTime(dr["creationDate"]); prat.Description = Convert.IsDBNull(dr["Description"]) ? null : Convert.ToString(dr["Description"]); prat.IntroText = Convert.IsDBNull(dr["IntroText"]) ? null : Convert.ToString(dr["IntroText"]); prat.Name = Convert.ToString(dr["Name"]); prat.PublicName = Convert.ToString(dr["PublicName"]); prat.PraticaID = Convert.ToInt32(dr["ID"]); prat.SortIndex = Convert.ToInt32(dr["sortIndex"]); allow = Convert.IsDBNull(dr["AllowComments"]) ? 0 : Convert.ToInt32(dr["AllowComments"]) == 0 ? 0 : 1; prat.AllowRespondentComments = allow == 0 ? false : true; prat.CommentsText = Convert.IsDBNull(dr["CommentsText"]) ? null : Convert.ToString(dr["CommentsText"]); allow = Convert.IsDBNull(dr["criticalidade"]) ? 0 : Convert.ToInt32(dr["criticalidade"]) == 0 ? 0 : 1; prat.Criticalidade = allow == 0 ? false : true; if(prat.Criticalidade) prat.CriticalidadeScale = Convert.IsDBNull(dr["criticalidadeScale"]) ? null : Convert.ToString(dr["criticalidadeScale"]); prat.NR = Convert.IsDBNull(dr["NR"]) ? false : true; prat.CriticalidadeText = Convert.IsDBNull(dr["criticalidadeText"]) ? null : Convert.ToString(dr["criticalidadeText"]); prat.Competencia = this; addPratica(prat); } return true; }
public bool addPratica(Pratica prat) { if (!praticas.ContainsKey(prat.SortIndex)) praticas.Add(prat.SortIndex, prat); else return false; return true; }
public void translate(Pratica praticaTraduzida) { Pratica prat = praticaTraduzida; this.Description = prat.Description; this.IntroText = prat.introText; this.Name = prat.Name; this.PublicName = prat.publicName; this.CommentsText = prat.commentsText; this.Criticalidade = prat.criticalidade; this.CriticalidadeScale = prat.criticalidadeScale; this.CriticalidadeText = prat.criticalidadeText; this.criticalidadeText = prat.CriticalidadeText; // então vamos traduzir o modelo foreach (Pergunta perg in Perguntas.Values) { perg.translate(praticaTraduzida.Perguntas[perg.SortIndex]); } }
public Pratica Copy(Competencia comp) { Pratica prat = new Pratica(); prat.CreationDate = this.creationDate; prat.Description = this.description; prat.IntroText = this.introText; prat.Name = this.name; prat.PublicName = this.publicName; prat.AllowRespondentComments = this.allowRespondentComments; prat.CommentsText = this.commentsText; prat.Criticalidade = this.criticalidade; prat.CriticalidadeScale = this.criticalidadeScale; prat.NR = this.NR; prat.CriticalidadeText = this.criticalidadeText; prat.Competencia = comp; return prat; }
protected void addNewPratica() { ModeloCompetencias currModelo; FamiliaCompetencias currFamilia; Competencia currCompetencia; Pratica novaPratica; currCompetencia = (Competencia)Session["selectedObject"]; currFamilia = currCompetencia.Familia; currModelo = currFamilia.Modelo; novaPratica = new Pratica(currCompetencia); selectedObject = novaPratica; Session["selectedObject"] = selectedObject; Session.Add("mode", "ADD_NEW"); View selView; selView = PraticaView; if (selView != null) { MView.SetActiveView(selView); } else { MView.Visible = false; commonDataFieldsTable.Visible = false; } updateCommonFields(); updateSpecialFields(); }