public void scheduledexports_ItemCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e) { System.Web.UI.WebControls.DataList dl_scheduledexports = (DataList)this.FindControl("scheduledexports_list"); string master_id = dl_scheduledexports.DataKeys[e.Item.ItemIndex].ToString(); scheduledexports = (DataTable)Session["scheduledMasterexports"]; DataRow scheduledexport = scheduledexports.Rows.Find(master_id); if ((bool)scheduledexport["enabled"]) { //string questionnaire_name = String.Format("{0}/{1} ({2})", scheduledexport["country_name"].ToString(), scheduledexport["language_name"].ToString(), scheduledexport["qid_title"].ToString()); string schedule_day = scheduledexport["schedule_day"].ToString(); if (schedule_day == "") { schedule_day = "7"; } string command = e.CommandName; switch(command) { case "edit": //Session["schedule_id"] = schedule_id; //Session["campaign_name"] = scheduledexport["campaign_code_FK"].ToString(); //Session["questionnaire_name"] = questionnaire_name; //Session["country_FK"] = scheduledexport["country_FK"].ToString(); //Session["mode"] = scheduledexport["schedule_mode"].ToString(); //Session["day"] = schedule_day; Session["recipient"] = scheduledexport["recipient_email"].ToString(); MasterReport mrd = new MasterReport(permss.EmailAddress); mrd.Dto.MasterRptId = int.Parse(master_id); mrd.Dto.MasterName = scheduledexport["master_name"].ToString(); mrd.Dto.ScheduleMode = Migration.ConvertToScheduleMode(scheduledexport["schedule_mode"].ToString()); mrd.Dto.ScheduleDay = int.Parse(schedule_day); mrd.Dto.RecipientEmail = scheduledexport["recipient_email"].ToString(); mrd.SetHeadings(scheduledexport["master_element_headings"].ToString()); mrd.Dto.MElementType = scheduledexport["master_element_types"].ToString(); Session["MasterSch"] = mrd; Session["scheduled"] = true; this.Response.Redirect("edit_scheduled_MasterReport.aspx?content=edit"); break; case "delete": Session["master_id_name"] = String.Format("{0} ", scheduledexport["master_name"].ToString()); Session["master_id"] = master_id; this.Response.Redirect("delete_scheduled_Masterexport.aspx"); break; default: break; } } else { error_table.Visible = true; } }
private void Page_Load_edit() { // Put user code to initialize the page here string e_ttl = exp ? "Edit a scheduled export of master report" : "Edit an export of master report"; page_utilities.Set_titles(this, e_ttl); //string mid = string.Empty; //if (Request.QueryString["mid"] != null) //{ // mid = Request.QueryString["mid"].ToString(); //} index_MasterReport MasterrptNow = null; if (!IsPostBack) { if (Context.Handler.GetType().Name.Equals("datamgmt_index_masterreport_aspx")) { if ((index_MasterReport)Context.Handler != null) { MasterrptNow = (index_MasterReport)Context.Handler; MaterRptId.Value = Convert.ToString(MasterrptNow.MstrId); } } } Hashtable h_masterparams = new Hashtable(); string countriesQ = null; string countriesP = null; if (permss.UserType != UserType.Admin) { countriesQ = String.Empty; countriesP = String.Empty; if (permss.ListOfPermitedCountriesQuestionnaire != null && permss.ListOfPermitedCountriesQuestionnaire.Count > 0) { for (int i = 0; i < permss.ListOfPermitedCountriesQuestionnaire.Count; i++) { if (i != 0) { countriesQ += ","; } countriesQ += permss.ListOfPermitedCountriesQuestionnaire[i].Country; } } if (permss.ListOfPermitedCountriesProcessor != null && permss.ListOfPermitedCountriesProcessor.Count > 0) { for (int i = 0; i < permss.ListOfPermitedCountriesProcessor.Count; i++) { if (i != 0) { countriesP += ","; } countriesP += permss.ListOfPermitedCountriesProcessor[i].Country; } } } h_masterparams.Add("type", Migration.ConvertUserTypeToString(permss.UserType)); h_masterparams.Add("countriesQ", countriesQ); h_masterparams.Add("countriesP", countriesP); DataTable MasterReportNames = DB.execProc("select_masterreports", h_masterparams); DataRow[] MasterName = null; Int32 Masterrpt_id = 0; if (MasterReportNames != null) { if (MasterReportNames.Rows.Count > 0) { if (int.TryParse(MaterRptId.Value, out Masterrpt_id)) MasterName = MasterReportNames.Select("master_id = '" + Masterrpt_id + "'"); } } if (MasterName.ToString().Trim().Length > 0) { mrd = new MasterReport(permss.EmailAddress); mrd.Dto.MasterRptId = int.Parse(MasterName[0]["master_id"].ToString()); mrd.Dto.MasterName = MasterName[0]["master_name"].ToString(); mrd.SetHeadings(MasterName[0]["master_element_headings"].ToString()); mrd.Dto.MElementType = MasterName[0]["master_element_types"].ToString(); mrd.Dto.Creator = MasterName[0]["creator"].ToString(); mrd.Dto.RecipientEmail = MasterName[0]["recipient_email"].ToString(); mrd.Dto.ScheduleMode = Migration.ConvertToScheduleMode(MasterName[0]["schedule_mode"].ToString()); int scheduleDay = 0; if (int.TryParse(MasterName[0]["schedule_day"].ToString(), out scheduleDay)) { mrd.Dto.ScheduleDay = scheduleDay; } else { mrd.Dto.ScheduleDay = null; } mrd.Dto.IsScheduled = Convert.ToBoolean(MasterName[0]["isScheduled"].ToString()); if (!IsPostBack) { mName.Text = mrd.Dto.MasterName.Trim(); savemasterreport.Checked = true; } //attach questions mrd.Dto.MasterQ = MasterReport.GetMasterQuestions(mrd.Dto.MasterRptId); if (mrd.Dto.MasterQ.Count > 0) { //bind heading if (!IsPostBack) { if (mrd.Dto.MElementHeading.Count > 0) { dtl1.DataSource = mrd.Dto.MElementHeading; dtl1.DataBind(); } else { lbl2.Text = "No variable column exists for this Questionnaire/s."; }//btnUpdHd.Enabled = false; } } //bind ques if (!IsPostBack) { dg1.DataSource = mrd.Dto.MasterQ; dg1.DataBind(); } pnlQuest.Visible = true; pnlTimeFrame.Visible = true; } if (exp) { schedule_mode.Items.FindByValue(mrd.Dto.ScheduleMode.ToString()).Selected = true; if (schedule_mode.SelectedItem.Value == "w") { schedule_day.Enabled = true; schedule_day.SelectedItem.Selected = false; schedule_day.Items.FindByValue(mrd.Dto.ScheduleDay.ToString()).Selected = true; } #region load recepient if (permss.UserType == UserType.Admin) { admin_behalf.Visible = true; dd_possible_users.Enabled = true; #region load dd_user and select if possible Hashtable h_params = new Hashtable(); h_params.Add("masterID", Masterrpt_id); DataTable DtFinalUsers = DB.execProc("select_users_permitted_for_masterreport", h_params); dd_possible_users.DataSource = DtFinalUsers; dd_possible_users.DataTextField = "useremail"; DataRow addingRow; addingRow = DtFinalUsers.NewRow(); addingRow["useremail"] = "-- Please choose... --"; DtFinalUsers.Rows.InsertAt(addingRow, 0); dd_possible_users.DataBind(); string recipient = string.Empty; ListItem found_user = dd_possible_users.Items.FindByText(recipient); if (found_user != null) { dd_possible_users.SelectedItem.Selected = false; found_user.Selected = true; } else { tb_recipient.Text = recipient; } #endregion } } #endregion if (!IsPostBack) { #region load campaigns List<CampaignDto> listOfCampaigns = new List<CampaignDto>(); listOfCampaigns.Add(new CampaignDto() { CampaignCode = "-- Please choose... --" }); List<CampaignDto> tempCamp = CampaignFacade.SelectCampaignsByCodeCountriesTypeAndIndicatorIfEmpty(null, countriesQ, countriesP, 0); if (tempCamp != null && tempCamp.Count > 0) listOfCampaigns.AddRange(tempCamp); campaign_list.DataSource = listOfCampaigns; campaign_list.DataValueField = "CampaignCode"; campaign_list.DataBind(); campaign_list.Items[0].Selected = true; #endregion } } if (!IsPostBack) mrd_local = mrd; }
private void SendNow(MasterReport mrd) { mrd.Dto.MasterQ = MasterReport.GetMasterQuestions(mrd.Dto.MasterRptId); if (!mrd.ValidateMaster()) { List<MasterQuestionnaireDto> lst = new List<MasterQuestionnaireDto>(); lst = FormRegistry.MasterReportDao.GetMasterQuestionnaires(mrd.Dto.MasterRptId); string Questionnaire_ID=""; for (int i = 0; i < lst.Count; i++) { Questionnaire_ID = Questionnaire_ID + lst[i].QId.ToString() + ","; } _qid = Questionnaire_ID.Substring(0, (Questionnaire_ID.Length - 1)); DateTime from = Convert.ToDateTime(mFrom.Text); DateTime until = Convert.ToDateTime(mUntil.Text); //TODO Susann change to also recognize responses received after (milliseconds) 23:59:59,000 //until = until.AddHours(23).AddMinutes(59).AddSeconds(59); until = until.AddDays(1d); mrd.Dto.From = from; mrd.Dto.To = until; //Fill the updated headings from Master Report string mstRptHeadings = FormRegistry.MasterReportDao.GetMasterElementHeadings(mrd.Dto.MasterRptId); if (!string.IsNullOrEmpty(mstRptHeadings)) mrd.SetHeadings(mstRptHeadings); Server.Transfer("process_response_email.aspx"); } else { #region create and send email MailMessage msg = new MailMessage(); //.NET 1.1: msg.BodyFormat = MailFormat.Html; msg.IsBodyHtml = true; //.NET 1.1: msg.From = email_from; msg.From = new MailAddress(utility.getParameter("email_sender")); //.NET 1.1: msg.To = report_params.permss_user; //MailAddressCollection to = msg.To; utility.set_Mail_address(ref msg, "to", mrd.Dto.Creator); //to.Add(report_params.permss_user); msg.Subject = String.Format("RFG - FAILURE - combined response file report for master report {0}", mrd.Dto.MasterName); #region building emails content (information about the responsefiles) string mail_text = @" <style> body {font-family:""Arial"";font-weight:normal;font-size:10pt;color:black;} table {font-family:""Arial"";font-weight:normal;font-size:10pt;color:black;} p {font-family:""Arial"";font-weight:normal;color:black;margin-top: -5px} b {font-family:""Arial"";font-weight:bold;color:black;margin-top: -5px} H1 { font-family:""Arial"";font-weight:normal;font-size:14pt;color:black } H2 { font-family:""Arial"";font-weight:normal;font-size:10pt;color:maroon } H3 { font-family:""Arial"";font-weight:normal;font-size:10pt;color:darkgreen } pre {font-family:""Arial Console"";font-size: .9em} .head{ font-family:""Arial"";font-weight:bold;font-size:10pt;color:red } .marker {font-weight: bold; color: black;text-decoration: none;} .version {color: gray;} .error {margin-bottom: 10px;} .expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; } </style>"; mail_text = String.Format("{0}<span><p>Hello {1},<br><br>", mail_text, mrd.Dto.Creator); string txt = "there is a configuration error for the below master report you should receive. Due to this error a report can not be generated.<br><span class=head>Please get in touch with {1} in order to fix the configuration error.</span><br><br><table border=1>"; mail_text = String.Format("{0}" + txt, mail_text, mrd.Dto.Creator.ToString()); if (mrd.Dto.MasterRptId > 1) mail_text = String.Format("{0}<tr><td width=100>Master Report Name:</td><td><b>{1}(mid = {2})</b> </td></tr>", mail_text, mrd.Dto.MasterName, mrd.Dto.MasterRptId.ToString()); else mail_text = String.Format("{0}<tr><td width=100>Master Report Name:</td><td><b>{1}{2}</b> </td></tr>", mail_text, mrd.Dto.MasterName, ""); //} mail_text = String.Format("{0}<tr><td>from: </td><td><b>{1}</b></td></tr>", mail_text, mrd.Dto.From.ToString()); mail_text = String.Format("{0}<tr><td>until: </td><td><b>{1}</b></td></tr>", mail_text, mrd.Dto.To.HasValue ? mrd.Dto.To.Value.AddDays(-1d).ToString() : mrd.Dto.To.ToString()); mail_text = String.Format("{0}<tr><td>number of records<br>in response file: </td><td><b>{1}</b></td></tr><br>", mail_text, 0); string str = ""; mrd.Dto.MasterQ.ForEach(delegate(MasterQuestionnaireDto mq) { str = string.Format("{4}{0}-{1}({2}={3})<br>", mq.CName, mq.QName, "qid", mq.QId.ToString(), str); }); mail_text = String.Format("{0}<tr><td>list of questionnaires/<br>processors contained<br>in this master report: </td><td><b>{1}</b></td></tr></table><br>", mail_text, str); mail_text = String.Format("{0}<br>Regards,<br>Your RFG-team</p></span>", mail_text); #endregion msg.Body = mail_text; //.NET 1.1: SmtpMail.Send(msg); SmtpClient smtp = new SmtpClient(utility.getParameter("smtp")); smtp.Send(msg); msg.Dispose(); #endregion } }
public void scheduledexports_ItemCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e) { System.Web.UI.WebControls.DataList dl_scheduledexports = (DataList)this.FindControl("scheduledexports_list"); string master_id = dl_scheduledexports.DataKeys[e.Item.ItemIndex].ToString(); DataRow scheduledexport = scheduledexports.Rows.Find(master_id); //if ((bool)scheduledexport["enabled"]) //{ //string questionnaire_name = String.Format("{0}/{1} ({2})", scheduledexport["country_name"].ToString(), scheduledexport["language_name"].ToString(), scheduledexport["qid_title"].ToString()); MasterReport mrd = new MasterReport(permss.EmailAddress); mrd.Dto.MasterRptId = int.Parse(master_id); _mstrId = int.Parse(master_id); _mstrName = scheduledexport["master_name"].ToString(); mrd.Dto.MasterName = scheduledexport["master_name"].ToString(); mrd.Dto.ScheduleMode = Migration.ConvertToScheduleMode(scheduledexport["schedule_mode"].ToString()); //mrd.Schedule_Day = 7; mrd.Dto.RecipientEmail = scheduledexport["recipient_email"].ToString(); //if (!string.IsNullOrEmpty(scheduledexport["from"].ToString())) // mrd.Dto.From = (DateTime)scheduledexport["from"]; //else mrd.Dto.From = null; //if (!string.IsNullOrEmpty(scheduledexport["to"].ToString())) // mrd.Dto.To = (DateTime)scheduledexport["to"]; //else mrd.Dto.To = null; mrd.SetHeadings(scheduledexport["master_element_headings"].ToString()); mrd.Dto.MElementType = scheduledexport["master_element_types"].ToString(); string command = e.CommandName; switch(command) { case "edit": Server.Transfer("edit_scheduled_MasterReport.aspx?content=edit"); break; case "delete": Server.Transfer("delete_scheduled_Masterexport.aspx"); break; case "send": Server.Transfer("MasterReportNow.aspx"); break; case "schedule": Server.Transfer("MasterReportScheduled.aspx"); break; default: break; } //} //else //{ // error_table.Visible = true; //} }