Globalní proměnné

Top  Previous  Next

Sheet ... ukazatel na aktuální (aktivní list) list

SheetList seznam ukazatelů na listy reportu

 

Cells vs. Formulas

Každý list (Sheet) obsahuje indexované 2D pole a to Cells a Formulas, jsou to proměnné ve kterých se udržují informace o hodnotách a vzorcích spreadsheetu

 

Pokud by například buňka A1 obsahovala číselnou hodnotu 100 a vzorec této buňky by byl =sum(a2:a10) tedy by vypadala asi takto:

 

potom ve skriptu

Sheet.Cells[1,1]:=100

a

Sheet.Formulas[1,1]:="=sum(a2:a10)"

 

rozdí je tedy patrný, Cells ukládá hodnoty buněk a Formulas ukládá vzorce buněk

 

pokud buňka obsahuje pouze data, tedy pokud v buňce A1 je hodnota 100 a žádný vzorec potom

Sheet.Cells[1,1]=Sheet.Formulas[1,1]=100

Při přepočítávání reportu (Eval) se hodnoty v Cells vždy mění na základě pole Formulas.

Pokud skriptem naplníte hodnotu Cells naplní se automaticky i Formulas.

Pokud skriptem naplníte vzorec do Formulas vypočtená hodnota se v Cells zobrazí až po zavolání Sheet.Eval

Sheet.Col, Sheet.Row

Při přepočtu reportu (Eval) je možné skriptem zjistit která buňka je právě prepočítávána a to proměnnými Sheet.Col a Sheet.Row, proměnné col a row lze též použít přímo ve vzorci buňky.

Pokud buňka B24 obsahuje vzorec =concat(col,' ',row) potom hodnota buňky bude '2 24'

 

Proměnná ReportProperty

 

z uvedených properties proměnné ReportProperty věnujte pozornost pouze událostem začínající On..... ,funkci ReportProperty.NewSheet a SheetNames udržuje kolekci názvů listů, které je též možné pomocí skriptu měnit, ostatní property jsou pro skriptování i editaci zapovězeny resp. jejich změna nemá žádný smysl. frxReport je ukazatel na FastReport strukturu, SheetsCount udržuje informaci o počtu listů reportu, všechny tyto informace obsluhuje designer sám a nedoporučuje se do nich zasahovat

 

ReportProperty.NewSheet je funkce která vloží do reportu nový list