Promotic
WikipediaLinkedInYoutubeTwitterFacebook

SaveToHtm - metoda objektu PmgTrendViewer

Popis:
Metoda přečte HTML předlohu určenou parametrem sSrcHtm, modifikuje ji vlastními daty exportovanými do řetězce a vytvoří výslednou HTML stránku, kterou uloží podle nastavení parametru sDstHtm.

Takto vytvořená HTML stránka muže mít grafickou či tabulkovou podobu a lze ji využít například pro tisk (viz Příklad1).

Syntaxe:
Variant SaveToHtm(String sSrcHtm, String sDstHtm, String sParams, [String sParText])
Volání:
value = oTView.SaveToHtm(sSrcHtm, sDstHtm, sParams)
Parametry:
sSrcHtm(String) Zadávat prázdný řetězec "", což znamená, že předloha je generována systémem PROMOTIC.
sDstHtm(String) Místo pro uložení HTML stránky. Může být:
- soubor na disku, který bude nově vytvořen - Název souboru s cestou zadaná s prefixem file: (např. "file:c:/dest.htm"). Pokud není zadána celá cesta, pak se doplní relativně k souborové složce aplikace (pokud prohlížeč trendů běží v aplikaci PROMOTIC).
- řetězec v proměnné (String) - V tom případě Parametr je vstupně/výstupní (vstupní zadání je "string:") a následně po zavolání metody obsahuje samotný obsah HTML stránky.
- řetězec v proměnné (String) - kde klíčovým slovem je "return:" pak metoda vrací samotný obsah HTML stránky. (Metoda s tímto parametrem je funkční i v JavaScript obrazech.)

Pro zadání nelze použít přímo makro výraz, ale lze však volat metodu EvalMacro.

sParams(String) Dodatečné parametry definující způsob vytváření cílového souboru. Údaje jsou zde ve formátu KeyVal, například "mode:graph;view:dlg;".
"mode:xxx;" (nepovinné) - Určuje, která stránka bude použita pro zobrazení dat prohlížeče trendů
table (přednastaveno) - stránka v tabulkové podobě
graph - stránka v grafické podobě 2-rozměrného grafu
"graphcfg:xxx;" (nepovinné) - Určuje, jaké se použije nastavení pro prohlížeč trendů v grafické podobě (PmgTrendViewer) v uložené HTML stránce. HTML stránka v sobě obsahuje svůj vlastní objekt (PmgTrendViewer).
default (přednastaveno) - Veškeré nastavení prohlížeče v uložené HTML stránce bude implicitní (s výjímkou času od-do).
copy - Veškeré nastavení prohlížeče v uložené HTML stránce se převezme z prohlížeče, nad kterým se volala metoda SaveToHtm.
"view:xxx;" (nepovinné) - Určuje, zda se má a jak vygenerovaná stránka zobrazit
no (přednastaveno) - nezobrazuje se
dlg - vygenerovaná stránka se zobrazí v okně s přednastavenou velikostí
"text_xxx:yyy;" (nepovinné) - Předloha (odkazovaná parametrem sSrcHtm) obsahuje několik předdefinovaných klíčových slov, která umožňují zadat projektantský text, který se objeví ve výsledné sestavě (odkazované parametrem sDstHtm) místo tohoto klíčového slova, viz popis hodnot.
text_title - Hodnota klíčového slova title z předlohy (sSrcHtm) bude nahrazena řetezcem yyy.

Příklad: text_title:Kotelna 5;

text_note1 - Hodnota klíčového slova note1 z předlohy (sSrcHst) bude nahrazena řetezcem yyy.
text_note2 - Hodnota klíčového slova note2 z předlohy (sSrcHst) bude nahrazena řetezcem yyy.
text_codeinit - Hodnota klíčového slova codeinit z předlohy (sSrcHst) bude nahrazena řetezcem yyy. Řetězec yyy je inicializačním kódem v jazyce JavaScript, který bude vykonán při načtení stránky.

Pokud se v řetězci yyy vyskytuje znak ; (středník), pak je nutno nastavit text_codeinit:$Par:0; a samotný inicializační kód zadat v parametru sParText, viz Příklad4. V příkladě použitý odkaz oTView je odkazem na prohlížeč PmgTrendViewer trendů a jeho název musí být dodržen.

text_userYY - Kromě předdefinovaných klíčových slov lze zeditovat kopii předlohy (zkopírovanou z originální předlohy z PROMOTIC Web složky, viz popis parametru sSrcHst) a doplnit do ní další klíčová slova a zde v parametru definovat řetězec pro nahrazení. Například pokud v HTML předloze je klíčové slovo userkey, pak parametr je:

text_userkey:text pro zobrazení;

sParText[nepovinné] (String) Text pro nahrazení klíčového slova codeinit z předlohy. Viz popis parametru sParams, hodnoty codeinit.
Vrácená hodnota:
true - uložení proběhlo v pořádku (neplatí pokud parametr sDstHtm = "return:")
false - V jiném případě (neplatí pokud parametr sDstHtm = "return:")
HTMLstring - Vrací obsah html stránky pokud parametr sDstHtm je nastaven na "return:"
"" - prázdný řetězec ("") znamená selhání metody (pouze pokud parametr sDstHtm je nastaven na "return:")
Příklad1:
Vytvoří grafickou HTML stránku pro tisk v paměti. Vytvořená HTML stránka je následně vytisknuta na výchozí tiskárně OS Windows s určením velikosti stránky.
 
JavaScriptVBScriptVyber a zkopíruj do schránky

var oTView = pMe;
var sHtml = oTView.SaveToHtm("", "return;", "mode:graph;");
if (sHtml != "")
Pm.PrintHtmlPage(sHtml, "sourcetype:textstring;printer:default;width:700px;height:930px;");
Příklad2:
Vytvoří grafickou HTML stránku pro tisk. Vytvořená HTML stránka je zobrazena Web prohlížečem a připravena například k tisku.
VBScriptVyber a zkopíruj do schránky

oTView.SaveToHtm "", "file:trendprint.htm", "mode:graph;"
Pm.ShellExecute "open", "#app:trendprint.htm", "", "#app:", 1
Příklad3:
Zobrazí HTML stránku v okně
VBScriptVyber a zkopíruj do schránky

oTView.SaveToHtm "", "file:trendprint.htm", "mode:graph;view:dlg;"
Příklad4:
Vytvoří grafickou HTML stránku pro tisk. Klíčová slova title, note1 a note2 z HTML předlohy jsou postupně nahrazena řetězci "Stanice Ostravská", "část Přívoz" a "Stránku vyrobil Jan Novák". Vytvořená HTML stránka je zobrazena Web prohlížečem a připravena například k tisku.
VBScriptVyber a zkopíruj do schránky

oTView.SaveToHtm "", "file:trendprint.htm", "mode:graph;view:dlg;text_title:Stanice Ostravská;text_note1:část Přívoz;text_note2:Stránku vyrobil Jan Novák;"
Příklad5:
Vytvoří grafickou HTML stránku pro tisk. Klíčové slovo codeinit z HTML předlohy je nahrazeno řetězcem "oTView.TrendArea.Dx=540", který provede přenastavení velikosti plochy objektu při načítání stránky. Vytvořená HTML stránka je zobrazena Web prohlížečem a připravena například k tisku.
VBScriptVyber a zkopíruj do schránky

Dim sParCode
sParCode = "oTView.TrendArea.Dx = 540;"
oTView.SaveToHtm "", "file:trendprint.htm", "mode:graph;view:dlg;text_codeinit:$Par:0;", sParCode
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice