Článek: AN0001643Aktualizováno:: 20.10.2021
Na stránkách s daty (Datas.aspx a DataDetail.aspx) pro třídu nebo dotaz je možné použít skripty. Můžete tak jednoduše rozšířit stránky o vámi požadovanou funkcionalitu:
- můžete na toolbar přidat nové tlačítka pro spouštění vašich akcí
- reagovat na akce na stránce
- přidat na stránku nový ovládací prvek pro zobrazení dalších informací
- ovlivnit chování sloupců (skrýt nebo nastavit read-only režim)
Skriptování není určeno pro potlačení funkcionality systému ObjectGears, ale pro rozšíření o vaše funkce.
Každá událost může být ve skriptu definována pouze jednou. Není chybou, když není definována. Pro lepší přehlednost můžete ve skriptu vytvářet další funkce, které však nesmí kolidovat s názvy událostí.
Pro skripty jsou Vám dostupné následující události:
Pro Datas.aspx:
Událost |
Popis |
OnLoad |
Událost se spustí po načtení stránky na serveru. Odpovídá ASP.NET události OnLoad. |
OnCreateFilter |
Událost se spustí po vytvoření filtrovacího objektu. Zde je možnost ovlivnit hledané záznamy. |
OnPreRender |
Událost se spustí při vykreslení stránky na serveru. Odpovídá ASP.NET události OnPreRender. |
Pro DataDetail.aspx:
Událost |
Popis |
OnLoad |
Událost se spustí po načtení stránky na serveru. Odpovídá ASP.NET události OnLoad. |
OnAfterLoadColumns |
Událost se spustí po načtení sloupců. Zde je možnost ovlivnit, které se zobrazí či zda budou v read-only režimu. |
OnBeforeBinding |
Událost se spustí před nastavením hodnot z entity (načtené z databáze) do ovládacích prvků na stránce. Událost lze využít pro inicializaci ovládacích prvků (např. seznamů hodnot comboboxů). |
OnAfterBinding |
Událost se spustí po dokončení bindování dat z entity do ovládacích prvků. Událost použijte pro finální nastavení ovládacích prvků nebo pro nastaveních vašich ovládacích prvků. |
OnAfterSave |
Událost se spustí po uložení dat stránky. Při chybě ve skriptu události tak nedojde ke zrušení ukládání. |
OnPreRender |
Událost se spustí při vykreslení stránky na serveru. Odpovídá ASP.NET události OnPreRender. |
Popis událostí
Všechny události se ve skriptu definují stejně, jen s rozdílným názvem funkce.
Příklad definice události:
function OnPreRender()
{
...
}
Objekty skriptů
Pro různé události jsou dostupné různé vlastnosti. Tyto objekty jsou popsány v následující tabulce.
Pro Datas.aspx:
Událost |
Objekt |
Popis |
|
OGModel |
Instance aktuálního modelu. |
|
OGParentType |
Typ zobrazeného objektu - třída nebo dotaz. |
|
OGClassDef |
Instance zobrazené třídy. |
|
OGQuery |
Instance zobrazeného dotazu. |
|
OGIsArchiveMode |
Příznak, zda jsou na stránce zobrazovány archivní záznamy. |
OnLoad |
OGControlOperations |
Seznam tlačítek zobrazovaných na toolbaru. Seznam obsahuje jen povolená tlačítka. |
OnLoad |
OGColumns |
Seznam sloupců zobrazovaných v seznamu záznamů. Seznam obsahuje jen povolené sloupce. |
OnLoad |
OGFilter |
Objekt filtru pro třídu/dotaz. |
OnCreateFilter |
OGDataRowFilter |
Instance fltru, kterým budou načteny záznamy z databáze. |
|
OGPageSetting |
Vlastnosti celé stránky. |
Pro DataDetail.aspx:
Událost |
Objekt |
Popis |
|
OGModel |
Instance aktuálního modelu. |
|
OGParentType |
Typ zobrazeného objektu - třída nebo dotaz. |
|
OGClassDef |
Instance zobrazené třídy. |
|
OGQuery |
Instance zobrazeného dotazu. |
|
OGIsArchiveMode |
Příznak, zda jsou na stránce zobrazovány archivní záznamy. |
|
int? OGDataRowId |
Id datového záznamu z provozní tabulky. |
|
int? OGArchiveId |
Id archivního záznamu z archivní tabulky. |
OnPreRender |
OGControlOperations |
Seznam tlačítek zobrazovaných na toolbaru. Seznam obsahuje jen povolená tlačítka. |
OnAfterLoadColumns
OnPreRender
|
OGColumns |
Seznam sloupců zobrazovaných na formuláři. Seznam obsahuje jen povolené sloupce. |
OnLoad
OnAfterLoadColumns
OnBeforeBinding
OnAfterBinding
OnAfterSave |
OGEditOptions |
Objekt pro nastavení vytvoření, uložení nebo mazání záznamu. |
|
OGPageSetting |
Vlastnosti celé stránky. |
OnAfterLoadColumns |
OGMDRelations |
Seznam master-detail vazeb. |
Pomocí objektu OGEditOptions, můžete na stránce DataDetail.aspx zakázat vytvoření, uložení nebo smazání záznamu. Je možné pouze zakázat tyto operace. Není možné tyto operace povolit v případě, že uživatel nemá potřebná přístupová oprávnění.
Ovládací prvky
Pro práci ve skriptech je potřeba znát názvy ovládacích prvků, které lze použít. Tabulka níže obsahuje seznam dostupných názvů.
Pro Datas.aspx:
Pro DataDetail.aspx:
Příklady
Vložení tlačítka na stránku
Skript vloží na toolbar tlačítko, které po kliknutí zobrazí informační text.
function OnLoad()
{
OGForm.Toolbar.CreateButton( 'b1', 'Button', './imagesdata/archive.png');
}
function b1_Click()
{
OGForm.SetSuccess( 'You have clicked on B1 button');
}
Nastavení tlačítka Zpět
Nastavením tlačítka potlačíte výchozí chování. Nastavením můžete změnit text na tlačítku, ikonu, URL (použije se při kliknutí na tlačítko) a viditelnost.
Vlastnosti nastavujte v události OnLoad.
function OnLoad()
{
var b = OGForm.GetControl('backButton');
b.Visible = true;
b.Text = 'Zpět na začátek';
b.NavigateUrl = 'Datas.aspx?CId=85';
}
Nastavení vlastností stránky
function OnLoad()
{
OGPageSetting.PageTitle = 'Můj název stránky';
OGPageSetting.BackgroundColor = 'red';
OGPageSetting.PageKeyword = 'klíčová slova,další klíčové slovo';
OGPageSetting.PageDescription = 'Popis stránky';
}