Autor: Michal Pohořelský Uveřejněno: New P+C 09/93, str. 34-36 PC-FAND verze 3.0
Uživatelé textových editorů, grafických programů a tabulkových procesorů se již svých aplikací pod Windows 3.1 dávno dočkali. Dnes se již dočkali také uživatelé databázových programů: mezi nejnovější hity databázového světa patří Paradox for Windows od Borlandu a FoxPro 2.5 spolu s ACCESSem 1.0 od Microsoftu.
Proto se asi budete ptát, proč v této době píši o české databázi PC-FAND 3.0, která navíc běží pouze v prostředí MS-DOS. Nemělo by se ovšem zapomínat na to, že prostředí Windows klade velké nároky na výkon počítače a všechny databázové hvězdy v něm pracující se dorozumívají zásadně anglicky. Nemělo by se zapomínat také, že na světě existuje řada vynikajících textových editorů (např. AMIPRO 3.0), ale u nás se prosadil již mnohdy zatracovaný editor T602. Tento editor se prosadil prostě proto, že se dokázal přesně trefit do potřeb potencionálních uživatelů. Podobně je tomu také v případě databáze PC-FAND 3.0. Firma ALIS, s.r.o. z České Lípy si solidním jednáním, dobrou cenou i distribuční koncepcí a především silnou podporou koncových uživatelů a programátorů vytvořila silné zázemí. Dnes používá databázi PC-FAND více než 9000 legálních uživatelů. Databáze se může navíc pochlubit oceněním "PRODUKT ROKU 1992", jenž mu udělila redakce časopisu Softwarové noviny.
Instalace
Program jsem v redakci dostal v malé modrobílé krabici, jenž se pohodlně vejde do igelitové tašky. Krabice obsahovala dvě tenké uživatelské příručky, Průvodce programátora (asi 300 stran) a jednu disketu 3.5" HD.
Přibližně stostránková uživatelská příručka je určena především koncovým uživatelům, kteří budou pracovat pouze s odladěnými programy. Uživatelská příručka obsahuje popis základních možností databáze PC-FAND a především jeho modulu RUNTIME, který nese název UFAND.EXE. Příručka pro uživatele rovněž obsahuje popis datového (programátorského) editoru, běžného textového editoru, popis základních datových typů databáze a seznam všech klávesových zkratek potřebných při práci. Uživatelská příručka Vám rovněž poradí, jak nejlépe nakonfigurovat PC-FAND 3.0. Podstatně obsáhlejší příručkou je průvodce programátora, který se Vás snaží naučit programovat.
Instalaci PC-FANDu řídí velmi dobrý instalační program, kterého se nemusí bát ani začátečník. Instalační program si ověří velikost místa na disku a nabídne vedle instalace také úpravu systémových souborů CONFIG.SYS a AUTOEXEC.BAT. Po instalaci si programátorská verze PC-FANDu přivlastní 1.2 MB prostoru. Uživatelský RUNTIME modul pro pouhé spuštění úloh zabere celý 1 MB. FAND je velikostí RUNTIME modulu ve stejné situaci jako FoxPro 2.0, a to nelze ani u jedné z databází považovat za výhodu. Problém nadměrné velikosti RUNTIME modulu není, pokud je mi známo, vyřešen ani u nové verze FoxPro 2.5.
Databáze PC-FAND v žádném případě není nějakým klonem DBASE III+ a ani běžně nepoužívá formát DBF (přesto můžete s určitým omezením DBF soubor použít). FAND jde svou vlastní cestou, která má své výhody i některé nevýhody.
Většina relačních databází pracuje se souborem DBF a má společný programovací jazyk XBASE. Proto se většině programátorů bude zdát jazyk PC-FANDu zvláštní. Jedná se totiž o procedurálně-deklarativní jazyk. To znamená, že maximum činností se deklaruje, nikoliv programuje.
Prostředí a nástroje
Po spuštění PC-FANDu jsem byl překvapen, poněvadž kromě obligátního firemního loga, obrazovce vévodí jedno jediné menu s 6 položkami:
Postupně si každou položku probereme.
- Ladit úlohu
- Provést úlohu
- Instalace úlohy
- Editace textu
- DOS
- Konec
Ladit úlohu
Po volbě LADIT ÚLOHU v základní nabídce FANDu se objeví ještě v úvodní obrazovce další rámeček pro zadávání jména uživatelského programu. Každý program v PC-FANDu 3.0 má příponu *.RDB. Zadáním úlohy se dostaneme do programátorského režimu FANDu. Můžeme vytvářet zcela nové programy, nebo ladit programy už existující. PC-FAND nevytváří samospustitelné programy *.EXE. Pro rutinní provozování stačí mít program odladěn, kompiluje se až v okamžiku startu programu.
Provést úlohu
Touto nabídkou se vyvolá uživatelský režim FANDu. To znamená, že uživatel může spustit již hotový program. Spustitelný program ve FANDu je de facto každý program. Fyzicky je to soubor s příponou *.RDB, společně se souborem *.TTT, případně souborem *.CAT (katalog).
Instalace úlohy
Tato nabídka slouží hlavně při aplikaci hotových programů na konkrétní podmínky uživatele. Uživatel má tyto možnosti:
- KATALOG - Možnosti editace souboru *.CAT. V tomto souboru se při aplikaci úlohy umožňuje souborům, jejíž jména jsou uvedena v programu, přiřadit fyzicky jiné soubory, ale se stejnou strukturou.
- UŽIVATELÉ - Touto volbou je možné zasahovat do kapitoly U. V této kapitole, obsahující jméno, kód, heslo a přístupová práva uživatele, lze tímto dané hodnoty měnit.
- NOVÉ HESLO - Slouží k zaheslování možnosti znovu zvolit režim Instalace úlohy. Tímto si "aplikační pracovník" může předcházející možnosti sám zaheslovat svým heslem tak, aby je nikdo jiný nemohl zneužít.
Editace textu
Tato nabídka nás přenese do textového editoru. Textový editor obsahuje veškeré běžné funkce potřebné k editaci textu. Uživatel má možnost po spuštění přímo zadat jméno souboru, který chce editovat, nebo jej vyhledat v různých adresářích. Implicitně se samozřejmě předpokládá přípona *.TXT. Je velmi příjemné, že funkce textového editoru je integrována také do RUNTIME modulu nezávisle na spuštěném programu.
DOS
Touto nabídkou se uživatel dostane dočasně zpět do operačního systému k provedení potřebných příkazů. PC-FAND však zůstává natažen a příkazem EXIT se uživatel dostane zpět do FANDu. Je velmi příjemné, že vedle textového editoru je v RUNTIME modulu zabudována i tato funkce.
Konec
Tato nabídka ukončí práci s databázovým produktem PC-FAND. Uzavře a uloží otevřené soubory a vrátí řízení operačnímu systému MS-DOS.
Typ, Název a Text
Programovací jazyk PC-FANDu má zřejmě nejblíže k PASCALu. O tom svědčí i fakt, že k FANDu si můžeme dokoupit speciální jazyk pro práci s daty (tzv. DML). DML je vhodný na řešení problémů, jež ve FANDu nelze naprogramovat. Základním jazykem DML je Turbo Pascal 6.0. Program FANDu je členěn po větách. Při pohledu do programu v režimu ladění jsou tyto řádky, kde každá řádka představuje určitý úsek textu programu. Těmto řádkám se říká KAPITOLY PROGRAMU. Co věta (řádka), to jedna kapitola. Kapitola programu obsahuje tři viditelné údaje, do kterých program zapisuje:
PC-FAND má výkonný generátor výstupních sestav, jenž používá název typu R jako parametr definující vytváření sestavy. Výstupní sestavu můžeme poslat do souboru, na tiskárnu, nebo si ji prohlédnout na obrazovce.
- TYP -je alfanumerický údaj, který vyjadřuje typ kapitoly. Může obsahovat jednu z následujících hodnot:
- F - Deklarace datového souboru (File)
- E - Formulář pro editaci dat na obrazovce (Edit)
- R - Výstupní sestava (Report)
- M - Transformace souborů (Merge)
- P - Programová procedura (Procedure)
- U - Seznam oprávněných uživatelů
- NÁZEV - je také alfanumerický údaj obsahující jméno kapitoly. Používá se v dalším programu v odkazech na tuto kapitolu. U datových souborů (typ F) se také současně definuje fyzické jméno souboru na disku, proto je nutné používat DOS konvence pro jména souborů (8 znaků). Programátor si jméno kapitoly určuje sám. Jména kapitol jednoho typu nesmí obsahovat duplicity, ale například soubor (typ F) i formulář (typ E) se mohou jmenovat stejně.
- TEXT - údaj obsahující vlastní definici kapitoly. Je to "volný text" (podobně jako MEMO ve FoxPro) o maximální velikosti 32 MB. Volný text je automaticky umísťován do souboru *.TTT.
Nové rysy verze 3.0
Především je to podstatně dokonalejší interpretace vnitřních indexů, která podstatně zvýšila rychlost zpracování programů. Rychlost práce se údajně blíží rychlosti FOXPRO 2.0 !
Důležité je také zavedení typu RECORD pro lokální proměnné a parametry procedur ve spojení s příkazem FORALL pro zpracování cyklu. Typ RECORD definuje lokální proměnnou jako větu určeného databázového souboru a urychluje sekvenční zpracování souborů natolik, že v některých případech je zpracování souboru příkazem FORALL rychlejší než při použití transformace.
Funkce EXEC volá externí programy nebo příkazy MS-DOSu. Parametr FREEMEM uvolňuje maximum paměti. Proto lze z programu v PC-FANDu bez problémů spustit třeba editor T602. Do PC-FANDu byl integrován program FANDGRAF, který umí reprezentovat data ve formě různých grafů. V souvislosti s tím byla změněna syntaxe funkce GRAPH. FAND umožňuje pracovat se soubory *.DBF bez indexové podpory a exportovat i importovat údaje ve formě textových souborů s pevnou nebo proměnnou délkou věty.
Možnosti práce FANDu v síti LAN byly podstatně rozšířeny. V LAN můžeme nyní sdílet PC-FAND, program RDB i datové soubory.
Vady na kráse
Domnívám se, že těch několik málo chybiček databáze PC-FAND 3.0 lze přijmout, protože i FoxPro 2.0 obsahuje řadu chyb.
- PC-FAND neumožňuje jednoduše vytvořit zobrazovací filtr. Parametr COND v příkazu EDIT prohlíží celý soubor při každém volání editoru.
- FAND nepodporuje obrazovku typu BROWSE známou z dBase IV nebo FoxPro. Jediným řešením je použití vícestránkových formulářů.
- Editor FANDu umožňuje tvorbu podmnožin z vět odpovídajících podmínce zadané uživatelem. Věty podmnožiny jsou zobrazeny se zvýrazněním a editor umí zpracovávat pouze věty vybrané podmnožiny.
- Nemožnost odhlášení uživatele a přihlášení nového uživatele heslem bez nutnosti opustit program.
Českou databázi PC-FAND 3.0 vytvořil autorský kolektiv pod vedením Gerta Klotzera a prodává ho firma ALIS s.r.o. z České Lípy. PC-FAND se prodává za 3400 korun a obsahuje programátorské a uživatelské prostředí (RUNTIME modul). Samotný PC-FAND můžeme provozovat v síti, ale dodávaný RUNTIME modul umožňuje práci pouze jednoho uživatele. Síťový RUNTIME modul pro 1 až 5 stanic stojí 2500 korun.
PC-FAND jak svou vlastní koncepcí, tak i přitažlivou cenou vytváří zajímavou alternativu běžně dostupným zahraničním databázím. PC-FAND je na dobré cestě stát se u nás favoritem, a proto přeji firmě ALIS s.r.o., aby na této cestě vydržela.