Náhodné číslo
NÁHODNÉ ČÍSLO
Funkce random vrací náhodné číslo z intervalu <0,1). Protože však PC FAND
interně také používá generátor náhodných čísel, je třeba při specifických
požadavcích generátor inicializovat. Procedura randomize inicializuje
generátor náhodných čísel náhodnou hodnotou , odvozenou ze systémových
hodin. Interní proměnná randseed obsahuje startovací hodnotu generátoru.
Po nastavení randseed na určitou hodnotu jsou generována náhodná čísla v
naprosto konkrétním pořadí.
██ Syntaxe: RANDOM : real .... funkce
RANDSEED := ČísVýraz .... interní proměnná
RANDOMIZE .... příkaz procedury
Nápověda
NÁPOVĚDA
Právě si prohlížíte nápovědu PC FANDu. Kromě toho může programátor opatřit
projekt vlastní nápovědou pro konkrétní úlohu. Nápověda obsahuje řadu
spojených obrazovek, ve kterých se můžete pohybovat prostřednictvím
zvýrazněných hesel. Nápověda se vyvolává z projektu klávesami:
Uživatelské prostředí:
■ F1 ....... v datovém a textovém editoru -> ovládání editoru (help FANDu)
v menu -> nápověda k volbě (help FANDu nebo úlohy dle kontextu)
■ Ctrl-F1 .. v datovém editoru (mód F1,F124) -> nápověda k aktuálnímu údaji
(help úlohy)
■ Alt-F10 .. aktivuje poslední volaný help (nezaměnit s F10).
Projektantské prostředí:
Další možnosti navíc oproti běžnému uživatelskému prostředí.
■ Alt-F1 ... v projektantském prostředí uvnitř kapitoly -> syntaxe kapitoly
■ Ctrl-F1 .. uvnitř kapitoly, kurzor ukazuje na jméno -> syntaxe funkce
■ Alt-F2 ... z editace úlohy -> vyvolání helpu úlohy
z editace souboru -> vyvolání odpovídající položky helpu úlohy
z menu -> vyvolání odpovídající položky helpu úlohy, pokud
není, založí
Během prohlížení nápovědy lze použít klávesy:
■ šipky ............ pohyb po zvýrazněných heslech (tématech)
■ Enter ............ přechod k další obrazovce popisující zvýrazněné heslo
■ F10 .............. návrat k předchozí obrazovce
■ F1 ............... přechod k první obrazovce nápovědy (help index)
■ F6 ............... tisk aktuálního textu helpu
■ Esc .............. ukončení nápovědy a návrat do programu
■ PageUp, PageDn ... listování v několikastránkových nápovědách
■ CtrlHome,CtrlEnd . lineární pohyb po helpu
Navigace
NAVIGACE PO DATABÁZI
Navigace umožňuje vyvolat z editace souboru datový editor pro jiný soubor,
tedy vloženou editaci s pozdějším návratem do místa vyvolání. Před vyvoláním
editoru z okna vyberete požadovaný soubor nebo uživatelský pohled.
■ F7 (soubor) ... navigace směrem nahoru z podřízeného souboru do nadřízeného
nabídnou se pouze k němu nadřízené soubory
editor najde viditelnou větu (má stejný klíč) nebo nejbližší vyšší
■ Ctrl-F7 (podřízený soubor) ... navigace směrem dolů (nad.-> pod.)
nabídnou se pouze podřízené soubory s odpovídajícím vlastním klíčem
vyberou se jen odpovídající věty podřízeného souboru (se stejným klíčem)
■ Alt-F7 .............. navigace po celé databázi (všechny soubory)
■ Esc ................. návrat z vložené editace
■ Ctrl-F4 (převzít) ... návrat z vložené editace s převzetím hodnoty do údaje
■ Shift-F7 ............ zrychlený způsob navigace směrem nahoru
určeno pro hledání a přenos údaje z nadřízeného souboru
vyvolá se pouze z klíčového údaje, který definuje vazbu směrem nahoru
následuje okamžitý odskok do nadřízeného souboru (pouze prohlížení)
bez výběru souboru nebo uživatelského pohledu, viz. módy datového editoru(S7)
Enter znamená návrat s přenosem klíčového údaje, Esc návrat bez přenosu
Pokud v odpovídajícím pohledu uvedeme parametr tab=(), lze nadřízený soubor
také editovat (i pořizovat věty).
Navigace po databázi
NAVIGACE PO DATABÁZI
Název spojení
CIZÍ KLÍČ
Net delay
LAN - PŘEHLED POUŽÍVANÝCH POJMŮ
NewRec
PŘERUŠENÍ EDITACE
Běžná editace datového souboru může být přerušena požadovanou akcí (vnořená
procedura, tisková sestava z aktuální věty, nestandardní ukončení editace).
Spuštění akce je buď automatické ( vázané na přechod přes editovaný údaj,
změnu věty, mazání nebo přidání nové věty ) nebo ruční ( vyvolané funkčními
nebo kurzorovými klávesami - viz. edbreak ). Po skončení akce se pokračuje
v editaci souboru. Pro přerušení editace z funkčních kláves lze vytvořit
alternativní nápovědu pomocí parametrů editace ctrl,alt nebo shift.
██ syntaxe: EXIT=( SeznamPřerušení )
■ SeznamPřerušení ... ZpůsobPřerušení : Akce [{ ,ZpůsobPřerušení : Akce }]
■ ZpůsobPřerušení ... Seznam údajů | SeznamKláves | record | newrec
Seznam událostí se může skládat i z událostí různého
typu. Např. (udaj1,udaj2),F8,record : akce) ...
■ Akce .............. Exit-procedura | Report | quit |
Nutná poznámka: Čtvrtá možnost je vynechání specifikace akce, což
lze použít pro "odstavení" standardních kláves
editoru (funkčně rovnocenná je prázdná procedura)
Každý prvek seznamu přerušení definuje způsob přerušení (typ události) a
požadovanou akci. Lze definovat více přerušení najednou.
■ SeznamKláves ... povolené klávesy viz. edbreak, jednotlivé klávesy jsou
oddělené čárkou. Akci vyvolá stisk klávesy.
■ Seznam údajů ... přerušení vyvolá stisknutí Enter nebo F4 na údaji nebo
přeskok údaje po tabelátorech (edbreak=12)
■ record ......... Toto přerušení může vyvolat pouze exit-proceduru.
Procedura se vyvolá před změnou, zapsáním nebo zrušením
věty. edbreak=16: nová nebo změněná věta
edbreak=17: zrušená věta (po Ctrl-Y)
Dokončení započaté akce lze zabránit přiřazením
EdOk:=false před návratem z exit-procedury.
■ newrec ......... Procedura se vyvolá před začátkem pořízení nové věty,
tj. po vytvoření a zobrazení prázdné věty ale před
editací prvního údaje. (edbreak=18).
AKCE
■ Exit-procedury.. NázevProcedury[(SeznamParametrů)] nebo
[TextVýraz][(SeznamParametrů)] ... Dynamické deklarace
■ report ......... report(NázevReportu)
Tisková sestava z aktuální věty.
Mohou následovat parametry reportu assign nebo edit
■ quit ........... nestandardní ukončení editace místo běžného Esc
(quit na údaji není funkční při pořízení)
*
Uvnitř exit - procedur lze použít funkce edupdated ( byla věta změněná ?) a
návratový kód editoru edbreak (jak byla přerušena editace ?). Aktuální stav
právě editované věty je předán vnořené proceduře jako dodatečný poslední
parametr volané procedury (typu record of editovaný soubor).
Vnořená procedura může (ale nemusí) parametr deklarovat (použít). Případné
změny record proměnné se po návratu promítnou do souboru.
Další použitelné "stavové" funkce: edirec, edrecno, edfield, edreckey
nextlex
nextlex
nextlex
Zkrátí seznam lexemů v interní paměti vypuštěním prvního prvku.
Predikát lze použít pouze ve větvi po loadlex.
NoCancel
NOCANCEL - duplicitní klíčové slovo
Parametr NoCancel vesměs zajišťuje, že havárie při provedení příkazu
neukončí celý program ale program pokračuje za příkazem a je nastaveno
exitcode<>0 .
■ exec(...,nocancel)................. volání externího programu
■ copyfile(...,nocancel) ............ kopírování souborů
■ mount(...,nocancel) ............... vložení diskety do jednotky
■ restore,backup(...,nocancel)
restorem, backupm(...,nocancel) ... zálohování dat
NoCompress
BACKUP
Nocr
LAN - POUŽITÍ NIŽŠÍCH MÓDŮ BLOKOVÁNÍ
NoDel
LAN - POUŽITÍ NIŽŠÍCH MÓDŮ BLOKOVÁNÍ
NoDiakr
PRÁCE S DIAKRITIKOU A ABECEDOU
NoEd
PARAMETRY EDITACE
NoEdit
PŘÍKAZY PRO EDITACI TEXTU
NoExcl
LAN - POUŽITÍ NIŽŠÍCH MÓDŮ BLOKOVÁNÍ
NoSound
OŠETŘENÍ KLÁVESNICE
Not
not - negace
not(predikát[(Term{,Term})])
Volá uvedený predikát. Při úspěšném návratu z vyvolaného predikátu
vyvolá zpětný chod. Při neúspěchu predikátu pokračuje další instrukcí.
Na pozici výstupních parametrů musí být podtržítko. Výstupní parametry
nelze přebírat, přebírání umožňuje později probíraný predikát all.
Negaci nelze aplikovat u standardních predikátů write, save,
consult, wait, !, fail, error ,trace, assert, retract, loadlex.
Příklad:
je_v_sezn(X):- mem_String(X,['Alis','Derby','Pussa']).
neni_v_sezn:- not(je_v_sezn('S')),writeln('Prvek není v seznamu'),wait.
NotAtend
SPECIÁLNÍ FUNKCE V SESTAVĚ
V popisné části sestavy mohou kromě obvyklých konstrukcí vystupovat speciální
funkce (všechny jsou typu real):
█ page ............ číslo právě vystupující tiskové strany
█ line ............ číslo právě vystupujícího řádku na straně
█ pagelimit ....... počet řádků (kromě #PF) na jedné tiskové straně sestavy
█ sum(ČísVýraz) ... kumulace číselného výrazu za skupinu vět
jen v úrovních ukončujících skupinu vět (#RF, #PF, #CF)
█ owned ........... přístup k podřízeným souborům
█ group :real ............ ─┐
█ Ii.count :real ........ │
█ Ii.error :boolean ...... │
█ Ii.errortext :string ... ├ viz. speciální funkce v transformaci
█ Ii.warning :boolean .... ─┘
Funkce sum, group a count jsou obdobně použitelné také ve výpočetní části
transformace (kapitola M).
Před seznamem výrazů (ovšem za případnou výpočetní částí) popisné části se
mohou vyskytovat speciální příkazy:
█ .line:=ČísVýraz ... před výstupem úrovně přejde na zadaný řádek
█ .page:=ČísVýraz ... nastaví interní počítadlo stran (pro funkci page)
V úrovni RH nastaví přečíslování od první strany sestavy
█ .line<=ČísVýraz ... při překročení hranice (řádku) před výstupem odstránkuje
█ .notatend ......... pouze úroveň PF, netiskne se na poslední stránce sestavy
█ .notsolo .......... pouze pro úroveň DH, vystupuje pouze při nové stránce
nebo výstupu CH, resp.CF. Zamezí se tak výstupu úrovně
DH při změně třídících údajů (CHi).
NotSolo
SPECIÁLNÍ FUNKCE V SESTAVĚ
Novell
NOVELL
Kromě sítě NetWareLite a Personal NetWare není třeba používat program
SHARE.EXE.
Většinou je nutno upravit konfigurační soubor stanice NET.CFG (ve starších
verzích ovladačů SHELL.CFG)
■ parametr FILE HANDLES= počet souborů, které se otevírají ze serveru.
Platí určité kontroly vzhledem k parametru FILES
v CONFIG.SYS (viz. dokumentace Novellu).
Základní kontrola se provádí takto:
file handles + files < 255
net.cfg config.sys
■ parametr SHOW DOTS=ON Při prohledávání adresářů v okně se objeví
i odkaz na nadřízený adresář, t.j. dvě tečky.
■ parametr READ ONLY COMPATIBILITY=OFF
nutný pro sdílení RdOnly souborů - např. úloh
při použití VLM-ovladačů. Ve verzi PC FANDu 4.0
je sdílení úloh již řešeno interně ve FANDu.
Tento parametr je v dokumentaci popsán dosti
neurčitě a také v praxi někdy "zabralo" nastavení
na ON.
■ Při vyšším zatížení sítě, což může být kromě výkonu sítě způsobeno
i nevhodným způsobem programování úlohy, může dojít k nadměrnému
blokování souborů, zdánlivě neoprávněnému. Důvodem může být "zahlcení"
algoritmů pro blokování souborů na systémové úrovni. Často lze chování
sítě zlepšit nastavením těchto dvou parametrů v NET.CFG (podle dokumentace
pro Novell 4.x):
Lock Delay=CPU ... prodleva při pokusu o uzamčení oblasti souboru
Povolené hodnoty 0 .. 255, implicitně 1.
Lock Retries=počet opakování pokusů
-----------
Pro přesměrování tiskárny se používá utilita CAPTURE:
CAPTURE Q=Fronta NB NT NOFORMFEED TI=5 Local=1
Parametry:
Q=Fronta označení síťové fronty
NB nebude tištěna hlavička
NT není prováděna konverze tabelátoru na mezery
NOFORMFEED potlačí odstránkování na konci tisku
TI=5 tisková úloha vytištěna po 5 s
Local=1 číslo portu (LPT1)
NRecs
NRECS - duplicitní klíčové slovo
■ NázevSouboru.nrecs ...... údaje o souboru : počet platných v vět souboru
■ NázevPracIndexu.nrecs ... počet vět pracovního indexu, index of
■ graph(...nrecs...) ...... počet vět pro zobrazení v grafu, nrecs
NRecsAbs
ÚDAJE O SOUBORU
Null
LAN - POUŽITÍ NIŽŠÍCH MÓDŮ BLOKOVÁNÍ
NULL-hodnoty (SQL)
ODBC