Akcia SETDT_LINEOBJ


Funkcia
Akcia pripojí daný objekt do grafu.
Deklarácia
SETDT_LINEOBJ graph, lineNr, newObj, [retCode], [axisNr], [bSilent]

 
alebo
 
 HI_SETDT_LINEOBJ graph_RefId, lineNr, newObj, [axisNr], [bSilent]

Parametre
graph in Odkaz na objekt typu Graf.
graph_RefId in Hodnota referenčnej premennej priradenej grafickému objektu typu Graf.
lineNr in Identifikátor typu Int - číslo priebehu.
newObj in Odkaz na objekt alebo odkaz na jednu archívnu hodnotu.
axisNr in Typu Int - číslo osi, ktorá bude priradená danému priebehu.
Ak nie je uvedený (alebo má hodnotu -1), číslo osi sa v konfigurácii grafu nezmení.
retCode out Nepovinný identifikátor typu Int - návratový kód.
bSilent in Nepovinný identifikátor typu Bool.

Pre akciu SETDT_LINEOBJ:
Ak nie je uvedený (alebo má hodnotu @FALSE), systém zmenu automaticky oznámi bežiacim procesom D2000 HI, ktoré následne menený graf znovu otvoria podľa novej konfigurácie. Ak je hodnota parametra @TRUE, zmena konfigurácie grafu prebehne bez tejto automatickej aktualizácie.

Pre akciu HI_SETDT_LINEOBJ:
Ak je @TRUE, tak sa vykoná len nastavenie v grafe bez vyžiadania hodnôt priebehu z archívu. Ak parameter nie je uvedený alebo je @FALSE, tak sa vykoná nastavenie a vyžiadajú sa dáta z archívu.

Význam použitia: Vtedy, keď nasleduje príkaz požadujúci nové údaje z archívu, napr. zmena časového intervalu.


Popis
Akcia pripojí objekt (alebo položku štruktúrovaného archívu) daný parametrom newObj na priebeh (čiaru) v grafe. Poradové číslo čiary je dané parametrom lineNr. Menený priebeh musí existovať, akcia nevie zväčšovať ich počet.

Ak nie je použitý parameter retCode, akcia generuje len požiadavku na zmenu a nečaká na jej skutočné vykonanie. Ak sa parameter použije, je možné testovať úspešnosť operácie (_ERR_NO_ERROR).

Akcia je k dispozícii v dvoch variantách:

  • SETDT_LINEOBJ - modifikácia grafu v konfigurácii aplikácie. Zmeny sa ukladajú do konfiguračnej databázy a sú permanentné. Akcia je prípustná v kontexte objektu typu Event a aj v skripte aktívnej schémy.
  • HI_SETDT_LINEOBJ - modifikácia otvoreného grafu, ktorý je zobrazený v rámci schémy v zobrazovači typu Graf. V tomto prípade je zobrazovač daný hodnotou prvého parametra akcie. Vykonané zmeny konfigurácie sú dočasné a zaniknú v momente zatvorenia príslušného grafu (grafickej schémy).

Upozornenie:
Zmena konfigurácie cez SETDT_LINEOBJ bez čakania na výsledok operácie môže kolidovať s nasledovnými príkazmi skriptu pre graf.

Napríklad:

 SETDT_LINEOBJ D.Test, 1, Min 
 %HI_SetGraphTimes(_Graph, _BT, _ET, @TRUE)

môže spôsobiť, že čas v grafe je nastavený ešte pred následným príchodom zmeny konfigurácie, ktorá nastavuje časy podľa definície grafu.


Príklad
Príklad predpokladá existenciu objektu D.Graf typu Graf.
 
 INT _retCode
 
 SETDT_LINEOBJ T.Graf, 2, Sec, _retCode
 ; test úspechu akcie
 IF _retCode = _ERR_NO_ERROR THEN
   ; zmena prebehla
 ELSE
   ; chyba
 ENDIF
 
 ; odpojenie objektu 
 ALIAS _empty
 SETDT_LINEOBJ D.Graf, 2, _empty 
 
 ; pripojenie objektu Sec na 3-ti priebeh v grafe T.Graf, pričom číslo osi bude 5 
 ; akcia nečaká na jej skutočné vykonanie 
 SETDT_LINEOBJ T.Graf, 3, Sec,, 5

 ; akcia počká na jej skutočné vykonanie, zmena konfigurácie prebehne nenápadne
 SETDT_LINEOBJ T.Graf, 3, Sec,  _retCode, 5, @TRUE  

Napíšte komentár