Это правильный способ получения имени и идентификатора события с помощью PI SDK? - PullRequest
0 голосов
/ 19 февраля 2020

Я новичок в PI и в поиске событий с помощью AF SDK. Я должен использовать шаблоны для поиска в базе данных PI и получения имен всех атрибутов определенного события. Является ли следующий код правильным способом сделать это? Я считаю, что я правильно подключен к самой базе данных. У меня просто возникают проблемы с базами данных.

List<UnitVariable> namesOfProcesses = new List<UnitVariable>();
using (AFEventFrameSearch search = new AFEventFrameSearch(MyDatabase, "FindEvents", $"Template: 'Event' {processChoice.ProcIdentity}' {unitSelectChoice.UnitIdentity}'"))
            {
                foreach (AFEventFrame entry in search.FindObjects(fullLoad: false))
                {
                    namesOfProcesses.Add(new UnitVariable(entry.Name, entry.ID));
                }
            }

            return namesOfProcesses;
        }

UnitVariables - это просто пользовательский класс со строкой Name и идентификатором guid. На всякий случай я также опубликую код в моей функции подключения, которая подключается к базе данных и возвращает все «события» для начала.

PISystems myPiSystems = new PISystems();
PISystem myPiSystem = myPiSystems.DefaultPISystem;
MyDatabase = myPiSystem.Databases["HWF-OSI-AFD2"];
List<ProcessUnit> namesOfProcesses = new List<ProcessUnit>();
using (AFEventFrameSearch search = new AFEventFrameSearch(MyDatabase, "FindEvents", @"Template: 'Event'"))
            {
                foreach (AFEventFrame entry in search.FindObjects(fullLoad: false))
                {
                    namesOfProcesses.Add(new ProcessUnit(entry.Name, entry.ID));
                }
            }
            UniversalProcessList = namesOfProcesses;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...