• No results found

Driver: Data Location And Cross Border Data Flow

 2+4-87-9/2001

Chcel by som reagova na editorial z júlového èísla. Priznám sa, že nie som Vaším stálym odberate¾om, ale bol som ním pri zrode Vášho èasopisu, v èase, keï obsa- hoval ešte len pár strán. Neskôr však prišli rôzne povinnosti a svet výpoètovej techniky som prestal sledova. Júlové èíslo som si kúpil pre nutnos kúpy kopírky a zorientovanie sa, èo trh ponúka a za aké ceny. Ve¾mi vhod mi prišiel Vᚠtest týchto zariadení. Hneï ako som si preèítal editorial, rozhodol som sa, že Vám napíšem.

Obsah tohto èlánku sa dá v skratke nazva ako „trefa do èierneho“. Stopercentne s pánom Drobným súhlasím. Myslím, že únik mozgov je jeden z najzávažnejších problémov, ktoré trá- pia transformujúce sa krajiny, a tiež si myslím, že tento fakt sa u nás ve¾mi podceòuje. Pretože ak si nevyškolíme vlastných odborníkov alebo pustíme už existujúcich, cudzích pre stav eko- nomiky nepritiahneme, a keï nebudeme ma odborníkov, stav ekonomiky sa nezlepší. Ja dia¾kovo študujem na Ekonomickej univerzite, Fakulte hospodárskej informatiky, nastupujem do 3. roèníka. S tým, èo pán Drobný napísal, môžem opä len súhlasi. Zavedenie kreditného systému v školách bola chyba. Aj v èase tvrdého trhového mechanizmu by si školy mali zacho- va svoju podstatu, a síce sprostredkova znalosti pedagógov pre ïalšie generácie a prakticky ich pripravi na prax. Ale študent potrebuje urèitú vo¾nos, aby nebol pod tlakom kreditného systému, aby vedel, že sa uèí pre nadobudnutie vedomostí, a nie preto, aby dosiahol stano- vený poèet kreditov a „preliezol“ do ïalšieho roèníka. Taktiež bada ve¾ké rozdiely v prístupe docentov. Malo by sa zaèa u ¾udí, klás ve¾ký dôraz na školy (a nielen vysoké) z ¾udského (etic- kého) aj profesionálneho h¾adiska, aby ïalšie generácie urobili menej chýb ako tie pred nimi, a aj ekonomika Slovenska sa zlepší.

S jedným odsekom však nie celkom súhlasím. A síce s tým, èo sa týka slovenských firiem a ich prístupu k vysokoškolákom. Áno, morálna, profesionálna a etická rozh¾adenos èerstvých absolventov sa znížila. Ale na obranu študentov: èo robia slovenské firmy pre to, aby získali kvalifikovaného pracovníka? Èakajú, že trh za nich tento problém vyrieši. Preèo nejdú do tých- to škôl, neponúknu praktické zaškolenie urèitého študenta (študentov) ešte poèas jeho štúdia s protihodnotou pracovnej zmluvy na dobu urèitú, povedzme 10 rokov? Tým firmy získajú pra- covníkov „šitých na mieru“, zabráni sa úniku mozgov a študenti budú ma kde získa praktic- ké skúsenosti. Ako som už spomenul, ¾udia musia zmeni svoj prístup v každodennom živote, a to od robotníka až po generálneho riadite¾a.

Ešte sa chcem vyjadri k celému èasopisu. Od svojho vzniku ste už urèite nazbierali tisí- ce pochvalných listov, ja sa k nim môžem len prida. Ve¾mi dobrý prvý dojem robí hlavne nízka cena èasopisu, prijate¾ná urèite pre každého. Samozrejmé sú strany s reklamou, ako by ste inak získali financie na udržanie ceny. Udržali ste si pôvodnú štruktúru èlánkov, pri- dali zaujímavé nové, pri profesionálnom vyhotovení. Nie je ve¾a slovenských èasopisov s IT tematikou, takže smelo do toho. Raso z Bratislavy

