protected void btnCreateAgent_Click(object sender, EventArgs e) { string agentName = "BackupAgent_" + txbAgentName.Text; double hour = 0; double.TryParse(txbHour.Text, out hour); DateTime startDate = DateTime.Now.Date; BXSchedulerAgent agent = BXSchedulerAgent.GetByName(agentName); if (agent != null) { lblError.Text = string.Format("Агент с именем \"{0}\" уже существует", agentName); return; } else { lblError.Text = ""; } if (string.IsNullOrEmpty(txbAgentName.Text)) { lblError.Text = string.Format("Введите правильный имя агента", hour); return; } if (hour == 0) { lblError.Text = string.Format("Введите правильный интервал", hour); return; } try { int h = int.Parse(txbStartTime.Text.Split(':')[0].TrimStart('0')); int m = int.Parse(txbStartTime.Text.Split(':')[1].TrimStart('0')); if (h >= 0 && h < 24 && m >= 0 && m < 60) { startDate = startDate.AddHours((double)h); startDate = startDate.AddMinutes((double)m); } else { lblError.Text = string.Format("Введите правильный начало", hour); return; } } catch { lblError.Text = string.Format("Введите правильный начало", hour); return; } BuckupOptions option = GetOption(); agent = new BXSchedulerAgent(agentName); agent.Parameters["BackupOptions"] = ToBase64(option); agent.Period = TimeSpan.FromHours(hour); agent.Periodic = true; agent.StartTime = startDate; agent.SetClassNameAndAssembly(typeof(Bitrix.Modules.BackupAgentExecutor)); agent.Save(); AgentGridView.DataBind(); }