/// <summary> /// Responds to the users request to Save /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSave_Click(object sender, EventArgs e) { var oController = new ScheduledSqlJobsController(); JobScheduleInfo oInfo; if (hfJobId.Value.Equals("-1")) { oInfo = new JobScheduleInfo(); oInfo.JobScheduleId = -1; oInfo.NextJobRun = System.DateTime.Now.AddMinutes(2); oInfo.LastJobRun = System.DateTime.Now; } else { //Load the values oInfo = oController.GetJobScheduleItemById(int.Parse(hfJobId.Value)); } //Load the rest oInfo.JobFrequencyType = ddlJobFrequency.SelectedValue; oInfo.JobFrequencyValue = int.Parse(txtJobFrequency.Text); oInfo.JobScript = lblJobScriptDisplay.Text; oInfo.JobTitle = ddlJobType.Text; oInfo.JobTypeId = int.Parse(ddlJobType.SelectedValue); //Save it oController.SaveJobScheduleItem(oInfo); //Update BindJobsGrid(); //Cancel btnCancel_Click(sender, e); }
protected void btnDelete_Click(object sender, EventArgs e) { var oCOntroller = new ScheduledSqlJobsController(); oCOntroller.DeleteJobType(this.JobId); BindJobs(); btnCancel_Click(sender, e); }
private void BindJobs() { var oController = new ScheduledSqlJobsController(); var oJobs = oController.GetEditableJobTypes(); if (oJobs == null) { oJobs = new List <JobTypeInfo>(); } dgrExistingJobs.DataSource = oJobs; dgrExistingJobs.DataBind(); }
/// <summary> /// This method is used to bind the jobs to the grid /// </summary> private void BindJobsGrid() { var oController = new ScheduledSqlJobsController(); var oJobs = oController.GetJobSchedule(); if (oJobs == null) { oJobs = new List <JobScheduleInfo>(); } dgrJobs.DataSource = oJobs; dgrJobs.DataBind(); }
/// <summary> /// This method will update the job type information /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ddlJobType_SelectedIndexChanged(object sender, EventArgs e) { if (ddlJobType.SelectedIndex >= 0) { var oController = new ScheduledSqlJobsController(); var oType = oController.GetJobTypeById(int.Parse(ddlJobType.SelectedValue)); lblJobDescriptionDisplay.Text = oType.JobDescription; lblJobScriptDisplay.Text = oType.CannedProcedure; } else { lblJobDescriptionDisplay.Text = ""; lblJobScriptDisplay.Text = ""; } }
protected void btnSave_Click(object sender, EventArgs e) { var oController = new ScheduledSqlJobsController(); var oInfo = new JobTypeInfo { CannedProcedure = txtCannedProcedure.Text, IsCannedJob = false, JobDescription = txtJobDescription.Text, JobTitle = txtJobTitle.Text, JobTypeId = this.JobId }; oController.SaveJobType(oInfo); BindJobs(); btnCancel_Click(sender, e); }
protected void dgrExistingJobs_ItemCommand(object source, DataGridCommandEventArgs e) { if (e.CommandName.Equals("Edit")) { var jobTypeId = int.Parse(e.Item.Cells[0].Text); var oController = new ScheduledSqlJobsController(); var oInfo = oController.GetJobTypeById(jobTypeId); JobId = oInfo.JobTypeId; txtJobTitle.Text = oInfo.JobTitle; txtJobDescription.Text = oInfo.JobDescription; txtCannedProcedure.Text = oInfo.CannedProcedure; btnDelete.Visible = true; pnlView.Visible = false; pnlEdit.Visible = true; } }
protected void Page_Load(object sender, EventArgs e) { try { ScheduleInstaller.ModuleConfiguration = ModuleConfiguration; if (!IsPostBack) { if (UserInfo.IsSuperUser) { //Show proper panel pnlViewJobs.Visible = true; //Bind lookup items var oController = new ScheduledSqlJobsController(); var oTypes = oController.GetJobTypes(); ddlJobType.DataSource = oTypes; ddlJobType.DataTextField = "JobTitle"; ddlJobType.DataValueField = "JobTypeId"; ddlJobType.DataBind(); //Localize grid Localization.LocalizeDataGrid(ref dgrJobs, this.LocalResourceFile); Localization.LocalizeDataGrid(ref dgrHistory, this.LocalResourceFile); //Fill the grid BindJobsGrid(); //Ensure first type is loaded ddlJobType_SelectedIndexChanged(sender, e); } else { //Show host only warning pnlHostOnly.Visible = true; ScheduleInstaller.Visible = false; } } } catch (Exception ex) { Exceptions.ProcessModuleLoadException(this, ex); } }
/// <summary> /// This method handles edit and delete /// </summary> /// <param name="source"></param> /// <param name="e"></param> protected void dgrJobs_ItemCommand(object source, DataGridCommandEventArgs e) { var oController = new ScheduledSqlJobsController(); var jobId = int.Parse(e.Item.Cells[0].Text); //Take action if (e.CommandName.Equals("Edit")) { //Set id hfJobId.Value = jobId.ToString(); //Get items to load var oInfo = oController.GetJobScheduleItemById(jobId); ddlJobType.SelectedValue = oInfo.JobTypeId.ToString(); ddlJobType_SelectedIndexChanged(this, EventArgs.Empty); txtJobFrequency.Text = oInfo.JobFrequencyValue.ToString(); ddlJobFrequency.SelectedValue = oInfo.JobFrequencyType; //Swap views pnlViewJobs.Visible = false; pnlAddEditJobs.Visible = true; } else if (e.CommandName.Equals("Delete")) { //Delete oController.DeleteJobScheduleItem(jobId); //Rebind BindJobsGrid(); } else if (e.CommandName.Equals("History")) { var oHistory = oController.GetJobScheduleHistory(jobId); if (oHistory == null) { oHistory = new List <JobScheduleHistoryInfo>(); } dgrHistory.DataSource = oHistory; dgrHistory.DataBind(); pnlViewJobs.Visible = false; pnlJobHistory.Visible = true; } else if (e.CommandName.Equals("Run")) { //Manually run job var oJob = oController.GetJobScheduleItemById(jobId); var oJobInfo = oController.GetJobTypeById(oJob.JobTypeId); var result = ""; var isSuccess = true; try { int rows = oController.ExecuteJob(oJob.JobScript, oJobInfo.IsCannedJob); result = "Success<br />" + rows.ToString() + " rows afected"; } catch (Exception ex) { isSuccess = false; result = "Error: " + ex.Message; } //Update the entry and insert history oController.InsertJobScheduleHistory(oJob.JobScheduleId, DateTime.Now, isSuccess, result); DotNetNuke.UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("RunSuccess", this.LocalResourceFile), DotNetNuke.UI.Skins.Controls.ModuleMessage.ModuleMessageType.GreenSuccess); } }