Programy ve vnit°nφm jazyce - ·vod

Jßdrem samostatnΘ aplikace m∙₧e b²t program vytvo°en² ve vnit°nφm programovacφm jazyce WinBase602 nebo v jazyce externφm. Vnit°nφ programovacφ jazyk je velmi podobn² jazyku Pascal a je obohacen o konstrukce usnad≥ujφcφ manipulaci s obsahem databßze. Obsahuje takΘ °adu standardnφch procedur a funkcφ pro prßci s formulß°i, tiÜt∞nφ sestav, otevφrßnφ dotaz∙, zobrazenφ menu atd. Krom∞ hlavnφho programu lze spouÜt∞t takΘ programy vno°enΘ (nap°. tlaΦφtkem z formulß°e, akcφ p°i otev°enφ formulß°em polo₧kou menu apod.). Vno°enΘ programy jsou jednotlivΘ procedury hlavnφho programu.

Textu programu v podob∞, v jakΘ jej vytvo°φ programßtor, °φkßme zdrojov² program.

Zdrojov² program je objektem ulo₧en²m pod sv²m jmΘnem ve WinBase602 v rßmci n∞kterΘ aplikace a lze s nφm pracovat z °φdicφho panelu.

Aby zdrojov² program mohl b²t proveden poΦφtaΦem, musφ b²t nap°ed p°elo₧en p°ekladaΦem. P°ekladaΦ zpracuje zdrojov² program a vyrobφ p°elo₧en² program neboli k≤d. Po p°ekladu lze spustit b∞h programu. B∞hem p°ekladu m∙₧e dojφt k chybßm p°i p°ekladu (n∞kdy se jim takΘ ne zcela p°esn∞ °φkß syntaktickΘ chyby). Dojde-li k takovΘ chyb∞ ve WinBase602, je p°eklad ukonΦen, ani₧ by vznikl p°elo₧en² program, a tudφ₧ nelze program spustit. P°φΦinou chyb p°i p°ekladu je zpravidla to, ₧e zdrojov² program nenφ napsßn podle pravidel programovacφho jazyka.

P°i b∞hu programu m∙₧e dojφt k °ad∞ situacφ, kdy nenφ jasnΘ, jak by m∞l v²poΦet smyslupln∞ pokraΦovat. P°φkladem je t°eba d∞lenφ nulou, vyΦerpßnφ dostupnΘ operaΦnφ pam∞ti nebo pokus pracovat s neexistujφcφm zßznamem v databßzi. Takov²m situacφm °φkßme b∞hovΘ chyby.

MyÜlenkovΘ chyby v nßvrhu aplikace se mohou projevit jak b∞hov²mi chybami, tak i jejφm ne₧ßdoucφm chovßnφm. Nalezenφ a odstran∞nφ takov²ch chyb usnad≥uje ladicφ systΘm (debugger). Umo₧≥uje provozovat aplikaci v ladφcφm re₧imu a p°itom nap°φklad krokovat program nebo prohlφ₧et si hodnoty prom∞nn²ch. Ladit lze hlavnφ program i vno°enΘ podprogramy.

Programy, vytvo°enΘ ve WinBase602, mohou hrßt dv∞ role:

B∞₧φcφ program je v₧dy souΦasn∞ projektem. Jako projekt lze nastavit i program, kter² prßv∞ neb∞₧φ.

Ke spuÜt∞nφ programu je nutno mφt prßvo Φφst program. K editaci je nutno mφt prßvo p°epsat program. Pokud program zrovna edituje n∞kter² jin² u₧ivatel v sφti poΦφtaΦ∙, nelze jej otev°φt pro editaci, avÜak bude nabφdnuta mo₧nost otev°φt jej pouze pro Φtenφ.

Pokud dva programy souΦasn∞ pracujφ se stejn²mi daty, pak by m∞ly zajistit sv∙j p°φstup k nim pomocφ zßmk∙ nebo pomocφ vhodnΘ ·rovn∞ izolace transakcφ.

Editovat velmi dlouhΘ programy je nepohodlnΘ. Proto je vhodnΘ je rozd∞lit do n∞kolika samostatn∞ ulo₧en²ch Φßstφ a ty editovat nezßvisle na sob∞. Jedna Φßst pak tvo°φ hlavnφ program, zatφmco ostatnφ jsou do nφ p°i p°ekladu includovßny. Ka₧dou Φßst (include) zalo₧φte z °φdφcφho panelu aplikace jako nov² program. Do hlavnφho programu vlo₧φte direktivy odkazujφcφ na ostatnφ Φßsti. Tyto direktivy zajistφ, ₧e p°i p°ekladu hlavnφho programu se do n∞j vlo₧φ ostatnφ Φßsti - ka₧dß na to mφsto, kde je na nφ odkaz.

Na ·pln² zaΦßtek ka₧dΘ Φßsti, kterß se vklßdß do jinΘho programu (bude includem), napiÜte klφΦovΘ slovo

INCLUDE

a pak pokraΦujte normßlnφm textem programu. Toto slovo je nezbytnΘ ke sprßvnΘmu oznaΦenφ objektu na °φdicφm panelu, ke sprßvnΘmu otevφrßnφ projektu, a takΘ zamezuje p°ekladu Φßstφ p°i exportu aplikace.

Pokud na °φdicφm panelu poklepete na jmΘno Φßsti programu, pak se rozdφl od samostatn²ch program∙ nespustφ, ale otev°e se na nφ editor. PokouÜet se p°eklßdat nebo spouÜt∞t Φßsti, kterΘ nejsou hlavnφm programem, nemß smysl. P°i lad∞nφ a p°i lokalizovßnφ chyb v programu WinBase602 otevφrß okna s textem jednotliv²ch Φßstφ podle pot°eby. Pokud zm∞nφte n∞kterou z includovan²ch Φßstφ programu a spustφte b∞h hlavnφho pro-gramu, pak WinBase602 tuto situaci rozpoznß a hlavnφ program znovu p°elo₧φ.

Mnoho jednoduÜÜφch akcφ a Φinnostφ nenφ nutnΘ programovat p°φmo ve zdrojovΘm textu - ve WinBase602 je pro r∙znΘ situace mnoho desφtek p°ipraven²ch standardnφch akcφ a znaΦnou Φßst programovΘho oÜet°ovßnφ prßce s formulß°i lze nahradit programovßnφm objektov²m - volßnφm vlastnostφ a metod formulß°∙ a jejich slo₧ek.