Skriptovací jazyk - tvorba sestav: Porovnání verzí

Z K.A.P.
Skočit na navigaciSkočit na vyhledávání
 
(Není zobrazeno 5 mezilehlých verzí od stejného uživatele.)
Řádek 1: Řádek 1:
Modul pro práci se skripty podporuje vytváření sestav připravených v generátoru sestav.  
+
Modul pro práci se [[Skriptovací programovací jazyk|skripty]] podporuje vytváření sestav připravených v generátoru sestav.  
  
===Příkaz pro spuštění výpočtu sestavy má následující syntaxi===
+
===Příkaz pro spuštění výpočtu sestavy z generátoru sestav===
 
'''''Function GSRunReport(SkupinaSestav : Integer; SestavaCislo : Integer; Parametry: String): String;<br/>'''''
 
'''''Function GSRunReport(SkupinaSestav : Integer; SestavaCislo : Integer; Parametry: String): String;<br/>'''''
 
:Parametry musí být zapsány takto:
 
:Parametry musí být zapsány takto:
Řádek 21: Řádek 21:
 
|bgcolor=#ffdead|Příklad
 
|bgcolor=#ffdead|Příklad
 
|-
 
|-
|Například GSRunReportV(6, 2, ['DatumOd', 'DatumDo'], ['01/01/12', '01/01/12'])
+
|GSRunReportV(6, 2, ['DatumOd', 'DatumDo'], ['01/01/12', '01/01/12'])
 
|}
 
|}
  
Řádek 35: Řádek 35:
 
'''''#13 je znak CR (čili znak s kódem 13)<br/>'''''
 
'''''#13 je znak CR (čili znak s kódem 13)<br/>'''''
 
Viz příklad [[Příklady PASCAL]]
 
Viz příklad [[Příklady PASCAL]]
 +
 +
===Příkaz pro spuštění QR2 sestavy===
 +
 +
'''''Function QR2RunReport(AOwner : TComponent; QR2FileName : String; PreviewMode : integer; PrinterIndex : integer = -1): Boolean;<br/>'''''
 +
:Funkce spustí QR2 sestavu určenou parametrem QR2FileName. PreviewMode určuje režim zpracování (0..návrhář sestav, 1..náhled sestavy, 2..tisk sestavy, 4..nová sestava). Nepovinný parametr PrinterIndex určuje pořadové číslo tiskárny ze seznamu instalovaných tiskáren (-1 znamená výchozí tiskárnu). AOwner musí být objekt typu TForm (formulář). Formulář musí mít nastavenou vlastnost name, musí být vlastníkem všech objektů typu TDataset (např. TKAPBtrTable, TKAPMemTable, TKAPADOTable), které mají být v sestavě použity. Pro inicializaci tabulek je třeba použít funkci CreateA a objekty musí být po vytvoření pojmenovány. Formulář musí být také vlastníkem objektů TDatasource, které mají ve vlastnosti Dataset určenou odpovídající datovou tabulku.
 +
:{|class="wikitable" border=1 width=1000
 +
|-
 +
|bgcolor=#ffdead|Příklad
 +
|-
 +
| F:= TForm.Create(Application);
 +
F.Name := 'MujFormular';
 +
T:= TKAPBtrTable.CreateA(F);
 +
T.Name := 'MojeTabulka';
 +
T.TableName := 'CISELNIK.BTR';
 +
T.Open;
 +
ds := TDataSource.Create(F);
 +
ds.Dataset := T;
 +
QR2RunReport(F, 'MojeSestava', 1);
 +
F.Free;
 +
|}
 +
 +
'''''Procedure QR2PdfExport(AOwner : TComponent; QR2FileName : String; PDF2FileName : String; RunPDF: Boolean; ShowSetupDialog: Boolean);<br/>'''''
 +
:Procedura spustí výpočet určené sestavy a výsledek uloží do určeného PDF souboru. Parametr RunPDF určuje, zda se má výsledný PDF zobrazit v prohlížeči PDF. Parametr ShowSetupDialog povoluje nebo zakazuje zobrazení dialogu s nastavením exportu před generováním PDF souboru.
 +
 +
'''''Procedure QR2AddReportVariable(VariableName: string; Value : string);<br/>'''''
 +
:Procedura QR2AddReportVariable nastaví hodnotu proměnné s určeným jménem proměnné. Zjistit hodnotu proměnné lze zjistit v QR2 sestavě pomocí funkce VAR('Jménoproměnné')
 +
 +
