Promotic
WikipediaLinkedInYoutubeTwitterFacebook

SaveToHtm - metoda objektu TrendsView

Popis:
Metoda přečte HTML soubor určený parametrem sSrcHtm, modifikuje jej vlastními daty exportovanými do řetězce a vytvoří výslednou HTML stránku, kterou uloží dle zadání 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:
SaveToHtm(sSrcHtm As String, sDstHtm As String, sParams As String, [sParText As String]) As Variant
Volání:
b = oTView.SaveToHtm(sSrcHtm, sDstHtm, sParams)
Parametry:
sSrcHtm(String) Cesta k souboru (s cestou) zadaná s prefixem file: (např. "file:c:/source.htm"), ze kterého je načten zdrojový HTML soubor. Pokud není zadána celá cesta, doplní se relativně vzhledem k souborové složce aplikace (pokud prohlížeč trendů běží v aplikaci PROMOTIC).

Pokud je zadaná hodnota:

ver:0 nebo prázdný řetězec "" - použije se soubor, dodaný se systémem PROMOTIC, obsažený v knihovně Pmtrdvw2.dll a znamená použití staré verze.
ver:1 - znamená použití nové verze 1 vnitřního zdrojového HTML souboru (TrPrintGraph1.htm) a je doporučeno používat právě tuto novou verzi.
Na webovém klientovi, v obraze napsaném v jazyce JavaScript bude bez ohledu na toto nastavení použit jako vzor soubor TrPrintGraph2.htm.

V podsložce Web instalační složky PROMOTIC lze nalézt totožnou předlohu pod názvem TrPrintxxx.htm, kde xxx se liší, zda jde o předlohu grafickou či tabulkovou - TrPrintGraph1.htm, TrPrintTable1.htm. Tento soubor lze zkopírovat (např. do složky aplikace), kopii upravit a tuto upravenou kopii použít místo původního souboru nastavením parametru sSrcHtm na cestu k této upravené kopii.

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

sDstHtm(String) Místo pro uložení HTML stránky. Může být: Může být:
- soubor na disku - Cesta k HTML souboru (s cestou) zadaná s prefixem file: (např. "file:c:/dest.htm"), jenž bude nově vytvořen. Pokud není zadána celá cesta, doplní se relativně vzhledem k souborové složce aplikace (pokud prohlížeč trendů běží v aplikaci PROMOTIC).
- řetězec v proměnné (String) - Parametr je v tomto připadě 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) Textový seznam parametrů definující způsob vytváření cílového souboru. Údaje s přiřazenou hodnotou jsou zde odděleny středníkem, 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ě (TrendsView) v uložené HTML stránce. HTML stránka v sobě obsahuje svůj vlastní ActiveX objekt (TrendsView).
default (přednastaveno) - Veškeré nastavení prohlížeče v uložené HTML stránce bude implicitní (s vyjí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é) - HTML předloha (odkazovaná parametrem sSrcHtm) obsahuje několik předdefinovaných klíčových slov, která umožňují zadat uživatelský text, jenž 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 HTML předlohy (sSrcHtm) bude nahrazena řetezcem yyy.

Příklad: text_title:Kotelna 5;

text_note1 - Hodnota klíčového slova note1 z HTML předlohy (sSrcHtm) bude nahrazena řetezcem yyy.
text_note2 - Hodnota klíčového slova note2 z HTML předlohy (sSrcHtm) bude nahrazena řetezcem yyy.
text_codeinit - Hodnota klíčového slova codeinit z HTML předlohy (sSrcHtm) bude nahrazena řetezcem yyy. Řetězec yyy je inicializačním kódem v jazyce javascript, jenž 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říklad5. V příkladě použitý odkaz oTView je odkazem na prohlížeč TrendsView trendů a jeho název musí být dodržen.

text_userYY - Kromě předdefinovaných klíčových slov je možné zeditovat kopii předlohy (zkopírovanou z originální HTML předlohy z PROMOTIC WEB složky, viz popis parametru sSrcHtm) 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 k zobrazení;

sParText[nepovinné] (String) Text pro nahrazení klíčového slova codeinit z HTML 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 opačném případě (neplatí pokud parametr sDstHtm = "return:")
HTMLstring - Vrací obsah html stránky pokud je parametr sDstHtm nastaven na "return:"
"" - prázdný řetězec ("") znamená selhání metody (jen tehdy pokud je parametr sDstHtm nastaven na "return:")
Příklad1:
Vytvoření grafické HTML stránky pro tisk v paměti. Jako prázdná předloha (zdrojový HTML soubor) je v tomto případě použita HTML stránka dodaná se systémem PROMOTIC. Vytvořená HTML stránka je následně vytisknuta na výchozí tiskárně OS Windows s určením velikosti stránky.
 
VBScript
Dim sHtml
sHtml = oTView.SaveToHtm("ver:1", "return;", "mode:graph;")
If sHtml <> "" Then
  Pm.PrintHtmlPage sHtml, "sourcetype:textstring;printer:default;width:700px;height:930px;"
End If
 
JavaScript
var sHtml = oTView.SaveToHtm("ver:1", "return;", "mode:graph;");
if(sHtml != "")
  Pm.PrintHtmlPage(sHtml, "sourcetype:textstring;printer:default;width:700px;height:930px;");
Příklad2:
Vytvoření grafické HTML stránky pro tisk. Jako prázdná předloha (zdrojový HTML soubor) je v tomto případě použita HTML stránka dodaná se systémem PROMOTIC. Vytvořená HTML stránka je zobrazena prohlížečem a připravena například k tisku.
oTView.SaveToHtm "ver:1","file:trendprint.htm","mode:graph;"
Pm.ShellExecute "open", "#app:trendprint.htm", "", "#app:", 1
Příklad3:
Zobrazení HTML stránky v okně:
oTView.SaveToHtm "ver:1", "file:trendprint.htm", "mode:table;view:dlg;"
Příklad4:
Vytvoření grafické HTML stránky pro tisk. Jako HTML předloha je v tomto případě použita kopie trendsrc.htm (umístěná ve složce aplikace) HTML stránky dodané se systémem PROMOTIC. Vytvořená HTML stránka je zobrazena prohlížečem a připravena například k tisku.
oTView.SaveToHtm "file:trendsrc.htm", "file:trendprint.htm", "mode:graph;view:dlg;"
Příklad5:
Vytvoření grafické HTML stránky pro tisk. Jako HTML předloha je v tomto případě použita HTML stránka dodaná se systémem PROMOTIC. 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 prohlížečem a připravena například k tisku.
oTView.SaveToHtm "ver:1", "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říklad6:
Vytvoření grafické HTML stránky pro tisk. Jako HTML předloha je v tomto případě použita HTML stránka dodaná se systémem PROMOTIC. Klíčové slovo codeinit z HTML předlohy je nahrazeno řetězcem "oTView.TrendArea.Dx=540", jenž provede přenastavení velikosti plochy prvku při načítání stránky. Vytvořená HTML stránka je zobrazena prohlížečem a připravena například k tisku.
Dim sParCode
sParCode = "oTView.TrendArea.Dx = 540;"
oTView.SaveToHtm "ver:1","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