Funkcia získa zoznam pomenovaných parametrov z predpisu vypočítaného vektora.
Deklarácia
EDA_GetVectroParamsRec( INT/TEXT in vector, REC in params, REC out funcParams, INT out errorCode )
Parametre
| parameter | dátový typ | typ | popis | |
|---|---|---|---|---|
| 1 | vector | INT/TEXT | IN | Identifikátor (id/kód) vektora. |
| 2 | params | REC | IN | Štruktúra voliteľných parametrov. |
| 3 | funcParams | REC | OUT | Štruktúra parametrov vypočítaného funkcie. |
| 4 | errorCode | INT | OUT | Chybový (návratový) kód. |
Použitie
CALL %EDA_GetVectorParamsRec (_vector, _params, _funcParams, _errorCode);
Štruktúra parametrov vypočítaného vektora
| Parameter | Dátový typ | Popis | |
|---|---|---|---|
| 1 | name | TEXT | Názov parametra. |
| 2 | type | INT | Typ parametra (0 - BOOL, 1 - INT, 2 - REAL, 3 - TIME, 4 - VECTOR, 5 - VECTORS) |
| 3 | noInvalid | BOOL | Príznak zákazu neplatnej hodnoty. |
| 4 | default | TEXT | Predvolená hodnota parametra. |
| 5 | description | TEXT | Popis parametra. |
Obsah štruktúry voliteľných parametrov verzie 1:
| Parameter | Dátový typ | Prednastavená hodnota | Popis | |
|---|---|---|---|---|
| 1 | structVersion | INT | 0 (default cache) | Verzia štruktúry - 1. |
| 2 | cacheId | INT | Identifikátor cache. | |
| 3 | version | INT/TEXT | Identifikátor verzie. |
Príklad použitia
BEGIN
TEXT _vectorName = "vector.test"
INT _vectorId = 1000000
INT _errorCode, _i
TEXT _funcBody
RECORD NOALIAS (SD.EDA_CreateVector_Params_V1) _createParams
RECORD NOALIAS (SD.EDA_SetFunction_Params_V1) _funcParams
RECORD NOALIAS (SD.EDA_GetVectorParams_Params_V1) _params
RECORD NOALIAS (SD.EDA_ParamDesc) _funcParams
; vytvori vektor
_createParams[1]^structVersion := 1
_funcParams[1]^structVersion := 1
CALL %EDA_CreateVectorRec(_vectorName, _vectorId, _vectorName, 10, _createParams, _errorCode)
IF _errorCode != 0 THEN
RETURN
ENDIF
; nastavi vektoru predpis s parametrami
_funcBody := _funcBody + "PARAM BOOL _b := 1;" + %Chr(10)
_funcBody := _funcBody + "PARAM NOINVALID INT _i;" + %Chr(10)
_funcBody := _funcBody + "PARAM NOINVALID REAL _r := 0.0 COMMENT ""real parameter"";" + %Chr(10)
_funcBody := _funcBody + "PARAM NOINVALID TIME _t := %BeginYear(%CurrTime());" + %Chr(10)
_funcBody := _funcBody + "PARAM VEKTOR _v COMMENT ""vector parameter"";" + %Chr(10)
_funcBody := _funcBody + "PARAM VEKTORS _w;" + %Chr(10)
_funcBody := _funcBody + "RETURN _v;"
CALL %EDA_SetFunctionRec(_vectorId, 1, _funcBody, _funcParams, _errorCode)
IF _errorCode != 0 THEN
RETURN
ENDIF
; nacita zoznam parametrov
_params[1]^structVersion := 1
CALL %EDA_GetVectorParamsRec(_vectorId, _params, _funcParams, _errorCode)
IF _errorCode != 0 THEN
RETURN
ENDIF
END
|
Súvisiace stránky:
0 komentárov