Milá redakcia PCR, k napísaniu tohto listu ma donútila rubrika Pošta v PCR 7/01. Som predplatite¾om a dlhoroèným vaším stálym èitate¾om ako mnoho iných, a preto ma teší, že aj vy ste si uvedomili, že akciovou cenou ste potešili len nepredplatite¾ov, a preto ste sa rozhodli nám to kompenzova darèekom v hodnote 46,50 Sk. K obsahu èlánku nemám vážnejšie výhrady, no aj sami si už azda uvedomujete, na aký tenký ¾ad vás tento èlá- nok priviedol. Keby ste ho boli uverejnili v samostatnej prílohe, boli by ste mimo týchto podo- zrení z klientelizmu a vaša reputácia by takto neutrpela. Chceli ste poteši èitate¾ov a miesto toho ste ich len sklamali, pretože èlánok, ako ste sami pri jeho finišovaní zistili, bol z ve¾kej miery vïaka zmenám cenníka ST neaktuálny a v koneènom dôsledku zavádzajúci. Jednoducho ste sadli marketingovému oddeleniu ST na lep. Boli ste zneužití, a preto by ste im nemali takýto podraz necha prejs, veï len vïaka ich èlánku ste centrom kritiky a mám pocit, že èís- lom 6/2001 ste viac stratili ako získali. Koneèný úèet za túto chybu budete spláca ešte dlho, možno až o rok budete môc analyzova všetky dôsledky. Mali by ste sa asi pekne poïakova tomu, kto vás do tejto „veci“ zatiahol. Ak však nechcete strati tvár úplne, mali by ste uverej- ni v najbližšom èísle doplnkový èlánok na túto tému. A prípadne vážne pouvažova nad uve- rejòovaním ïalšej inzercie od ST, veï to je koniec koncov jediný vᚠspôsob, ako sa bráni voèi

neférovému správaniu vašich klientov. (Verejné ospravedlnenie z nich asi nedostanete.) Mali vám predsa hneï na zaèiatku poveda o plánovanej zmene cenníka, veï kompetentní to dobre vedeli aspoò pol roka dopredu, azda by ste, aspoò dúfam, ten èlánok napísali v inom duchu. Mne osobne by ich inzercia nechýbala a vy, myslím, takisto nie ste na nich odkázaní. Pokia¾ správne uvažujem, tak ste odkázaní len na svojich èitate¾ov a tí požadujú kvalitné, vyvážené a aj kritické èlánky. Veï kto iný ako vy novinári sa nás má zasta pred zavádzajúcou reklamou, nekvalitou, predraženým tovarom èi službami? Za to, aby ste hájili naše záujmy, vás predsa platíme. Tým z vás, ktorí sa teraz pousmiali, že z ceny èasopisu by ste nemali ani na slanú vodu, musím pripomenú, že bez èitate¾ov nebude ani inzercia, jedine ak taká, ako bola vo VTV. Ale to si iste uvedomujete.

Už dávnejšie som si všimol, že používate komplet PDF portfólio, a preto ma zaujíma možnos odobera PCR elektronicky. Technicky by to predsa realizovate¾né bolo. Každé jedno PDF by sa pre jednotlivého klienta generovalo samostatne s unikátnym heslom a pri rozumnej kompresii by ve¾kos dokumentu nepresiahla 8 MB, èo by pre takýchto e-predplatite¾ov iste nebol problém. Vy by ste ušetrili nemalé prostriedky za litografie, tlaè, papier a distribúciu, za èo by ste takto distribuovaným èasopisom mohli zníži cenu, prípadne odstráni inzerciu èi pre- transformova ju len do textovej podoby, tým by opä klesol objem dát možno aj na 2 MB. A my by sme si mohli pohodlne a rýchlo vyh¾adáva pojmy a témy aj v starších èíslach a, pocho- pite¾ne, všetky linky na inet by boli „živé“, a nakoniec aj inzercia.

