Promotic
WikipediaLinkedInYoutubeTwitterFacebook

tvTrend - Podrobný popis objektu

Viz: Objekt tvTrend
 

Objekt typu tvTrend představuje průběh jedné trendované proměnné. Průběh je uložen jako množina datových bodů v podobjektu typu tvPoints. Tento buffer objektu tvPoints je plněn buď automaticky při jakékoli změně časů časové osy (pokud byl objekt tvTrend připojen ke zdroji dat metodou Connect) nebo, pokud objekt tvTrend nebyl připojen, pak lze tento buffer plnit voláním metod objektu tvPoints.

Objekt tvTrend v prohlížeči implicitně neexistuje, vzniká například voláním metody TrendsView.AddTrend. Každý objekt tvTrend je jednoznačně identifikován svým identifikátorem ID.

 

Průběh jedné trendované proměnné objektu tvTrend může být vykreslován více objekty typu tvGraph. Opakované volání metody AddGraph vytvoří kontejner objektů tvGraph. Při vykreslení je množina datových bodů trendu vyhodnocována jednotlivými objekty typu tvGraph dle funkce platnosti. Pro kreslení je použit právě ten objekt tvGraph, jehož funkce platnosti je splněna. Tato funkce platnosti například říká kreslí se tímto grafem, pokud hodnoty trendovaných bodů překročí hodnotu 100. Pak v časové oblasti, kde hodnoty trendovaných bodů překračují hodnotu 100, je pro kreslení použit právě tento objekt tvGraph. Pokud je objektů se splněnou funkcí platnosti více, pak je z nich použit ten s nejvyšší prioritou (prvně přidaný graf pomoci AddGraph(...) má nejvyšší prioritu, naposledy přidaný na nejnižší prioritu).

Tento algoritmus je použit pro kreslení jak v grafickém, tak i v tabulkovém módu.

Pokud nebyl přidán žádný objekt tvGraph (nebylo vůbec voláno tvTrend.AddGraph), pak je trend vykreslován vždy existujícím implicitním objektem GraphDefault. Tento implicitní tvGraph má vždy ze všech nejnižší prioritu a jeho funkce platnosti je splněna vždy.

 
Příklad1:
Tento komplexní příklad vytváří v prohlížeči nový objekt typu tvTrend, připojuje jej voláním Connect k datům vzdáleného počítače s názvem computer, a to k proměnné a1 skupiny group1 v serveru trendy na tomto počítači computer. Průběh trendu je vykreslován předzkonstruovaným objektem typu tvGraph (viz oGraphDef), jehož parametry jsou nastaveny také.
JavaScriptVBScriptVyber a zkopíruj do schránky

var bConnect, oGraphDef;
var oTView = pMe.Acx;
var oTrend = oTView.AddTrend("t1", "Teplota");

if (oTrend)
{
  bConnect = oTrend.Connect(2, "http://computer/trends", "group1", "a1", 0);
  oTrend.TableColumnWidth = 80;  //Nastavení pro tabulkový mód prohlížeče
  if (bConnect)
  {
    oGraphDef = oTrend.GraphDefault;
    //...Nastavení pro grafický mód prohlížeče
    oGraphDef.Type = "Linear";
    oGraphDef.Color = "#00ff00";  //nastavení barvy jako RGB String
    oGraphDef.FillType = 1;
    oGraphDef.FillColor = "#008800";
    oGraphDef.PointsVisible = true;
    oGraphDef.PointsType = 3;
    oGraphDef.PointsSize = 8;
    oGraphDef.PointsColor = "#000000";
    //...Nastavení pro tabulkový mód prohlížeče
    oGraphDef.TableBgColor = "#aaaaaa";
    oGraphDef.TableTextColor = "#00ff00";
    oGraphDef.TableFont.Size = 11;
  }
  else
    //... error
}
Příklad2:
Tento komplexní příklad vytváří v prohlížeči nový objekt typu tvTrend, připojuje jej voláním Connect k datům vzdáleného počítače s názvem computer, a to k proměnné a1 skupiny group1 v serveru trendy na tomto počítači computer. Dále nastavuje parametry pro kreslení a vytváří (a nastavuje parametry) nový objekt typu tvGraph pro kreslení časových úseků průběhu trendu, kdy hodnoty překračují konstantu 100. V ostatních časových úsecích se kreslí předzkonstruovaným objektem typu tvGraph (viz oGraphDef), jehož parametry jsou nastaveny také.
JavaScriptVBScriptVyber a zkopíruj do schránky

var bConnect, oGraphDef, oGraph;
var oTView = pMe.Acx;
var oTrend = oTView.AddTrend("t1", "Teplota");

if (oTrend)
{
  bConnect = oTrend.Connect(2, "http://computer/trends", "group1", "a1", 0);
  if (bConnect)
  {
    oGraphDef = oTrend.GraphDefault;
    oGraphDef.Type = "Linear";
    oGraphDef.Color = "#00ff00";  //nastavení barvy jako RGB String
    oGraphDef.FillType = 1;
    oGraphDef.FillColor = "#008800";

    oGraph = oTrend.AddGraph(1, 0, "LimitVal(gt;100)");
    if (oGraph)
    {
      //...Nastavení pro grafický mód prohlížeče
      oGraph.Type = "Linear";
      oGraph.Color = "#ff0000";
      oGraph.FillType = 11;
      oGraph.FillColor = "#880000";
      oGraph.PointsVisible = true;
      oGraph.PointsType = 3;
      oGraph.PointsSize = 8;
      oGraph.PointsColor = "#000000";
      //...Nastavení pro tabulkový mód prohlížeče
      oGraph.TableBgColor = "#666666";
      oGraph.TableTextColor = "#ff0000";
      oGraph.TableFont.Bold = true;
    }
    else
      //... error
  }
  else
    //... error
}
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice