Promotic

Popis INI souboru aplikace (Aplikace.ini)

Pod pojmem "INI soubor aplikace" je zde myšlen INI soubor ve složce aplikace, který se jmenuje stejně jako soubor PRA. Například aplikace je "Kotelna.pra" a systém PROMOTIC automaticky k tomuto souboru vytvoří soubor "Kotelna.ini".
INI soubor aplikace lze editovat jako obyčejný textový soubor. Lze ho také otevřít a editovat přímo v systému PROMOTIC v menu " > Otevřít aplikační soubor > Aplikace.ini".
V INI souboru aplikace se uchovávají jednoduchá nastavení potřebná pro vývojové prostředí nebo runtime prostředí. Popíšeme zde základní zveřejněné užitečné parametry, které lze nastavovat.

Popis klíčů v sekci [Promotic]

V této sekci jsou globální parametry nastavení aplikace.
[Promotic]
Running=0
RtStartDelay=0
ErrRedir=0
MultipleRun=0
VerifyName=1
XmlClientTimeout=10
Running: =0 neběží v runtime, =1 běží v runtime. Slouží k nastavování parametru pEvent.Reset v události PmaRoot.onAppStartBegin. Nesmí se manuálně nastavovat, je nastavován jen systémem PROMOTIC.
RtStartDelay: (přednastaveno: 0). Čas zpoždění spuštění aplikace PROMOTIC v sekundách. Tato volba se používá, pokud runtime aplikace PROMOTIC závisí na jiných programech (databáze, komunikační server, atd.). Tím se zajistí, že aplikace PROMOTIC nenastartuje dříve než aplikace, na kterých závisí a nedojde tak k chybám.
Jiná možnost zpožděného spouštění: viz Program RunLater.
ErrRedir: Při vzniku chyby v aplikaci se vždy popis chyby zaregistruje v INFO systému v položce Errors.
Nastavením zde lze dosáhnout, že se tato chyba (i opakující se chyba) zároveň vypíše i do položky Debug INFO systému:
=0 (přednastaveno) - chyba se nevypisuje
=1 - chyba se vypíše do karty "Debug1"
=2 - chyba se vypíše do karty "Debug2"
MultipleRun: =1/0 (přednastaveno: 0), Povolení/zákaz spustit jednu aplikaci vícekrát současně. To znamená, že soubor PRA se uvolní po načtení aplikace (volba funguje jen s runtime licencí).
VerifyName: Kontrolovat systémové názvy (názvy objektů a názvy proměnných v datových objektech):
=1 (přednastaveno) Kontrolovat
=0 Nekontrolovat. Lze nastavit jen vyjímečně pro existující aplikace, ve kterých již jsou nesystémové názvy.
XmlClientTimeout: (přednastaveno: 10) Určuje maximální dobu čekání na dokončení komunikace s Web serverem v sekundách. Jedná se o čekání na získání IP adresy ze jména, o čekání na navázání spojení s Web serverem, o čekání na odpověď z Web serveru.
WebView2: Určuje výchozí prohlížeč Web stránek aplikace viz Prohlížeč Web stránek (/#glob/webbrowser).
=0 (přednastaveno) Použije se starší prohlížeč WebBrowser založený na InternetExplorer 11.
=1 Použije se nový prohlížeč WebView2 založený na Edge (Chrome).

Popis klíčů v sekci [Licence]

V této sekci jsou parametry nastavení nosiče licence, viz Typy nosičů PROMOTIC licencí.
[Licence]
Medium=hwkey:k1234
Medium: Klíč obsahuje seznam nosičů licence. Oddělovačem je znak "čárka" (,). Licence se hledá v seznamu nosičů licence zleva vpravo. Použije se první nalezená licence. Pokud se klíč vůbec neuvede, pak se použije výchozí nastavení Medium=hwkey, zajišťující případné vyčtení licence z Hardwarový (USB) licenční klíč.
 
=none - Žádný nosič licence. Použije se bezplatná licence PmFree - Bezplatné vývojové prostředí a runtime licence systému PROMOTIC.
=hwkey - Nosičem licence je Hardwarový (USB) licenční klíč nebo Licenční soubor SWK rozšiřující obsah licenčního klíče. Lze také více upřesnit typ licence (vývojová/runtime) nebo se dokonce odkázat na konkrétní licenci (na číslo licence). To například umožňuje nejprve hledat vývojovou licenci (nebo konkrétní licenci) a pak teprve načíst runtime licenci nebo síťovou runtime licenci atd. Takto lze tedy vyřešit situaci, kdy aplikace standardně používá runtime licenci (z jakéhokoliv média), ale při vložení vývojového HW klíče bude aplikace přednostně načítat vývojovou licenci.
=hwkey - Klíč s vývojovou nebo runtime licencí (bez upřesnění).
=hwkey:dev - Klíč s vývojovou licencí.
=hwkey:rt - Klíč s runtime licencí.
=hwkey:k-XXXX - Klíč s číslem licence jiným než XXXX.
=hwkey:kXXXX - Klíč s číslem licence XXXX. Pro čtení HW klíče přes přes lokální licenční server PmLicServer je toto jediná funkční volba. Používá se zejména kvůli vyřešení problému s protokolem RDP. Tato volba funguje i pro přímé čtení licence. Pro runtime aplikace s licencí v HW klíči je to doporučovaný způsob.
=swkey - Nosičem licence je Softwarový licenční klíč (.swk) vázaný na systémové komponenty OS Windows. Například: swkey:Pm1234.swk
=netkey - Nosičem licence je Síťový licenční klíč. Například: netkey:http://192.168.1.2:5656/Pm1234.swk
 
Příklad:
Různé příklady využití postupného vyhledávání dostupných licencí:
Medium=hwkey:k1234
  nebo
Medium=swkey:Pm1234.swk
  nebo
Medium=netkey:http://192.168.1.2:5656/Pm1234.swk
  nebo
Medium=hwkey:dev,hwkey
  nebo
Medium=hwkey:dev,netkey:http://192.168.1.2:5656/Pm1234.swk
  nebo
Medium=hwkey:dev,swkey:Pm1234.swk
  nebo
Medium=hwkey:k1234,hwkey:k4321,hwkey:rt
  nebo
Medium=hwkey:k1234,hwkey:k1111
MediumDt: Klíč obsahuje seznam nosičů licence pro vývojové prostředí. Syntaxe je stejná jako u klíče Medium. Klíč umožňuje nastavit aplikaci rozdílnou licenci pro vývojové prostředí a pro runtime prostředí. Postup získání seznamu licencí spočívá v postupném hledání nastaveného klíče typu Medium. Vývojové prostředí postupně hledá klíč v pořadí:
- MediumDt: v souboru Aplikace.ini
- Medium: v souboru Aplikace.ini
- Medium: v INI souboru vývojového prostředí PromoticDt.ini
MediumRt: Klíč obsahuje seznam nosičů licence pro runtime prostředí. Syntaxe je stejná jako u klíče Medium. Klíč umožňuje nastavit aplikaci rozdílnou licenci pro vývojové prostředí a pro runtime prostředí. Postup získání seznamu licencí spočívá v postupném hledání nastaveného klíče typu Medium. Runtime prostředí postupně hledá klíč v pořadí:
- MediumRt: v souboru Aplikace.ini
- Medium: v souboru Aplikace.ini
- Medium: v INI souboru runtime PromoticRt.ini
UseLicServerHwk: Klíč určuje, zda se nosič licence hwkey bude číst přímo nebo pomocí lokálního PmLicServer.
0 (přednastaveno) - hwkey se bude číst přímo
1 - hwkey se bude číst přes lokální PmLicServer

Popis klíčů v sekci [InfoSystem]

V této sekci lze nastavit způsob uložení stavu INFO systému. Pokud klíč StoreType je nastaven na hodnotu 2 nebo 3 (tzn. povoleno uložení), pak při zavírání okna INFO systému se v této sekci vytvoří nové další klíče s hodnotami stavu okna. Jedná se o uložení pozice a velikost okna, rychlosti obnovování INFO systému a uložení naposledy prohlížené karty včetně šířek sloupců.
Sekce [InfoSystem] s klíčem StoreType=0 se vytvoří automaticky při prvním otevření okna INFO systému (pokud tam tento klíč nebyl uveden).
[InfoSystem]
StoreType=0
StoreType: Určuje, zda lze další klíče této sekce číst a zapisovat:
=0 čtení a zápis není povolen
=1 je povoleno jen čtení nastavení ze souboru INI
=2 je povoleno jen zápis do souboru INI
=3 je povoleno čtení a zápis
Další klíče této sekce jsou určeny pro pamatování hodnot stavu, vytvářejí se automaticky a nebudeme je zde popisovat.

Popis klíčů v sekci [Log]

V této sekci lze nastavit parametry "logovani" aplikace. Tím se myslí zapnout takový režim aplikace, že určité operace se budou vždy zapisovat na disk do souboru Aplikace.log (například pokud je projekt "Kotelna.pra", pak se loguje do souboru "Kotelna.log"). Tento režim je vhodné zapnout při vývoji aplikace, kdy chcete mít přehled o vývoji a zároveň se dozvědět informace pokud software například zhavaruje, atd. Při běžném plném provozu doporučujeme logovat aplikaci dle přednastavených hodnot klíčů (tzn. jeden klíč: EnableBase=2).
Systém PROMOTIC hodnoty klíčů v této sekci jen čte a nenastavuje. Nastavit klíče (a na začátku i celou sekci) musí projektant sám - pokud chce logovat.
[Log]
DeleteOnSize=1000
AfterWrite=2
EnableBase=2
EnableGlobErr=0
EnableDebug=0
EnableObject=0
EnableSql=0
EnableUser=0
DeleteOnSize: Velikost textového log souboru v kB (přednastaveno 1000). Pokud při načítání aplikace je soubor log větší než je zde zadáno, pak se původní soubor "Aplikace.log" přejmenuje na "Aplikace.log.old" a soubor "Aplikace.log" se vytvoří nový prázdný. Je to triviální zabezpečení proti neomezenému růstu log souboru.
AfterWrite:
=0 soubor log se po zápisu věty nezavře
=1 po zápisu se soubor nezavře ale uděla se flush (tzn. data se uloží z mezipaměti na disk)
=2 (přednastaveno) soubor se po každém zápisu zavře

Je to triviální způsob optimalizace zápisu, protože při některých nastaveních se může zapisovat velké množství vět.
EnableBase:
=0 Zákaz logování všeho
=1 Logování povoleno (tzn. logovat podle nastavení EnableGlobErr, EnableDebug, EnableObject)
=2 (přednastaveno) Logování povoleno (stejně jako 1) a navíc se budou logovat základní systémové události (spouštění a zastavování aplikace, událost onTimeChange, volání metod Pm.AppStop, Pm.ShutDown, atd.)
EnableGlobErr:
=0 Zákaz logování globálních chyb
=1 (přednastaveno) Logovat jen nové chyby (tzn. které vznikly poprvé)
=2 Logovat všechny glob.chyby (nedoporučeno pro trvalý provoz, protože pak mohou záznamy přibývat bez omezení a log soubor bude neomezeně růst)

Lze také nastavit aby se chyby vypisovaly současně do položky Debug INFO systému. Viz klíč ErrRedir v Popis klíčů v sekci [Promotic].
EnableDebug:
=0 zákaz logovaní (přednastaveno) položky Debug INFO systému.
=1 povolení logování karty "Debug1"
=2 povolení logování karty "Debug2"
=3 povolení logování karet "Debug1" a "Debug2"
EnableObject:
=0 zákaz (přednastaveno), v jiném případě součet hodnot:
=1 když objekt je vytvářen (tzn. když objekt je načítán ze souboru pra a vytvářen v paměti počítače)
=2 když objekt zaniká (tzn. když objekt se maže z paměti počítače)
=4 když objekt je spouštěn v runtime - když událost onStart
=8 když objekt je zastavován v runtime - když událost onStop
EnableSql:
=0 zákaz logování (přednastaveno) SQL dotazů, v jiném případě buď hodnota 1 nebo součet hodnot 2, 4 nebo 8:
=1 logovat SQL dotazy všech komponent
=2 logovat SQL dotazy objektů PmaAdo a PmaDatabase
=4 logovat SQL dotazy objektu PmaTrendGroup
=8 logovat SQL dotazy objektu PmaAlarmGroup
EnableUser:
=0 Zákaz logování (přednastaveno) přihlášení uživatelů
=1 Logovat přihlášení Web uživatelů (jméno + IP adresa)

Popis klíčů v sekci [Info]

V této sekci lze vyčíst nejdůležitější informace o aplikaci a o verzi PROMOTIC. Nejdůležitější údaj, který lze v sekci zjistit, je verze PROMOTIC, ve které byla aplikace naposledy spuštěna. Pak při pohledu do zálohy aplikace lze z této sekce určit, ve které verzi PROMOTIC byla záloha aplikace pořízena. Užitečné i při vzdáleném připojení k reálné aplikaci (např. pomocí VPN) nebo pokud je na jednom počítači více aplikací běžících současně v různých verzích PROMOTIC. Viz: Jak zjistit verzi PROMOTIC.
Údaje v této sekci mají pouze informační charakter, generují se znova při každém spuštění aplikace. Jejich případná editace nemá na aplikaci žádný vliv.
[Info]
AppLastRunVer=Promotic7.3.4
AppLastEditVer=Promotic7.3.3
AppLastEditTime=2008.04.16 14:00:33.468
AppCreatedVer=Promotic7.2.1
AppLastRunVer: Verze PROMOTIC, ve které byla aplikace naposledy spuštěna.
AppLastEditVer: Verze PROMOTIC, ve které byla aplikace naposledy editována.
AppLastEditTime: Datum a čas, kdy byla aplikace naposledy editována.
AppCreatedVer: Verze PROMOTIC, ve které byla aplikace vytvořena (tato hodnota se v jedné aplikaci nikdy nemění).

Jiné sekce

V sekci [MainFrame], [Settings], atd. jsou parametry nastavení pro vývojové prostředí (velikost nastavitelných oken, atd.), runtime prostředí, písem, atd.
Není užitečné měnit zde používané klíče a proto je ani nepopisujeme.

Historie:
Pm9.00.20: Nový klíč WebView2 umožňuje nastavit výchozí prohlížeč Web stránek.
Pm9.00.16: Nový klíč EnableUser umožňuje nastavit logování přihlášení Web uživatelů.
Pm9.00.11: Nové klíče MediumDt a MediumRt umožňují nastavit aplikaci rozdílnou licenci pro vývojové prostředí a pro runtime prostředí.
Pm9.00.09: Nový klíč UseLicServerHwk umožňuje aplikaci čtení nosiče licence hwkey přes lokální licenční server (kvůli RDP).
Pm8.02.02: zrušen klíč SwKey, nová sekce [Licence]
Navigace:
 
 
- INI soubor aplikace
 
 
- SVG
© MICROSYS, spol. s r.o.