Ide mi len o to, ma èerstvejšie informácie a vám zároveò ušetri za tlaè, veï ak by ste mali 2000 takýchto predplatite¾ov, mohlo by to by už zaujímavé. Inzerenti by neboli vôbec ukrá- tení, veï ich odkazy by mohli by aktívnejšie smerom na internet. Predsa len je pohodlnejšie jednoducho kliknú na inzerát myšou ako vsta z kresla, ís k poèítaèu, zapnú ho a opísa link, ktorý je v mojom èasopise na stole. Uvítal by som aspoò akúsi podobu FTP prístupu, kde by boli všetky èlánky (trebárs v PDF) hneï po ich vytvorení. Zdá sa mi to praktickejšie ako webová prezentácia, lebo by som hneï videl, èo pribudlo, a navyše by som nemusel by stále on line. A taktiež by to bolo lepšie ako celé PCR v jednom PDF. Táto služba by mohla by pre predplatite¾ov a každý by mal svoj login. Alebo platená, povedzme 30 Sk/mes. Pouvažujte nad tým, ja budem prvý takýto predplatite¾.

P.S.: Robte viac reklamy sami sebe a PCREVUE.SK. Aspoò jedna A6. Možno by stálo za pokus ma viac foriem predplatného. Ak momentálne máte dve, a to s CD alebo bez, možno by mohlo pribudnú aj so spomínaným FTP alebo povedzme s vaším trièkom, veï ak niekto dá 624 Sk, dá aj 650 èi 700. Menej zakopnutí vám praje Martin Pavlík

Ïakujeme za názor, pokúsim sa reagova. Èo sa stalo, už sa neodstane... Nešastné naèaso- vanie úpravy cien spôsobilo, že uverejnenie prílohy o ISDN v júnovom PCR vyvolalo aj takéto reakcie a my sme sa nechtiac stali obetným baránkom. Keby sa ceny menili dajme tomu o pol roka neskôr, výsledný efekt prílohy by bol úplne iný, èi už by to bola vo¾ná príloha, alebo súèas èísla, a to nielen pre nás, ale najmä pre ST. Na ilustráciu výroby júnovej prílohy uvediem, že nejaké zmeny sa robili už v èase, keï èas èísla bola vytlaèená v tlaèiarni!

Èi sme sadli na lep ST, to si nemyslím, pod¾a mòa v tom nebol zámer, ale znaèná nekoor- dinovanos vnútri ST. Doplnkový èlánok môžeme uverejni, ale neviem, èi by nieèo vyriešil, lebo všetky podstatné technické informácie vyšli už v prílohe. Jediné, èo by ¾udí mohlo za- ujíma, je, že už nezaplatia tých 2,50 za hodinu surfovania v noci, ale to už dávno vedia, veï to koniec koncov bolo uverejnené aj na konci „nešastnej“ júnovej prílohy.

Neviem, èi by sme ST „vytrestali“, keby sme im prestali uverejòova inzerciu, viem len, že keï je inzercie viac, môžeme prida viac strán do èísla. Vïaka tomu sa nám aj darí udrža „¾udovú“ cenu èasopisu, takže potom otázka, koho by sme vytrestali, vyzerá úplne ináè.

Samozrejme, že nᚠúspech je postavený na záujme našich èitate¾ov a pod¾a ich pre- ferencií, pripomienok a názorov sa snažíme neustále nᚠèasopis aj zlepšova.

Kompletné èísla v PDF dávame raz za kvartál na cédeèko (budúci rok to bude èastejšie), technicky nie je problém to robi paralelne s papierovým PCR už teraz, len to musí ma opodstatnenie. Pokia¾ bude paralelne existova papierové PCR, tak nám to náklady neušetrí, keby sme robili len elektronickú verziu PCR bez klasickej inzercie, tak si takýto magazín nebude môc udrža ani súèasnú obsahovú úroveò, ani dostupnú cenu. Ale pri- pravujeme nejakú alternatívu, aby si èitatelia mohli sahova takéto PDF z nášho webu, samozrejme, za urèitých podmienok. Pouvažujeme aj nad Vaším návrhom.

