WizardPage FillPage(Form_Query query) { WizardPage page = new WizardPage(); page.Tag = query; page.Text = query.Query; page.Commit += wizardPage_Commit; page.Controls.Add(AddAnswerToPanel(query.Id_Query)); return(page); }
public Form_Query GetNextQuery(int idvisit, int idquery) { Form_Query formquery = new Form_Query(); int nextquery = GetNextQueryId(idvisit, idquery); if (nextquery > 0) { formquery = GetQuery(nextquery); } return(formquery); }
void wizardPage_Commit(object sender, AeroWizard.WizardPageConfirmEventArgs e) { // If the user hasn't provided a sufficiently long zip code, don't allow the commit DBMethods db = new DBMethods(); int forms_visit_id = 0; #region Save_results Forms forms = db.GetFormsById(271); forms_visit_id = db.SetFormVisit(forms.Id_Form); FlowLayoutPanel flpanel = (FlowLayoutPanel)e.Page.Controls[FlowPanelName]; RadioButton rb = new RadioButton(); foreach (Control cntrl in flpanel.Controls) { rb = (RadioButton)cntrl; if (rb.Checked == true) { db.SetFormAnsAbo(new Form_Ans_Abo() { Id_Query = ((Form_Ans)rb.Tag).Id_Query, Id_Ans = ((Form_Ans)rb.Tag).Id_Ans, Id_Visit = forms_visit_id }); break; } } #endregion #region GetNext Form_Query form_query = db.GetNextQuery(forms_visit_id, ((Form_Ans)rb.Tag).Id_Query); if (form_query.Num_Query != 0) { e.Page.NextPage = wizardControl.Pages.Find(delegate(WizardPage pg) { return(((Form_Query)pg.Tag).Id_Query == form_query.Id_Query); }); } else { e.Page.NextPage = wizardControl.Pages[wizardControl.Pages.Count - 1]; } #endregion }
public int GetNextQueryId(int idvisit, int idquery) { int v_next = 0; using (var db = new SQLiteConnection(conn_string, true)) { int v_count = db.ExecuteScalar <int>(String.Format(@"select count(*) from form_ans_abo where id_visit = {0} and id_query = {1};", idvisit, idquery)); //int v_count1 = db.ExecuteScalar<int>(String.Format(@"select count(*) into v_count_1 from komkoradm.form_query_curs // where id_query = {0} // and count_ans = {1};", // idquery, // v_count)); var form_query_curs_array = db.Query <Form_Query_Curs>(String.Format(@"select * from form_query_curs where id_query = {0} and count_ans = {1};", idquery, v_count)); foreach (var fqc in form_query_curs_array) { //form_query_curs_list.Add(fqc); v_next = fqc.Id_Next_Query; if (v_count > 0) { var form_ans_array = db.Query <Form_Ans_Abo>(String.Format(@"select * from form_ans_abo where id_visit = {0} and id_query = {1};", idvisit, idquery)); foreach (var fa in form_ans_array) { if (!String.Equals(fqc.Var_Ans, String.Format("+{0}+", fa.Id_Ans.ToString()))) { v_next = -3; break; } } } if (v_next > 0) { return(v_next); } } Form_Query fq = GetQuery(idquery); v_next = fq.Num_Query; if (v_next > 0) { return(v_next); } else { v_next = -2; } } return(v_next); }