Переносит результаты запроса dpQuery в средство GIS Viewer. |
Краткое описание
void PVSSReceiveSumAlertStatus(string strStatus); |
Параметры
Параметры | Описание |
strStatus | Состояние (цвет) предупредительного сигнала, полученное при запросе dpQuery или, например, dpQueryConnectSingle. |
Описание
Средство GIS Viewer может принимать состояния предупредительных сигналов от точек данных «_SumAlertPanel» и использовать их для изменения цвета соответствующих графических объектов. Вызовите метод PVSSSetSumAlertPanels для загрузки списка точек данных «_SumAlertPanel» в средство GIS Viewer. Это должен быть список точек данных «_SumAlertPanels» которые необходимо связать с формами в средстве просмотра карт GIS Viewer. Выполните команду запроса dpQuery() или, например, dpQueryConnectSingleдля получения цветов предупредительных сигналов точек данных «_SumAlertPanel» и передачи результата запроса в средство GIS Viewer путем вызова функции ‘PVSS_ReceiveSumAlertStatus’. Затем используйте функцию «PVSSLinkSumAlertToShape» для связи точки данных с формой. |
ПРИМЕР |
Нижеследующий код используется для передачи имен всех точек данных»SumAlertPanel» в средство GIS Viewer, запроса цветов предупредительных сигналов этих точек и и отправки этих данныхв средство GIS Viewer при помощи функции PVSSReceiveSumAlertStatus. Код так же устанавливает связь формы «Austria» на слое «COUNTRY» с точкой данных PVSS_SumAlertPanel.При возникновении предупредительного сигнала, форма «Austria» будет мигать. |
main()
{
dyn_string strDefinition;
dyn_string color;
// Пользователь может задать точки данных SumAlertPanel, которые должны «обрабатываться» в средстве GIS Viewer
// ‘process’
// На данном примере имена всех точек данных просто передаются
// в средство просмотра карт GIS
dyn_string strTest = dpNames(«*», «_SumAlertPanel»);
GisViewer_ewo1.PVSSSetSumAlertPanels((string)strTest);
// Теперь можно создать «карту» связи формы
// с определенной точкой данных _SumAlertPanel
strDefinition = makeDynString(«COUNTRY@NAME@Austria@System1:Panel1_1»);
// ^^ Слой
// ^^ Поле
// ^^ Значение поля
// ^^ Имя точки данных _SumAlertPanel
GisViewer_ewo1.PVSSLinkSumAlertToShape(strDefinition);
// Теперь создадим запрос, который отправит цвета предупредительных сигналов
// точек данных _SumAlertPanel в средство GisViewer
string strQuery = «SELECT ‘.Warning:_alert_hdl.._act_state_color’, ‘.Alert:_alert_hdl.._act_state_color’, ‘.Danger:_alert_hdl.._act_state_color’ FROM ‘*’ WHERE(_DPT = \»_SumAlertPanel\»)»;
dpQueryConnectSingle(«CallBackSumAlertPanel», «MyId», strQuery);
}
void CallBackSumAlertPanel(string strID, dyn_dyn_anytype a)
{
string strLine;
string strOneLine;
// Преобразуем полученный формат dyn_dyn_anytype в более удобный тип
// чтобы средство GIS Viewer могло его использовать
for(int t = 2; t <= dynlen(a); t++)
{
if(t > 2)
strLine += «|»;
// Средство GIS Viewer получает список, где каждая строка выглядит так:
// <dp>,<warning color>,<alert color>,<danger color>
strOneLine = a[t][1] + «,» + a[t][2] + «,» + a[t][3] + «,» + a[t][4];
strLine += strOneLine;
}
// Передача (форматированных) точек данных и цветов в средство GIS Viewer
GisViewer_ewo1.PVSSReceiveSumAlertStatus(strLine);
DebugN(«status of the sum alert panel data points:»,strLine);
}
Используется для объекта:
Средство просмотра карты геоинформационной системы (GIS) |
См. также