Popis struktury konfiguračních souborů XML a INI pro makro výraz $.cfgfile
Konfigurační soubory slouží pro uložení konstant (parametrů a počátečních hodnot) aplikace.
Je vhodnější
nezadávat některé konstanty přímo do PROMOTIC aplikace (tzn. do souboru
Aplikace.pra), ale uložit je do konfiguračního (textového) souboru a v aplikaci PROMOTIC se na ně pouze odkazovat. To pak umožňuje měnit parametry aplikace v tomto souboru bez nutnosti editace aplikace.
Konfigurační soubory PROMOTIC jsou textové soubory ve formátu
XML (novější způsob) nebo
INI (původní starší způsob).
Makro výraz $.cfgfile je nejsnažší a základní způsob, jak se dostat k jednotlivým hodnotám v konfiguračním souboru (jak
INI tak
XML).
XML konfigurační soubor umožňuje ukládat hodnoty do libovolné hierarchické úrovně.
Makro výraz $.cfgfile umožňuje přístup k hodnotám v libovolné hierarchické úrovni (na rozdíl od
INI konfigurační soubor, který obsahuje dvě úrovně - sekce/klíč).
1. Konfigurační soubory XML (*.xml) pro $.cfgfile
XML textový soubor se skládá z tagů, atributů a hodnot. XML umožňuje strukturovaný zápis (hierarchický) hodnot. Tagy jsou vždy v párech, určujících počátek a konec dané úrovně. XML soubor lze zobrazit ve Web prohlížeči (
Chrome,
Firefox,
Edge,
InternetExplorer ...), který zároveň kontroluje syntaktickou správnost zápisu.
Alternativní (ale velmi obecný) přístup k hodnotám v souborech
XML, viz
Jak číst v aplikaci obecné XML soubory.
Příklad:
Příklad souboru config.xml s následujícím obsahem:
<?xml version="1.0" encoding="utf-8"?>
<root>
<data>
<ipaddress>192.168.1.2</ipaddress>
<pcname>ctest</pcname>
<webportnumber>81</webportnumber>
</data>
</root>
Příklad odkazu na hodnotu
webportnumber v tagu
<data> za předpokladu, že soubor
config.xml je zaregistrován v konfigurátoru "
Správce konfiguračních souborů" pod identifikátorem
config:
2. Konfigurační soubory INI (*.ini) pro $.cfgfile
INI textový soubor se skládá ze sekcí a klíčů - viz
Soubory typu INI.
Alternativní přístup k hodnotám v INI souborech je pomocí metod
Pm.IniFileRead a
Pm.IniFileWrite.
Příklad1:
Příklad souboru config.ini s následujícím obsahem:
[data]
ipaddress=192.168.1.2
pcname=ctest
webportnumber=81
Příklad2:
Příklad odkazu na hodnotu klíče
webportnumber v sekci
[data] za předpokladu, že soubor
config.ini je zaregistrován v konfigurátoru "
Správce konfiguračních souborů" s identifikátorem
config: