示例#1
0
        private void MetaData_Load(object sender, EventArgs e)
        {
            DataSensitivityCombo.Items.AddRange(Model.DataSensitivityCode.DisplayOptions());

            using (AdoDataConnection connection = new AdoDataConnection("systemSettings"))
            {
                GSF.Data.Model.TableOperations <PQds.Model.DataSensitivity> dataSensitivityTable = new GSF.Data.Model.TableOperations <PQds.Model.DataSensitivity>(connection);

                if (PQds.Model.DataSensitivity.CodeisGlobal())
                {
                    int?dataSensitivity = null;
                    dataSensitivity = dataSensitivityTable.QueryRecords().First().DataSensitivityCode;

                    if (dataSensitivity != null)
                    {
                        DataSensitivityCombo.SelectedIndex = Array.FindIndex(Model.DataSensitivityCode.DisplayOptions(),
                                                                             item => item == Model.DataSensitivityCode.ToDisplay((int)dataSensitivity));
                    }
                    else
                    {
                        DataSensitivityCombo.SelectedIndex = Array.FindIndex(Model.DataSensitivityCode.DisplayOptions(),
                                                                             item => item == Model.DataSensitivityCode.ToDisplay(-1));
                    }
                }
                else
                {
                    DataSensitivityCombo.Enabled = false;
                }

                if (PQds.Model.DataSensitivity.NoteisGlobal())
                {
                    string dataSensitivityNote = null;
                    dataSensitivityNote = dataSensitivityTable.QueryRecordsWhere("Note <> ''").First().Note;

                    DataSensitivityNoteText.Text = dataSensitivityNote;
                }
                else
                {
                    DataSensitivityNoteText.Enabled = false;
                }
            }
            this.MouseDown += new MouseEventHandler(OnClick);
        }
示例#2
0
        private void GenereateDataSensitivities(string note, int code)
        {
            // If we overwrite we need to create a set of Asset and event IDs that need to create a Data Sesitivity Code
            List <Tuple <int, int> > combinations = new List <Tuple <int, int> >();

            using (AdoDataConnection connection = new AdoDataConnection(connectionstring, dataprovider))
            {
                GSF.Data.Model.TableOperations <PQio.Model.Channel>         channelTbl     = new GSF.Data.Model.TableOperations <PQio.Model.Channel>(connection);
                GSF.Data.Model.TableOperations <PQio.Model.Asset>           assetTbl       = new GSF.Data.Model.TableOperations <PQio.Model.Asset>(connection);
                GSF.Data.Model.TableOperations <PQio.Model.DataSeries>      seriesTbl      = new GSF.Data.Model.TableOperations <PQio.Model.DataSeries>(connection);
                GSF.Data.Model.TableOperations <PQio.Model.DataSensitivity> sensitivityTbl = new GSF.Data.Model.TableOperations <PQio.Model.DataSensitivity>(connection);

                foreach (int assetID in assetTbl.QueryRecords().Select(item => item.ID))
                {
                    foreach (int channelID in channelTbl.QueryRecordsWhere("AssetID = {0}", assetID).Select(item => item.ID))
                    {
                        foreach (int evtID in seriesTbl.QueryRecordsWhere("ChannelID = {0}", channelID).Select(item => item.EventID))
                        {
                            combinations.Add(new Tuple <int, int>(assetID, evtID));
                        }
                    }
                }


                combinations = combinations.Distinct().ToList();

                foreach (Tuple <int, int> item in combinations)
                {
                    if (sensitivityTbl.QueryRecordCountWhere("Event = {0} AND Asset = {1}", item.Item2, item.Item1) == 0)
                    {
                        sensitivityTbl.AddNewRecord(new Model.DataSensitivity()
                        {
                            Asset = item.Item1,
                            Event = item.Item2,
                            DataSensitivityCode = code,
                            Note = note
                        });
                    }
                }
            }
        }
