예제 #1
0
        public object GetValue(string tag)
        {
            DataQueryParams query = new CurrentValueQuery(tag);
            ItemErrors      errors;

            Proficy.Historian.ClientAccess.API.DataSet dataset = null;

            Connection.IData.Query(ref query, out dataset, out errors);

            if (dataset.TotalSamples > 0)
            {
                return(dataset[tag].GetValue(0));
            }
            else
            {
                return("");
            }
        }
예제 #2
0
        public Dictionary <string, object> GetValues(params string[] tags)
        {
            if (tags == null || tags.Length == 0)
            {
                return(new Dictionary <string, object>());
            }

            DataQueryParams query = new CurrentValueQuery(tags);
            ItemErrors      errors;

            Proficy.Historian.ClientAccess.API.DataSet dataset = null;
            Connection.IData.Query(ref query, out dataset, out errors);

            Dictionary <string, object> values = new Dictionary <string, object>();

            foreach (var item in dataset)
            {
                if (item.Value.Count() > 0)
                {
                    values.Add(item.Key, item.Value.GetValue(0));
                }
            }

            foreach (string key in tags)
            {
                if (dataset.ContainsKey(key))
                {
                    values[key] = dataset[key].GetValue(0);
                }
                else
                {
                    values[key] = "";
                }
            }

            return(values);
        }
예제 #3
0
        public object QueryCurrentValue(params string[] tags)
        {
            ItemErrors errors;
            Proficy.Historian.ClientAccess.API.DataSet set = new Proficy.Historian.ClientAccess.API.DataSet();
            DataQueryParams query = new CurrentValueQuery(tags) { Fields = DataFields.Time | DataFields.Value | DataFields.Quality };
            CurrentValue cv= new CurrentValue();
            sc.IData.Query(ref query, out set, out errors);
            return set;

        }