public AlarmManagerMain(BasicDBServer svr) { m_svr = svr; InitializeComponent(); SoundFiles s = new SoundFiles(svr); this.tabPageSounds.Controls.Add(s); s.Dock = DockStyle.Fill; AlarmDataSet ds = AlarmDataSet.CreateInstance(svr); AlarmSetup s1 = new AlarmSetup(ds); this.tabPageSetup.Controls.Add(s1); s1.Dock = DockStyle.Fill; AlarmQueue q = new AlarmQueue(ds); this.tabPageAlarms.Controls.Add(q); q.Dock = DockStyle.Fill; AlarmDefinition def = new AlarmDefinition(ds); this.tabPageAlarmDef.Controls.Add(def); def.Dock = DockStyle.Fill; }
public AlarmManagerControl(TimeSeriesDatabase db) { InitializeComponent(); m_svr = db.Server; SoundFiles s = new SoundFiles(m_svr); this.tabPageSounds.Controls.Add(s); s.Dock = DockStyle.Fill; AlarmDataSet ds = AlarmDataSet.CreateInstance(db); AlarmSetup s1 = new AlarmSetup(ds); this.tabPageSetup.Controls.Add(s1); s1.Dock = DockStyle.Fill; AlarmQueue q = new AlarmQueue(ds); this.tabPageAlarms.Controls.Add(q); q.Dock = DockStyle.Fill; AlarmDefinitionUI def = new AlarmDefinitionUI(ds); this.tabPageAlarmDef.Controls.Add(def); def.Dock = DockStyle.Fill; AlarmLog log = new AlarmLog(ds); this.tabPageLog.Controls.Add(log); log.Dock = DockStyle.Fill; }
public override global::System.Data.DataSet Clone() { AlarmDataSet cln = ((AlarmDataSet)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = this.SchemaSerializationMode; return(cln); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { AlarmDataSet ds = new AlarmDataSet(); global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); any.Namespace = ds.Namespace; sequence.Items.Add(any); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
private void Save() { this.dataGridViewNotifications.Select(); this.dataGridViewSiteList.Select(); int a1 = AlarmDataSet.DB.SaveTable(alarm_definition); int a2 = AlarmDataSet.DB.SaveTable(alarm_sites); int a3 = AlarmDataSet.SaveEmailAddresses(m_group, this.textBoxEmailList.Text); int total = a1 + a2 + a3; labelStatus.Text = "saved " + total + " rows of data"; Read(); }
public static AlarmDataSet CreateInstance(BasicDBServer server = null) { AlarmDataSet rval; if (server == null) { // create from config files. var db = TimeSeriesDatabase.InitDatabase(new Arguments(new string[] { })); rval = new AlarmDataSet(); rval.m_server = db.Server; } else {// create using server rval = new AlarmDataSet(); rval.m_server = server; } return rval; }
internal void SetGroup(string group) { m_group = group; this.textBoxName.Text = m_group; Read(); // email list var emailList = AlarmDataSet.EmailAddresses(group); this.textBoxEmailList.Text = String.Join(",", emailList); // reports // notifications dataGridViewNotifications.DataSource = alarm_definition; dataGridViewNotifications.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; // site lists (shared for all groups) dataGridViewSiteList.DataSource = alarm_sites; dataGridViewSiteList.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; }
private static int SetupAlarm(AlarmDataSet ds, string group, string cbtt, string pcode, string def) { ds.AddNewAlarmGroup(group); var row = ds.alarm_definition.Newalarm_definitionRow(); row.enabled = true; row.list = group; row.siteid = cbtt; row.parameter = pcode; row.alarm_condition = def; row.clear_condition = ""; row.id = ds.NextID("alarm_definition", "id"); ds.alarm_definition.Addalarm_definitionRow(row); ds.SaveTable(ds.alarm_definition); ds.alarm_recipient.Addalarm_recipientRow(group, 4, "5272", "office", "*****@*****.**"); ds.SaveTable(ds.alarm_recipient); return(row.id); }
public void AboveOrRising() { var db = GetNewDatabase(); var ds = AlarmDataSet.CreateInstance(db); ds.AddNewAlarmGroup("uny"); ds.AddNewAlarmGroup("test"); ds.alarm_definition.Addalarm_definitionRow(true, "uny", "uny", "pc", "above 300 or rising 1", ""); ds.alarm_definition.Addalarm_definitionRow(true, "test", "uny", "pc", "above 400", ""); ds.SaveTable(ds.alarm_definition); ds.alarm_recipient.Addalarm_recipientRow("uny", 4, "5272", "office", "*****@*****.**"); ds.alarm_recipient.Addalarm_recipientRow("test", 5, "5272", "office", "*****@*****.**"); ds.SaveTable(ds.alarm_recipient); Series s = new Series(); s.Parameter = "pc"; s.SiteID = "uny"; s.Add(DateTime.Parse("2016-11-21 02:00"), 38002.12); s.Add(DateTime.Parse("2016-11-21 02:15"), 38005.02); s.Add(DateTime.Parse("2016-11-21 02:30"), 38002.02); s.Add(DateTime.Parse("2016-11-21 02:45"), 38002.02); ds.Check(s); var queue = ds.GetAlarmQueue(); string sql = "siteid = 'uny' " + "AND parameter = 'pc' AND status = 'new'"; Assert.AreEqual(2, queue.Select(sql).Length); }
public AlarmDefinition(AlarmDataSet ds) { InitializeComponent(); m_ds = ds; //RefreshDefinition(); }
private void Read() { alarm_definition = AlarmDataSet.GetAlarmDefinitionTable(m_group); alarm_definition.Columns[0].AutoIncrementSeed = AlarmDataSet.GetNextID("alarm_definition"); alarm_sites = AlarmDataSet.alarm_sites(); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); AlarmDataSet ds = new AlarmDataSet(); global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); any1.Namespace = "http://www.w3.org/2001/XMLSchema"; any1.MinOccurs = new decimal(0); any1.MaxOccurs = decimal.MaxValue; any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any1); global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; any2.MinOccurs = new decimal(1); any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any2); global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute1.Name = "namespace"; attribute1.FixedValue = ds.Namespace; type.Attributes.Add(attribute1); global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute2.Name = "tableTypeName"; attribute2.FixedValue = "alarm_definitionDataTable"; type.Attributes.Add(attribute2); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
public AlarmQueue(AlarmDataSet ds) { InitializeComponent(); this.m_ds = ds; Init(); }
/// <summary> /// make phone calls and send emails // /// </summary> /// <param name="alarm"></param> /// <param name="Alarmvalue"></param> private void CreateAlarm(AlarmDataSet.alarm_definitionRow alarm, Point pt) { var tbl = GetAlarmQueue(alarm.siteid, alarm.parameter); if (tbl.Rows.Count == 1) { Logger.WriteLine("Alarm already active in the queue: " + alarm.siteid + " " + alarm.parameter); return; } SendEmail(alarm, pt); //phone call by inserting into table alarm_queue var row = tbl.Newalarm_phone_queueRow(); row.id = m_server.NextID("alarm_phone_queue", "id"); row.list = alarm.list; row.siteid = alarm.siteid; row.parameter = alarm.parameter; row.value = pt.Value; row.status = "new"; row.status_time = DateTime.Now; row.confirmed_by = ""; row.event_time = pt.DateTime; row.priority = alarm.priority; tbl.Rows.Add(row); m_server.SaveTable(tbl); }
public AlarmLog(AlarmDataSet ds) { InitializeComponent(); this.m_ds = ds; RefreshLog(); }
public AlarmSetup(AlarmDataSet ds) { InitializeComponent(); this.m_ds = ds; }