Article: AN0001917Updated:
Pro některé typy třídy (např. pro číselníky) je možné použít zkrácené načtení záznamu a to podle kódu. V takovéto třídě musí existovat sloupec, jehož kód je 'code'. Při čtení se pak předává právě kód z tohoto sloupce a podle něj se pak provádí filtrování záznamů.
V příkladu níže máme třídu 'project', která obsahuje sloupec 'code', v němž je pro každý project uložen jeho kód. Skript níže načte ze třídy project záznam s kódem PROJ30429.
var dr = OG.DataRow.GetDataRowByCode( null, model.ClassDefs['project'], 'PROJ30429');
Podobným způsobem můžeme načíst záznam, pokud známe hodnotu nacházející se i v jiném sloupci. Oproti předchozímu případu musíme přidat další parametr, který určuje kód tohoto sloupce. V našem příkladě je to sloupec 'name'.
var dr = OG.DataRow.GetDataRowByCode( null, model.ClassDefs['project'], 'PROJ30429','name');
Záznam je možné také načíst pomocí filtru. V níže uvedeném příkladu opět načítáme podle hodnoty uložené ve sloupci 'name'.
var f = OG.DataRow.GetDataRowFilter( model.ClassDefs['project'].Id);
f['name'] = 'PROJ30429';
var drl = OG.DataRow.GetDataByFilter(f);
if ( drl != null && drl.Count > 0)
{
var dr = drl[0];
}