Article: AN0002080Updated:
Objekt slouží pro zadání a vrácení dat při volání webovýma službama.
Při volání metod GetDataByFilter, GetDatas, InsertData, InsertDatas, UpdateData, UpdateDatas, DeleteData a DeleteDatas se objekt OGData (nebo jejich seznam) předává jako vstupní parametr. Pro metody Get... objekt slouží jako filtr pro vyhledání vlastních datových záznamů. Pro ostatní metody se v objektu přímo předávají vlastní datové záznamy.
Pro metody Get... je tento objekt vrácen s nalezenými datovými záznamy.
Vlastnosti
Datový typ |
Název |
Popis |
int? |
ParentId |
Id třídy nebo dotazu. |
string |
ModelCode |
Kód modelu. |
string |
ParentCode |
Kód třídy nebo dotazu. |
int? |
ParentType |
Typ - třída nebo dotaz. |
int |
Id |
Id datového záznamu |
string |
Creator |
Account uživatele, který záznam vytvořil. |
DateTime? |
Created |
Datum vytvoření záznamu. |
DateTime? |
Modified |
Datum poslední změny záznamu. |
string |
Modifier |
Account uživatele, který záznam poslední změnil. |
DateTime? |
Deleted |
Datum smazání záznamu. |
string |
Deleter |
Account uživatele, který záznam smazal. |
string |
ShortDescription |
Krátký popis záznamu. |
OOItemList |
ColumnData |
Data sloupců jednoho datového záznamu. |
bool |
OnlyActive |
Příznak pro filtrování pouze aktivních záznamů. |
bool |
ReturnMetaData |
Příznak pro vrácení metadat o třídě a sloupcích. |
string |
LanguageCode |
Kód lokalizace, ve které se mají vrátit popis metadat. |
string |
FilterCommand |
Příkaz pro filtr. Použije se při hledání v datech metodou GetDatas. |
Vlastnost ParentType může mít hodnoty:
-
0 = pro třídu
-
1 = pro dotaz
Vlastnost LanguageCode určuje lokalizaci vrácených metadat. V případě, že není zadána žádná lokalizace, pak je vrácen text pro všechny jazyky. Pokud je zadána neexistující lokaliace, pak je vrácen text ve výchozím jazyce.
Pro nastavení filtru do vlastnosti FilterCommand použijte stejný formát jako pro filtr v URL.
Nastavení pro filtrování
Pro filtrování je třeba zadat dva druhy informací. První je v jakém objektu (třída nebo dotaz) se má hledání provést. Druhý typ informace je zadání filtrovacích podmínek pro ten konkrétní objekt.
Pro výběr objektu zadejte vlastnost ParentId nebo ModelCode, ParentCode a ParentType. Z druhé sady vlastností zadejte libovolnou vlastnost včetně ColumnData.
Při načítání dat (při filtrování) lze spolu s vlastními daty vrátít i metadata (popis třídy/dotazu a jejich sloupců). Stačí nastavit vlastnost ReturnMetaData = true. Spolu s metadaty je vhodné nastavit i vlastnost LanguageCode na požadovaný jazyk. Předpokladem je nastavená lokalizace pro daný objekt a na daný jazyk.
Nastavení pro vytvoření nebo aktualizaci dat
Pro vytvoření nebo aktualizaci dat je třeba zadat vlastnost ParentId nebo ModelCode, ParentCode a ParentType.
Pro aktualizaci dat je třeba ještě vlastnost Id pro konkrétní aktualizovaný záznam. Při vytváření záznamů je vlastnost Id ignorována.
Vlastnosti ShortDescription, OnlyActive, ReturnMetaData, LanguageCode a auditní sloupce jsou ignorovány.
Při vytváření nebo aktualizaci dat v záznamech systému ObjectGears se používají pouze sloupce pro to určené. Pro metody InsertData a InsertDatas musí mít sloupec v cílové třídě nastavenu vlastnost Povolit editaci při vytváření. Pro metody UpdateData a UpdateDatas musí být povolena vlastnost Povolit editaci při změně. Ostatní hodnoty sloupců jsou zahozeny. Zahozeny jsou také všechny systémové sloupce (ty nastavuje systém sám).
Pokud má cílová třída vytvořeno pravidlo se skriptem a tento skript nastaví libovolný jiný sloupec (kromě systémových), jsou tyto hodnoty uloženy také.
Cílem tohoto omezení je mít při volání od webové služby pod kontrolou, co je z venku do systému zasláno. Skript je považován za bezpečnou součást systému a může měnit sloupce bez omezení.
Nastavení pro mazání dat
Pro mazání je třeba zadat vlastnost ParentId nebo ModelCode, ParentCode a ParentType. Dále vlastnost Id pro konkrétní mazaný záznam.
Nastavení pro vrácení dat z databáze
Pro metody Get... se v načtených záznamech vyplňuje ParentId a Id. Vlastnosti ModelCode, ParentCode a ParentTyp se nevyplňují. Dále jsou naplněny vlastnosti pro audit (Create..., Modifi.. a Delete..) a ShortDescription. Vlastní hodnoty pro sloupce jsou uloženy v seznamu ColumnData.