EDA_SetProcessParams
Funkcia slúži na nastavenie alebo zrušenie hodnôt pomenovaných parametrov databázového "kontextu" procesu EDA klient. Funkcia pracuje analogicky k ESL akcii DB_SET_PROCESS_PARAMS.
Deklarácia
%EDA_SetProcessParams(
REC in _params,
INT out _errorCode
);
Parametre
Parameter | Dátový typ | Typ | Popis | |
---|---|---|---|---|
1 | params | REC | IN | Dvojstĺpcová štruktúrovaná premenná: paramName : TEXT (maximálne 64 znakov) paramValue : TEXT (maximálne 64 znakov) |
2 | errorCode | INT | OUT | Návratový kód. |
Hodnota paramName definuje názov parametra. Hodnota paramValue definuje hodnotu parametra. Prípustné kombinácie hodnôt a ich interpretáciu znázorňuje nasledovná tabuľka.
Vplyv na výsledok | paramName | paramValue |
---|---|---|
Vloží alebo aktualizuje hodnotu parametra | zadané | zadané |
Zruší parameter | zadané | (neplatná hodnota) |
Ignoruje (nie je súčasťou požiadavky na zmenu) | (neplatná hodnota) | zadané |
Ignoruje (nie je súčasťou požiadavky na zmenu) | (neplatná hodnota) | (neplatná hodnota) |
Upozornenie: Ak nastane situácia, že názvy parametrov sa pri jednom volaní akcie opakujú, tak dochádza k nedefinovanému správaniu!
Kontext je jednoznačne priradený procesu EDA klient (monolitická edadll.dll alebo edaclient.dll) a predstavuje skupinu jednoznačne pomenovaných parametrov, pričom každý parameter má svoju hodnotu.
Obsah kontextu je automaticky vkladaný do databázovej tabuľky D2000_PROCESS_PARAMS (stĺpce PARAM_NAME a PARAM_VALUE) a je viditeľný len pre proces, ktorému kontext patrí.
V prípade, že tabuľka neexistuje, je automaticky vytvorená.
; príklad overí výsledok funkcie EDA_SetProcessParams prečítaním tabuľky D2000_PROCESS_PARAMS RECORD NOALIAS (SD.ProcessParams) _params RECORD NOALIAS (SD.Arr_Real) _values TEXT _functionBody ; predpis EDA funkcie INT _retCode ; návratová hodnota _params[1]^PARAM_NAME := "test_param" _params[1]^PARAM_VALUE := "text_value" CALL %EDA_SetProcessParams(_params, _retCode) _functionBody := "VEKTOR _v;" _functionBody := _functionBody + "_v := %LoadData(""SELECT CURRENT_DATE, Count(*) FROM D2000_PROCESS_PARAMS"");" _functionBody := _functionBody + "RETURN _v;" CALL %EDA_CalcFunction(10, 0, _functionBody, SysTime, SysTime, 0, _values, 1, 3, 1, 0, _retCode) IF _retCode = _ERR_NO_ERROR THEN ; štruktúra _values je naplnená, obsahuje jeden riadok ELSE ; chyba ENDIF |
Súvisiace stránky:
Pridať komentár