Promotic

tvTrend - Szczegółowy opis obiektu

Patrz: obiekt tvTrend.

Obiekt typu tvTrend przedstawia przebieg jednej zmiennej. Przebieg jest zapisany jako zbiór punktów danych w podobiekcie typu tvPoints. Ten bufor obiektu tvPoints albo jest wypełniany automatycznie przy dowolnej zmianie czasu osi czasu (jeżeli obiekt tvTrend był podłączony do źródła danych przy pomocy metody Connect) lub, jeżeli obiekt tvTrend nie został podłączony, wtedy można ten bufor napełniać przez wywołanie metod obiektu tvPoints.
Obiekt tvTrend domyślnie nie istnieje w przeglądarce, powstaje na przykład przez wywołanie metody PmgTrendViewer.AddTrend. Każdy obiekt tvTrend jest jednoznacznie identyfikowany swoim identyfikatorem ID.

Przebieg jednej zmiennej obiektu tvTrend może być wyświetlany kilkoma obiektami typu tvGraph. Powtórne wywołanie metody AddGraph wytworzy kontener obiektów tvGraph. Przy wyświetlaniu zbiór punktów danych jest przetwarzany przez poszczególne obiekty typu tvGraph według funkcji ważności. Do wykreślenia jest wykorzystany właśnie ten obiekt tvGraph, którego funkcja ważności jest spełniona. Ta funkcja ważności na przykład mówi wykreślanie zapewnia ten graf, jeżeli wartości trendowanych punktów przekroczą wartość 100. Wtedy w przedziale czasu, w którym wartości trendoanych punktów przekraczają wartość 100, jest do rysowania wykorzystany właśnie ten obiekt tvGraph. Jeżeli istnieje kilka obiektów ze spełnoną funkcją ważności, wtedy jest wykorzystany obiekt z najwyższym priorytetem (pierwszy dodany wykres przy pomocy AddGraph(...) posiada najwyższy priorytet, ostatni dodany wykres posiada najniższy priorytet).
Ten algorytm jest wykorzystany do rysowania zarówno w graficznym, jak również w trybie tabelkowym.
Jeżeli nie został dodany żaden obiekt tvGraph (wq ogóle nie była wywołana metoda tvTrend.AddGraph), wtedy trend jest wyświetlany przez zawsze istniejący domyślny obiekt GraphDefault. Ten domyślny obiekt tvGraph ma zawsze najniższy priorytet ze wszystkich a jego funkcja ważności jest zawsze spełniona.

Przykład1:
Ten kompleksowy przykład wytwarza w przeglądarce nowy obiekt typu tvTrend, podłącza go przez wywołanie metody Connect do danych komputera odległego o nazwie "computer", do danej a1 w grupie group1 na serwerze trendy na danym komputerze odległym computer. Przebieg trendu jest wykreślany przez domyślnie skonstruowany obiekt typu tvGraph (patrz zmienna oGraphDef), którego parametry są również ustawione.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var bConnect, oGraphDef;
var oTView = pMe.Items("../TrendView");
var oTrend = oTView.AddTrend("t1", "Temperatura");

if (oTrend)
{
bConnect = oTrend.Connect(2, "http://computer/trends", "group1", "a1", 0);
oTrend.TableColumnWidth = 80;   // Ustawienie dla trybu tabelkowego przeglądarki
if (bConnect)
{
oGraphDef = oTrend.GraphDefault;
// ...Ustawienie dla trybu graficznego przeglądarki
oGraphDef.Type = "Linear";
oGraphDef.Color = "#00ff00";   // ustawienie koloru przy pomocy RGB String w formie "#RRGGBB"
oGraphDef.FillType = 1;
oGraphDef.FillColor = "#008800";
oGraphDef.PointsVisible = true;
oGraphDef.PointsType = 3;
oGraphDef.PointsSize = 8;
oGraphDef.PointsColor = "#000000";
// ...Ustawienie dla trybu tabelkowego przeglądarki
oGraphDef.TableBgColor = "#aaaaaa";
oGraphDef.TableTextColor = "#00ff00";
oGraphDef.TableFont.Size = 11;
}
else
{
// ... error
}
}
Przykład2:
Ten kompleksowy przykład wytwarza w przeglądarce nowy obiekt typu tvTrend, podłącza go przez wywołanie metody Connect do danych komputera odległego o nazwie "computer", do danej a1 w grupie group1 na serwerze trendy na danym komputerze odległym computer. Ponadto ustawia parametry do rysowania i wytwarza (i ustawia parametry) nowy obiekt typu tvGraph do rysowania przebiegu odcinków trendu w czasei, kiedy wartości przekraczają stałą 100. W pozostałych przedziałach czasu jest wykreślany przez domyślnie skonstruowany obiekt typu tvGraph (patrz zmienna oGraphDef), którego parametry są również ustawione.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var bConnect, oGraphDef, oGraph;
var oTView = pMe.Items("../TrendView");
var oTrend = oTView.AddTrend("t1", "Temperatura");

if (oTrend)
{
bConnect = oTrend.Connect(2, "http://computer/trends", "group1", "a1", 0);
if (bConnect)
{
oGraphDef = oTrend.GraphDefault;
oGraphDef.Type = "Linear";
oGraphDef.Color = "#00ff00";   // ustawienie koloru przy pomocy RGB String w formie "#RRGGBB"
oGraphDef.FillType = 1;
oGraphDef.FillColor = "#008800";

oGraph = oTrend.AddGraph(1, 0, "LimitVal(gt;100)");
if (oGraph)
{
// ...Ustawienie dla trybu graficznego przeglądarki
oGraph.Type = "Linear";
oGraph.Color = "#ff0000";
oGraph.FillType = 11;
oGraph.FillColor = "#880000";
oGraph.PointsVisible = true;
oGraph.PointsType = 3;
oGraph.PointsSize = 8;
oGraph.PointsColor = "#000000";
// ...Ustawienie dla trybu tabelkowego przeglądarki
oGraph.TableBgColor = "#666666";
oGraph.TableTextColor = "#ff0000";
oGraph.TableFont.Bold = true;
}
else
{
// ... error
}
}
else
{
// ... error
}
}
© MICROSYS, spol. s r.o.