'''''Procedure QR2ClearReportVariables;<br/>'''''
 +
:Procedura QR2ClearReportVariables vynuluje seznam proměnných přidaných pomocí funkce QR2AddReportVariable

Aktuální verze z 18. 5. 2015, 08:46

Modul pro práci se skripty podporuje vytváření sestav připravených v generátoru sestav.

Příkaz pro spuštění výpočtu sestavy z generátoru sestav

Function GSRunReport(SkupinaSestav : Integer; SestavaCislo : Integer; Parametry: String): String;

Parametry musí být zapsány takto:
promenna1=hodnota1 #13 promenna2=hodnota2 #13 ... promenna_n=hodnota_n
Příklad
GSRunReport(6, 2, 'DatumOd=01/01/12'+chr(13)+'DatumOd=01/01/12')

Function GSRunReportV(SkupinaSestav : Integer; SestavaCislo : Integer; JmenaParametru: Array of String; Hodnoty: array of Variant): String;

V této variantě jsou parametry zadávány formou dvojice hodnot:
[promenna_1, ..., promenna_n], [hodnota_1, ..., hodnota_n]
Příklad
GSRunReportV(6, 2, ['DatumOd', 'DatumDo'], ['01/01/12', '01/01/12'])

SkupinaSestav a SestavaCislo je identifikace spouštěné sestavy nadefinované v generátoru sestav.

Vytvořenou sestavu je možné odeslat například pomocí funkce SendMailBySMTP mailem prostřednictvím protokolu SMTP nebo pomocí objektu TMOScommunicator prostřednictvím MaximObjServeru.

Výsledkem funkce je textový řetězec obsahující buď:
OK#13Jméno sestavy
nebo
CHYBA#13Chyba při výpočtu

#13 je znak CR (čili znak s kódem 13)
Viz příklad Příklady PASCAL

Příkaz pro spuštění QR2 sestavy

Function QR2RunReport(AOwner : TComponent; QR2FileName : String; PreviewMode : integer; PrinterIndex : integer = -1): Boolean;

Funkce spustí QR2 sestavu určenou parametrem QR2FileName. PreviewMode určuje režim zpracování (0..návrhář sestav, 1..náhled sestavy, 2..tisk sestavy, 4..nová sestava). Nepovinný parametr PrinterIndex určuje pořadové číslo tiskárny ze seznamu instalovaných tiskáren (-1 znamená výchozí tiskárnu). AOwner musí být objekt typu TForm (formulář). Formulář musí mít nastavenou vlastnost name, musí být vlastníkem všech objektů typu TDataset (např. TKAPBtrTable, TKAPMemTable, TKAPADOTable), které mají být v sestavě použity. Pro inicializaci tabulek je třeba použít funkci CreateA a objekty musí být po vytvoření pojmenovány. Formulář musí být také vlastníkem objektů TDatasource, které mají ve vlastnosti Dataset určenou odpovídající datovou tabulku.
Příklad
F:= TForm.Create(Application);
F.Name := 'MujFormular';
T:= TKAPBtrTable.CreateA(F);
T.Name := 'MojeTabulka';
T.TableName := 'CISELNIK.BTR';
T.Open;
ds := TDataSource.Create(F);
ds.Dataset := T;
QR2RunReport(F, 'MojeSestava', 1);
F.Free;

Procedure QR2PdfExport(AOwner : TComponent; QR2FileName : String; PDF2FileName : String; RunPDF: Boolean; ShowSetupDialog: Boolean);

Procedura spustí výpočet určené sestavy a výsledek uloží do určeného PDF souboru. Parametr RunPDF určuje, zda se má výsledný PDF zobrazit v prohlížeči PDF. Parametr ShowSetupDialog povoluje nebo zakazuje zobrazení dialogu s nastavením exportu před generováním PDF souboru.

Procedure QR2AddReportVariable(VariableName: string; Value : string);

Procedura QR2AddReportVariable nastaví hodnotu proměnné s určeným jménem proměnné. Zjistit hodnotu proměnné lze zjistit v QR2 sestavě pomocí funkce VAR('Jménoproměnné')

Procedure QR2ClearReportVariables;

Procedura QR2ClearReportVariables vynuluje seznam proměnných přidaných pomocí funkce QR2AddReportVariable