Martin Drobný

Pošta

inZine denne uverejòuje zaujímavé èlánky, názory, polemiky a fejtóny. Z tých najnovších vyberáme:

o Známe slovenské a èeské osobnosti, ako napríklad Ondøej Neff, Fedor Freššo, Peter Breiner, Eva Borušovièová, Dušan Tarage¾, Slávka Halèáková, odpovedajú v inAnkete pravidelne na aktuálne anketové otázky.

o Ostrú diskusiu v inZine vyvolal kacírsky pamflet Mira Veselého 753 slov proti Linuxu. Ortodoxní odporcovia Microsoftu a súèasne zástancovia Linuxu sa do autora pusti- li silou stredovekej inkvizície. Po èlánku obhajujúcom Windows dal inZine slovo aj druhej strane.

o Trochu záhadný Maxim E. Matkin píše pre inZine Polnoèný denník zo svojho búrlivého noèného života. Nadpisy ako Príliš sexy pre teba èi Nové prsia, staré duše dávajú tuši, že denník nie je žiadna nuda.

o O vráskach, prsiach, penisoch a prirodzenej kráse je nadpis rozhovoru s plas- tickým chirurgom doktorom Drahošom Palenèárom.

o Dianie na slovenskej politickej scéne komentuje v inZine politológ Erik Láštic a publicista Robert Žitòanský.

o Aké je skutoèné pozadie diskutovaného projektu ministerstva školstva Joga v každodennom živote? Doèítate sa v èlánku Jany Longauerovej.

o Výuèby etickej výchovy, náboženstva a jogy v našich školách sa týkajú v in- Zine èlánky Róberta Zavarského a Martina Štefunka.

o Viete, z akých skupín sa skladá bežný dav na antiglobalistickej demonštrácii? Chcete vedie, o èo jednotlivým skupinám ide? Preèítajte si èlánok Rada Ondøejíèka a on line diskusie na túto tému.

o Milovníci kina na stránkach inZinu nájdu rozsiahly filmový servis, ponúkajúci aktuálne informácie nielen o filmoch, ktoré premietajú v našich kinách. Zaujímavosou sú aj filmové televízne tipy šéfredaktora inZinu Petra Pišanka.

o Pre tých, èo chcú objavova neznáme a krásne zákutia na Slovensku, je urèená rubrika Tip na fototrip ¼uboša Vodièku a Bicyklové trasy Mariana Jaslovského. inZine – internetový magazín na adrese www.inzine.sk

9/20012+4-87-  ! UKLADANIE DÁT. Ako som pred mesiacom s¾úbil,

do nášho databázového prehliadaèa pridáme možnos vy- konania dopytu SQL a následného uloženia výslednej dá- tovej množiny do súboru (samozrejme, iba v prípade, ak príkaz nejakú dátovú množinu vráti, teda za predpokladu, že použijeme príkaz select, a nie iné príkazy, ako napr. alter table èi drop table).

Na formulár pridáme tlaèidlo, ktoré nazveme SQLBtn. Jeho úlohou bude vyvolanie druhého formulára, ktorý poskytne používate¾ovi možnos napísa dopyt SQL, spus- ti ho a uloži výsledky. Na rozdiel od hlavného formulára sa však okno SQLForm nebude vytvára automaticky pri inicializácii programu prostredníctvom metódy Create- Form, ale vytvoríme ho manuálne. Tento spôsob práce s formulármi je síce trošku menej pohodlný, šetrí však pamä, a preto by ste si naò mali zvyknú. Okno SQLForm bude modálne, preto ho nastavíme tak, aby sa nedalo minimalizova. Podobne ako hlavný formulár aj formulár SQLForm bude ma vo svojej hornej èasti umiestnený kom- ponent TPanel, zarovnaný nahor. Na tento panel umiest- nime dve tlaèidlá, prvé s názvom VykonajSQL a druhé s názvom UlozData. Vlastnos Enabled tlaèidla UlozData na- stavíme na false, pretože po zobrazení okna SQLForm bude výsledná množina dát ešte prázdna, a teda nemá zmysel ju uklada. Tlaèidlo sprístupníme až vtedy, keï si budeme istí, že skript SQL bol vykonaný bez problémov.

