Umožní porovnať hodnoty cieľových stĺpcov (štruktúrovaných premenných) nakonfigurovaných v počítaných bodoch s hodnotami, ktoré boli vypočítané procesom D2000 Calc. Porovnanie sa vykoná zavolaním Tell príkazu CHECK_DESTID_VALUES [DestId [ColIndex]] [FlagList] nad procesom D2000 Calc.
Upozornenie: Použitie tell príkazu CHECK_DESTID_VALUES je podporované iba vo verzii D2000 V8.0.5.
Pre špecifikáciu konkrétneho objektu typu Štruktúrovaná premenná, pre ktorý sa má porovnanie vykonať, je potrebné zadať nenulovú hodnotu parametra DestId, prípadne aj nenulový ColIndex pre konkrétny stĺpec. Nasledujú nepovinné kľúčové slová, ktorých zápis umožní organizovať výsledný výstup (súhrnne nazvané ako parameter FlagList).
Poznámka: Pojem "hodnota počítaného bodu" (prípadne len skrátene "hodnota") bude v nasledujúcom texte použitý v zmysle hodnoty určenej na prepočet pre riadok cieľového stĺpca štruktúrovanej premennej, ktorej plnenie počítaný bod zabezpečuje. Jeden počítaný bod má viacero hodnôt, závisí to od počtu riadkov cieľového stĺpca štruktúrovanej premennej.
Zoznam kľúčových slov pre parameter FlagList (zapisované za sebou a oddelené medzerou, význam je bližšie rozobratý v postupe pri kontrole počítaných bodov):
Kľúčové slovo | Význam |
---|---|
Detail | Zobrazuje podrobnejšie informácie o nesúlade v porovnávaných hodnotách (obsahujú chybové alebo špeciálne príznaky). |
Debug | Rovnako ako Detail, no v prípade uvedenia parametra ColIndex zobrazuje aj porovnávané hodnoty bez príznakov. |
Ignore_Time | Ignoruje časové pečiatky porovnávaných hodnôt (pre SBS je táto voľba zapnutá vždy). |
ReCalc0s | Porovnáva hodnoty bez ohľadu na to, pred akou dobou k prepočtu počítaného bodu došlo. Default hodnota je 10s. |
ReCalc1m | Neporovnáva hodnoty, ak prepočet počítaného bodu prebehol pred menej ako 1 minútou a ešte neprišla odozva od D2000 Systému. Default hodnota je 10s. |
Kontroluje len tie počítané body, ktoré majú nastavený cieľový stĺpec štruktúrovanej premennej.
1. typ výpisu (nie je zadaný parameter Detail ani Debug)
V prípade potreby však možno zúžiť výber definovaním parametra DestID pre plnenú štruktúrovanú premennú, alebo aj parametra ColIdex pre konkrétny cieľový stĺpec.
Príklad 1
Tell Command: CHECK_DESTID_VALUES Start Time: 31.05.2013 15:41:44.763 C_Index;C_ID;C_Name;C_Type;D_Column;COUNT;NoEval;ReCalc;ErrInv;ErrCnv;ErrDif 1;10216;P.SV.ALARM.AKTIV_DRN;CHANGE;$14491^29;45;45;0;0;0;0 ... 41;11715;P._SysProf.Server.ThreadAlarm;CHANGE;$11427^11;154;154;0;0;0;0 42;11717;P._SysProf.Server.UsedMemPerc;CHANGE;$11427^5;154;154;0;0;0;6 43;11719;P.SV.B.LFC_SED.TG_FILTER_T10_MINUS_ALARM;CHANGE;$12280^86;60;0;0;0;0;0 ... 705;71184;P.TEST_XXX_Priznak;PERIODIC;$71179^2;2;0;2;0;0;0 Duplicated Destination Column: $11427^5 - 2 occurences! Calc 'P._SysProf.Server.UsedMemPerc' with Type CHANGE Calc 'P._SysProf.Hpux.Server.UsedMemPerc' with Type CHANGE Duplicated Destination Column: $13104^4 - 2 occurences! Calc 'P.SIMU.AGC_Unit_LFC.Manual.PbAct' with Type CHANGE Calc 'P.SIMUL.AGC_Unit_LFC.PbAct' with Type CHANGE SUMMARY: 705 Calc(s) with 23658 Shadow Calc(s) - 65 Error(s) and 11113 Flag(s)
Na začiatku výpisu je vždy uvedený volaný TELL príkaz a čas, kedy bol spustený. Nasleduje špecifický výpis, ktorý má v úvode hlavičku CSV dát.
Každému počítanému bodu s nastaveným cieľovým stĺpcom, je vo výstupe priradený práve jeden riadok s dátami v CSV formáte,
pričom takýto riadok je buď ako ladiaci výpis (zelený riadok) alebo chybová hláška (červený riadok).
Každý obsahuje poradové číslo pre riadok (počet riadkov je rovný počtu počítaných bodov, kde je nastavený cieľový stĺpec štruktúrovanej premennej),
ďalej ID počítaného bodu, jeho názov, typ a plnený cieľový stĺpec štruktúrovanej premennej vo formáte $^ColIndex.
Za týmto stĺpcom nasledujú ešte špeciálne počítadlá v tomto poradí:
Pravidlá:
Na konci výpisu je zhrnutie. Pred spúšťaním tell príkazu s ďalšími parametrami, je vhodné si všimnúť počet chybných (kumulatívne ErrInv, ErrCnv a ErrDiff) a špeciálnych príznakov (kumulatívne NoEval a ReCalc). Pred týmto výpisom sa nachádza ešte varovanie, ak existujú počítané body, ktoré plnia ten istý cieľový stĺpec štruktúrovanej premennej.
2. typ výpisu (je zadaný parameter Detail alebo Debug, nie je však presne vymedzený konkrétny cieľový stĺpec štruktúrovanej premennej)
Tell príkaz bez parametrov umožnil zistiť počet chybových a špeciálnych príznakov (sumárny výsledok v 1. príklade na konci výpisu). Ak je ich súčet únosný, lebo práve ten definuje maximálny počet riadkov nasledujúceho výstupu, je možné zavolať tell príkaz aj bez uvedenia parametra DestID pre plnenú štruktúrovanú premennú. Vo výstupe bude jeden riadok pre každú hodnotu štruktúrovaného počítaného bodu, obsahujúcu chybové alebo špeciálne príznaky, pričom ak obsahuje iba špeciálne príznaky, bude vypísaná hláška ako varovanie, ak však obsahuje aj chybové príznaky, bude vypísaná ako chybové hlásenie.
Príklad 2
Tell Command: CHECK_DESTID_VALUES 11427 DETAIL Start Time: 03.06.2013 11:02:55.233 CNT_NAME;D_VOBJ;FIRST_EVAL;C_ID;C_NAME;C_TYPE;CV_REDEF;CV_TYPE;CV_VALUE;CV_TIME;DV_UNDEF;DV_TYPE;DV_VALUE;DV_TIMEID CALC-ERRDIF;$11427[1]^5;FALSE;11717;P._SysProf.Server.UsedMemPerc;CHANGE;FALSE;INT;(invalid);30.05.2013 09:55:08.499;FALSE;INT;(invalid);30.05.2013 09:55:11.520 CALC-ERRDIF;$11427[2]^5;FALSE;11717;P._SysProf.Server.UsedMemPerc;CHANGE;FALSE;INT;(invalid);30.05.2013 09:55:08.499;FALSE;INT;(invalid);30.05.2013 09:55:11.520 CALC-ERRDIF;$11427[3]^5;FALSE;11717;P._SysProf.Server.UsedMemPerc;CHANGE;FALSE;INT;(invalid);30.05.2013 09:55:08.499;FALSE;INT;(invalid);30.05.2013 09:55:11.520 CALC-ERRDIF;$11427[4]^5;FALSE;11717;P._SysProf.Server.UsedMemPerc;CHANGE;FALSE;INT;(invalid);30.05.2013 09:55:08.499;FALSE;INT;(invalid);30.05.2013 09:55:11.520 CALC-ERRDIF;$11427[5]^5;FALSE;11717;P._SysProf.Server.UsedMemPerc;CHANGE;FALSE;INT;(invalid);30.05.2013 09:55:08.499;FALSE;INT;(invalid);30.05.2013 09:55:11.521 CALC-ERRDIF;$11427[6]^5;FALSE;11717;P._SysProf.Server.UsedMemPerc;CHANGE;FALSE;INT;(invalid);30.05.2013 09:55:08.499;FALSE;INT;(invalid);30.05.2013 09:55:11.521 ...
Na začiatku výpisu je vždy volaný tell príkaz a čas, kedy bol spustený. Nasleduje špecifický výpis, ktorý ma v úvode hlavičku CSV dát. Každej hodnote, obsahujúcej chybové alebo špeciálne príznaky, potom zodpovedá jednoriadkový výpis, ktorý začína príznakom, ktorý bol pri vyhodnocovaní naposledy vyhodnotený (má najvyššiu dôležitosť, začína prefixom CALC-). Nasleduje cieľová hodnota štruktúrovanej premennej vo formáte $[RowNumber]^ColIndex, či už prebehol prvý prepočet počítaného bodu (FIRST_EVAL: na SBS-e stále True), jeho ID, názov a typ, či je hodnota v stave prepočítavania (CV_REDEF: na SBS-e po prvom prepočte stále True), typ, hodnota a dátum prepočtu, či cieľová hodnota ešte nikdy neprišla z D2000 Systém-u (DV_UNDEF), jej typ, hodnota a časová pečiatka.
3. typ výpisu (je zadaný parameter Detail alebo Debug a je presne vymedzený aj konkrétny cieľový stĺpec štruktúrovanej premennej)
Vo výstupe budú podrobné informácie pre každú hodnotu štruktúrovaného počítaného bodu, obsahujúcu chybové príznaky, ak je zadaný parameter Detail, alebo podrobné informácie o všetkých hodnotách, ak je zadaný parameter Debug.
Príklad 3
Tell Command: CHECK_DESTID_VALUES 11427 5 DETAIL Start Time: 03.06.2013 12:21:34.864 CNT_NAME;D_VOBJ;FIRST_EVAL;C_ID;C_NAME;C_TYPE;CV_REDEF;CV_TYPE;CV_VALUE;CV_TIME;DV_UNDEF;DV_TYPE;DV_VALUE;DV_TIME [Calc] ID : $11717[1] FirstEval : FALSE bDestValUnDef : FALSE bDestValReClc : FALSE [Info] Id : 11717 Name : P._SysProf.Server.UsedMemPerc Descript : Server - % vyuzitia pamate ParentId : 28 Value_Type : CE ActRefNr : 1 PasRefNr : 0 CreateTime : (null) ModifyTime : 24.08.2010 17:48:17.263 [Data] RECAL_REQ : CHANGE PERIOD : 0 OFFSET : 0 START_VAL : TriggerId : TriggerTyp : TVALUE InvertTrig : FALSE MonotonicTime : FALSE UTC_Offset : 1 DestId : $11427^5 IgnoreInvalid : FALSE TimeFilter : 0 [Alarm Data] Row : 0 Col : 0 Alarm : Monitor : KvitReq : Critical : Timeout : 0 Silent : FALSE SignalMonitor : FALSE SignalAlarm : FALSE SignalCritical : FALSE IgnoreInvalid : FALSE ProcAlarmShowMasks : [Value] GValTyp : INT (Integer) Status : NOACKVALUE LimitStatus : INLIMIT ProcAlarmStatus : NOALARM ValTyp : CE Flags : F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F ValTime : 30.05.2013 09:55:48.296 AlarmTime : (null) Value : (invalid) [LastVal] GValTyp : INT (Integer) Status : NOACKVALUE LimitStatus : INLIMIT ProcAlarmStatus : NOALARM ValTyp : CE Flags : F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F ValTime : 30.05.2013 09:55:08.499 AlarmTime : (null) Value : (invalid) [DestVal] GValTyp : INT (Integer) Status : NOACKVALUE, MANUAL LimitStatus : INLIMIT ProcAlarmStatus : NOALARM ValTyp : INT Flags : F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F ValTime : 30.05.2013 09:55:11.520 AlarmTime : (null) Value : (invalid) LL_Stat : TRUE VLL_Stat : TRUE HL_Stat : TRUE VHL_Stat : TRUE Trigger : FALSE calcCounter : 3 nvCounter : 1 ShadowList : 0 OnlyMyRow : TRUE CalcTime : (null) LastCalcTime : (null) bAllwaysInLimits : TRUE FirstAfterRDSw : FALSE ActEvalTime : 30.05.2013 09:55:11.509 PocitajTime : 30.05.2013 09:55:48.296 ...