Article: AN0001862Updated:
V níže uvedeném příkladě si ukážeme přenos hodnot z jednoho záznamu do formuláře pro založení nového záznamu. Tuto akci uživatel vyvolá klikem na tlačítko.
Vytvoříme si Tlačítko typu Skript ve třídě, z níž budeme hodnoty přebírat, a Pravidlo typu Před zobrazením nového záznamu v detailu ve třídě, která bude hodnoty přijímat.
Níže uvedený skript na tlačítku vytvoří URL obsahující proměnné a hodnoty ze sloupců name, og_user a date. (Pro přenos přes URL není vhodný sloupec typu dlouhý text, protože maximální délka URL je omezená. V přenášeném řetězci také nesmí být znak konce řádku - je třeba ho nahradit.)
//vytvoří URL obsahující promměnné a jejich hodnoty
if ( OGDataDetailForm.Save(false))
{
var clId = OGActualDataRowParentId;
var Id = OGActualDataRowId;
var dr = OG.DataRow.GetDataById( clId, Id);
var colName = OG.Column.GetByCode( clId, 'name');
var Name = dr.GetText( colName.Id);
var colSolver = OG.Column.GetByCode( clId, 'og_user');
var Solver = dr.GetPerson( colSolver.Id).Id;
var colDate = OG.Column.GetByCode( clId, 'date');
var Date = dr.GetDateTimeAsString( colDate.Id);
var newRecord = './DataDetail.aspx?Id=579-0' + '&varName='+Name+'&varSolver='+Solver+'&varDate='+Date;
OGForm.RedirectTo(newRecord);
}
V pravidle typu Před zobrazením nového záznamu v detailu třídy, která bude data přijímat, vložíme do příslušných polí sloupců funkci UrlValue s parametrem dle názvu proměnné v URL. V našem případě tedy UrlValue('varName'), UrlValue('varSolver') a UrlValue('varDate').