- Vytvoril/a D2000 Dev Team, naposledy zmenené máj 04, 2020
Akcia LST_CREATE
LST_CREATE mask, objType, logGroup, sortBy, lines, h, data[, relation, object]
mask | in | Identifikátor typu String - načíta len objekty, ktorých atribút "Meno" vyhovuje zadanej maske. V prípade, ak je zvolená maska "*", sú do zoznamu zaradené objekty bez ohľadu na svoj názov (atribút "Meno"). | ||||||||||||||||||
objType | in | Identifikátor typu Int - určuje typ objektov, ktoré budú zaradené do zoznamu (voľba jednej z preddefinovaných konštánt s prefixom @OTYPE_*). | ||||||||||||||||||
logGroup | in | Odkaz na objekt - ak je aktuálna hodnota parametra neasociovaný alias, parameter sa neberie do úvahy. Ak parameter obsahuje odkaz na reálny objekt v systéme, do zoznamu budú zaradené len objekty patriace pod zadanú logickú skupinu. | ||||||||||||||||||
sortBy | in | Identifikátor typu Int - určuje spôsob, akým sa budú usporadúvať objekty v zozname (voľba jednej z preddefinovaných konštánt s prefixom @SORT_LIST_*). | ||||||||||||||||||
lines | in | Identifikátor typu Int - maximálny počet riadkov, ktoré budú zapísané do data. Predstavuje počet riadkov jednej stránky. Maximálny počet riadkov môže byť 1000. | ||||||||||||||||||
h | out | Identifikátor typu Int - jednoznačný handle na vytvorený zoznam objektov. Ak je tento handle rovný 0, nastala chyba pri vytváraní zoznamu. | ||||||||||||||||||
data | out | Identifikátor celej lokálnej štruktúry SD._System_ObjectInfo alebo inej definície štruktúry s rovnakým počtom a typmi stĺpcov. Typy a význam jednotlivých stĺpcov:
Je možné použiť štruktúru rozšírenú o ďalšie 2 stĺpce, pričom ich typy a význam je nasledovný:
| ||||||||||||||||||
relation | in | Identifikátor typu Int - definuje vzťah, ktorý musia spĺňať objekty vo výslednom zozname vzhľadom k objektu, ktorý je daný parametrom object. Hodnota parametra musí byť daná hodnotou niektorej konštanty REL_*. Ak nadobudne parameter hodnotu REL_NONE alebo REL_NOTUSED, objekt daný parametrom object sa neberie do úvahy. | ||||||||||||||||||
object | in | Odkaz na ľubovoľný objekt - vzťažný objekt. |
Akcia vytvorí zoznam objektov na základe zadaných vstupných parametrov. Ak je handle na zoznam rovný 0, nastala chyba pri vytváraní zoznamu.
Vlastníkom zoznamu je bežiaca inštancia skriptu a nie je možné ho zdieľať medzi rôznymi skriptami.
Zoznam zaniká zánikom skriptu alebo po vykonaní akcie LST_CLOSE.
Poznámka
Je možné pristupovať k aktuálnym hodnotám objektov ktoré sú načítané v rámci *aktuálnej* stránky akciami LST_CREATE, LST_GO_NEXT, .... Akciou ON CHANGE sa dá reagovať na zmeny hodnôt objektov. Po zatvorení zoznamu alebo po prestránkovaní sú prístupné len posledné hodnoty a akcia ON CHANGE prestane reagovať na zmeny hodnoty.
; Spracovanie zmeny hodnoty PROCEDURE ChangeProc(IN INT _v, IN ALIAS _a, IN INT _row, _col) _c := _v END ChangeProc INT _h ; identifikátor zonamu INT _hbj ; identifikátor prvého objektu zo stránky ENTRY GO_OnClick ALIAS _a RECORD NOALIAS (SD._System_ObjectInfo) _data ; otvorenie zoznamu a načítanie prvej stránky LST_CREATE "Sec", @OTYPE_ALL_TYPES, (0), @SORT_LIST_NAME, 1000, _h, _data ; Prístup k aktuálnej hodnote objektu zo stránky _hbj := _data[1]^ID SET _a AS (_hbj) _value := _a ; Registrácia procedúry ON CHANGE (_hbj) GOTO ChangeProc END GO_OnClick ; zatvorenie zoznamu ENTRY GO_CLOSE_OnClick LST_CLOSE _h END GO_CLOSE_OnClick
Súvisiace stránky:
0 komentárov