Nasledova bude pridanie komponentu TMemo, ktorý nazveme SQLQuery. Vlastnos Align nastavíme na alTop. Potom pridáme komponent TSplitter, ktorého vlastnos Align tiež nastavíme na alTop. Vlastnos Cursor tohto komponentu nastavíme na crVSplit. Vïaka tomuto komponentu budeme môc zväèšova èi zmenšova oblas, kde bude zobrazený skript SQL. Ïalej pridáme komponent TStatusBar, prièom vlastnos SimplePanel nastavíme na true. Samozrejme, ne- smieme zabudnú na najdôležitejší komponent, ktorým je TQuery. Nazveme ho MainQuery a umiestnime ho na dátový modul dmMain. Potom pridáme komponent TDataSource, ktorý pomenujeme dsMainQuery. Nesmie chýba komponent TDBGrid, ktorý nám zobrazí výslednú množinu dát. Vlastnos dgEditing nastavíme na false, keïže výsledná množina vráte- ná dopytom SQL bude „read-only“. Aby bolo prezeranie úda- jov komfortnejšie, pridáme aj komponent TDBNavigator.

Kód na vytvorenie a zobrazenie okna SQLForm je jed- noduchý:

procedure TMainWnd.SQLbtnClick(Sender: TObject); var Okno:TSQLForm; begin Okno:= TSQLForm.Create(Application); try Okno.ShowModal; finally Okno.Free; end;

Po zobrazení formulára bude ma používate¾ možnos napísa dopyt SQL a spusti ho. Tento proces bude prebieha v obslužnej rutine udalosti OnClick tlaèidla VykonajSQL: procedure TSQLForm.VykonajSQLClick(Sender: TOb- ject); begin try try Screen.Cursor:=crHourGlass; with dmMain.MainQuery do begin Close; DatabaseName:=MainWnd.Aliasy.Text; SQL:=SQLQuery.Lines; Open; end;//with UlozData.Enabled:=true; except raise end; finally Screen.Cursor:=crDefault; end;//finally end;

Dúfam, že vás neprekvapilo použitie blokov try...except aj try...finally. Ten prvý je tu pre prípad, že pri vykonávaní dopytu SQL nastane výnimka, a ten druhý nám zabezpeèí, aby sa kurzor s tvarom presýpacích hodín zmenil na štan- dardný kurzor nezávisle od toho, èi bola operácia úspešná, alebo nie. Mimochodom, všimnite si, že po vykonaní dopy- tu SQL sa sprístupní tlaèidlo UlozData, takže údaje už bude možné koneène aj uloži.

Koneènú podobu nášho programu vidíme na obrázku è. 1. Vonkajší vzh¾ad aplikácie už meni nebudeme, ale vnútri programu ešte nejaké zmeny urobíme.

Ak sa v budúcnosti budete venova práci s databázami, pravdepodobne narazíte na problém uloženia výsledkov dopytu SQL do súboru. Dôvody na ukladanie môžu by rôzne. Môžete napríklad chcie dáta editova, èo nie je možné vtedy, ak ich vyprodukoval dopyt SQL (presnejšie povedané, edito- va takúto množinu dát je možné, sú tu však isté dos závažné obmedzenia, ktoré vo ve¾kej miere znižujú použite¾nos ta- kéhoto riešenia). Nᚠprogram teraz upravíme tak, aby vedel výslednú množinu dát aj uloži. V prvom rade bude potreb- né prida na formulár SQLForm komponent TSaveDialog. Ten sa nás opýta, kam sa má výsledný súbor uloži (názov súboru bude potrebné zada aj s príponou). Výsledný súbor bude typu Paradox (DB). Samozrejme, nesmieme zabudnú ani na pridanie nového komponentu TTable, pomocou ktorého bu- de operácia ukladania realizovaná. Aby som vás nenapínal, tu je rutina, ktorá spomínané dáta uloží do súboru: procedure TSQLForm.UlozDataClick(Sender: TObject); begin