示例#3
0
        private void PQioChannel_Load(object sender, EventArgs e)
        {
            // Populate Combo Boxes
            comboBox1.Items.AddRange(Model.SignalType.DisplayOptions());
            comboBox2.Items.AddRange(Model.MeasurementType.DisplayOptions());
            comboBox3.Items.AddRange(Model.DataSensitivityCode.DisplayOptions());


            if (m_channel.SignalType != null)
            {
                comboBox1.SelectedIndex = Array.FindIndex(Model.SignalType.DisplayOptions(),
                                                          item => item == Model.SignalType.ToDisplay((int)m_channel.SignalType));
            }
            else
            {
                comboBox1.SelectedIndex = Array.FindIndex(Model.SignalType.DisplayOptions(),
                                                          item => item == Model.SignalType.ToDisplay(-1));
            }

            if (m_channel.MeasurementType != null)
            {
                comboBox2.SelectedIndex = Array.FindIndex(Model.MeasurementType.DisplayOptions(),
                                                          item => item == Model.MeasurementType.ToDisplay(m_channel.MeasurementType));
            }
            else
            {
                comboBox2.SelectedIndex = Array.FindIndex(Model.MeasurementType.DisplayOptions(),
                                                          item => item == Model.MeasurementType.ToDisplay(""));
            }

            using (AdoDataConnection connection = new AdoDataConnection(connectionstring, dataprovider))
            {
                GSF.Data.Model.TableOperations <PQio.Model.DataSensitivity> dataSensitivityTbl = new GSF.Data.Model.TableOperations <PQio.Model.DataSensitivity>(connection);
                GSF.Data.Model.TableOperations <PQio.Model.Meter>           deviceTbl          = new GSF.Data.Model.TableOperations <PQio.Model.Meter>(connection);


                if (this.m_channel.AssetID != null)
                {
                    // Make sure we check if there is any Data Sensitivity associated with this event

                    if (dataSensitivityTbl.QueryRecordCountWhere("Event = {0} AND Asset = {1}", this.m_evt.ID, this.m_channel.AssetID) > 0)
                    {
                        PQio.Model.DataSensitivity dataSensitivity = dataSensitivityTbl.QueryRecordsWhere("Event = {0} AND Asset = {1}", this.m_evt.ID, this.m_channel.AssetID).First();


                        comboBox3.SelectedIndex = Array.FindIndex(Model.DataSensitivityCode.DisplayOptions(),
                                                                  item => item == Model.DataSensitivityCode.ToDisplay((int)dataSensitivity.DataSensitivityCode));

                        DataSensitivityNoteText.Text = dataSensitivity.Note;
                    }
                    else
                    {
                        comboBox3.SelectedIndex = Array.FindIndex(Model.DataSensitivityCode.DisplayOptions(),
                                                                  item => item == Model.DataSensitivityCode.ToDisplay(-1));
                        DataSensitivityNoteText.Text = "";
                    }
                }
                else
                {
                    comboBox3.Enabled       = false;
                    comboBox3.SelectedIndex = Array.FindIndex(Model.DataSensitivityCode.DisplayOptions(),
                                                              item => item == Model.DataSensitivityCode.ToDisplay(-1));
                    tabControl1.Enabled = false;
                }

                comboDevice.DisplayMember = "Text";
                comboDevice.ValueMember   = "Value";

                PQio.Model.Meter[] meters = deviceTbl.QueryRecords("").ToArray();

                comboDevice.Items.AddRange(meters.Select(item => new { Text = item.DeviceName, Value = item.ID }).ToArray());
                comboDevice.SelectedIndex = Array.FindIndex(meters, item => item.ID == this.m_channel.MeterID);
            }
            if (this.m_evt != null)
            {
                UpdateCustomFields();
            }
            else
            {
                this.tabControl1.Enabled = false;
            }

            this.MouseDown += new MouseEventHandler(OnClick);
        }