Article: AN0001712Updated:
Objekt slouží pro práci s detailním formulářem na stránce s detailem záznamu (např. DataDetail.aspx). Můžete tak ze skriptu formulář uložit, znova načíst, zkontrolovat, zda uživatel může provést uložení atd.
Vlastnosti objektu
Název |
Popis |
bool CanSave() |
Funkce zjistí, zda uživatel má právo záznam uložit. |
bool CanDelete() |
Funkce zjistí, zda uživatel má právo záznam smazat. |
void CreateNew() |
Metoda vytvoří novou entitu a zobrazí ji ve formuláři. |
void Delete() |
Metoda smaže záznam zobrazený ve formuláři. |
bool LoadById(int id) |
Funkce načte podle zadaného ID záznam. Pokud záznam existuje, je vráceno True. Jinak False. |
EntityFormMode Mode |
Vlastnost vrátí mód formuláře. |
bool ReadOnly |
Příznak, zda je formulář ve stavu ReadOnly. |
void RecreateColumns() |
Metoda znovu vytvoří sloupce na formuláři. |
void Reload() |
Metoda znova načte záznam. |
void Save() |
Metoda uloží zobrazený záznam. |
void Save(bool afterCallRedirect) |
Metoda uloží zobrazený záznam.
Při afterCallRedirect = true dojde po zpracování uložení k přesměrování, ke kterému dochází po kliknutí na tlačítko Uložit na toolbaru.
|
void Save(bool afterCallRedirect, Hashtable dataRowProperty) |
Metoda uloží zobrazený záznam. Ve vlastnosti dataRowProperty můžete předat hodnoty, které budou nastaveny do ukládaného záznamu.
Při afterCallRedirect = true dojde po zpracování uložení k přesměrování, ke kterému dochází po kliknutí na tlačítko Uložit na toolbaru.
|
void SaveTask() |
Metoda uloží záznam jako ukončení úkolu workflow. |
void SaveTask(Hashtable dataRowProperty) |
Metoda uloží záznam jako ukončení úkolu workflow. Ve vlastnosti dataRowProperty můžete předat hodnoty, které budou nastaveny do ukládaného záznamu. |
bool ShowApproveTaskPanel |
Příznak, zda se má na formuláři zobrazit panel pro uložení workflow úkolu. |
EntityFormMode EntityFormMode_Normal |
Normální režim detailního formuláře. |
EntityFormMode EntityFormMode_MultiChange |
Režim násobné změny detailního formuláře. |
EntityFormMode EntityFormMode_Archive |
Archivní režim detailního formuláře. |
Uložení úkolu
Metoda SaveTask provede uložení záznamu z formuláře jako ukončení úkolu workflow. Pokud záznam není úkol nebo je úkol již ukončený, pak se nic neprovede. Metodu využijete spolu s příznakem ShowApproveTaskPanel pro obsluhu vlastního ukončení úkolu.
V případě, kdy chcete provést vlastní obsluhu uložení, pak zakažte zobrazení standardního panelu pro ukončení úkolu, na toolbar vložte tlačítko a z něj proveďte ukončení workflow úkolu včetně spuštění dalšího Vašeho kódu.
Uložení s nastavením parametů záznamu
V případě, že na formuláři není zobrazen sloupec, jehož hodnotu chcete skriptem nastavit (např. na tlačítku), pak použijte metodu Save nebo SaveTask s parametrem dataRowProperty. Do tohoto parametru nastavte hodnoty, které se překopírují do ukládaného záznamu.
Příklady
Uložení záznamu
OGDataDetailForm.Save();
Uložení záznamu s nastavením hodnot
Příklad nastaví do sloupce approval hodnotu 1.
var ht = OG.CreateHashtable();
ht['approval'] = 1;
OGDataDetailForm.Save( ht);
Příklad nastavení hodnot do polí formuláře a jeho uložení
var colStatus = OG.Column.GetByCode( OGActualDataRowParentId, 'status');
var colAssignto = OG.Column.GetByCode( OGActualDataRowParentId, 'assignto');
//nastavit stav k nasazeni (id = 18)
OGForm.GetControl(colStatus.Id).SetData( 18);
//priradit uživateli (id = 24)
var pi = OG.Person.CreatePersonInfo( 24);
OGForm.GetControl(colAssignto.Id).SetData( pi);
OGDataDetailForm.Save();
Skrytí panelu pro dokončení úkolu
Pro skrytí panelu pro standardní ukončení workflow úkolu zavolejte následující skript v události OnLoad na stránce DataDetail.aspx:
OGDataDetailForm.ShowApproveTaskPanel = false;