if not savedialog.Execute then exit; try try Screen.Cursor:=crHourGlass; with dmMain.OutputTable do begin DatabaseName:=ExtractFilePath(Savedialog.FileNa- me); TableName:=ExtractFileName(Savedialog.FileName); BatchMove(dmMain.MainQuery,batCopy); end;//with finally Screen.Cursor:=crDefault; end;//finally except raise end;//except end;

Jadrom tejto procedúry je metóda BatchMove, ktorá celú operáciu ukladania dát zrealizuje. Jej prvým parametrom je názov zdroja údajov a druhým je typ operácie, ktorá sa s ta- bu¾kou vykoná. Je potrebné si uvedomi, že operácia Batch- Move ovplyvní tú tabu¾ku, ktorá metódu BatchMove volá.

Prejdime teraz kpodrobnejšiemu opisu jednotlivých para- metrov tejto metódy. Ako som už spomenul, prvý je zdroj dát, ktorým môže by ktorýko¾vek potomok triedy TBDE- DataSet, teda napríklad potomok triedy TTable èi TQuery. Druhým parametrom je typ operácie, ktorá bude s dátami zrealizovaná. Konštanta batCopy znaèí, že údaje z kompo- nentu MainQuery prepíšu údaje uložené v tabu¾ke Output- Table. Na tomto mieste treba podotknú, že parameter bat- Copy spôsobí úplný zánik pôvodnej štruktúry tabu¾ky vrátane

definície polí a indexov. V našom prípade to však vôbec ne- prekáža, pretože presne to potrebujeme – staré údaje, ktoré ideme prepisova, nás totiž nezaujímajú.

Po uložení tabu¾ky vás možno napadlo, že by ste si ju radi prezreli. A aký iný program by sa na to lepšie hodil ako nᚠèerstvo naprogramovaný klon Database Explorera! Lenže je tu problém: my sme celý program postavili na aliasoch. Inými slovami, prístup máme iba k takým tabu¾kám, ktoré majú v systéme definovaný alias. Nie, nemusíte podráždene spúša Database Desktop, program v priebehu piatich minút upraví- me tak, aby sa dali otvára aj také tabu¾ky, na ktoré žiadny alias neodkazuje. Postup pritom bude identický s otváraním akéhoko¾vek iného typu súboru: zobrazí sa štandardné dialó- gové okno, z ktorého súbor vyberieme.

Aby sme uvedené zlepšenie mohli zrealizova, musíme na hlavný formulár prida nové tlaèidlo, ktoré nazveme OpenBtn. Samozrejme, nesmieme zabudnú ani na kom- ponent TOpenDialog, ktorý nazveme OpenDB. Ten vytvo- ríme pod¾a nasledujúcej schémy:

object OpenDB: TOpenDialog

Filter = ‘Súbory Paradox|*.DB|Súbory dBase|*.DBF’

Left = 340 Top = 48 end

Celá operácia bude realizovaná obslužnou rutinou uda- losti OnClick tlaèidla OpenBtn:

procedure TMainWnd.OpenBtnClick(Sender: TObject); begin

if not OpenDB.Execute then exit; try with dmMain.MainTable do begin Close; DatabaseName:=ExtractFilePath(OpenDB.FileName); TableName:=ExtractFileName(OpenDB.FileName); Open; end;//with except raise end;//try end;

Otváranie tabuliek konvenèným spôsobom má svoje výho- dy aj nevýhody. Výhoda spoèíva v tom, že je kdispozícii aj prípona súboru, v dôsledku èoho dokáže komponent TTable identifikova typ databázy a odpadne nám pomerne kompli- kované získavanie cesty k súboru z aliasu. Je tu však aj jedna nevýhoda: takýmto spôsobom sa nedajú otvori tabu¾ky typu

Related documents