Promotic

CreateFilter - metoda obiektu PmaTrendGroup

Opis:
Wytworzy wartość filtra przedziału dla kolejnych metod.
Przez wywołanie metody jest wytwarzana wartość z parametrami zapytania dla metody GetData.
Składnia:
Variant CreateFilter(Date tFrom, Long nFromType, Date tTo, Long nToType, Long nPoints)
Parametry:
tFrom(Date) Czas początkowy od.
Jeżeli jest wprowadzona wartość -1, wtedy parametr nie jest zastosowany i zakres jest określony tylko przez parametry tTo oraz nPoints.
nFromType(Long) Typ czasu początkowego od
1 - tFrom jest "czas lokalny" ("czas zimowy" w okresie zimowym oraz "czas letni" w okresie letnim, odpowiada czasu komputera według lokalnego ustawienia Windows systemu)
2 - tFrom jest "czas zimowy" (w okresie zarówno letnim jak i zimowym)
10 - Najstarszy czas. W parametrze tFrom określa się wartość -1.
tTo(Date) Czas końcowy do.
Jeżeli jest wprowadzona wartość -1, wtedy parametr nie jest zastosowany i zakres jest określony tylko przez parametry tFrom oraz nPoints.
nToType(Long) Typ czasu końcowego do
1 - tTo jest "czas lokalny" ("czas zimowy" w okresie zimowym oraz "czas letni" w okresie letnim, odpowiada czasu komputera według lokalnego ustawienia Windows systemu)
2 - tTo jest "czas zimowy" (w okresie zarówno letnim jak i zimowym)
11 - najnowszy czas. W parametrze tTo określa się wartość -1.
nPoints(Long) Maksymalna ilość punktów.
Jeżeli jest wprowadzona wartość -1, wtedy nPoints jest ustawiony na wartość z konfiguratora "Maksymalna ilość punktów trendu (jednej zmiennej) w jednej wiadomości".
Jeżeli są określone parametry tFrom, tTo oraz nPoints różne od -1, wtedy wytworzone zapytanie zwróci zbiór punktów w czasie od tFrom do tTo, lecz najwyżej nPoints punktów.
Notatka:
Parametry tFrom, tTo można wytworzyć przez wywołanie metody GetDateOf. W ten sposób można na przykład określić w metodzie GetDateOf jakiś czas jako parametr wejściowy i zapewnić czasy tak, że tFrom, tTo określają na przykład początek (czas 00:00) i koniec (czas 24:00) dnia, do którego należy ten określony czas.
Patrz również:
Przykład1:
Stwierdzi trendowane dane w przedziale czasu <czas bieżący - 1 godzina, czas bieżący>. Wartości czasów będą w tablicy aTime a wartości zmiennej a1 będą w tablicy aData.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var tNow, vFilter, aTime, aData;
tNow = Pm.Time;
vFilter = oTrend.CreateFilter(tNow - 1 / 24, 1, tNow, 1, -1);
aTime = oTrend.GetData("time", vFilter);
aData = oTrend.GetData("a1", vFilter);

if (Pm.IsValid(aTime))
{
Pm.Debug("Czas pierwszej wartości wynosi " + aTime.GetItem(0));
Pm.Debug("Wartość zmiennej a1 w tym czasie wynosi " + aData.GetItem(0));
}
Przykład2:
Stwierdzi trendowane dane w zakresie 1000 punktów przed czasem bieżącym. Wartości danych będą w 2-wymiarowej tablicy danych aData.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var vFilter, aData;
vFilter = oTrend.CreateFilter(-1, 0, Pm.Time, 1, 1000);
aData = oTrend.GetData("time;attr;a1;a2;", vFilter);

if (Pm.IsValid(aData))
{
Pm.Debug("Czas pierwszej wartości wynosi " + aData.GetItem(0, 0));
Pm.Debug("Wartość atrybutu w tym czasie wynosi " + aData.GetItem(1, 0));
Pm.Debug("Wartość zmiennej a1 w tym czasie wynosi " + aData.GetItem(2, 0));
Pm.Debug("Wartość zmiennej a2 w tym czasie wynosi" + aData.GetItem(3, 0));
}
© MICROSYS, spol. s r.o.