Archív konference Delphi
Zpět na výběr roku archívu nebo přejít na fulltextové vyhledávání v konferenci.
zmena datumu a casu
[*] JAHODA Jozef <jahoda(zv)asset.sk> - 14.12.1999 14:38:28
Ing. J�n Kuch�r wrote
> ako zakazat zmenu datumu a casu pocas spustenia
> aplikacie ( samozrejme ak sa to da )
>
Na NT je to vyriesene. Meni� moze len Power User alebo Admin
JJ
Grid was:Pristup k datum, Delphree a vubec
[*] Pavel Cisar <pcisar(zv)aktis(tec)cz> - 14.12.1999 14:50:30
Haj hou!
From: Robert Kindl <rob(zv)exec(tec)cz>
>
> A uz vubec nepredstavitelny (pro bezneho Delphistu) je grid,
> kde kazdy radek obsahuje oplne jinak velke sloupce.
> Odtud je jiz jen krok k definici gridu jako mnoziny obdelnikovych
> (popr. jeste slozitejsich) oblasti.
He,he. Prave takovou podobnou obludu jsem pred casem programoval :o)
> Proc TWinControl? Proc ne TControl?
> A vubec. Moje zkusenost je takova, ze je lepsi
> a hlavne 100 krat jednodussi
> naucit grid nativne ruzne druhy editace (Edit, SpinEdit, Check, ComboList,
> ComboEdit,
> DateEdit, TimeEdit, ...) nez se ucit tam plavat libolny control.
> Problem je totiz, ze co control to unikat a v zasade
> stejne programujes zvlast plovouci Edit,
> zvlast SpinEdit, Check, ComboList, ComboEdit, DateEdit, TimeEdit atd.
Presne to je i moje zkusenost. Lepsi jeden dobre napsany (a
zamenitelny/upravitelny) InplaceEdit nez zobrazovat a kocirovat potomky
TWinControlu. To uz radsi pujdu pect housky :o)
Hodne zdaru
Pavel Cisar <pcisar(zv)atlas(tec)cz>
Delphree.org CEO
http://delphree.clexpert.com
Nexus project coordinator
http://delphree.clexpert.com/pages/projects/nexus/default.htm
Jakou databazi doporucite ?
[*] Pavel Cisar <pcisar(zv)aktis(tec)cz> - 14.12.1999 14:52:41
Haj hou!
> Ja bych zase tak nejasal. Mame s Interbase svoje zkusenosti a narazili
jsme
> na problemy s event alertery
> OIT a OAT apod.
> Podstatne je, kolik penez chces do databaze investovat. My pouzivame pro
> mensi a stredne velke projekty FlashFiler a jsme zatim spokojeni.
1.) Event alerter je unikatni vlastnost, kterou ne kazdy pouzije (spice opak
je pravdou)
2.) Problemy byly se spatnou komponentou v Delphi a s problemy okolo TCP/IP
socketu na W9x/NT. Pokud vim, tak od verze D5, Win98/NT4sp3 a IB5.5 je vse
ok.
Hodne zdaru
Pavel Cisar <pcisar(zv)atlas(tec)cz>
Delphree.org CEO
http://delphree.clexpert.com
Nexus project coordinator
http://delphree.clexpert.com/pages/projects/nexus/default.htm
Form Stay on top
[*] Mirek Junek <mjunek(zv)uo.fairnet(tec)cz> - 14.12.1999 14:59:46
Panove, nemuzu si zaboha vzpomenout, jak dostat formular (a udrzet ho tam) i
nad okna ostatnich aplikaci.
Diky, Mirek
D5 - ano ci ne ?
[*] Pavel Cisar <pcisar(zv)aktis(tec)cz> - 14.12.1999 15:04:07
Haj hou!
> Tento postup je podle mne vhodny tam, kde trideni je caste
> a v zasade se nemeni sloupec podle ktereho tridis.
To ano, ale lze ho s uspechem pouzit i v jinych pripadech.
> Pokud jen natahuji data ze serveru do gridu tak uzivatel
> vetsinou neklika zurive na headery sloupcu a pokud
> ano tak se prece zmeni mnozina dat podle kterych se tridi
> (vyjimkou je jen kdyz meni vzestupne/sestupne)
> bylo by tedy nutne provest jejich nove nacteni.
Ano, nenacitame vse hned na zacatku, ale na pozadani. Nacteni probiha tak,
ze se ctou PK a tridici polozka a prubezne se vytvari Boyer-tree index.
Proud dat jde ze serveru prirozene netrideny. Takto vytvoreny index se pak
aplikuje (upraveny potomek datasetu) a vse je razem jinak tridene.
Prirozene, pokud jiz index existuje, je pouzit misto opetovneho nacitani ze
serveru. Indexy jsou rovnez aktualizovany pri zmenach na klientovi.
> To
> je podle mne opet lepsi kdyz trideni udela server
> a nacte se jen pocet vet odpovidajici viditelnym
> radkam gridu.
Trideni na serveru je jedna z nejnarocnejsich operaci pro vsechny SQL
servery. Pro server to totiz znamena, ze data musi nacist a setridit a
umistit do docasne tabulky. Proto je odezva dotazu bez ORDER BY temer
okamzita, ale s ORDER BY je tav vzdy delsi ci kratsi (spise delsi) prodleva.
Nemluve o zdrojich alokovanych serverem (kurzor, ktery casto neni
zapotrebi), je to vzdy casove mene vyhodne. Dle me letite zkusenosti,
typycky jen nekolik dotazu v aplikaci ma takove parametry, ze trideni na
serveru neni nevyhodne. Prirozene, trideni na klientovi vyzaduje vzlastni
styl prace a specialni podporu ktera v Delphi standardne neni. Proto je
trideni na serveru pouzivano casteji, nez je mnohdy zdravo.
> Zde bych uvedl, ze je vhodne preformulovat query
> i pokud vypnu/zapnu nektere sloupce v gridu.
> Tim zmensim sirku prenasenych recordu.
Souhlas.
> Naftarskou lobby zde zastupuje Microsoft
> a ropou jsou jeho Windows (dale jen Ropaci) :-)
Pokud bude Kylix alespon tak dobry jako D1, pak se mozna dockame jeste
zajimavych casu :o)
Hodne zdaru
Pavel Cisar <pcisar(zv)atlas(tec)cz>
Delphree.org CEO
http://delphree.clexpert.com
Nexus project coordinator
http://delphree.clexpert.com/pages/projects/nexus/default.htm
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 14.12.1999 15:09:02
> -----P�vodn� zpr�va-----
> Od: Erik Salaj [mailto:winsoft(zv)napri.sk]
> Odesl�no: 13. prosince 1999 23:54
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: Re: Pristup k datum, Delphree a vubec was: D5 - ano ci ne ?
>
> ako shellshort, quicksort, atd.). Ale to, ze nie je mozne
> specifikovat obecne triedenie a takisto to, ze nie je mozne
> napisat genericke triedenie (t.j. pracujuce s obecnym typom)
> to su uz dost vazne problemy, ktore v Delphi (ale nie len
> v Delphi, plati to samozrejme aj pre mnoho dalsich jazykov)
> nie je mozne jednoducho obist.
S obecnym typem trideni pracovat nemuze, protoze neexistuje
porovnavaci operator. To neni zadny problem, to je fakt.
Pokud znas porovnavaci funkci obecne libovolnych typu a
dokazes ji napsat, tak s jejim vyuzitim lze napsat tridici
funkci (nebo objekt ci komponentu, co kdo chce), ktera
bude pracovat s obecne libovolnymi datovymi typy.
Takze to neni problem Delphi ani jineho nastroje, ze nelze tridit
obecne typy, ale nekoho, kdo nadefinuje relaci je mensi nebo rovno (<=)
Jura
Jakou databazi doporucite ?
[*] Martin Nedopil <nedopil(zv)eskon(tec)cz> - 14.12.1999 15:10:19
Tak ja ti doporucim DBISAM (www.elevatesoft.com).
Pridana hodnota k tvemu Exe je asi 250kb.
Umi to napr:
* programove vytvorit vsechny tabulky, kter potrebujes
* reindexaci pri chybe v tabulce.
* SQL (select, insert a dalsi)
* transakce
* nested tables
* batch moves nepodporuji
* packing taky ne, ale lze si pomoci malym trikem
* zadne NET a LCK soubory, fakt ne
* kryptovani (sice asi nic vydatneho, ale staci)
* descending secondary indexes
* zadne lo level API
* rychlost srovnatelna s BDE
* uz zadne Local share=true
* pokud vasi klienti pouzivaji Win 3.11 je tu i verze pro Delphi1.
Firma je velmi vstricna k tvym problemum ( a to jsem
zatim zkousel trial verzi), pripravuji verzi C/S, ODBC
driver aj. Maji vlastni forum, tam se obcas neco
objevi.
Vice na vyse uvedene adrese.
Prosil bych vsechny kovane SQL opravdove programatory,
aby nesrovnavali rychlost selectu s Interbase and comp.
Toto je pro ty, kteri si naprogramuji kartoteku tel. cisel a
nechteji k tomu prihazovat IDAPI. Jen tak mimochodem,
tabulku mam vyzkousenou i se 150MB dat, alel limit je
mnohem vyssi. Existuje k nemu i query builder, tusim
ze Sinea sestavy jsou kompatibilni.
martin
(nejsem dealer firmy Elevatesoft :-)
Zobrazeni textu na monitoru a tisk
[*] Michal Motalik <motalik(zv)cross(tec)cz> - 14.12.1999 14:49:41 -0000
Chtel bych toho moc, kdybych chtel alespon znat (zadarmiko ;-) ), zda
existuje nejaky vzorec na vypocet pozic pismen, abych to nemusel pro kazdy
font, velikost, styl a pismeno zadavat rucne?
Pavel CABAK
cabak(zv)cross(tec)cz
----- Original Message -----
From: Vaclav Krmela <krmela(zv)pecomp(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Monday, December 13, 1999 8:30 PM
Subject: Re: Zobrazeni textu na monitoru a tisk
> Musim budto tisknout po jednotlivych pismenech, pricemz kazdemu pismenu
> priradim konkretni polohu nezavisle na DPI nebo musim pouzit funkci
> ExtTextOut, kde vytisknu najednou delsi text a soucasne mam moznost
> priradit kazdemu pismenu pozici, presneji receno vzdalenost sousednich
> pismen.
>
>
Jakou databazi doporucite ?
[*] Pavel Bocek <xbocekp(zv)cs.felk.cvut(tec)cz> - 14.12.1999 15:56:45
Vrele doporucuji Interbase s primym pristupem (pouzivam FreeIB)
Proc?
* rozumna cena Interbase
* bezproblemovy provoz serveru jak na linuxu, tak i Windows a to i lokalne
* jednoducha a prehledna administrace (cela databaze v jednom souboru....)
* netreba BDE a ODBC
* maximalni rychlost diky nativnimu Interbase API
* staci na to Delphi 4 STANDARD ;-)
Pavel Bocek
----- Original Message -----
From: Petr Dedecek <petrd(zv)atlas(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Monday, December 13, 1999 9:27 PM
Subject: Jakou databazi doporucite ?>
> I kdyz se moje DOS aplikace porad bez problemu prodavaji a vyviji, chci je
> postupne prevest pod Delphi,ale nemohu se rozhodnout pro databazi. Doposud
> jsem delal v B-Tree od TurboPower.
> Nechci pouzivat BDE, tabulky Paradox ani dBase. Jeden program musi pracovat
> lokalne i sitove.
> Pristupy k vetam pres indexy, prace s filtry. Nasazeni bude max na 50
> stanicich. Zakaznici jsou zvykli na rychlost z DOS aplikace a proto nesmi
> byt o moc pomalejsi , je pozadovana vysoka spolehlivost, v aplikaci musi
> spolupracovat nekolik desitek databazi i s nekolika miliony vet . Protoze
> vetsina zakazniku ma 1-4 pocitace, tak musi vystacit se zakladnim sitovym
> vybavenim ( Windows 9x/NT popripade Novell ) bez dalsich doplnku. Nechci nic
> free, ale databazi se zajistenou podporou firmy.
> Dik za kazdou radu.
>
> Petr
>
>
>
D5 - ano ci ne ?
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 14.12.1999 16:05:47
> -----P�vodn� zpr�va-----
> Od: Pavel Cisar [mailto:pcisar(zv)aktis(tec)cz]
> Odesl�no: 14. prosince 1999 15:04
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: Re: D5 - ano ci ne ?
>
>
> Haj hou!
>
> > Tento postup je podle mne vhodny tam, kde trideni je caste
> > a v zasade se nemeni sloupec podle ktereho tridis.
>
> To ano, ale lze ho s uspechem pouzit i v jinych pripadech.
>
> > Pokud jen natahuji data ze serveru do gridu tak uzivatel
> > vetsinou neklika zurive na headery sloupcu a pokud
> > ano tak se prece zmeni mnozina dat podle kterych se tridi
> > (vyjimkou je jen kdyz meni vzestupne/sestupne)
> > bylo by tedy nutne provest jejich nove nacteni.
>
> Ano, nenacitame vse hned na zacatku, ale na pozadani. Nacteni
> probiha tak,
> ze se ctou PK a tridici polozka a prubezne se vytvari
> Boyer-tree index.
> Proud dat jde ze serveru prirozene netrideny. Takto vytvoreny
> index se pak
> aplikuje (upraveny potomek datasetu) a vse je razem jinak tridene.
> Prirozene, pokud jiz index existuje, je pouzit misto
> opetovneho nacitani ze
> serveru. Indexy jsou rovnez aktualizovany pri zmenach na klientovi.
>
> > To
> > je podle mne opet lepsi kdyz trideni udela server
> > a nacte se jen pocet vet odpovidajici viditelnym
> > radkam gridu.
>
> Trideni na serveru je jedna z nejnarocnejsich operaci pro vsechny SQL
> servery. Pro server to totiz znamena, ze data musi nacist a setridit a
> umistit do docasne tabulky. Proto je odezva dotazu bez ORDER BY temer
> okamzita, ale s ORDER BY je tav vzdy delsi ci kratsi (spise
> delsi) prodleva.
Mozna jss to jenom spatne napsal. Nejdrive musi data nacist a umistit
do docasne tabulky, pak az je muze setridit. Odezva dotazu ORDER BY je
okamzita proto, ze prvni data jsou vracena BEHEM provadeni dotazu,
kdezto setridena data mohou byt vracena az PO provedeni dotazu.
Takze selectovani bez ORDER BY nemusi byt rychlejsi, jenom to tak vypada,
protoze se data zobrazuji drive. Tim neoponuji Pavlovi, jenom upresnuji.
Jinak diskuse o tom, jestli je lepsi tridit na serveru nebo na klientovi mi
pripadaji
trochu stupidni. Oboje ma sve vyhody i nevyhody.
Jura
trideni was: D5 - ano ci ne ?
[*] Pavel Cisar <pcisar(zv)aktis(tec)cz> - 14.12.1999 16:30:01
Haj hou!
From: Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz>
>Jinak diskuse o tom, jestli je lepsi tridit na serveru nebo na klientovi mi
>pripadaji trochu stupidni. Oboje ma sve vyhody i nevyhody.
Proc ? Diskutuje zde sve zkusenosti s obojim, a prave ty prednosti a
nevyhody obou (resp. mnoha ruznych) postupu. Myslim ze si z toho mnoho lidi
muze ledacos odnest (vcetne nas). Netreba vecne objevovat kolo.
Hodne zdaru
Pavel Cisar <pcisar(zv)atlas(tec)cz>
Delphree.org CEO
http://delphree.clexpert.com
Nexus project coordinator
http://delphree.clexpert.com/pages/projects/nexus/default.htm
Jak zjistit, ze jsem na poslednim zaznamu datasetu
[*] Pavel Skalicky <P.Skalicky(zv)sh.cvut(tec)cz> - 14.12.1999 16:31:30
Pokud mas v datasetu i primarni klic, po Next otestuj, zdali se zmenil (pokud ne, jsi na
poslednim).
Ev. existuje tam neco jako FindNext, ktera vraci boolean, zda se podarilo, ale to nemam
odzkouseny.
Ale predchozi rada funguje.
Pavel
Pavel Bocek wrote:
> Zdravim,
>
> EOF se sice nastavuje pokazde, ale nelze ho pouzit k zjisteni, zda jsem
> na poslednim radku datasetu.
>
> Pokud se totiz jakkoli vyjma metody Last dostanete na posledni record, EOF se nenastavi....
> Viz help...
>
> Pavel Bocek
>
> ----- Original Message -----
> From: Karel Vlcek <vlcekk(zv)hotmail.com>
> To: <delphi-l(zv)fwd(tec)cz>
> Sent: Tuesday, December 14, 1999 10:21 AM
> Subject: Re: Jak zjistit, ze jsem na poslednim zaznamu datasetu?
>
> > Ja pri prochazeni datasetem pouzivam property EOF, ktera se nastavuje pri
> > kazde akci (First, Next, ...)
> >
> > viz Help (D5, ale je stejny jako D3)
> > Indicates whether or not a cursor is positioned at the last record in a
> > dataset.
> >
> > property Eof: Boolean;
> >
> > Description
> >
> > Test Eof (end-of-file) to determine if the cursor is positioned at the last
> > record in a dataset. If Eof is True, the cursor is unequivocally on the last
> > row in the dataset. Eof is True when an application:
> >
> > Opens an empty dataset.
> > Calls a dataset�s Last method.
> > Call a dataset�s Next method, and the method fails (because the cursor is
> > already on the last row in the dataset).
> > Calls SetRange on an empty range or dataset.
> >
> > Eof is False in all other cases.
> >
> > Tip: If both Eof and Bof are True, the dataset or range is empty.
> >
> >
> >
> > Karel Vlcek
> > ===========================
> > poskytovani software
> > GSM : ++420 602 264812
> > mailto: Vlcekk(zv)hotmail.com
> > ===========================
> >
> >
> > ----Original Message Follows----
> > From: "Jaroslav Nadhera" <nadhera(zv)csh(tec)cz>
> > Reply-To: delphi-l(zv)fwd(tec)cz
> > To: <delphi-l(zv)fwd(tec)cz>
> > Subject: Re: Jak zjistit, ze jsem na poslednim zaznamu datasetu?
> > Date: Mon, 13 Dec 1999 16:11:50 +0100
> >
> > > Jednoducho. Napr. v TTable asi takto
> > > If Table.RecNo = Table.RecordCount then JeKoniec;
> > >
> >
> > Ale pozor RecordCount na tabulce s hodne zaznamy trva hodne dlouho (alespon
> > na Paradoxu).
> >
> >
> > ______________________________________________________
> > Get Your Private, Free Email at http://www.hotmail.com
> >
--
/--==ooOOoo==---=oOo=---==ooOOoo==--
| Pavel Skalicky - student FEL CVUT
| e-mail - P.Skalicky(zv)sh.cvut(tec)cz
| tel. - 0604 844 698
| ICQ - 38169741
| sidlo - Strahov bl.8 / 50
\--==ooOOoo==---=oOo=---==ooOOoo==--
Frame a dedeni
[*] Hynek Svato� <svatos(zv)kam(tec)czu(tec)cz> - 14.12.1999 17:10:28
Hm, uz mi to funguje (zatim), ta repository me samozrejme napadla, ale ja
jsem ten frame strkal do repository blbe, pres menu Project->Add to
repository a pak mi to pri vytvoreni noveho framu nabizelo jen copy misto
inherited a use, takze jsem od toho upustil, ted je to ok.
Diky.
======================
Hynek Svato�
svatos(zv)kam(tec)czu(tec)cz
hynek.svatos(zv)atlas(tec)cz
======================
----- Original Message -----
From: Pavel Cisar <pcisar(zv)aktis(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Tuesday, December 14, 1999 1:46 PM
Subject: Re: Frame a dedeni
> Haj hou!
>
> >Pak jsem si vytvoril novy frame a jako predka jsem mu dal ten
ExtendedFrame
> >a zacaly potize.
>
> Jak jsi mu dal jineho predka ? Primo prepsal v DFM ?
> Jediny regulerni zpusob je pres New->z�lo�ka kde je
frame->frame->Inherit->
> OK.
>
> >Kdyz se prepnu z navrhu framu do textoveho navrhu (Alt+F12) a zpet tak to
> >hlasi, ze neexistuji nektere property a delphi hazi hlasky Acces
violation.
> >To se stava jen v pripade, kdyz zmenim predka framu ze std. TFrame na
> >TExtendedFame - znamena to tedy, ze se u framu musim vzdat dedeni ?
>
> Pokud je predek soucasti projektu (nebo v repozitori) a pak je z n�ho
> vytvo�ena nov� d�d�n�m, pak v�e funguje jak m� (v�etn� toho p�ep�n�n�).
> Odzkou�eno.
>
> Hodne zdaru
>
> Pavel Cisar <pcisar(zv)atlas(tec)cz>
> Delphree.org CEO
> http://delphree.clexpert.com
> Nexus project coordinator
> http://delphree.clexpert.com/pages/projects/nexus/default.htm
>
>
>
Zobrazeni textu na monitoru a tisk
[*] Vaclav Krmela <krmela(zv)pecomp(tec)cz> - 14.12.1999 17:11:46
Sirka pismen se da jednoduse zjistit pomoci TextWidth.
Jde o to zvolit si urcite zarizeni s konkretnim DPI jako referencni
a potom zajistit, aby na ostatnich zarizenich byla dodrzena
prima umernost mezi pozici jednotlivych pismen na referencnim
zarizeni a hodnotou DPI na aktualnim zarizeni.
Vzorecek na primou umernost (trojclenku) dodam,
az se dcera vrati ze skoly (zakladni).
Vaclav Krmela
> Chtel bych toho moc, kdybych chtel alespon znat (zadarmiko ;-) ), zda
> existuje nejaky vzorec na vypocet pozic pismen, abych to nemusel pro kazdy
> font, velikost, styl a pismeno zadavat rucne?
>
> Pavel CABAK
> cabak(zv)cross(tec)cz
>
> > Musim budto tisknout po jednotlivych pismenech, pricemz kazdemu pismenu
> > priradim konkretni polohu nezavisle na DPI nebo musim pouzit funkci
> > ExtTextOut, kde vytisknu najednou delsi text a soucasne mam moznost
> > priradit kazdemu pismenu pozici, presneji receno vzdalenost sousednich
> > pismen.
ulozene procedury a upgrade na MSSQL7
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 14.12.1999 17:16:30
pemasoft(zv)atlas(tec)cz wrote:
> Po upgradu serveru MS SQL 6.5 na verzi 7.0 s SP1 v nasem programu
> nechodi ulozene procedury.
>
> Kdyz ji zavolam rucne procedura se spusti ale v programu to hlasi 'can
> not find store procedure .....'.
>
> Nevite co s tim mam udelat ????
Opustit BDE a zkusit treba ADO...
Ja vim, dobra rada nad zlato. :-)
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
D5 - ano ci ne ?
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 14.12.1999 17:16:30
Pavel Cisar wrote:
> > Jak chces pretridit data na clientu, kdyz je nemas nactena v pameti.
> > Tohle je zasadni rozpor prechozich dvou odpovedi a proto je to jak
> > jsem rekl.
>
> Existuje i kompromisni reseni. Na klienta pretahujes (a prechovavas)
> primarni klice a data, podle kterych se bude tridit. Tento seznam je
> pomerne maly i pri velkem poctu zaznamu. Pretrideni seznamu je pak
> dilem okamziku a je mozne ho delat 100x za minutu aniz by uzivatel
> zaznamenal zdrzeni. Pro jednotlive zaznamy (kompletni data) se pak
> chodi vzdy na server (vyhledani jedne vety dle primarniho klice a jaji
> prenos na klienta je jedna z nejrychlejsich SQL operaci vubec). Navic
Klasicky se takto tahaji objemnejsi data, napriklad bloby.
> je vzdy znam presny pocet zaznamu (stary to problem SQL databazi) a je
> tedy mozne provadet skoky na konkretni zaznam v seznamu bez casove
> prodlevy nebo vykonnostnich anomalii.
Mno, znalost poctu zaznamu bych nehazel ani tak na SQL
databaze, jako spis na technologie s nimi pracujici. Tento problem
v OLE DB neexistuje, protoze pocet zaznamu zjistim svizne, vraci
mi je OLE DB. Tento problem se tyka budto DBLib, nebo primo
BDE.
> > Proste si myslim, ze uzitecnejsi by bylo udelat OLEDB
> > dedic TDatasetu. Borland ted udelal ADOExpress
> > i IBExpress nad datasetem. Adonis je nad datasetem.
> > Ale to jsme pokud si pamatuji jiz diskutovali.
> > Ty jsi se bohuzel rozhodl dataset opustit :-(
>
> Dataset NENI dobry, je mizerny. Pouziva se jen proto, ze je pro
> vsechny jednodussi s nim zapasit nez si napsat jine reseni.
Ja bych upresnil, ze TDataset NENI dobry pro OLE DB (a tim
padem ani ADO, a tam vlastne jeste spise ne), ale mozna je dobry
pro BDE (nevim, nezkoumal jsem to).
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
Grid was:Pristup k datum, Delphree a vubec
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 14.12.1999 17:16:30
Pavel Cisar wrote:
> > 1. Kdo bude projekt ridit (a tedy schranovat i popis vlastnosti
> > tridy)? Dopredu podotykam, ze ja ne. :-) 2. Kdo bude tvorit
> > dokumentaci, zejmena v anglictine? (Ja take ne
>
> Mno, to uz by jsme nejak poresili. Problem je v tom, kdo to bude
> programovat :o)
Zkusme se na to podivat i z jineho uhlu: cim vic lidi, tim vetsi
bordel... :-)
> > Prvni nadhoz vlastnosti gridu:
> >
> .....[snip]
>
> Uaaa! Tohle ma byt technicka specifikace ? To je dopis Jeziskovi :o)
Ne, to neni technicka specifikace, ale prvni nadhoz vlastnosti.
Nauc se cist. :-)
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
startovaci okno - jine reseni
[*] Martin Pe�ek <pesek.martin(zv)mymail(tec)cz> - 14.12.1999 17:17:29
Zdravim !!!
Vcera jsem se tu ptal, jak udelat startovaci okno aplikace stejne jako je u Wordu. A jedna odpoved me "nakopla" tim spravnym smerem. V napovede Delphi jsem nasel priklad, ktery zobrazi okno tak jak jsem ho potreboval a nevytvari se zvlastni form pri staru aplikace, ale vezme se uz existujici form. Vyhoda tohoto formu je, ze si na nej naflakate potrebne komponenty (napr.: TImage) a on je proste rovnou zobrazi.
Application.Initialize;
with TForm2.Create(nil) do
try
Show;
Update;
Application.CreateForm(TForm1, Form1);
finally
Free;
end;
Application.Run;
/======================\
/ pesek.martin(zv)mymail(tec)cz \
/-------------------------------------------------\
<---<([ Martin Pesek ] [ Gamemaker ])>--->
\-------------------------------------------------/
\ www.mujweb(tec)cz/www/gusman /
\======================/
D5 - ano ci ne ?
[*] Tomas Kouba <tomas(zv)neo(tec)cz> - 14.12.1999 17:21:20
Zdravim,
ja jsem asi neco zasadniho nepochopil. Pokud by se melo preferovat trideni u
klienta (i kdyz je casto) v provozu C/S, tak to prece nutne musi byt
nekolikrat pomalejsi. SQL stroj prece pouziva indexy, ktere klient v
kurzorech nema k dispozici ?! Samozrejme pokud pocet radku ve vysledku je
vice jak maly...
O pretezovani serveru nelze mluvit, od toho tam je mel by na to byt
optimalizovan.
Pokud mi neco podstatneho uniklo, tak se omlouvam.
------------------------------
Tomas Kouba
mailto:tomas(zv)neo(tec)cz
> > > Pokud chci nechat uzivatele, aby si kliknul na sloupec, podle
> > > ktereho chce tridit, tak to urcite nebudu sverovat
> serveru. Protoze
> > > to by znamenalo zavrit set, preformulovat select, a znovu
> otevrit (a
> > > tim padem prinutit server vytvorit nove kurzory).
> > >
> > > > Pokud to dela klient jde to presne proti modernim
> pozadavkum doby.
> > >
> > > Jake jsou moderni pozadavky doby? Pretezovani serveru, aby se
> > > odlehcilo klientu? :-)
> >
Jakou databazi doporucite ?
[*] Ing. Petr Svejda <lingvista(zv)lingvista(tec)cz> - 14.12.1999 17:46:48
>No ja pouzivam FF (FlashFiler). jak tak ctu tvoje pozadavky, tak FF ti bude
>Pavel ZIDEK
Delali jsem pod Paradoxem a prechod na FlashFiler od TurboPower byl pro me
balzamem na programatorskou dusi. Delame stredne velke projekty (sitove) a
jazykovy krabicovy software (z toho plyne velke databaze - pracovni databaze
u me na stole temer 700MB). Avsak FF me pro me jednu drobnou "nevyhodu" -
prestali nam volat zakaznici, ze maji problemy, ze se jim poskodila data,
indexy, memo polozky, LCK soubory, atd - vsak vite. :-)))))))
PS: jednu malou perlicku: nas krabicovy sw pod Paradoxem mel cca 3500
uzivatelu - zhruba 80 uzivatelu melo problemy s konfliktem borlandiho
Paradoxovskeho BDE po instalaci - podotykam pouzivali jsme standardni
instalaci InstallShieldem - zadne harakykyryky. Po prechodu na FF ma nas
krabicovy sw zatim cca 2000 uzivatelu a dosud se NIKDO neozval, ze by mel
nejake problemy.
Jinak pro tvoji informaci o FF:
# Distribuce s FF je naprosto nekonfliktni (zadne registry, ini soubory,...)
# Siris pouze svuj exe soubor, popr. na siti jeden exe jako databazovy
server a pokud je sam nevytvaris - tak tabulky.
# Dobre funguje na siti i lokalne.
# Jedna tabulka se vsim potrebnym v jednom souboru (max 4GB).
# Funguje i jako read-only (jsme vyrobci jazykoveho software a v tabulce
mame ulozeny fraze vcetne zvukoveho doprovodu - vse muzes spoustet bez
instalace jakekoli instalace na disk - pouze po zasunuti cedecka) ;-)))
# podpora ze strany Petr Zahradnika i TurboPower je vyborna, nerkuli jeste
lepsi
# vyborna porizovaci cena (zakaznik za sireni stroje NEPLATI NIC - tzn. do
ceny tveho sw se nepromitaji dalsi naklady - muzes mit vetsi zisk nebo
levnejsi software - vyber si sam)
PS: ani ja nejsem prodejce FlashFileru - pouze ho pouzivam
Ing. Petr Svejda
software specialist
ADMIN: Jakou databazi doporucite ?
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 14.12.1999 17:58:19
Vazeni,
slovo administratora - nemam vubec nic proti tomu, abyste
se zde klidne poprali o to, ktera databaze je nejlepsi,
resp. ze je to prave ta, kterou pouzivate zrovna vy.
Ale neuznavam argumenty typu "po zkusenostech kamaradu"
a dalsi podobne. Pokud mate cim argumentovat, coz zde
rada lidi zjevne ma, pak je jedine dobre, ze o vyhodach
nebo nevyhodach te ktere databaze reknete kolegum
z konference. Ovsem kazdy mail, kde bude napsano, ze mu
to rikali kamaradi, ze to stoji za prd, ale bez uvedeni
konkretniho argumentu, bude povazovan za off-topic.
Takovy mail totiz nejen ze neporadi, ale navic naprudi...
A jeste si dovolim malou poznamku - ne vsechno je vhodne
na vsechno. Kazdy delame jiny typ aplikace a kazdy mame
jine podminky. Takze je-li jeden typ databaze pro Vas
nepouzitelny, neznamena to, ze nekdo jiny s nim neudela
nadherne fungujici program. Ja sam pouzivam 3 druhy
databazi, konkretne Sybase Adaptive Server Anywhere,
MSDE a FlashFiler - kazdy ovsem pro jine aplikace. Verte
mi, ze ani jedna z techto databazi nemuze zastoupit
zbyle dve. Kazda ma neco, proste neco, proc se vyplati
pouzivat a umet vsechny tri...
S pozdravem
Petr Zahradnik, pocitacovy expert
Autorizovany dealer TurboPower Software... knihovny pro Delphi
==============================================================
=== Petr Zahradnik - Computer Laboratory ===
=== Obvodova 740/14, PO BOX 15, 400 07 Usti nad Labem 7 ===
=== telefon: 047-5500610, telefon/fax: 047-5501627 ===
=== mobilni telefon GSM (hotline): 0602-409601 ===
=== http://www.clexpert(tec)cz/ clexpert(zv)clexpert(tec)cz ===
==============================================================
ICQ: 21215917, PGP vitano
Jakou databazi doporucite ?
[*] Ji�� Kr�l jr. - 14.12.1999 18:03:12
gdosi wrote:
> Kdyz slysim o problemech s MS SQL od jimych programatoru, musim se smat.
Neni hezke se smat cizim problemum.
Ja bych doporucil rozhodne MS SQL 7. A to z nasledujicich duvodu:
- vyhodne licencni podminky (= levne )
napr. pro nasi firmu (cca 25 klientu, 80 zamestnancu) stalo nasazeni MS
SQL 7 66000 bez DPH
a to jsme navic (v baliku MS SBS server) ziskali Exchange server, Proxy
server a NT server.
Nejprve jsem zvazovali Interbase na nas stavajici Novell, ale prislo by to
skoro 3x tak draz , a to
bychom jeste museli upgradovat servrovo zelezo.
Proste jak rikaji Amici: if offers the biggest bang for your buck
teda ze za malo penez, mraky muziky. Pro malou/stredni firmu
bezkonkurencni nabidka. Pokud samozrejme
nechces jit do Linuxoviteho reseni. Ale tam je to o necem jinem.
- jednoducha instalace a sprava
rozhodne to umoznuje qalitni zabezpeceni, ale cloveka, ktery o to nestoji
to zbytecne neotravuje
a nekomplikuje mu to zivot
- ziskani editor's choice v PC Magazine (jedno z letosnich cisel)
MSSQL7 uspel proti DB2, Oracle a jeste necemu, ted si nevzpomenu cemu
- Az na MSSQL jsem zacal delat v D5 neco C/S a docela rychle jsem se
vyskolil, par problemu bylo, ale spise ve mne a v D5 nez v MSSQL.
toz tak, no
Jirka Kral
ADMIN: Returned mail: Too many hops
[*] Burger, Tomas <tomas.burger(zv)sap(tec)com> - 14.12.1999 19:27:42
> -----Original Message-----
> From: Zbysek Hlinka [mailto:zhlinka(zv)login(tec)cz]
> > >The original message was received at Mon, 13 Dec 1999
> > >from gandalf.fme.vutbr(tec)cz [147.229.37.10]
> Ano, posilam je do kose. :-)
...a to je prave chyba. Kdybyste mi nekdo napsal, ze takovy problem existuje
(ja to nemuzu vedet, delo se to jen prispivajicim), dalo se to resit - a
taky jsem to vzapeti jednim cistym (od)riznutim vyresil...
Napsal jsem vinikovi (i kdyz on byl taky spis obet), ze si ma dojit zmlatit
spravce mail-serveru a pak se ze klidne muze prihlasit znovu...
Proste a kratce: tahle konference jde sice tak trochu samospadem, ale od
toho mate sve adminy (kteri vas vlastne maji radi - i kdyz to tak obcas
nevypada :-) ), abyste si meli kde postezovat a poplakat.
Stale s vami. Tomas
Report Builder 4.22 out a taky nova beta RAD
[*] Radoslav =?iso-8859-1?Q?Krehl=EDk?= <heretic(zv)softok(tec)cz> - 14.12.1999 10:57:04 -0800
----------------------------------------------------------------------------
----
Version 4.22 (12/10/1999)
----------------------------------------------------------------------------
----
Enhancements
------------
1. Label Wizard. A new Label Template Wizard has been added to the Report
Designer.
Using the Label Template Wizard you can select from over 300
pre-defined label
templates.
2. Simplified JITPipeline. Added new public properties RecordCount,
RecordIndex,
and InitialIndex to enable the JITPipeline to automatically track
record indexing.
In addition, using Master/Detail JITPipelines no longer requires the
user to code
event-handlers related to data linkage. Please see the main report demo
application
for examples.
3. The PrinterSetup.Copies setting is now handled internally by
ReportBuilder rather than
relying on the printer driver.
4. Crosstab Styles. Added new Style property to Crosstab. Current options
are Standard and
Repeated Captions. When the Repeated Captions style is selected, the
appropriate row or
column captions are repeatable on all relevant pages.
5. Crosstab Events. Added new 'GetText' events to the Crosstab component to
enable more
customization of output. See ct0128.pas of the Demos\Crosstab project
for an example of using
these new events: OnGetCaptionText, OnGetTotalCaptionText, OnGetValueText,
and OnGetTotalValueText.
6. AutoJoin. Added 'disabled tables' to the Query Wizard and Query Designer
when AutoJoin
is being used. When a table is selected for a query, the 'available
tables list'
automatically disables tables that have no pre-defined relationship
with the selected
table(s).
Fixes
-----
1. Dynamic group footers did not page break properly.
2. Default BinName was not being honored in some cases.
3. Sometimes when printing RichText, the text controls that print
afterwards were
not honoring the correct font setting.
4. Drill-down subreports were not behaving correctly in some cases.
5. DADE: Miscellaneous fixes.
http://www.digital-metaphors.com
Heretic-X, SOFTWARE specialist,<hx.mutant(tec)cz>
Databaze a sireni + par drobnosti III - Jak to del
[*] Martin Pe�ek <pesek.martin(zv)mymail(tec)cz> - 14.12.1999 20:16:26
Zdravim !!!
Tak jsem neco zkusil na druhym PC a pise mi to chybovou hlasku:
Exception EDBEngineError in module PROJECT1.EXE at 0007A202.
Unknown database.
Alias: Test.
Instaloval jsem to pomoci InstallShieldu dodavaneho s Delphi. BDE engine (jen ovladace Paradoxu) jsem instaloval do slozky windows a databazi s programem do slozky: C:\Program Files\Gamemaker\Test
Sice jsem PC nerestartoval, ale to podle me nevadi. Mam nastavit cestu k databazi nejak v programu nebo nejak nastavit cestu BDE ? Jak to delate vy ?
Predem dik za radu. Cau Martin.
/======================\
/ pesek.martin(zv)mymail(tec)cz \
/-------------------------------------------------\
<---<([ Martin Pesek ] [ Gamemaker ])>--->
\-------------------------------------------------/
\ www.mujweb(tec)cz/www/gusman /
\======================/
Grid was:Pristup k datum, Delphree a vubec
[*] Ren� Otisk - 14.12.1999 20:41:56
Hi,> Prvni nadhoz vlastnosti gridu:
> e) podle datoveho typu spravne data zobrazit - s tim souvisi
> schopnost natahnout nejaky graficky prvek, napriklad Check pro
> boolean,
a taky zobrazit obrazek z databaze (z BLOBu). Souhlasim s tim,
ze to muze byt na prekreslovani casove narocne,
ale kdyby slo jen o nahledy...
i) moznost zapamatovani runtime nastaveni sloupcu - sirka a poradi
po resize a move.
Jestli sem dobre pochopil (zapamatovat si nastaveni sirky a poradi sloupcu),
tak to umi TIniStorage (volitelne do ini souboru nebo do registru) z RxLib
Tomas Bradle
t.bradle(zv)pvtnet(tec)cz
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Erik Salaj <winsoft(zv)napri.sk> - 14.12.1999 21:17:53
> S obecnym typem trideni pracovat nemuze, protoze neexistuje
> porovnavaci operator. To neni zadny problem, to je fakt.
> Pokud znas porovnavaci funkci obecne libovolnych typu a
> dokazes ji napsat, tak s jejim vyuzitim lze napsat tridici
> funkci (nebo objekt ci komponentu, co kdo chce), ktera
> bude pracovat s obecne libovolnymi datovymi typy.
>
> Takze to neni problem Delphi ani jineho nastroje, ze nelze tridit
> obecne typy, ale nekoho, kdo nadefinuje relaci je mensi nebo rovno (<=)
OK, tak ja nadefinujem tuto relaciu pre Integer typ:
function IntMensiNeboRovno(a, b: Integer): Boolean;
begin
Result := a <= b;
end;
a aj pre Double typ:
function DoubleMensiNeboRovno(a, b: Double): Boolean;
begin
Result := a <= b;
end;
Ako bude vyzerat v Delphi obecna implementacia triedenia
pre obidva a samozrejme aj dalsie typy, pre ktore takuto
relaciu nadefinujem?
Erik Salaj
Databaze a sireni + par drobnosti III - Jak to del
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 14.12.1999 21:31:28
Puvodni zprava, kterou napsal Martin Pe�ek dne 14 Dec 99,:
> Tak jsem neco zkusil na druhym PC a pise mi to chybovou hlasku:
>
> Exception EDBEngineError in module PROJECT1.EXE at 0007A202.
> Unknown database.
> Alias: Test.
No tak to je jasne, to tam nemas alias Test...
> Instaloval jsem to pomoci InstallShieldu dodavaneho s Delphi. BDE engine =
> (jen ovladace Paradoxu) jsem instaloval do slozky windows a databazi s =
> programem do slozky: C:\Program Files\Gamemaker\Test
> Sice jsem PC nerestartoval, ale to podle me nevadi. Mam nastavit cestu k =
> databazi nejak v programu nebo nejak nastavit cestu BDE ? Jak to delate =
> vy ?
Musis v te instalaci BDE pridat alias na tu cestu...
S pozdravem
Petr Zahradnik, pocitacovy expert
Autorizovany dealer TurboPower Software... knihovny pro Delphi
==============================================================
=== Petr Zahradnik - Computer Laboratory ===
=== Obvodova 740/14, PO BOX 15, 400 07 Usti nad Labem 7 ===
=== telefon: 047-5500610, telefon/fax: 047-5501627 ===
=== mobilni telefon GSM (hotline): 0602-409601 ===
=== http://www.clexpert(tec)cz/ clexpert(zv)clexpert(tec)cz ===
==============================================================
ICQ: 21215917, PGP vitano
Internet pripojeni, odpojeni, DUN
[*] Jmisek <jmisekdelphi(zv)seznam(tec)cz> - 14.12.1999 22:45:25
Cau vsichni v delphi
Predem se omlouvam jestli je toto tema offtopic, ale nejsem v konferenci dlouho.
mam takovou neznalost
1) Nevedel by nekdo jak je mozne vylistovat v programu pripojeni k internetu nastavene ve win, respektive zjistit jaka pripojeni jsou vytvorena. ( vim ze jsou v
souborech s priponou .DUN ale to az po tom co se kopiruji, jinak jsem nasel neco v registru win, ale nedava mi to ani hlavu ani patu)
2) Nevite jak toto pripojeni spustit ...tedy pripojit se k internetu (mimo rundll32 .DUN soubor) ( s tim aby se win pred vytocenim neptaly na informace o pripojeni)
3) Nevite jak toto pripojeni zavrit, respektive se odpojit od internetu ( zase bez otazek windows)
Predem dik a cau
.
okraje pri tlaci
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:15:06
Vaclav Krmela wrote:
> Trvam ale na tom, ze tisk pomoci AssignPrn z unitu Printers
> je tisk s ucasti ovladace tiskarny z Windows.
Ano to nepochybne je. Staci se podivat do prislusnych zdrojaku. "Zarizeni"
ktere se priradi pres AssignPrn se pak chova jako radkovy vystup a pouziva
operace s TextOut na Canvas tiskarny.
--
Petr Vones, amatersky programator
Jak zjistit, ze jsem na poslednim zaznamu datasetu
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:15:21
Pavel Bocek wrote:
> poradi nekdo, jak zjistit, jestli aktualni zaznam tabulky je ten posledni?
> Potreboval bych neco podobneho jako je EOF, ale aby se nastavil
> *vzdy* kdyz prejdu na posledni radek datasetu.
Ahoj,
Nevim jestli je to presne ono, ale slo by to (ponekud nehezky) udelat
takhle. Ma to vsak mala omezeni, napriklad to nemuzes dat do udalosti
TDataSet.Before/AfterScroll a podobne.
function IsLastRecord(DS: TDataSet): Boolean;
var
BM: TBookMark;
begin
with DS do
if (not Active) or Bof or Eof then Result := False else
if IsSequenced then Result := (RecNo = RecordCount) else
begin
BM := GetBookmark;
DisableControls;
try
Next;
Result := Eof;
GotoBookmark(BM);
finally
EnableControls;
FreeBookmark(BM);
end;
end;
end;
--
Petr Vones, amatersky programator
VCL a ti druzi (Was: Grid was:Pristup k datum, Del
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:15:53
Vaclav Krmela wrote:
> Kdyz uz tak nadavame na VCL, nikdo nas preci nenuti ji pouzivat.
> Pomoci Delphi se daji psat i programy nepouzivajici VCL.
> Dokonce takove programy budou mnohem mensi (myslim velikost EXE)
> a rychlejsi.
Ahoj,
To je sice pravda a uz se to tu nespocetnekrat probiralo, jenze zatim neni
pro Delphi (presneji ObjectPascal) zadna dalsi alternativni knihovna (snad
s vyjimkou XCL). Samozrejme ze lze psat jednoduche aplikace primo ve Win32
API (sam jsem to delal), ale pomer vykon/cena ci spise vysledek/cas je asi
ne prilis presvedcivy. Stale totiz chybi nastroj pro tvorbu resourcu, jenz
pri vyvoji na urovni API predstavuji vizualni navrh (Delphi5 sice obsahuje
na CD Resource Workshop, ale neni bohuzel nejaktualnejsi).
--
Petr Vones, amatersky programator
Form Stay on top
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:16:21
Mirek Junek wrote:
> Panove, nemuzu si zaboha vzpomenout, jak dostat formular (a udrzet ho tam) i
> nad okna ostatnich aplikaci.
Ahoj,
Nastav u neho vlastnost FormStyle na fsStayOnTop.
--
Petr Vones, amatersky programator
Kylix (Was: D5 - ano ci ne ?)
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:16:06
Pavel Cisar wrote:
> > Naftarskou lobby zde zastupuje Microsoft
> > a ropou jsou jeho Windows (dale jen Ropaci) :-)
>
> Pokud bude Kylix alespon tak dobry jako D1, pak se mozna dockame jeste
> zajimavych casu :o)
Rozhodne to prispeje k vetsi rozmanitosti (a jeste bourlivejsim diskusim
na vecne tema ktery OS je ten lepsi :-) Ale s tim srovnanim s D1, jen ne
16ti bitovy ! :-)
--
Petr Vones, amatersky programator
Memo a String
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:16:17
Bene� Jaroslav wrote:
> Potreboval bych nejak jednoduse ulozit radky z memo do stringu a naopak.
> Existuje nejake instantni reseni?
Ahoj,
V 32 bit Delphi to neni problem, ale z diskuze vyslo najevo, ze jsi to
chtel pro D1 (brrrr, 64k segmenty, jeste ze je to uz pryc :-). Jedna z
moznosti je ulozit data do memory streamu pomoci TStrings.SaveToStream
a pak zase zpetne nahrat.
--
Petr Vones, amatersky programator
Grid was:Pristup k datum, Delphree a vubec
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:26:33
Pavel Cisar wrote:
> He,he. Prave takovou podobnou obludu jsem pred casem programoval :o)
Takze uz mas timto vlastne dost zkusenosti, ktere by jsi mohl vyuzit prave
pri novem gridu :-)
> > Proc TWinControl? Proc ne TControl?
> > A vubec. Moje zkusenost je takova, ze je lepsi
> > a hlavne 100 krat jednodussi
> > naucit grid nativne ruzne druhy editace (Edit, SpinEdit, Check,
> Presne to je i moje zkusenost. Lepsi jeden dobre napsany (a
> zamenitelny/upravitelny) InplaceEdit nez zobrazovat a kocirovat potomky
> TWinControlu. To uz radsi pujdu pect housky :o)
Nezbyva nez souhlasit, urcite je snazsi, lepsi, prehlednejsi napsat vice
InplaceEditoru, ale tusim ze zrovna GxBDGrid umi vlozit temer jakykoliv
TWinControl. Prirovnal bych to ke vztahu OLE DB a ODBC, pokud existuje
pro danou situaci OLE DB Provider (tedy vhodny InplaceEditor) je rozhodne
lepsi jej pouzit, ale v nouzi se da udelat i napojeni pres ODBC (tedy
jakysi kontainer pro obecny Control).
--
Petr Vones, amatersky programator
Zobrazeni textu na monitoru a tisk
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 14.12.1999 23:28:51
Vaclav Krmela wrote:
> Sirka pismen se da jednoduse zjistit pomoci TextWidth.
> Jde o to zvolit si urcite zarizeni s konkretnim DPI jako referencni
> a potom zajistit, aby na ostatnich zarizenich byla dodrzena
> prima umernost mezi pozici jednotlivych pismen na referencnim
> zarizeni a hodnotou DPI na aktualnim zarizeni.
Ahoj,
Jen tak naokraj. S tiskem jsem nikdy moc do detailu nedelal(vetsinou stacil
QuickReport, i pro nedatabazove aplikace), ale co pouziti mapovacich rezimu
ktere Windows nabizeji? Kdysi jsem s tim neco zkousel a tusim ze s TrueType
fonty nebyly vysledky uplne spatne.
--
Petr Vones, amatersky programator
Grid was:Pristup k datum, Delphree a vubec
[*] Erik Salaj <winsoft(zv)napri.sk> - 14.12.1999 23:52:49
> Jaky je rozdil mezi "normalnim" a alternativnim ? Me pripada "normalni"
vse,
> co je dostatecne opodstatnene.
Rozdiel neviem, pretoze pojem "alternativny" si zaviedol Ty a nie je mi
celkom
jasne, co tym myslis. Dokazem Ti povedat, co je to "normalny" pristup:
bezny,
obvykly, doporuceny pristup.
> > Ano, zalezi ale, co rozumies pod SW komponentom. SW komponent ako si ho
ja
> > predstavujem s Delphi nenapises.
>
> Huh? A jak si ho tedy predstavujes, a v cem se tedy takovy sw komponent da
> napsat ?
Ako si Ty predstavujes SW komponent a v com sa da napisat? Mozno mas lepsiu
predstavu ako ja a pouzitelnu s Delphi. Ja som tu uz x-krat spominal ake
vlastnosti ma mat dobry software a podla toho ma vyzerat aj SW komponent.
Je mi takmer jedno aka syntax sa pouzije pre jeho definiciu (aky jazyk),
ak umozni taketo vlastnosti dosiahnut.
> ??? A co treba XCL, to je vosk ? Neni pravda, ze musis pouzit VCL, to
totiz
> vubec nemusis. Jenze tobe jde asi o to, ze nemas X ruznych alternativnich
> knihoven dodavanych s Delphi, ze ?
Nie, vadi mi to, ze nemozem vytvorit alternativu ku komponentom VCL. Inu
ako VCL komponentovu technologiu Delphi neposkytuje. Nemam
skratka moznost pouzivat komponenty (to je to podstatne, co robi z Delphi
RAD)
bez VCL. Netvrdim, ze koli tomu je Delphi zle, alebo ze nie su na to dovody.
Ale mam za to, ze takato moznost by mohla byt dost uzitocna. Ja si som
chcel Delphi vidiet trochu univerzalnejsie pouzitelne (minimalne tak, ako je
C++),
povedzme hoci i na pisanie driverov do Windowsu, atd. Teraz nie je
podstatne,
ze by bolo potrebne prelozit aj nejake headre z DDK k tomu, ide mi o
princip.
> > Aj samotne vyvojove prostredie
> > Delphi by tiez mohlo byt daleko otvorenejsie (napr. moznost OLE
> Automation).
>
> A OTA ti nestaci ? BTW, automation scripting pro Delphi IDE existuje a je
> zdarma. No ovsem, na CD s Delphi ho nenajdes. Ale to je problem ?
Ale ja si predsa len myslim, ze OLE Automation je taka zakladna vec,
ze jedno seriozne vyvojove prostredie by to malo automaticky podporovat.
Este dobre, ze povedzme taky linker predsa len je na tom CD s Delphi ;-)
> Osobne se vyhybam tomu pouzit jakoukoliv knihovnu, od ktere nemam zdrojak.
> BTW, vzdycky se muzes do zdrojaku nedivat :o) Jinak samozrejme neni
pravda,
> ze zdrojak VCL je zakladni a nevyhnutelna dokumentace. Rada lidi v Delphi
> vesele programuje a do zdroju VCL se vzivote nepodivala (a casto ho ani
> nema).
Myslel som pisanie komponentov, nie pouzivanie komponentov. Do zdrojakov
ma nikto nenuti sa pozerat, ale bez nich komponent nenapisem, takze mam
na vyber, vsak?
> > Nad takouto kniznicou sa potom buduju dalsie komponenty
> > sposobom, ktory len velmi vzdialene pripomina programovanie.
>
> Ha! A co to tedy je ? Pestovani konopi ? BTW, pokud nekdo napise spatny
Asi mame rozdielnu predstavu o tom, co je to pisanie softwaru.
> komponent, je to vzdy chyba spatne VCL ?
Nemyslim, ze vzdy, ale moze to byt aj chyba VCL.
> > OP je vcelku dobry jazyk ale VCL je zle navrhnute.
>
> > Problemom je aj to,
> > ze VCL je prilis tesne naviazana na OP a nie je mozne sa jej teda
zbavit.
>
> VCL je pouzivana toliko v IDE Delphi. S OP nema nic spolecneho, krom toho
ze
> je napsana v OP :o) Ostatne MFC taky neni v Prologu. VCL se muzes zbavit
> velice snadno, a rada lidi ji nepouziva vubec, pripadne jen na GUI
aplikace.
Jasne, OP nema nic spolocne s VCL ;-). Klucove slova ako published, stored a
pod.
su urcite pouzitelne aj mimo VCL. Ukas mi nejaky taky priklad ich pouzitia.
> > Ide nielen o jazyk ale aj o "programovaci styl". Ale samozrejme je
> vyhodne,
> > ak jazyk podporuje dostatocnu uroven abstrakcie a umozni tak
> programatorovi
> > sustredit sa co najviac na samotne riesenie problemu.
>
> Coz OP umoznuje a podporuje velmi dobre.
Mne sa zda, ze v niecom ano a v niecom nie. Nemam pocit, ze by to uz
nemohlo byt lepsie.
> Ok, o to tu ale preci neslo. Jde o to, ze k dobremu navrhu a spravnemu
> rozhodnuti je nutne mit dostatek informaci. Nekdy ten "dostatek" znamena
jit
> dost "hluboko" (a numusi se jedna jen o hloubky VCL, ale treba WinAPI, HW
> apod.).
Ide o to, ze je dost podstatny rozdiel medzi slovami niekedy a vzdy:
Ja si nemyslim, ze ak mas vela informacii pri navrhu, tak navrh bude lepsi.
Dolezita je skor kvalita informacii a ich spravne pouzivanie. Ja ked mam
spustu informacii o procesore, tak mozem navrhnut a napisat povedzme
optimalizovany program v assembleri. Ale je moj navrh lepsi, nez keby
som taketo informacie nemal? Samotny program zrejme bude nejako
optimalizovany vzhladom k danym informaciam (povedzme maly, rychly).
Ale o navrhu by som urcite nepovedal, ze je lepsi. Pretoze najdem
x-pripadov,
kedy tieto informacie su mi k nicomu (napr. o tyzden budem chcet, aby to
bezalo na inom procesore, alebo sa zmeni struktura udajov, alebo treba
dorobit dalsiu funkciu). A moze sa lahko stat, ze taketo superinformacie,
s ktorymi som vytvoril superaplikaciu su mi zrazu bud k nicomu, alebo
su naopak zrazu brzdou (a zmeny softwaru so velmi caste a problem
s jeho problematickou udrzbou velmi dobre znamy). Takze to,
ze NIEKEDY treba urcite specificke informacie alebo specialne postupy,
neznamena, ze sa treba nimi VZDY ci uz pri navrhu alebo implementacii
aj riadit a v co najvecsej miere vyuzivat/zneuzivat.
Erik Salaj
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Erik Salaj <winsoft(zv)napri.sk> - 14.12.1999 23:53:04
> Rozhodne neni trideni jako trideni!
Ved som nepovedal, ze je. Len to, ze rozne algorimy triedenia maju
urcitu spolocnu vlastnost (taku, ze dokazu triedit udaje ;-). Tato
spolocna vlastnost neznamena, ze existuje len jeden sposob ako
ju dosiahnut. Podstatne je, ze tato vlastnost je u vsetkych algoritmov
triedenia ROVNAKA. A teraz Ty, ked chces riesit nejaky problem,
tak moze byt pre Teba vyhodne pouzivat v rieseni Tvojho problemu
prave taketo abstraktne triedenie. Napr. preto, ze nevies na akom
pocitaci to pobezi, a na niektorom pocitaci moze byt vyhodnejsi
nejaky triediaci algoritmus a na inom iny algoritmus (ale mozu byt aj
ine dovody). Dalej si mozes implementovat rozne algoritmy
triedenia a postacuje Ti vybrat konkretny algoritmus az tesne
pred jeho pouzitim (povedzme hoci aj v RunTime). A ked prides
na nejaky lepsi algoritmus, tak mas moznost si ho implementovat
a pouzit, pricom Tvoja aplikacia sa vobec nezmeni. Tvoja aplikacia
jednoducho nepotrebuje vediet (a byt ZAVISLA), aky konkretny
algoritmus je vyhodne pouzit v nejakej konkretnej situacii ale moze
od toho abstrahovat a byt NEZAVISLA. A to je ten velmi velmi
podstatny prinos, ze si schopny specifikovat podstatne vlastnosti
(a to raz a nie stokrat na x miestach v zdrojakoch), formalne ich
povedzme popisat a pouzivat ich pri pisani aplikacie (pri pisani
aplikacie teda automaticky robis iba s tymito podstatnymi vecami)
a az ked je to nevyhnutne (a vtedy uz zvycajne aj mas dostatok
informacii) urobis rozhodnutie o pouziti konkretnej implementacie.
Erik Salaj
Form Stay on top
[*] Mirek Junek <mjunek(zv)uo.fairnet(tec)cz> - 15.12.1999 00:07:29
To jsem udelal, ale ostatni aplikace mi ho prekryji (neni to hlavni form
aplikace)
Mirek
----- Original Message -----
From: Petr Vones <pvones(zv)mbox.vol(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Tuesday, December 14, 1999 11:16 PM
Subject: Re: Form Stay on top
| Mirek Junek wrote:
| > Panove, nemuzu si zaboha vzpomenout, jak dostat formular (a udrzet ho
tam) i
| > nad okna ostatnich aplikaci.
|
| Ahoj,
|
| Nastav u neho vlastnost FormStyle na fsStayOnTop.
|
| --
|
| Petr Vones, amatersky programator
|
|
ulozene procedury a upgrade na MSSQL7
[*] Ladislav Nagy <lnag7384(zv)mail.kolej.mff.cuni(tec)cz> - 15.12.1999 00:38:55
My jsme meli podobny problem,
ukazalo se, ze je to tim, ze kdyz vybiras u TStoredProc nazev ulozene
procedury z comboboxu (u MS SQL 6.5), tak si tam Delphi dosadi <jmenoSP>;1
Zkus ;1 umazat u vsech visualnich TStoredPrc komponent. Melo by to pomoci.
S pozdravem, Ladislav Nagy
===========================================
Mgr. Ladislav Nagy
MFF UK & Baader Computer spol. s r.o.
tel. : 02 / 24941962, -63, -65 fax : -64
lnag7384(zv)mail.kolej.mff.cuni(tec)cz , Ladislav.Nagy(zv)bcpraha(tec)cz
ICQ: 40948953
> pemasoft(zv)atlas(tec)cz wrote:
>
> > Po upgradu serveru MS SQL 6.5 na verzi 7.0 s SP1 v nasem programu
> > nechodi ulozene procedury.
> >
> > Kdyz ji zavolam rucne procedura se spusti ale v programu to hlasi 'can
> > not find store procedure .....'.
> >
> > Nevite co s tim mam udelat ????
>
> Opustit BDE a zkusit treba ADO...
> Ja vim, dobra rada nad zlato. :-)
>
> S pozdravem
>
> Zbysek Hlinka
> E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
> Phones: 02/795 29 56; GSM: 0603 551 282
> Krystofova 1016, 149 00 Praha 4
> CZ
Sdilena konfigurace
[*] Jan Naiser <tua(zv)ltm(tec)cz> - 15.12.1999 03:11:18
Ahoj,
pred par lety jsem cosi podobneho resil ve starem dobrem BP. Delal
jsem to tak, ze jsem si pri zapisu nebo cteni takovehoto souboru
stanovil periodu pristupu po selhani R/W operace a pocet testu. Tedy
srozumitelneji: pokusil jsem se do souboru zapsat nebo z nej precist a
pokud byl zrovna obsazeny, tak jsem si nastavil nejaky priznak, ze ho
musim obtezovat a pocet pokusu, v kterych se o to pokusim a v
nastavenem intervalu (tehdy asi 3s) jsem ho (na pozadi) pravidelne
otravoval. Pokud to vyslo, vse jsem samozrejme vynuloval. Pokud to po
stanovenem poctu testu nevyslo, neotravoval jsem obsluhu dialogem, ale
zapsal jsem chybu do jednoho z oken, kde jsem "kupil" nekriticke
hlasky podobneho charakteru a zaroven je zapisoval do souboru pro
pozdejsi kontrolu. Pokud to nevyslo takto napr. 5 po sobe nebo v
nejakem definovanem case, tak jsem nakonec preci jen tu obsluhu
vzbudil, aby zjistili, co se vlastne deje.
Honza Naiser.
----- P�vodn� zpr�va -----
Od: Bene� Jaroslav <JBenes(zv)cpoj(tec)cz>
Komu: <delphi-l(zv)fwd(tec)cz>
Odesl�no: 14. prosince 1999 9:48
P�edm�t: Sdilena konfigurace
> Ahoj,
>
> mam problem s verejnym typovym konfiguracnim souborem, ktery je
ulozen na
> sitovem (vzdalenem) disku, u exe. Mam problem s neustalym hlasenim
ze
> pristup byl odmitnut (uzivatel musi odklepnout). Obvykle je program
spusten
> na cca 30 stanicich (ale muze byt i na vice) a vsechny instance neco
ctou a
> zapisuji do tohoto souboru, ktery je spolecny. Jak bych mel resit
konflikt
> pri zapisu do tohoto souboru (s predpokladem ze se sejde vice nez
jeden
> pozadavek na zapis). Psano v D2, bezi pod ruznymi Windows
(95/98/NT), soubor
> je bezny typovy vel. cca 30 KB.
>
> Dekuji
> Jaro B.
Tisk
[*] k.machac(zv)iol(tec)cz - 15.12.1999 5:58:36
V priloze mas kod pro tisky textu a tabulek na tiskarne. Neni to asi presne
to co potrebujes, ale da se z toho leccos okoukat co se tyce tisku primo na
tiskarnu.
Tento kod je ze stranek UDDF a ja ho uspesne pozivam pro tisky jakychkoliv
Gridu, at uz stringovych, tak databazovych.
Tento kratky kod resi problemy s ruznou velikosti a typem pisma, tiskne
zapati stranky, cisluje stranky, odstrankuje podle pouziteho papiru a
orientace stranky a hlavne umi tisknout ve sloupcich, tak jak je vidite v
tabulkach, akorat je potreba si pohrat s rozmistenim sloupcu na strance.
Takze doporucuji vsem, kdo potrebuji takoveto tisky, aby se na to podivali,
nez sahnou po programy nafukujici komponente typu QReport.
S pozdravem
Karel Machac
kmachac(zv)seznam(tec)cz
--- Puvodni dopis ----------------------------------------------------------
Datum: 07.12.1999 06:24
Od: Petr Vobornik <vobornik(zv)ssakhk(tec)cz>
Pro: <delphi-l(zv)fwd(tec)cz>
Vec: Tisk
----------------------------------------------------------------------------
>V Delphi tisknu text timto zpusobem :
>
>uses
> Printers;
>var
> FPrn: System.Text;
>begin
> AssignPrn(FPrn);
> Rewrite(FPrn);
> Writeln(FPrn, 'Nazdar!');
> CloseFile(FPrn);
>end;
>
>Jenze jak to mam udelat, aby to tisklo
>1) text zarovnany do boku
>2) zarovnane sloupce
>3) vycenrovany text
>(a to jeste hodlam menit fonty)
>
>???
>
>
>Pitr - Petr Vobornik
>MIKMIK company
>vobornik(zv)ssakhk(tec)cz
>ICQ# 23132120
>www.ssakhk(tec)cz/home/vobornik/
>
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 15.12.1999 07:38:36
> -----P�vodn� zpr�va-----
> Od: Erik Salaj [mailto:winsoft(zv)napri.sk]
> Odesl�no: 14. prosince 1999 21:18
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: Re: Pristup k datum, Delphree a vubec was: D5 - ano ci ne ?
>
> OK, tak ja nadefinujem tuto relaciu pre Integer typ:
>
> function IntMensiNeboRovno(a, b: Integer): Boolean;
> begin
> Result := a <= b;
> end;
>
> a aj pre Double typ:
>
> function DoubleMensiNeboRovno(a, b: Double): Boolean;
> begin
> Result := a <= b;
> end;
>
> Ako bude vyzerat v Delphi obecna implementacia triedenia
> pre obidva a samozrejme aj dalsie typy, pre ktore takuto
> relaciu nadefinujem?
>
> Erik Salaj
>
asi to nebude syntakticky spravne, nejsem zase tak zbehly v Delphi
a nemam cas hledat v Delphi helpu, jak konkretne realizovat
jednotlive kroky. Myslenka ale snad bude zrejma i z takoveho neumeleho
popisu. Mimochodem takovy pristup funguje, mam to naimplementovano
v PowerBuilderu, jenom s tim rozdilem, ze je to tridici objekt a
ruznost porovnavacich metod pro datove typy je resena dedicnosti,
protoze tam nelze predavat proceduru jako parametr.
Tridim s tim stringy a svoje struktury (recordy).
Predavane pole tam mam typu Any, v Delphi je tusim mozne pouzit Variant.
type
TMensiNeboRovnoProc = function (a,b : Variant): boolean;
procedure Trid (leq: TMensiNeboRovnoProc; var SArray []: Variant);
procedure Prohod(i, j: integer);
var
TempVar: Variant;
begin
TempVar := SArray[i];
SArray[i] := SArray[j];
SArray[j] := TempVar;
end
begin
//ruzne opicky pro tridici algoritmus
...
//Test a prohozeni:
if (not leq(SArray[i], SArray[j])) then Prohod(i, j);
...
end;
Jura
ADMIN: Jakou databazi doporucite ?
[*] Ren� Otisk - 15.12.1999 07:48:49
Hi,
Dalo by se to blize specifikovat jaka ktera na co a proc? Dik.
Sroub
> A jeste si dovolim malou poznamku - ne vsechno je vhodne
> na vsechno. Kazdy delame jiny typ aplikace a kazdy mame
> jine podminky. Takze je-li jeden typ databaze pro Vas
> nepouzitelny, neznamena to, ze nekdo jiny s nim neudela
> nadherne fungujici program. Ja sam pouzivam 3 druhy
> databazi, konkretne Sybase Adaptive Server Anywhere,
> MSDE a FlashFiler - kazdy ovsem pro jine aplikace. Verte
> mi, ze ani jedna z techto databazi nemuze zastoupit
> zbyle dve. Kazda ma neco, proste neco, proc se vyplati
> pouzivat a umet vsechny tri...
Databaze a sireni + par drobnosti III - Jak to del
[*] Ren� Otisk - 15.12.1999 07:52:22
Hi,
V DBD Adminu mas moznost si nastavit alias, tzn.: zaloz novy, pojmenuj ho Test a nastav cestu k databazim.
Sroub
Zdravim !!!
Tak jsem neco zkusil na druhym PC a pise mi to chybovou hlasku:
Exception EDBEngineError in module PROJECT1.EXE at 0007A202.
Unknown database.
Alias: Test.
Instaloval jsem to pomoci InstallShieldu dodavaneho s Delphi. BDE engine (jen ovladace Paradoxu) jsem instaloval do slozky windows a databazi s programem do slozky: C:\Program Files\Gamemaker\Test
Sice jsem PC nerestartoval, ale to podle me nevadi. Mam nastavit cestu k databazi nejak v programu nebo nejak nastavit cestu BDE ? Jak to delate vy ?
Predem dik za radu. Cau Martin.
/======================\
/ pesek.martin(zv)mymail(tec)cz \
/-------------------------------------------------\
<---<([ Martin Pesek ] [ Gamemaker ])>--->
\-------------------------------------------------/
\ www.mujweb(tec)cz/www/gusman /
\======================/
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 07:58:12
Polak Jiri wrote:
> S obecnym typem trideni pracovat nemuze, protoze neexistuje
> porovnavaci operator. To neni zadny problem, to je fakt.
> Pokud znas porovnavaci funkci obecne libovolnych typu a
> dokazes ji napsat, tak s jejim vyuzitim lze napsat tridici
> funkci (nebo objekt ci komponentu, co kdo chce), ktera
> bude pracovat s obecne libovolnymi datovymi typy.
>
> Takze to neni problem Delphi ani jineho nastroje, ze nelze tridit
> obecne typy, ale nekoho, kdo nadefinuje relaci je mensi nebo rovno
> (<=)
To by nemusel byt problem pri pouziti pretezovani funkci. Je ovsem
otazka, nakolik by to bylo efektivni.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
trideni was: D5 - ano ci ne ?
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 07:58:12
Pavel Cisar wrote:
> From: Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz>
> >Jinak diskuse o tom, jestli je lepsi tridit na serveru nebo na
> >klientovi mi pripadaji trochu stupidni. Oboje ma sve vyhody i
> >nevyhody.
>
> Proc ? Diskutuje zde sve zkusenosti s obojim, a prave ty prednosti a
> nevyhody obou (resp. mnoha ruznych) postupu. Myslim ze si z toho mnoho
> lidi muze ledacos odnest (vcetne nas). Netreba vecne objevovat kolo.
Pridavam se. I ja se domnivam, ze hodne lidi se snazi cosi
namastit tou nejpohodlnejsi cestou, ale zpravidla take nejmene
efektivni.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
Form Stay on top
[*] Miroslav Mare� <sm(zv)sct(tec)cz> - 15.12.1999 08:12:21
Nazdarek,
ja to resim takhle:
if FormStyle = fsStayOnTop then
begin
SetWindowLong(Handle, GWL_HWNDPARENT, 0);
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height,
SWP_NOMOVE or SWP_NOSIZE);
end;
Davam to do udalosti OnActivate formulare.
Mirek
----- Original Message -----
From: Mirek Junek <mjunek(zv)uo.fairnet(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Wednesday, December 15, 1999 12:07 AM
Subject: Re: Form Stay on top
> To jsem udelal, ale ostatni aplikace mi ho prekryji (neni to hlavni form
> aplikace)
>
> Mirek
trideni was: D5 - ano ci ne ?
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 15.12.1999 08:16:31
> -----P�vodn� zpr�va-----
> Od: Pavel Cisar [mailto:pcisar(zv)aktis(tec)cz]
> Odesl�no: 14. prosince 1999 16:30
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: Re:trideni was: D5 - ano ci ne ?
>
>
> Haj hou!
>
> From: Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz>
> >Jinak diskuse o tom, jestli je lepsi tridit na serveru nebo
> na klientovi mi
> >pripadaji trochu stupidni. Oboje ma sve vyhody i nevyhody.
>
> Proc ? Diskutuje zde sve zkusenosti s obojim, a prave ty prednosti a
> nevyhody obou (resp. mnoha ruznych) postupu. Myslim ze si z
> toho mnoho lidi
> muze ledacos odnest (vcetne nas). Netreba vecne objevovat kolo.
Samozrejme, diskuse jsou uzitecne, ale kdyz zacnou padat argumenty
jako "Trideni na serveru je jedna z nejnarocnejsich operaci pro vsechny SQL
servery.", tak to zacne byt stupidni. To totiz neni pravda, je to pravda
pouze v urcitych
pripadech, a i v tech pripadech, kdy to je pravda, tato skutecnost sama o
sobe neni
argumentem, ze by trideni na klientovi bylo v porovnani s tridenim na
serveru vyhodnejsi.
Uvedena citovana veta je pravdiva napr. v pripade, kdyz se provadi select
velkeho mnozstvi dat.
V tom pripade ale setrideni techto dat na klientovi bude casove jeste
narocnejsi, protoze pred
setridenim musi vsechna data docestovat az na klienta a potom trideni toho
klienta
zatizi vyrazneji, protoze zpravidla neni tak nadupany jako server, musi
cachovat, atd.
Pri setrideni na serveru je v mnoha pripadech pravdepodobne, ze klientovi
bude
stacit prvnich par zaznamu z celkovych setridenych mnoha zaznamu, takze
vetsi zatizeni serveru se vyplati oproti zatizeni site pri prenosu mnoha
dat. To je ale jenom
priklad, netvrdim, ze to plati obecne.
Vsechno to jsou ruzne duvody pro a proti, ktera je nutno brat v uvahu a
optimalni reseni
musi byt stanoveno v kazde konkretni situaci zvlast. Nelze kategoricky
rici, co je lepsi a uz vubec nelze argumentovat zatizenim serveru (bez
ohledu na ostatni
pozitiva a negativa). Od toho prece databazove servery jsou, aby provadely
narocnou praci
a ulehcili tak svemu okoli.
Jura
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 15.12.1999 08:37:25
> -----P�vodn� zpr�va-----
> Od: Zbysek Hlinka [mailto:zhlinka(zv)login(tec)cz]
> Odesl�no: 15. prosince 1999 7:58
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: RE: Pristup k datum, Delphree a vubec was: D5 - ano ci ne ?
>
> > Takze to neni problem Delphi ani jineho nastroje, ze nelze tridit
> > obecne typy, ale nekoho, kdo nadefinuje relaci je mensi nebo rovno
> > (<=)
>
> To by nemusel byt problem pri pouziti pretezovani funkci. Je ovsem
> otazka, nakolik by to bylo efektivni.
Souhlasim, z pohledu efektivity behu aplikace (myslime tim asi oba rychlost)
je snaha vyresit cokoliv obecne malo efektivni v porovnanim s resenim
sitym na miru konkretnimu problemu. Nejedna se pouze o trideni.
Napr. z tohoto pohledu je neefektivni i pouzivani OOP, ktere se zdrzuje
napr. spravou VMT (virtual method table). Z pohledu efektivity navrhu
aplikace
muze byt situace trochu jina a z pohledu tymoveho vyvoje aplikace jeste
uplne jina. Vzdy je potreba zvolit spravne kriterium pri volbe pouziti
technologie.
Univerzalni metody jsou dobre z hlediska chybovosti aplikace. Napr.
pouziju-li
jednou odladeny tridici algoritmus, vyvaruji se mnoha chyb a vyvoj aplikace
jde rychle kupredu. Rychleji, nez kdyz se snazim zaroven optimalizovat.
Zaroven vznika mnoho mist, ktera lze jednoduse optimalizovat predelanim
na specialni reseni, z nich vsak vetsinu nebude pravdepodobne treba
optimalizovat
(malo volana funkce, nebo funkce, ktera trva i bez optimalizace velmi
kratce, atd...).
Takze mi pripada takovyto postup velmi vhodny: je dobre pouzivat osvedcene
postupy
a az mam hotovou spravne fungujici aplikaci, mohu hledat mista, ktera by sla
zefektivnit.
To uz jsem se asi dostal daleko od tematu, koncim.
Jura
Jakou databazi doporucite ?
[*] Pavel Medek <Pavel.Medek(zv)talema(tec)cz> - 15.12.1999 09:12:33
----- Original Message ----- >
> 2.) Problemy byly se spatnou komponentou v Delphi a s problemy okolo
TCP/IP
> socketu na W9x/NT. Pokud vim, tak od verze D5, Win98/NT4sp3 a IB5.5 je vse
> ok.
Snad bych jen doplnil, ze vse je u IB ok od verze 5.6 verze 5.5 mela par
chyb, ktere
mohly zneprijemnovat zivot, staci se podivat do fora IB. Update na 5.6 z 5.5
je pro NT zdarma.
Pavel
ADMIN: Jakou databazi doporucite ?
[*] Jakub Mart�nek <listbox(zv)vakmb(tec)cz> - 15.12.1999 09:26:48
Ja pouzivam soucasne MSSQL7, MSDE, Paradox podle potreby.
MSSQL7 : hlavni uloziste dat a pro vetsi aplikace s vice jak 3 soucasne
pracujicimi on-line klienty.
Duvodem je spolehlivost, dostupnost, vykonost v sitovem prostredi a
!zalohovatelnost!.
MSDE : jako lokalni databaze u aplikaci ridicich technologicke procesy, u
pocitacu pracujicich s vetsimi objemy dat bez on-line pristupu na sit.
Opet je duvodem spolehlivost, robusnost a hlavne moznost prime replikace
na hlavni SQL server.
S vyhodou se da pouzit pro klienty Accessu.
Paradox : Pro lokalni jednouzivatelske agendy, jako zalozni pri
nedostupnosti site (napr. vystupy z prum.mericich karet se standartne
ukladaji na MSSQL, pro rychly on-line pristup se jeste ukladaji do
Paradoxu a take prave pri nedostupnosti MSSQL. Jde radove o 10- az 100-
tisic zaznamu casto vyhledavanych pro zobrazeni v grafech a tam je Paradox
rychlejsi.
Vyhodou jsou principielni vlastnosti souborovych databazi - hlavne
rychlost a pro nekoho i jednoducha dostupnost i mimo WIN a na slabsich
pocitacich.
Velkou nevyhodou je vysoka nachylnost k pozkozeni (rebuild 150MB tabulky
netrva zrovna par minut).
> -----Original Message-----
> From: owner-delphi-l(zv)fwd(tec)cz [mailto:owner-delphi-l(zv)fwd(tec)cz]On
> Behalf Of Ren� Otisk
> Sent: Wednesday, December 15, 1999 7:49 AM
> To: delphi-l(zv)fwd(tec)cz
> Subject: Re: ADMIN: Jakou databazi doporucite ?
>
> Hi,
> Dalo by se to blize specifikovat jaka ktera na co a proc? Dik.
> Sroub
>
>
> > A jeste si dovolim malou poznamku - ne vsechno je vhodne
> > na vsechno. Kazdy delame jiny typ aplikace a kazdy mame
> > jine podminky. Takze je-li jeden typ databaze pro Vas
> > nepouzitelny, neznamena to, ze nekdo jiny s nim neudela
> > nadherne fungujici program. Ja sam pouzivam 3 druhy
> > databazi, konkretne Sybase Adaptive Server Anywhere,
> > MSDE a FlashFiler - kazdy ovsem pro jine aplikace. Verte
> > mi, ze ani jedna z techto databazi nemuze zastoupit
> > zbyle dve. Kazda ma neco, proste neco, proc se vyplati
> > pouzivat a umet vsechny tri...
>
Jakou databazi doporucite ?
[*] Jaroslav Nadhera <nadhera(zv)csh(tec)cz> - 15.12.1999 09:47:08
> Jinak pro tvoji informaci o FF:
> # Distribuce s FF je naprosto nekonfliktni (zadne registry, ini
soubory,...)
> # Siris pouze svuj exe soubor, popr. na siti jeden exe jako databazovy
> server a pokud je sam nevytvaris - tak tabulky.
> # Dobre funguje na siti i lokalne.
> # Jedna tabulka se vsim potrebnym v jednom souboru (max 4GB).
> # Funguje i jako read-only (jsme vyrobci jazykoveho software a v tabulce
> mame ulozeny fraze vcetne zvukoveho doprovodu - vse muzes spoustet bez
> instalace jakekoli instalace na disk - pouze po zasunuti cedecka) ;-)))
> # podpora ze strany Petr Zahradnika i TurboPower je vyborna, nerkuli jeste
> lepsi
> # vyborna porizovaci cena (zakaznik za sireni stroje NEPLATI NIC - tzn. do
> ceny tveho sw se nepromitaji dalsi naklady - muzes mit vetsi zisk nebo
> levnejsi software - vyber si sam)
Ale neumi SQL dotazy.
J. N�dhera
CSH spol. s r.o.
Velflikova 10, 160 00 Praha 6
tel: 02/2431 2344-5, fax: 02/652 28 92
Nedbalova 14, 701 00 Ostrava
tel: 069/663 56 87
e-mail: nadhera(zv)csh(tec)cz WWW: http://www.csh(tec)cz
D5 - ano ci ne ?
[*] Robert Kindl <rob(zv)exec(tec)cz> - 15.12.1999 10:00:25
> > Jak chces pretridit data na clientu, kdyz je nemas nactena v pameti.
> > Tohle je zasadni rozpor prechozich dvou odpovedi a proto je to jak
> > jsem rekl. Trideni by mel delat server. BTW delam to pretrideni tak
> > jak jsi rekl, zavru dataset, preformuluji select a znovu ho otevru.
> > Funguje to skvele. Pravdu muzes mit jen tehdy pokud by query trvala
> > rekneme 100 sekund (je hodne slozita) a vracela by rekneme 10 zaznamu.
> > Pak je asi lepsi to pretridit na clientu. Takze rekneme, ze
> > univerzalni reseni neni, ale radove castejsi je podle mne pripad kdy
> > by to mel delat server.
>
> Nejsem si jist, zda jsi pochopil, co jsem chtel rict. Kazdopadne
> zastavam nazor, ze trideni by melo probihat tam, kde je to
> vyhodnejsi. Mejme napriklad dotaz pres tri tabulky, kde se
> kompletace provadi pres joiny. V tabulkach jsou desetitisice vet.
> Vysledkem jsou napriklad sloupce Jmeno, Prijmeni,
> Zamestnavatel, Vedouci, atp. Vysledkem vyberu (treba podle vyse
> platu) je rekneme 50 vet. Nad stejnymi daty potrebujes tridit podle
> jednotlivych sloupcu. V podobne situaci je dalsich 50 kolegu. V
> takovemto (a podobnych) pripade povazuji za silne nerozumne tridit
> zpusobem, ktery jsi tu popsal, protoze takto jsi na nejlepsi ceste
> pretizit server a brzdit praci tech chudaku na klientech.
Zbysku, Zbysku!
vzdyt presne toto pisu v odstavci na ktery odpovidas akorat,
ze ja jsem uvedl query vracejici 10 zaznamu (ty vracis 50).
> Kazdy dotaz na server vyvola na nem urcitou zatezovou spicku (jeji
> delka - casova - zavisi na mnozstvi dat, ktere je nutno zpracovat).
> Pokud se budes takto dotazovat casto, vysledek se brzy dostavi.
> :-) Kazdopadne ti doporucuji provest si zatezove testy, mozna
> budes prekvapen a ponekud prehodnotis sve stanovisko.
Podle mne bezny uzivatel neklika do headeru gridu jako silenec
aby co nejvice zatizil server.
Klikne tam tak jednou tydne a to jeste omylem :-)
Nejmene jednou se ta query otevrit musi.
Tudiz pokud ji server vrati jiz setridenou tak
usetrim cas na klientu potrebny k trideni a zatez serveru se nijak nezvysi.
A uz toho nechme...
> Dalsi problem nastava napriklad v situaci, kdy vysledkem je pouze
> prohlizeni vysledku dotazu. Vysledkem muze byt podle povahy
> napriklad nekolik desitek vet, a uzivatel nedela nasledujici
> ctvthodinu nic jineho, nez si je prohlizi, pripadne vytiskne. Pak
> program zavre a jde si po sve praci. Zde povazuji dokonce za
> nejrozumnejsi pripojit se k databazi, rychle data vycist na klienta a
> pak se zase od databaze odpojit (i tohle ovlivnuje zatizeni a
> rychlost serveru, nemluve o limitovanych licencich na server).
Jake licence? Co to sem motas? Je videt ze ti dochazi
argumenty kdyz se ohanis takovymi nesmysly...
> > > Nejde, a ani nevidim duvod, aby slo. Jiste, muze to mit sve
> > > nevyhody, zejmena kdyz nekdo chce pouzivat trebas DBEdit (brrrr,
> > > jeho pouziti prinasi vic problemu nez pohodli). Co se tyka Siney,
> > > tak ta je nastesti udelana tak, ze prevod je v podstate hrackou.
> > > Stravil jsem tim asi den, vcetne studia toho, co vlastne Sinea umi.
> > > Ted ladim uz jen detaily.
> >
> > Proc ne TDBEdit? Nad datasetem je zcela bez problemu nebo
> > resp. uplne stejne dobry jako TCustomMaskEdit jehoz je dedicem.
>
> DBEdit je dobry pro lokalni souborove databaze. Ale povazuji ho za
> naprosto nevhodny pro SQL databaze na siti. Proc:
>
> 1. Udrzuje otevreny dataset, i v dobe, kdy je to zcela zbytecne.
> 2. Vola metody Insert (ci Edit) a Post, ktere se museji vnitne (v
> BDE) tak jako tak prekladat do SQL prikazu.
> 3. Pokud jiny uzivatel zmeni stejna data driv, DBEdit umi pouze
> poznat zmenu a nedovoli data prepsat. Porizena data jsou tim
> padem ztracena, pokud je ovsem neprelejes do pomocnych
> promennych.
> 4. Operace s daty nad SQL databazi musi probihat prostrednictvim
> SQL prikazu, je tedy rozumnejsi si toto ovladat sam, nez to
> sverovat komponentam, jejichz vnitrni prace je nepruhledna a
> nedokumentovana. Chci-li tedy neco v databazi upravit, edituji data
> zasadne mimo DB komponenty, a pak volam bud ulozenou
> proceduru nebo sestavim sam prislusny SQL prikaz (ci spoustim
> transakci). Takto si snadno zajistim bezproblemovy chod
> programu, zjisteni nastalych zmen a moznost dodatecnych oprav.
Bud mluvis o necem jinem (nepletes si to s TTable?),
nebo jsi asi nikdy DBEdit nepouzil a meles
uplne nesmysly ktere jsi jen slysel.
V kazdem pripade tady nerozsiruj HLOUPOSTI!!!!!
Sorry, ale to co jsi tu napsal o DBEditu
opravdu neni ani trochu pravda.
Rob
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Robert Kindl <rob(zv)exec(tec)cz> - 15.12.1999 10:17:10
> asi to nebude syntakticky spravne, nejsem zase tak zbehly v Delphi
> a nemam cas hledat v Delphi helpu, jak konkretne realizovat
> jednotlive kroky. Myslenka ale snad bude zrejma i z takoveho neumeleho
> popisu. Mimochodem takovy pristup funguje, mam to naimplementovano
> v PowerBuilderu, jenom s tim rozdilem, ze je to tridici objekt a
> ruznost porovnavacich metod pro datove typy je resena dedicnosti,
> protoze tam nelze predavat proceduru jako parametr.
> Tridim s tim stringy a svoje struktury (recordy).
> Predavane pole tam mam typu Any, v Delphi je tusim mozne pouzit Variant.
> type
> TMensiNeboRovnoProc = function (a,b : Variant): boolean;
>
> procedure Trid (leq: TMensiNeboRovnoProc; var SArray []: Variant);
> procedure Prohod(i, j: integer);
> var
> TempVar: Variant;
> begin
> TempVar := SArray[i];
> SArray[i] := SArray[j];
> SArray[j] := TempVar;
> end
> begin
> file://ruzne opicky pro tridici algoritmus
> ...
> file://Test a prohozeni:
> if (not leq(SArray[i], SArray[j])) then Prohod(i, j);
> ...
> end;
> Jura
Je to jasne a pochopitelne.
A presne to je to proc je nekdy vhodnejsi implementovat si trideni znovu.
Napr. TList ho obsahuje a asi se nikdo nebude hadat,
ze je lepsi kdyz pro prohazovani pouziva pri prohozeni pointeru
v poli nez kdyz bych to pole musel konvertovat na varianty,
pak tridit a pak konvertovat zase zpatky.
Cele je to optimalizaci a protoze Delphi neni ani Eiffel ani Visual basic
tak optimalizace je veci programatora.
Rob
D5 - ano ci ne ?
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 15.12.1999 10:17:53
> -----P�vodn� zpr�va-----
> Od: Tomas Kouba [mailto:tomas(zv)neo(tec)cz]
> Odesl�no: 14. prosince 1999 17:21
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: RE: D5 - ano ci ne ?
>
>
> Zdravim,
>
> ja jsem asi neco zasadniho nepochopil. Pokud by se melo
> preferovat trideni u
> klienta (i kdyz je casto) v provozu C/S, tak to prece nutne musi byt
> nekolikrat pomalejsi. SQL stroj prece pouziva indexy, ktere klient v
> kurzorech nema k dispozici ?! Samozrejme pokud pocet radku ve
> vysledku je
> vice jak maly...
Trideni u klienta bych preferoval napr. v pripade, ze klient che tridit
nactena data opakovane podle ruznych kriterii. Ale ne kvuli zatezovani
serveru,
ale kvuli zatezovani vsech pri opakovanem prenosu dat na klienta.
Jinak mas pravdu, ze by to server mel zvladnout lepe a rychleji.
Jura
OLE objekt "Outlook"
[*] Tom�s Vesel�������+?n(��?r� - 15.12.1999 10:19:18
Nekda na netu myslim ze na DSP je unita k Outlooku.
Vesna
-----Original Message-----
From: Fryz, Zdenek <fryz(zv)dcb(tec)cz>
To: delphi-l(zv)fwd(tec)cz <delphi-l(zv)fwd(tec)cz>
Date: 14. prosince 1999 10:22
Subject: OLE objekt "Outlook">ahoj
>
>da se pracovat s Outlookem tak jako
>s Wordem, nebo Excelem, ze si vytvorim
>instanci OLE objektu :
>
>W:=CreateOLEObject('Word.Application');
>
>a volam jeho metody ?
>
>Jestlize to lze, jak se tento objekt jmenuje ?
>Existuje napoveda metod a vlastnosti tohoto objektu ?
>
>diky za kazdou odpoved
>
>Zdenek Fryz
>
>
>
>__________________________________________________________________
>Tato komunikace je urcena vyhradne pro adresata a je duverna.
>This communication is intended solely for the addressee and is
confidential.
>
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Robert Kindl <rob(zv)exec(tec)cz> - 15.12.1999 10:23:02
> > Rozhodne neni trideni jako trideni!
>
> Ved som nepovedal, ze je. Len to, ze rozne algorimy triedenia maju
> urcitu spolocnu vlastnost (taku, ze dokazu triedit udaje ;-). Tato
> spolocna vlastnost neznamena, ze existuje len jeden sposob ako
> ju dosiahnut. Podstatne je, ze tato vlastnost je u vsetkych algoritmov
> triedenia ROVNAKA. A teraz Ty, ked chces riesit nejaky problem,
> tak moze byt pre Teba vyhodne pouzivat v rieseni Tvojho problemu
> prave taketo abstraktne triedenie. Napr. preto, ze nevies na akom
> pocitaci to pobezi, a na niektorom pocitaci moze byt vyhodnejsi
> nejaky triediaci algoritmus a na inom iny algoritmus (ale mozu byt aj
> ine dovody). Dalej si mozes implementovat rozne algoritmy
> triedenia a postacuje Ti vybrat konkretny algoritmus az tesne
> pred jeho pouzitim (povedzme hoci aj v RunTime). A ked prides
> na nejaky lepsi algoritmus, tak mas moznost si ho implementovat
> a pouzit, pricom Tvoja aplikacia sa vobec nezmeni. Tvoja aplikacia
> jednoducho nepotrebuje vediet (a byt ZAVISLA), aky konkretny
> algoritmus je vyhodne pouzit v nejakej konkretnej situacii ale moze
> od toho abstrahovat a byt NEZAVISLA. A to je ten velmi velmi
> podstatny prinos, ze si schopny specifikovat podstatne vlastnosti
> (a to raz a nie stokrat na x miestach v zdrojakoch), formalne ich
> povedzme popisat a pouzivat ich pri pisani aplikacie (pri pisani
> aplikacie teda automaticky robis iba s tymito podstatnymi vecami)
> a az ked je to nevyhnutne (a vtedy uz zvycajne aj mas dostatok
> informacii) urobis rozhodnutie o pouziti konkretnej implementacie.
> Erik Salaj
Chapu co jsi chtel rici tj. vim o cem mluvis.
Na spatnem priklade se mermomoci snazis demostrovat
obecnejsi princip. Rozumim. Jen ta argumentace!
Zase si lehce odporujes.
Ale uz toho nechme.
Rob
Grid was:Pristup k datum, Delphree a vubec
[*] Robert Kindl <rob(zv)exec(tec)cz> - 15.12.1999 10:32:20
> > A uz vubec nepredstavitelny (pro bezneho Delphistu) je grid,
> > kde kazdy radek obsahuje oplne jinak velke sloupce.
> > Odtud je jiz jen krok k definici gridu jako mnoziny obdelnikovych
> > (popr. jeste slozitejsich) oblasti.
>
> He,he. Prave takovou podobnou obludu jsem pred casem programoval :o)
Jo jo ja prave taky.
A proto vim, ze to co navrhoval Zbysek je zase jen reseni
jeho konkretnich problemu, ktere perspektivne nevede ke zlepseni
stavajiciho stavu.
Kokretni zakladni myslenka.
Grid zobrazuje to co mu porouceji objekty, ktere obsahuje.
Dostal jsem to takhle daleko.
Grid umel definovat sloupce (v zasade tedy header).
Zakladni objekt umi urcit velikost bunek v radku tj.
v zasade roztahnout bunku pres vice sloupcu
a take urcuje na jakem stromovem levelu je radek
(ano v leve casti je stromova struktura radek).
Graficky dedic urcuje ramovani, pozadi.
Textovi dedicove text, pismo.
Obrazkovi nejakou ikonu.
Editacni zpusob editace.
Problem samozdrejme byl ze jsem potreboval textoveho i obrazkoveho najednou
(kombinovana bunka). Takze patch.
No a ted to je treba asi jeste zobecnit...
Rob
ADMIN: Jakou databazi doporucite ?
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 15.12.1999 10:35:41
Puvodni zprava, kterou napsal Ren� Otisk dne 15 Dec 99,:
> Dalo by se to blize specifikovat jaka ktera na co a proc? Dik.
Tak konkretne muj pohled na databaze, ktere pouzivam:
Sybase Adaptive Server Anywhere - SQL Server s opravdu mnoha
moznostmi, ktere mnohdy konkurencni nemaji. Napriklad velmi
dobra ochrana dat, tedy moznost nastaveni opravdovych prav
na databazi, kodovani databazoveho souboru apod. Dale pak
treba nadherna replikace dat (hodi se napriklad, pokud ma
aplikace chodit i na noteboocich, ktere se obcas pripoji
a nebo se replikuji e-mailem, pres FTP apod.). V neposledni
rade kaskadni delete apod.
MSDE - to je velice vhodne tehdy, potrebuji-li vykon SQL,
ale aplikace neni tak draha, aby se vyplatil nakup licenci
za SQL Server. Jednoduse proto, ze to zakaznik nezaplati
a nebo chci 100% penez dostat ja a ne se s nekym delit.
MSDE je sireno zdarma, pracuje velmi dobre do 5 stanic,
ma sve nevyhody, ale je to plnohodnotny SQL Server. Zase
ho pouziji tam, kde se dostanu osobne, protoze dalkova
instalace je sice mozna pomoci CD, i kdyz je potreba
trochu znat prostredi, kam se to instaluje. Pres Internet
absolutne nevhodne, protoze je to silene velike pro stahnuti.
FlashFiler - nepodporuje zatim SQL, takze prestoze zvlada
gigabyty dat, jeho pouziti je omezene ruznymi kriterii.
Hodi se ale na mnoho aplikaci, kde si jine databaze dokazi
predstavit jen stezi. Je to Client Server databaze, maka
bez upravy zdrojaku jak na jednom pocitaci, tak na siti,
treba i pres Internet. Zadne DLL, zadna instalace, zadne
BDE, jsou to bud jen dva EXE (Server a aplikace) a nebo
jen jeden EXE (aplikace, pokud je to pro jeden pocitac,
ne na siti). Bezpecnost, kodovani databaze, 100% transakce,
zadne problemy. Idealni pro software na CD, pro stazeni
z Internetu (single EXE prida asi 160 kB)...
Takze znovu opakuji, kazda databaze ma neco, kdokoliv sem
muze doplnit zase vyhody tech jeho, tedy InterBase, Oracle,
plneho MS SQL Serveru apod. Pokud delas jen jeden typ
aplikaci a nic jineho, vystacis s jednou databazi. Jestli
ale (jako ja) delas vice projektu, pak budes potrebovat
vic databazi, protoze urcite chces pouzit to, co je pro
ten dany ucel nejlepsi.
S pozdravem
Petr Zahradnik, pocitacovy expert
Autorizovany dealer TurboPower Software... knihovny pro Delphi
==============================================================
=== Petr Zahradnik - Computer Laboratory ===
=== Obvodova 740/14, PO BOX 15, 400 07 Usti nad Labem 7 ===
=== telefon: 047-5500610, telefon/fax: 047-5501627 ===
=== mobilni telefon GSM (hotline): 0602-409601 ===
=== http://www.clexpert(tec)cz/ clexpert(zv)clexpert(tec)cz ===
==============================================================
ICQ: 21215917, PGP vitano
trideni was: D5 - ano ci ne ?
[*] Robert Kindl <rob(zv)exec(tec)cz> - 15.12.1999 10:44:06
> Trideni na serveru je jedna z nejnarocnejsich operaci pro vsechny SQL
> servery. Pro server to totiz znamena, ze data musi nacist a setridit a
> umistit do docasne tabulky. Proto je odezva dotazu bez ORDER BY temer
> okamzita, ale s ORDER BY je tav vzdy delsi ci kratsi (spise delsi)
prodleva.
> Nemluve o zdrojich alokovanych serverem (kurzor, ktery casto neni
> zapotrebi), je to vzdy casove mene vyhodne. Dle me letite zkusenosti,
> typycky jen nekolik dotazu v aplikaci ma takove parametry, ze trideni na
> serveru neni nevyhodne. Prirozene, trideni na klientovi vyzaduje vzlastni
> styl prace a specialni podporu ktera v Delphi standardne neni. Proto je
> trideni na serveru pouzivano casteji, nez je mnohdy zdravo.
Konkretne na MSSQL se do temporary tabulky stejne
ukladaji jen trochu slozitejsi dotazy (proste ten result set
10000 radku ten server nekde mit musi).
Samozdrejme to ORDER BY zdrzi, ale podle mne
to vice musi zdrovat to trideni na klientu, nebot
SQL server pokud to jen trochu jde pouzije pro trideni
index. To klient pri nejlepsi vuli nemuze (nebo mu prinejmensim
pri vice klientech budou indexy rychle zastaravat). Pokud to nejde
je jasne, ze pak se serveru muze ulehcit kdyz tridit bude klient,
ale aplikace nedokaze bezne rozhodnout jestli se serveru ulehci
nebo ne. Je jasne, ze jste tedy asi zvolili cestu ulehcovat vzdy...
Pravda je, ze jsme takovou cestu nezvolili protoze to
v Delphi jednoduse (ani slozite) nejde a ty zkusenosti nas k tomu
zatim nedovedli.
Rob
Jakou databazi doporucite ?
[*] Tomas =?iso-8859-2?Q?Michal=EDk?= <michalik(zv)proca(tec)cz> - 15.12.1999 11:24:33
Ahoj,
Ji�� Kr�l jr. wrote:
> gdosi wrote:
> > Kdyz slysim o problemech s MS SQL od jimych programatoru, musim se smat.
>
> Neni hezke se smat cizim problemum.
>
> Ja bych doporucil rozhodne MS SQL 7. A to z nasledujicich duvodu:
>
> - vyhodne licencni podminky (= levne )
> napr. pro nasi firmu (cca 25 klientu, 80 zamestnancu) stalo nasazeni MS
> SQL 7 66000 bez DPH
to je zajimave, opravdu je v cene pravo pouzivat SQL7 s 25 klienty ? Podle
ceniku fy. APRO stoji samostatny produkt MS SQL 7 vcetne 25 klientskych licenci
147442,- Kc bez DPH ...
> a to jsme navic (v baliku MS SBS server) ziskali Exchange server, Proxy
> server a NT server.
> Nejprve jsem zvazovali Interbase na nas stavajici Novell, ale prislo by to
> skoro 3x tak draz , a to
???
cenik Inprise CZ
IB5.6 for Novell
server 7180,-
20 klientu 85030,-
1 klient 5890,-
> - ziskani editor's choice v PC Magazine (jedno z letosnich cisel)
> MSSQL7 uspel proti DB2, Oracle a jeste necemu, ted si nevzpomenu cemu
kupodivu InterBase tam nebyla, zrejme proto, ze jednim z nejdulezitejsich
hledisek byla jednoduchost udrzby ...
S pozdravem,
Tom
=================================
Tomas Michalik
ProCA, s. r. o.
V Luzich 818, Praha 4
Czech Republic
e-mail: michalik(zv)proca(tec)cz
tel: +420 2 67283446
Moznost vydelku, prosba o pomoc
[*] Michal Prskavec <mp(zv)sixt(tec)cz> - 15.12.1999 11:28:01
Dobry den,
velmi nutne potrebujeme jeste do konce tydne dodelat cast klientskeho sw.
Tento sw je velmi jednoduchy, jde spise o par detailu a domnivam se, ze i zacinajici
ci mirne pokrocili by to zvladli.
Onemocnel nam jeden nas vyvojar a dalsi neni schopen tuto praci zvladnout sam.
Proto prosim vsechny jez by meli cas a chut si prividelat par tisic, aby se ozvali na
0603 218 304 - pan Mathauser, popripade na muj GSM uvedeny v podpisu.
Dekuji vsem
Michal Prskavec
-----------------------------------
SIXT Media Group spol. s r.o.,
Hellichova 7
118 00 Praha 1
Mal� Strana
http://www.sixt(tec)cz
http://www.blue(tec)cz
mp(zv)sixt(tec)cz
ICQ# 42807903
GSM: +420-603 438 555
Tel: +420-2-6121 5773
FAX: +420-603 430 476
--------------------------------------------
---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.87 / Virov� b�ze: 47 - datum vyd�n�: 1.11.1999
Kylix (Was: D5 - ano ci ne ?)
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 11:35:41
Petr Vones wrote:
> > Pokud bude Kylix alespon tak dobry jako D1, pak se mozna dockame
> > jeste zajimavych casu :o)
Co to zere Kylix?
> Rozhodne to prispeje k vetsi rozmanitosti (a jeste bourlivejsim
> diskusim na vecne tema ktery OS je ten lepsi :-) Ale s tim srovnanim s
> D1, jen ne 16ti bitovy ! :-)
Mno, obcas bych potreboval 64 bitu. Mno, proc troskarit, rovnou
128...
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
ulozene procedury a upgrade na MSSQL7
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 11:35:41
Ladislav Nagy wrote:
> ukazalo se, ze je to tim, ze kdyz vybiras u TStoredProc nazev ulozene
> procedury z comboboxu (u MS SQL 6.5), tak si tam Delphi dosadi
> <jmenoSP>;1 Zkus ;1 umazat u vsech visualnich TStoredPrc komponent.
> Melo by to pomoci.
Tu ";1" nevraci Delphi, ale MS SQL. Cislo slouzi v podstate jako
index, blize viz dokumentaci k MS SQL.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
Grid was:Pristup k datum, Delphree a vubec
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 11:35:41
Erik Salaj wrote:
> Nie, vadi mi to, ze nemozem vytvorit alternativu ku komponentom VCL.
> Inu ako VCL komponentovu technologiu Delphi neposkytuje. Nemam skratka
> moznost pouzivat komponenty (to je to podstatne, co robi z Delphi RAD)
> bez VCL. Netvrdim, ze koli tomu je Delphi zle, alebo ze nie su na to
> dovody. Ale mam za to, ze takato moznost by mohla byt dost uzitocna.
> Ja si som chcel Delphi vidiet trochu univerzalnejsie pouzitelne
> (minimalne tak, ako je C++), povedzme hoci i na pisanie driverov do
> Windowsu, atd. Teraz nie je podstatne, ze by bolo potrebne prelozit aj
> nejake headre z DDK k tomu, ide mi o princip.
Mno, tohle bych shrnul. Samozrejme, ze si MUZES vytvorit
alternatovu k VCL (s tim, ze pokud budes chtit programovat
objektove pomoci prostredku OP, jsi vazan pouze na tridu TObject
a podotykam, ze TObject NENI VCL). Cena, kterou za to zaplatis,
je ze nebudes RAD.
Mam dost vaznou obavu, ze kazdy RAD programovaci nastroj je
vazan na urcitou minimalni bazi trid ci knihoven, ktere nelze
podlezt. Pokud vezmeme C++, tak CBuilder je RAD take pouze s
VCL, i kdyz muze absorbovat jine C++ knihovny. VC++ muze
absorbovat ledacos, ale urcite neni RAD, a to ani s MFC, a to ani
kdyby se ti podarilo pripojit VCL (s kterou si ani neporadi, protoze
je v Pascalu). Jinymi slovy, VC++ me priserne stve, protoze neni
RAD a ani neumoznuje byt RAD s pripojenim VCL. :-)))
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
D5 - ano ci ne ?
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 11:35:41
Tomas Kouba wrote:
> ja jsem asi neco zasadniho nepochopil. Pokud by se melo preferovat
> trideni u klienta (i kdyz je casto) v provozu C/S, tak to prece nutne
> musi byt nekolikrat pomalejsi. SQL stroj prece pouziva indexy, ktere
> klient v kurzorech nema k dispozici ?! Samozrejme pokud pocet radku ve
> vysledku je vice jak maly...
>
> O pretezovani serveru nelze mluvit, od toho tam je mel by na to byt
> optimalizovan.
Samozrejme zalezi na konkretni situaci, celkovem vytizeni site atp.
Predstav si, ze mas 50 soucasne pripojenych klientu. 5 z nich
neco vklada a meni, ostatni si jenom prohlizeji (myslim, ze tohle
nebude az tak atypicka situace). Pricemz 25 z nich si prohlizi
nahoru a dolu pouze vysledek jednoho slozitejsiho dotazu (pres
vice tabulek), a jeste tak, ze si ho tridi (ci prerovna) pres nejake
sloupce. Nakonec ho 15 z nich vytiskne. Pesimisticky
predpokladejme, ze tohle delaji vsichni najednou.
At je server optimalizovany jak chce, pro tech 25 (ale mozna i 45)
lidi plati, ze kdyz je nechas pripojene k databazi, berou jednu
konektivitu (pokud nepouzijes MIDAS a podobne), coz by
nemuselo byt jeste tak hrozne, mas-li dost licenci. Pokud je vsak
nechas pripojeny na dataset, pri kazdem prerovnani a pri tisku se
program dotazuje databaze. Mezitim tecou data mezi klientem a
serverem. Jedna a ta sama data tecou po dratech opakovane, a to
podle toho, jak si je dotycny prerovna. Server pro kazdy dotaz musi
vytvorit znovu virtualni tabulku a tu udrzovat po celou dobu spojeni.
Zde muzeme sledovat dve hodnoty - vytizeni RAM a procesoru na
serveru.
Pokud nemas hodne nadupany server a hodne slabe klienty, pak
se pro tech 25 lidi vyplati pripojit se k databazi, natahnout data do
bufferu na klientovi, a pak se zase od databaze odpojit (pokud vis
dopredu, ktery okruha dat bude takto pouze prohlizen, lze na to
udelat samostatny prohlizec). A na klientu obstaras zbytek - tedy
prerovnavani podle ruznych sloupcu a tisk. Mozna by takto slo resit
i tech dalsich 20 lidi, podle charakteru ulohy. A opet, porovnej si
vytizeni RAM a procesoru na serveru. Urcite zjistis zajimave rozdily
a tech 5 lidi, kteri porizuji, take. :-)
Prerovnat 50 vet na klientu je dilem okamziku. Totez honene pres
slozity select, kde se meni pouze ORDER BY, muze byt velice
snadno mnohonasobne (i o vice radu) pomalejsi.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
Delphi 5, ADO -> Paradox,password
[*] Erik Salaj <winsoft(zv)napri.sk> - 15.12.1999 12:01:02
Mozno to bude fungovat s JET ISAM driverom pre Paradox:
ADODataSet.DatabaseProvider := 'Microsoft.Jet.OLEDB.4.0';
ADODataSet.DatabaseConnect := 'Data Source=C:\PxFiles;Extended
Properties="Paradox 7.X;"';
Erik Salaj
----- Original Message -----
From: SMID Oldrich, Ing. <SMIDO(zv)tpro(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Monday, December 13, 1999 12:08 PM
Subject: Delphi 5, ADO -> Paradox,password
> V�en�,
> nefunguje mi p��stup p�es ADO do Paradoxovsk� tabulky pokud je
zaheslovan�.
> Tr�pil jste se s t�m n�kdo ?
>
> Connection string jsem vyrobil v D5 pomoc� Build, na nezaheslovan� paradox
> tabulce to b�h� dob�e.
> Kdy� ji v Database Desktop zahesluji a samoz�ejm� v D5 nastav�m tot�
heslo
> i do connection string (na konci zpr�vy), tak p�i pokusu o otev�en�
tabulky
> (prost� select * xxx.db) se objev� chybov� hl�ka:
>
> [Microsoft][ODBC Paradox Driver] Unexpected error from external database
> driver [10498]
>
> D�ky ka�d�mu, kdo laskav� pohl�dne na tento probl�m a p��padn� n�pad na
> �e�en� mi poskytne
> Olda �m�d
> Ing Old�ich �m�d
> Topol Pro s.r.o. http://www.tpro(tec)cz
> 250 01 Brand�s nad Labem P.O.Box �. 4
> tel.: 0202 800 168, fax: 0202 800 166, mobil: 0603 219 272
> e-mail: smido(zv)tpro(tec)cz
Existuje archiv konference na CD ?
[*] Petr Dedecek <petrd(zv)atlas(tec)cz> - 15.12.1999 12:28:08
Ahoj,
kdysi jsem tu zahledl programek na prohlizeni archivu konference. Problem byl, ze jsem z Outlooku Express nebyl schopen exportovat zpravy do txt souboru pro nacteni do tohoto programu a navic nemam archiv kompletni. Je mozno nekde sehnat kompletni archiv konference na CD i s prohlizecim programem ?
Dik.
Petr
Jak schovat MDI wokno ?
[*] bures <bures(zv)ssakhk(tec)cz> - 15.12.1999 13:04:32
Ahoj lidi
Mam tu takovy maly a zrejmene nepodstatny promlem. Kdyz mam nejaky form jako FsMdiChild tak
nelze uplne schovat pouze se minimalizuje...
Neni mozne aby se ten form schoval uplne ???
me napadlo pouze toto :
schovat :
form3.FormStyle := FsNormal;
form3.Hide;
ukazat:
form3.FormStyle := FsMdiChild;
form3.Show;
Ale toto reseni se mi vubec nelibi ... nelze to udelat nejakym jinym zpusobem ?
Predem dekuji za odpovedi Vlada
Jakou databazi doporucite ?
[*] Ren� Otisk - 15.12.1999 13:06:38
Hi,
To je vlastne v ramci baliku BackOffice Small Business Server (NTServer,
Proxy, MSSQL, Exchange Server...). Navic se to da za relativne pakatel
rozsirit v ramci licenci klientu k NT na 50 klientu. Analogie: samostatne
Word, Excel, PowerPoint stoji 3x vice nez Office, ve kterem je jeste neco
navic (Outlook, Binder)
Sroub
> gdosi wrote:
> > Kdyz slysim o problemech s MS SQL od jimych programatoru, musim se smat.
>
> Neni hezke se smat cizim problemum.
>
> Ja bych doporucil rozhodne MS SQL 7. A to z nasledujicich duvodu:
>
> - vyhodne licencni podminky (= levne )
> napr. pro nasi firmu (cca 25 klientu, 80 zamestnancu) stalo nasazeni MS
> SQL 7 66000 bez DPH
to je zajimave, opravdu je v cene pravo pouzivat SQL7 s 25 klienty ? Podle
ceniku fy. APRO stoji samostatny produkt MS SQL 7 vcetne 25 klientskych
licenci
147442,- Kc bez DPH ...
> a to jsme navic (v baliku MS SBS server) ziskali Exchange server, Proxy
> server a NT server.
> Nejprve jsem zvazovali Interbase na nas stavajici Novell, ale prislo by
to
> skoro 3x tak draz , a to
???
cenik Inprise CZ
IB5.6 for Novell
server 7180,-
20 klientu 85030,-
1 klient 5890,-
> - ziskani editor's choice v PC Magazine (jedno z letosnich cisel)
> MSSQL7 uspel proti DB2, Oracle a jeste necemu, ted si nevzpomenu cemu
kupodivu InterBase tam nebyla, zrejme proto, ze jednim z nejdulezitejsich
hledisek byla jednoduchost udrzby ...
MSDE a pocet uzivatelu - zkusenosti
[*] Bob <delphi(zv)dingo(tec)cz> - 15.12.1999 13:15:42
Ahojte,
Kdo ma zkusenosti s max. poctem pripojenych uzivatelu v praxi?
Podle M$ je to pri 5 uzivatelich spolehlive.
Mylite, ze by to zvladlo vyjimecne i 12 uzivatelu, kteri budou data spise
cist?
I malo pomuze. Dik.
Bob
- bitovy integer v Delphi 3 bez znamenka
[*] Zdenek Drvota <drvota(zv)zds(tec)cz> - 15.12.1999 13:29:24
IDT ma FPU, ale velmi jednoduchy a podstatne pomalejsi
nez Intel, AMD i IBM/Cyrix (v tomto poradi).
Proto take dava o hodne mensi vykon ve FP operacich, ale
v ostatnich zase tak moc pozadu neni.
### Dalibor Toman napsal dne 14 Dec 99, v 8:15 :
> Nevim presne ktere modernejsi CPU nemaji FPU ale jeden z nich je IDT
> WinCHIP. Ten nema FPU a ani CPU na nem moc nechodi :-(
>
-----------------------------------------------
Ing. Zdenek Drvota e-mail: drvota(zv)zds(tec)cz
director
ZDS, spol. s r.o.
Hronovicka 708 tel:+420-40-6613756
530 02 Pardubice fax:+420-40-6613756
Czech Republic http://www.zds(tec)cz
e-mail: info(zv)zds(tec)cz
Pripojte se k hledani mimozemskych civilizaci:
SETI(zv)Home http://setiathome.ssl.berkeley.edu
Darek, ktery nezklame? CeDecko od nas!
http://www.zds(tec)cz/cdrom/cdrom.asp?sender=mail
trideni was: D5 - ano ci ne ?
[*] Pavel Cisar <pcisar(zv)aktis(tec)cz> - 15.12.1999 13:50:23
Haj hou!
From: Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz>
>Vsechno to jsou ruzne duvody pro a proti, ktera je nutno brat v uvahu a
>optimalni reseni musi byt stanoveno v kazde konkretni situaci zvlast.
S tim nelze nez souhlasit. Zde jsme se ale bavili o specifickem okruhu
aplikaci, presneji o interaktivni praci s daty. SQL servery a SQL jako
takove byly koncipovany v dobe, kdy byl typycky davkovy system prace (a
klienti byly terminaly). Pokud je system prace davkovy, je jednoznacne
vyhodnejsi volit spise reseni pracujici na serveru. Ale s mirou
interaktivity roste intenzita komunikace mezi klientem a serverem vcetne
objemu prenasenych dat. Je jasne, ze cim vice prace prevezme klient, tim je
odezva lepsi a plynulejsi (odpada predevsim rezie na komunikaci a prenos
dat) a to i v pripade, ze klient je vyrazne slabsi stroj nez server. To je
realny fakt. Nejde tedy jen o problem trideni, ten je jen zastupcem
(prikladem) obecnejsi problematiky. Soucasnym trendem je vytvareni vysoce
interaktivnich aplikaci nad SQL servery. To samozrejmne prinasi specificke
problemy vyzadujici specificka reseni.
>Nelze kategoricky
>rici, co je lepsi a uz vubec nelze argumentovat zatizenim serveru (bez
>ohledu na ostatni
>pozitiva a negativa). Od toho prece databazove servery jsou, aby provadely
>narocnou praci
>a ulehcili tak svemu okoli.
Ze servery jsou urceny pro narocnou praci a ulehceni klientum je zasadni
omyl. Servery jsou urceny pro CENTRALIZACI zpracovani, tedy pro ZJEDNODUSENI
celkoveho schematu reseneho problemu. Ze servery delaji vetsinu prace je
dusledek, nikoliv pricina proc jsou vytvareny. A navic je to dusledek ne
vzdy zadany.
Hodne zdaru
Pavel Cisar <pcisar(zv)atlas(tec)cz>
Delphree.org CEO
http://delphree.clexpert.com
Nexus project coordinator
http://delphree.clexpert.com/pages/projects/nexus/default.htm
startovaci okno - jine reseni
[*] Mal� Dobromil <dodo(zv)rak.pr.ds.mfcr(tec)cz> - 15.12.1999 13:57:27
Ale vzdyt prave toto Ti ten clovek (marcant) poradil...
Ten FrmAbout byl vytvorel (ve smyslu navrhnut) v IDE
a vytvoren (ve smyslu alokovani pameti), zobrazen a
updatnut pred vytvorenim (ve smyslu alokovani pameti)
hlavniho formu aplikace.
Dobra.
> ----------
> Vcera jsem se tu ptal, jak udelat startovaci okno aplikace stejne jako je u Wordu. A jedna odpoved me "nakopla" tim spravnym smerem. V napovede Delphi jsem nasel priklad, ktery zobrazi okno tak jak jsem ho potreboval a nevytvari se zvlastni form pri staru aplikace, ale vezme se uz existujici form. Vyhoda tohoto formu je, ze si na nej naflakate potrebne komponenty (napr.: TImage) a on je proste rovnou zobrazi.
>
> Application.Initialize;
> with TForm2.Create(nil) do
> try
> Show;
> Update;
> Application.CreateForm(TForm1, Form1);
> finally
> Free;
> end;
> Application.Run;
>
> /======================\
> / pesek.martin(zv)mymail(tec)cz \
> /-------------------------------------------------\
> <---<([ Martin Pesek ] [ Gamemaker ])>--->
> \-------------------------------------------------/
> \ www.mujweb(tec)cz/www/gusman /
> \======================/
>
D5 - ano ci ne ?
[*] delphi(zv)htkpro(tec)cz - 15.12.1999 14:04:36
>
>At je server optimalizovany jak chce, pro tech 25 (ale mozna i 45)
>lidi plati, ze kdyz je nechas pripojene k databazi, berou jednu
>konektivitu (pokud nepouzijes MIDAS a podobne), coz by
>nemuselo byt jeste tak hrozne, mas-li dost licenci. Pokud je vsak
>nechas pripojeny na dataset, pri kazdem prerovnani a pri tisku se
>program dotazuje databaze. Mezitim tecou data mezi klientem a
>serverem. Jedna a ta sama data tecou po dratech opakovane, a to
>podle toho, jak si je dotycny prerovna. Server pro kazdy dotaz musi
>vytvorit znovu virtualni tabulku a tu udrzovat po celou dobu spojeni.
>Zde muzeme sledovat dve hodnoty - vytizeni RAM a procesoru na
>serveru.
Mala poznamka - vetsina databazovych serveru neni licencovana na connection,
ale na neco jineho co spolehlive obchazi rozdil mezi connection od aplikaci
a skutecnym poctem uzivatelu dat ze serveru. Neplati, ze pocet licenci se
nakupuje podle poctu connections. Napr. Oracle pozaduje (zjednodusene)
licence pro kazdou obrazovku na ktere se data objevi - pouziti vicevrstve
architektury tedy licence neusetri.
S pozdravem
Jan Kadlecek
dev-shop(tec)cz
dev-shop.sk
Language Drivers of Table and Index do not match
[*] Ondrej Jaura <jaura(zv)datalock.sk> - 15.12.1999 14:09:15
Zdravim :(
Pri pokuse otvorit tabulky (vytvorene v D4, DBF, dBase SLO cp852) v D5
mi hadze chybu "Language Drivers of Table and Index do not match".
Pozrel som sa na tabulky Database Desktopom - v strukture tabulky mi
vyhodil, ze mam driver "ASCII Ansi", co je znacne odlisne od nastaveneho v
D4.
Stretli ste sa uz s podobnym problemom?
Za zachranne kolesa vopred dakujem
Ondrej
------
Ondrej Jaura
Datalock a.s.
jaura(zv)datalock.sk
------ :)
Prevencia pred a oprava poskodenia databazovych su
[*] Ondrej Jaura <jaura(zv)datalock.sk> - 15.12.1999 14:20:48
Prajem prijemny den :)
Ake mate skusenosti s rieseniami poskytujucimi prevenciu pred poskodenim
a najma opravou poskodenych databazovych suborov - zaujimam sa najma o dBase
a Paradox.
TTable neposkytuje prakticky ziadne "nizsie" funkcie, vsetko je potrebne
riesit cez BDE API (pripadne priamo zapisom do hlavicky databazaoveho
suboru.)
Zamerne som napr. poskodil indexovy subor pre dBase (NDX) a to mali
Delphi riadne problemy... Pri jednom z experimentov sa mi podarilo zhodit i
Database Desktop (nooo, ze by to bolo az tak zabavne sa zas neda povedat -
predstava takto konciaceho mojho programu - nic prijemneho).
Existuju postupy (jeden uz bol ohladne znovuvytvorenia dBase indexovych
suborov poslany), komponenty, BDE API funkcie na riesenie tychto nepeknych
problemov?
Ako su nachylne dBase a Paradox tabulky na napr. vypadok prudu, nahodne
vypnutie pocitaca (ja som ho nevypol, to same :), atd. ?
Za vsetky zachranne kolesa a vesty dakujem :)))
Ondrej
------
Ondrej Jaura
Datalock a.s.
jaura(zv)datalock.sk
------ :)
MSDE
[*] Mal� Dobromil <dodo(zv)rak.pr.ds.mfcr(tec)cz> - 15.12.1999 14:36:15
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
Ahoj,
posledni dobou se tu cim dal tim vice pise o MSDE,
vyzkousel jsem to u jednoho kolegy na NTyckach, dole
v tray-i se sice objevil ten SQL server service manager,
ale nijak se mi nepodarilo zjisit, jak vytvaret databaze,
tabulky, uzivatle a podobne (hledal jsem nejaky manager
podobny napriklad Enterprice manageru a podobne). Je tam
nejaky takovy nastroj ?
Instaloval jsem to z MS Office 2000 Premium (ne tedy
developper) ale i tam MSDE je.
Diky
Dobra.
Zmenseni obrazku
[*] Petr Voborn�k <vobornik(zv)ssakhk(tec)cz> - 15.12.1999 15:04:09
Mam obrazek 300x800 a chci z nej udelat obrazek 100x100 (metodou stretch, tedy aby tam bylo videt vsechno) a ulozit to na disk (nejspis jako JPG nebo treba BMP).
A chtelo by to jinou metodu, nez je vyfoceni obrazovky :)
Pitr - Petr Vobornik
MIKMIK company
vobornik(zv)ssakhk(tec)cz
ICQ# 23132120
www.ssakhk(tec)cz/home/vobornik/
Zmenseni obrazku
[*] bures <bures(zv)ssakhk(tec)cz> - 15.12.1999 15:10:50
Ahoj Petre
Zkus pouzit WinApi ScretchBlt - potrebujes na to vedet handle zdrojoveho obrazku a handle ciloveho obrazku
velikosti a prekreslit to muzes treba matodou srcPaint (viz WinApi help)
Vlada
----- Original Message -----
From: Petr Voborn�k
To: delphi-l(zv)fwd(tec)cz
Sent: Wednesday, December 15, 1999 3:04 PM
Subject: Zmenseni obrazku
Mam obrazek 300x800 a chci z nej udelat obrazek 100x100 (metodou stretch, tedy aby tam bylo videt vsechno) a ulozit to na disk (nejspis jako JPG nebo treba BMP).
A chtelo by to jinou metodu, nez je vyfoceni obrazovky :)
Pitr - Petr Vobornik
MIKMIK company
vobornik(zv)ssakhk(tec)cz
ICQ# 23132120
www.ssakhk(tec)cz/home/vobornik/
trideni was: D5 - ano ci ne ?
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 15.12.1999 15:16:44
> -----P�vodn� zpr�va-----
> Od: Pavel Cisar [mailto:pcisar(zv)aktis(tec)cz]
> Odesl�no: 15. prosince 1999 13:50
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: Re: trideni was: D5 - ano ci ne ?
>
>
> Haj hou!
>
> From: Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz>
>
> >Vsechno to jsou ruzne duvody pro a proti, ktera je nutno
> brat v uvahu a
> >optimalni reseni musi byt stanoveno v kazde konkretni situaci zvlast.
>
> S tim nelze nez souhlasit. Zde jsme se ale bavili o specifickem okruhu
> aplikaci, presneji o interaktivni praci s daty.
Ano, opakuji. I pri interaktivni praci s daty muze byt vyhodnejsi nechat
data setridit server nez nechat tridit klienta.
> SQL servery a SQL jako
> takove byly koncipovany v dobe, kdy byl typycky davkovy
> system prace (a klienti byly terminaly).
Mluvis jako by to byla davna minulost. Je to samozrejme hloupost.
Davkove zpracovani je v soucasnosti jednou z hlavnich oblasti nasazeni
vypocetni techniky. Staci se podivat do domovni schranky, ve ktere nalezas
mesicne
rozpis SIPO, vypisy z bankovnich uctu, predvyplnene slozenky od pojistovny,
H poukazky s nemocenskou a ja nevim co vsechno jeste.
> Pokud je system prace davkovy, je jednoznacne
> vyhodnejsi volit spise reseni pracujici na serveru.
Neni. Vetsinou ano, jednoznacne rozhodne ne.
> Ale s mirou interaktivity roste intenzita komunikace mezi klientem a
> serverem vcetne
> objemu prenasenych dat.
Predne je asi problem definovat miru interaktivity.
Predstavuji si pod timto pojmem sirokost moznosti uzivatele
pro ovladani aplikace (moznost pouzivat hodne funkci aplikace).
Jestli jsem to nadefinoval spravne, tak nemas pravdu. Jinak definuj,
co tim pojmem myslis.
Je jasne, ze cim vice prace prevezme
> klient, tim je
> odezva lepsi a plynulejsi (odpada predevsim rezie na
> komunikaci a prenos
> dat)
Tohle je taky hloupost. Mas mozna na mysli nejakou konkretni praci.
Obecne rozhodne ne. Treba priklad s tridenim - kdyz je potreba setridit
select vracejici milion zaznamu a klient se chce podivat napr. na prvnich
deset. Rikas, ze je jasne, ze kdyz prevezme klient to trideni, ze bude
odezva lepsi nez kdyby data setridil server. Skutecne si to myslis?
a to i v pripade, ze klient je vyrazne slabsi stroj nez
> server. To je
> realny fakt. Nejde tedy jen o problem trideni, ten je jen zastupcem
> (prikladem) obecnejsi problematiky. Soucasnym trendem je
> vytvareni vysoce
> interaktivnich aplikaci nad SQL servery.
To rikaji Microsofti nebo kdo? Co to je, vysoce interaktivni aplikace?
> Ze servery jsou urceny pro narocnou praci a ulehceni klientum
> je zasadni
> omyl. Servery jsou urceny pro CENTRALIZACI zpracovani, tedy
> pro ZJEDNODUSENI
> celkoveho schematu reseneho problemu.
S tim nelze nez souhlasit. Jenze je to totez. Zjednoduseni problemu
vede k tomu, ze jeden pocitac vyuzije sluzbu na jinem pocitaci
(serveru), tim se touto veci nemusi zabyvat a ma tak min prace (a starosti
s konfiguraci sluzby). Ze servery delaji
> vetsinu prace je
> dusledek, nikoliv pricina proc jsou vytvareny. A navic je to
> dusledek ne
> vzdy zadany.
napriklad?
Jura
P.S. Dostals mne tam, kam jsem nechtel. Myslis, ze nemam co na praci, nez
tady pul hodiny odpovidat na jeden dopis? :-)
Jakou databazi doporucite ?
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 15.12.1999 16:34:59
Puvodni zprava, kterou napsal Jaro dne 15 Dec 99,:
> Jinak zreme nejlevnejsim server je asi Anywhere a myslim, ze si
> jeho schopnosti Zahradnik pochvaluje. Jedinou jeho zrejme stalou
> nevyhodou je pristup pouze pomoci ODBC. Ja osobne nemam rad
> prilis mnoho prostredniku, jako napr. Klient -> BDE -> ODBC -> Server
> Vice prostredniku muze byt zdrojem vice chyb a pak asi tez delsi odezvy.
Nemohou souhlasit se vsim. Ano, pochvaluji si ho, to je OK.
Co se tyka ceny - neni nejlevnejsi, je podobne drahy jako
ostatni licence v teto tride (InterBase, MS SQL...).
Co se tyka ODBC - neni to pravda. ODBC samozrejme ma, ale
lze zakoupit od Reggatta Systems nahradu BDE pro primy
pristup na tento SQL (zadne BDE, zadne ODBC, nic). Take
na ASA6 se da jit primo pomoci DBLib ovladacu z BDE, kdo
ma C/S, je tam nativni link. A v neposledni rade existuje
OLE DB driver pro Sybase! Da se prikoupit za nejake drobne
a tim padem lze pouzit treba Adonis apod. Jinak co nevidet
tu bude dalsi verze tohoto SQL Serveru (v USA do konce
roku, tady snad rychle taky) a ta ma OLE DB jiz primo
v sobe, neni potreba tedy dokupovat driver...
S pozdravem
Petr Zahradnik, pocitacovy expert
Autorizovany dealer TurboPower Software... knihovny pro Delphi
==============================================================
=== Petr Zahradnik - Computer Laboratory ===
=== Obvodova 740/14, PO BOX 15, 400 07 Usti nad Labem 7 ===
=== telefon: 047-5500610, telefon/fax: 047-5501627 ===
=== mobilni telefon GSM (hotline): 0602-409601 ===
=== http://www.clexpert(tec)cz/ clexpert(zv)clexpert(tec)cz ===
==============================================================
ICQ: 21215917, PGP vitano
D5 - ano ci ne ?
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 15.12.1999 16:46:58
<color><param>0100,0100,0100</param>Robert Kindl wrote:<color><param>7F00,0000,0000</param>> Podle mne bezny uzivatel neklika do headeru gridu jako silenec
> aby co nejvice zatizil server.
> Klikne tam tak jednou tydne a to jeste omylem :-)
> Nejmene jednou se ta query otevrit musi.
> Tudiz pokud ji server vrati jiz setridenou tak
> usetrim cas na klientu potrebny k trideni a zatez serveru se nijak
> nezvysi. A uz toho nechme...</color>Hm. Zkusme jeste rozlisit stavy prace s daty:
1. Otevru dataset, zustavam pripojeny a nacitam z kurzoru prave ta
data, ktera potrebuji (pro zobrazeni, ...).
2. Otevru dataset, nactu vse, zustavam pripojeny a prerovnavam na
klinetovi.
3. Otevru dataset, vyctu data, a dataset zase zavru. Pak si s daty
delam co chci.
Patrne se shodneme, ze bod 2 je nejmene vyhodny. Pak zbyva na
vyber mezi bodem 1 a 3, ktery je v dane situaci chodnejsi.<color><param>7F00,0000,0000</param>> > a pak se zase od databaze odpojit (i tohle ovlivnuje zatizeni a
> > rychlost serveru, nemluve o limitovanych licencich na server).
>
> Jake licence? Co to sem motas? Je videt ze ti dochazi
> argumenty kdyz se ohanis takovymi nesmysly...</color>Eh? Databaze se obvykle kupuje s nejakym poctem licenci na
soucasne pripojene uzivatele. Napriklad MSDE je vyladeno na 5
_soucasne_pripojenych_ uzivatelu. Pokud budu chtit, aby nad
databazi mohlo pracovat "soucasne" vice lidi nez odpovida licenci
nebo vyladenemu vykonu, pak se pripojim k databazi jen na dobu
nezbytne nutnou pro vycteni dat, pokud to vyhovuje charakteru
ulohy. Hned potom pripojeni zrusim, abych umoznil praci i dalsim
lidem.<color><param>7F00,0000,0000</param>> > > Proc ne TDBEdit? Nad datasetem je zcela bez problemu nebo
> > > resp. uplne stejne dobry jako TCustomMaskEdit jehoz je dedicem.
> >
> > DBEdit je dobry pro lokalni souborove databaze. Ale povazuji ho za
> > naprosto nevhodny pro SQL databaze na siti. Proc:
> >
> > 1. Udrzuje otevreny dataset, i v dobe, kdy je to zcela zbytecne. 2.
> > Vola metody Insert (ci Edit) a Post, ktere se museji vnitne (v BDE)
> > tak jako tak prekladat do SQL prikazu. 3. Pokud jiny uzivatel zmeni
> > stejna data driv, DBEdit umi pouze poznat zmenu a nedovoli data
> > prepsat. Porizena data jsou tim padem ztracena, pokud je ovsem
> > neprelejes do pomocnych promennych. 4. Operace s daty nad SQL
> > databazi musi probihat prostrednictvim SQL prikazu, je tedy
> > rozumnejsi si toto ovladat sam, nez to sverovat komponentam, jejichz
> > vnitrni prace je nepruhledna a nedokumentovana. Chci-li tedy neco v
> > databazi upravit, edituji data zasadne mimo DB komponenty, a pak
> > volam bud ulozenou proceduru nebo sestavim sam prislusny SQL prikaz
> > (ci spoustim transakci). Takto si snadno zajistim bezproblemovy chod
> > programu, zjisteni nastalych zmen a moznost dodatecnych oprav.
>
> Bud mluvis o necem jinem (nepletes si to s TTable?),
> nebo jsi asi nikdy DBEdit nepouzil a meles
> uplne nesmysly ktere jsi jen slysel.
> V kazdem pripade tady nerozsiruj HLOUPOSTI!!!!!
> Sorry, ale to co jsi tu napsal o DBEditu
> opravdu neni ani trochu pravda.</color>Mohl bys nam vsem tedy zjevit pravdu o DBEdit, prosim?
Pred tim vsak uvedu par veci:
Konfigurace: TDatabase pripojena na MS SQL Server, databaze
pubs, TQuery: SLQ = <color><param>0100,0100,0100</param>select * from authors, RequestLive:=true,
Navigator. DBEdit napojeny na au_lname.
Otviram Query.Open, listuji navigatorem. Najdu si nejakou vetu a
zacinam v DBEditu menit zaznam (vkladam prvni znak). Bez
otevreneho Query operaci nelze provest, tedy je dokazana
pravdivost bodu 1. Krome toho SQL Monitor mi vypsal tuto litanii:
1 12:16:53 SQL Prepare: MSSQL - SELECT COUNT(*)
FROM authors WHERE au_id=:1 AND au_lname=:2 AND
au_fname=:3 AND phone=:4 AND address=:5 AND city=:6 AND
state=:7 AND zip=:8 AND contract=:9
2 12:16:53 SQL Data In: MSSQL - Param = 1, Name = au_id,
Type = fldZSTRING, Precision = 11, Scale = 0, Data = 274-80-9391
3 12:16:53 SQL Data In: MSSQL - Param = 2, Name =
au_lname, Type = fldZSTRING, Precision = 40, Scale = 0, Data =
Straight
4 12:16:53 SQL Data In: MSSQL - Param = 3, Name =
au_fname, Type = fldZSTRING, Precision = 20, Scale = 0, Data =
Dean
5 12:16:53 SQL Data In: MSSQL - Param = 4, Name = phone,
Type = fldZSTRING, Precision = 12, Scale = 0, Data = 415 834-
2919
6 12:16:53 SQL Data In: MSSQL - Param = 5, Name =
address, Type = fldZSTRING, Precision = 40, Scale = 0, Data =
5420 College Av.
7 12:16:53 SQL Data In: MSSQL - Param = 6, Name = city,
Type = fldZSTRING, Precision = 20, Scale = 0, Data = Oakland
8 12:16:53 SQL Data In: MSSQL - Param = 7, Name = state,
Type = fldZSTRING, Precision = 2, Scale = 0, Data = CA
9 12:16:53 SQL Data In: MSSQL - Param = 8, Name = zip,
Type = fldZSTRING, Precision = 5, Scale = 0, Data = 94609
10 12:16:53 SQL Data In: MSSQL - Param = 9, Name =
contract, Type = fldBOOL, Precision = 0, Scale = 0, Data = TRUE
11 12:16:53 SQL Misc: MSSQL - Set statement type
12 12:16:53 SQL Execute: MSSQL - SELECT COUNT(*)
FROM authors WHERE au_id=:1 AND au_lname=:2 AND
au_fname=:3 AND phone=:4 AND address=:5 AND city=:6 AND
state=:7 AND zip=:8 AND contract=:9
13 12:16:53 SQL Vendor: MSSQL - dbcmd
14 12:16:53 SQL Vendor: MSSQL - dbcmd
15 12:16:53 SQL Vendor: MSSQL - dbcmd
16 12:16:53 SQL Vendor: MSSQL - dbcmd
17 12:16:53 SQL Vendor: MSSQL - dbcmd
18 12:16:53 SQL Vendor: MSSQL - dbcmd
19 12:16:53 SQL Vendor: MSSQL - dbcmd
20 12:16:53 SQL Vendor: MSSQL - dbcmd
21 12:16:53 SQL Vendor: MSSQL - dbcmd
22 12:16:53 SQL Vendor: MSSQL - dbcmd
23 12:16:53 SQL Vendor: MSSQL - dbcmd
24 12:16:53 SQL Vendor: MSSQL - dbcmd
25 12:16:53 SQL Vendor: MSSQL - dbcmd
26 12:16:53 SQL Vendor: MSSQL - dbcmd
27 12:16:53 SQL Vendor: MSSQL - dbcmd
28 12:16:53 SQL Vendor: MSSQL - dbcmd
29 12:16:53 SQL Vendor: MSSQL - dbcmd
30 12:16:53 SQL Vendor: MSSQL - dbcmd
31 12:16:53 SQL Vendor: MSSQL - dbsqlexec
32 12:16:53 SQL Vendor: MSSQL - dbresults
33 12:16:53 SQL Vendor: MSSQL - dbnumcols
34 12:16:53 SQL Vendor: MSSQL - dbcount
35 12:16:53 SQL Vendor: MSSQL - dbcolinfo
36 12:16:53 SQL Vendor: MSSQL - dbbind
37 12:16:53 SQL Stmt: MSSQL - Fetch
38 12:16:53 SQL Vendor: MSSQL - dbnextrow
39 12:16:53 SQL Vendor: MSSQL - dbdatlen
40 12:16:53 SQL Stmt: MSSQL - Close
41 12:16:53 SQL Vendor: MSSQL - dbdead
42 12:16:53 SQL Vendor: MSSQL - dbcancel
Zaroven TDBEdit.KeyPress vola metodu FDataLink.Edit, tedy
dokazan bod 2.
Pravdivost bodu 3 si snadno muzes overit sam, a to tak, ze pustis
program dvakrat vedle sebe, najedes na stejnou vetu, v obou
pripadech zavolas edit, pak v jedne instanci programu ulozis a
totez zkusis v te druhe instanci.
Zavolani metody Post po provedenych zmenach vygeneruje v SQL
Monitoru tuto litanii:
1 12:26:07 SQL Prepare: MSSQL - UPDATE authors SET
au_lname=:1 WHERE au_id=:2 AND au_lname=:3 AND
au_fname=:4 AND phone=:5 AND address=:6 AND city=:7 AND
state=:8 AND zip=:9 AND contract=:10
2 12:26:07 SQL Data In: MSSQL - Param = 1, Name =
au_lname, Type = fldZSTRING, Precision = 40, Scale = 0, Data =
Straight
3 12:26:07 SQL Data In: MSSQL - Param = 2, Name = au_id,
Type = fldZSTRING, Precision = 11, Scale = 0, Data = 274-80-9391
4 12:26:07 SQL Data In: MSSQL - Param = 3, Name =
au_lname, Type = fldZSTRING, Precision = 40, Scale = 0, Data =
Straightd
5 12:26:07 SQL Data In: MSSQL - Param = 4, Name =
au_fname, Type = fldZSTRING, Precision = 20, Scale = 0, Data =
Dean
6 12:26:07 SQL Data In: MSSQL - Param = 5, Name = phone,
Type = fldZSTRING, Precision = 12, Scale = 0, Data = 415 834-
2919
7 12:26:07 SQL Data In: MSSQL - Param = 6, Name =
address, Type = fldZSTRING, Precision = 40, Scale = 0, Data =
5420 College Av.
8 12:26:07 SQL Data In: MSSQL - Param = 7, Name = city,
Type = fldZSTRING, Precision = 20, Scale = 0, Data = Oakland
9 12:26:07 SQL Data In: MSSQL - Param = 8, Name = state,
Type = fldZSTRING, Precision = 2, Scale = 0, Data = CA
10 12:26:07 SQL Data In: MSSQL - Param = 9, Name = zip,
Type = fldZSTRING, Precision = 5, Scale = 0, Data = 94609
11 12:26:07 SQL Data In: MSSQL - Param = 10, Name =
contract, Type = fldBOOL, Precision = 0, Scale = 0, Data = TRUE
12 12:26:07 SQL Transact: MSSQL - XACT Begin
13 12:26:07 SQL Prepare: MSSQL - BEGIN TRAN
14 12:26:07 SQL Execute: MSSQL - BEGIN TRAN
15 12:26:07 SQL Vendor: MSSQL - dbcmd
16 12:26:07 SQL Vendor: MSSQL - dbsqlexec
17 12:26:07 SQL Vendor: MSSQL - dbresults
18 12:26:07 SQL Vendor: MSSQL - dbnumcols
19 12:26:07 SQL Vendor: MSSQL - dbcount
20 12:26:07 SQL Vendor: MSSQL - dbresults
21 12:26:07 SQL Stmt: MSSQL - Close
22 12:26:07 SQL Execute: MSSQL - UPDATE authors SET
au_lname=:1 WHERE au_id=:2 AND au_lname=:3 AND
au_fname=:4 AND phone=:5 AND address=:6 AND city=:7 AND
state=:8 AND zip=:9 AND contract=:10
23 12:26:07 SQL Vendor: MSSQL - dbcmd
24 12:26:07 SQL Vendor: MSSQL - dbcmd
25 12:26:07 SQL Vendor: MSSQL - dbcmd
26 12:26:07 SQL Vendor: MSSQL - dbcmd
27 12:26:07 SQL Vendor: MSSQL - dbcmd
28 12:26:07 SQL Vendor: MSSQL - dbcmd
29 12:26:07 SQL Vendor: MSSQL - dbcmd
30 12:26:07 SQL Vendor: MSSQL - dbcmd
31 12:26:07 SQL Vendor: MSSQL - dbcmd
32 12:26:07 SQL Vendor: MSSQL - dbcmd
33 12:26:07 SQL Vendor: MSSQL - dbcmd
34 12:26:07 SQL Vendor: MSSQL - dbcmd
35 12:26:07 SQL Vendor: MSSQL - dbcmd
36 12:26:07 SQL Vendor: MSSQL - dbcmd
37 12:26:07 SQL Vendor: MSSQL - dbcmd
38 12:26:07 SQL Vendor: MSSQL - dbcmd
39 12:26:07 SQL Vendor: MSSQL - dbcmd
40 12:26:07 SQL Vendor: MSSQL - dbcmd
41 12:26:07 SQL Vendor: MSSQL - dbcmd
42 12:26:07 SQL Vendor: MSSQL - dbcmd
43 12:26:07 SQL Vendor: MSSQL - dbsqlexec
44 12:26:07 SQL Vendor: MSSQL - dbresults
45 12:26:07 SQL Vendor: MSSQL - dbnumcols
46 12:26:07 SQL Vendor: MSSQL - dbcount
47 12:26:07 SQL Vendor: MSSQL - dbresults
48 12:26:07 SQL Data In: MSSQL - Rows affected = 1
49 12:26:07 SQL Stmt: MSSQL - Close
50 12:26:07 SQL Transact: MSSQL - XACT Commit
51 12:26:07 SQL Prepare: MSSQL - COMMIT TRAN
52 12:26:07 SQL Execute: MSSQL - COMMIT TRAN
53 12:26:07 SQL Vendor: MSSQL - dbcmd
54 12:26:07 SQL Vendor: MSSQL - dbsqlexec
55 12:26:07 SQL Vendor: MSSQL - dbresults
56 12:26:07 SQL Vendor: MSSQL - dbnumcols
57 12:26:07 SQL Vendor: MSSQL - dbcount
58 12:26:07 SQL Vendor: MSSQL - dbresults
59 12:26:07 SQL Stmt: MSSQL - Close
Timto povazuji za dokazany bod 4. Pri pouziti TTable dostanes
obdobne vysledky.
:-)<nofill>
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
parametre applikacii
[*] TUNGLI Jan <tungli(zv)pvt.sk> - 15.12.1999 17:49:44
Cez shellExecute odstartujem nejaky program napr. outlook, ovsem chcem predat parametre, subject, text spravy atd.
Ako je mozne zistit, ze akymi parametrami je mozne startovat nejaky exe alebo command (Outlook Word, Excel, kalkulacka a podobne)
TUNGLI J�nos
EMail: jan.tungli(zv)seznam(tec)cz
My Home Page: http://free.netlap.hu/4321/
or: http://freeweb.coco(tec)cz/tungli/
D5 - ano ci ne ?
[*] Robert Kindl <rob(zv)exec(tec)cz> - 15.12.1999 18:38:15
> > > a pak se zase od databaze odpojit (i tohle ovlivnuje zatizeni a
> > > rychlost serveru, nemluve o limitovanych licencich na server).
> > Jake licence? Co to sem motas? Je videt ze ti dochazi
> > argumenty kdyz se ohanis takovymi nesmysly...
> Eh? Databaze se obvykle kupuje s nejakym poctem licenci na soucasne
pripojene uzivatele. Napriklad MSDE je vyladeno na 5 _soucasne_pripojenych_
uzivatelu. Pokud budu chtit, aby nad databazi mohlo pracovat "soucasne" vice
lidi nez odpovida licenci nebo vyladenemu vykonu, pak se pripojim k databazi
jen na dobu nezbytne nutnou pro vycteni dat, pokud to vyhovuje charakteru
ulohy. Hned potom pripojeni zrusim, abych umoznil praci i dalsim lidem.
Takze pokud udelam aplikaci, ktera mam 5 threadu kazdy nacitajici data ze
serveru
a tuto aplikaci pusti 5 klientu a mam koupenych 5 licenci tak porusim
licencni smlouvu?
Nikoliv.
Zdrejme jsi si nevsiml, ze licencovani u MS SQL a
take u WIN NT (ano je to stejne) je mozno dvema zpusoby
a) per seat
- kazdy muze mit connectionu kolik chce, tedy napr. muzes vyse uvedeny
pripad.
b) per connection
- pak by jsi asi mohl mit problem, ale podle mne je to zcela nesmyslna
licencni politika
(i v pripade WINNT jako fileserveru).
Ted je samozdrejme otazka co MSDE udela pokud se budu chovat jak jsem popsal
tj. ze jeden klient
dokaze vyzrat vsechny "optimalizovane connections".
Ja to testoval a zjistil jsem nasledujici. Pokud se jedna o connections,
ktere maji pouze nedocteny
result set (rozumne velikosti s rozumnou pameti serveru, nemluvim tu o 25
result setech s 1mil. radek) tak je vse OK i
pri mnohem vice connectionech.
> > > > Proc ne TDBEdit? Nad datasetem je zcela bez problemu nebo
> > > > resp. uplne stejne dobry jako TCustomMaskEdit jehoz je dedicem.
> > >
> > > DBEdit je dobry pro lokalni souborove databaze. Ale povazuji ho za
> > > naprosto nevhodny pro SQL databaze na siti. Proc:
> > >
> > > 1. Udrzuje otevreny dataset, i v dobe, kdy je to zcela zbytecne. 2.
> > > Vola metody Insert (ci Edit) a Post, ktere se museji vnitne (v BDE)
> > > tak jako tak prekladat do SQL prikazu. 3. Pokud jiny uzivatel zmeni
> > > stejna data driv, DBEdit umi pouze poznat zmenu a nedovoli data
> > > prepsat. Porizena data jsou tim padem ztracena, pokud je ovsem
> > > neprelejes do pomocnych promennych. 4. Operace s daty nad SQL
> > > databazi musi probihat prostrednictvim SQL prikazu, je tedy
> > > rozumnejsi si toto ovladat sam, nez to sverovat komponentam, jejichz
> > > vnitrni prace je nepruhledna a nedokumentovana. Chci-li tedy neco v
> > > databazi upravit, edituji data zasadne mimo DB komponenty, a pak
> > > volam bud ulozenou proceduru nebo sestavim sam prislusny SQL prikaz
> > > (ci spoustim transakci). Takto si snadno zajistim bezproblemovy chod
> > > programu, zjisteni nastalych zmen a moznost dodatecnych oprav.
> > > Zbysek Hlinka
> >
> > Bud mluvis o necem jinem (nepletes si to s TTable?),
> > nebo jsi asi nikdy DBEdit nepouzil a meles
> > uplne nesmysly ktere jsi jen slysel.
> > V kazdem pripade tady nerozsiruj HLOUPOSTI!!!!!
> > Sorry, ale to co jsi tu napsal o DBEditu
> > opravdu neni ani trochu pravda.
> > Rob
> Mohl bys nam vsem tedy zjevit pravdu o DBEdit, prosim?
> Pred tim vsak uvedu par veci:
> Konfigurace: TDatabase pripojena na MS SQL Server, databaze pubs, TQuery:
SLQ = select * from authors, RequestLive:=true, Navigator. DBEdit napojeny
na au_lname.
> ...
> Pri pouziti TTable dostanes obdobne vysledky
> Zbysek Hlinka
Nic z toho neni vlastnosti DBEdit, ale chovani TQuery.
Jak jsi spravne rekl pri pouziti TTable dostanes obdobne vysledky,
ale ne stejne, protoze TTable se chova jinak.
Tim je dokazano, ze za to DBEdit nemuze :-)
Cele to zavisi na tom jak s TQuery zachazis.
Ale neni zadny problem udelat aplikaci pouzivajici DBEdit a nemajici
prakticky zadny z uvedenych problemu.
Takhle jsou, ale naprogramovany maximalne dema k Delphi!
Zadny normalni programator se s tim nespokoji.
A v zadnem pripade neni pravdou, ze uvedene problemy
implikuje pouziti DBEditu.
Je to vlastnost LIVE QUERY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ad 1.
Pokud pustis uzivatele primo na data tak to ma asi takove vlastnosti
jak popisujes.
Normalni je vytahnout si pro editaci jen jediny record pomoci
select * WHERE PrimaryKey=XYZ
ad 2.
Volani Edit (Insert) je relativne prirozena vlastnost Editacni radky.
Jak by jsi asi chtel aby to fungovalo (pokud chces dovolit editaci
az po explicitnim stisku nejakeho tlacitka tak od toho mas property AutoEdit
u DataSource).
Post DBEdit nevola nikdy!
ad 3.
Pokud jiny uzivatel zmeni data DBEdit nic nerozpoznava.
O rozpoznani se muze (ale nemusi postarat) SQL prikaz UPDATE WHERE podminka.
ad 4.
Staci zapnout CachedUpdates a mas plnou kontrolu nad tim co se pri
updatovani dat odehrava.
Tve tvrzeni je tedy NEPRAVDIVE, VELMI ZAVADEJICI
a kdyby jsi zaroven s tim nabizel nejaky konkurencni produkt
tak bych te obvinil z nekale souteze.
Takhle mam pocit, ze chces byt jediny, ktery zustane u Delphi
a ostatni odradit.
Jen kydas hnuj na neco cemu absolutne nerozumis!
Sorry ted te chci nastvat protoze jsi nastval ty mne :-)
Proste jsi si o to rekl, kdyz neumis priznat, ze nemas pravdu :-(
Rob
Jak schovat MDI wokno ?
[*] Robo Fujak <fujak(zv)px.psg.sk> - 15.12.1999 20:19:50
Prirad v udalosti FormClose Action := caFree. Formular bude odstraneny s pamati.
Robo
----- Original Message -----
From: bures
To: delphi-l(zv)fwd(tec)cz
Sent: Wednesday, December 15, 1999 1:04 PM
Subject: Jak schovat MDI wokno ? Ahoj lidi
Mam tu takovy maly a zrejmene nepodstatny promlem. Kdyz mam nejaky form jako FsMdiChild tak
nelze uplne schovat pouze se minimalizuje...
Neni mozne aby se ten form schoval uplne ???
me napadlo pouze toto :
schovat :
form3.FormStyle := FsNormal;
form3.Hide;
ukazat:
form3.FormStyle := FsMdiChild;
form3.Show;
Ale toto reseni se mi vubec nelibi ... nelze to udelat nejakym jinym zpusobem ?
Predem dekuji za odpovedi Vlada
startovaci okno - jine reseni
[*] Martin Pe�ek <pesek.martin(zv)mymail(tec)cz> - 15.12.1999 21:18:24
Zdravim !!!
Mno, tak jo no, ja to pochopil trosku jinak a proto mi to asi neslo spustit
;) Hlavni je, ze to uz funguje a zo tu mu dekuju. Cau Martin.> Ale vzdyt prave toto Ti ten clovek (marcant) poradil...
> Ten FrmAbout byl vytvorel (ve smyslu navrhnut) v IDE
> a vytvoren (ve smyslu alokovani pameti), zobrazen a
> updatnut pred vytvorenim (ve smyslu alokovani pameti)
> hlavniho formu aplikace.
>
> Dobra.
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Erik Salaj <winsoft(zv)napri.sk> - 15.12.1999 21:38:52
> Tridim s tim stringy a svoje struktury (recordy).
> Predavane pole tam mam typu Any, v Delphi je tusim mozne pouzit Variant.
>
> type
> TMensiNeboRovnoProc = function (a,b : Variant): boolean;
>
> procedure Trid (leq: TMensiNeboRovnoProc; var SArray []: Variant);
> procedure Prohod(i, j: integer);
> var
> TempVar: Variant;
> begin
> TempVar := SArray[i];
> SArray[i] := SArray[j];
> SArray[j] := TempVar;
> end
> begin
> file://ruzne opicky pro tridici algoritmus
> ...
> file://Test a prohozeni:
> if (not leq(SArray[i], SArray[j])) then Prohod(i, j);
> ...
> end;
Mozno Ty si spokojny s tymto riesenim ale ja nie som. Napr. uz len
porovnavacia funkcia umoznuje porovnavat hrusky s jablkami,
napr. aky vyznam ma leq(5, 'abcd')? Tento vyraz ale prelozis
aj spustis uplne bez problemov (cize typova kontrola je v ...).
Podobne riesenie (akurat efektivnejsie voci Variantom) je pouzitie
smernikov. Tvoje riesenie ma aj cely rad inych nedostatkov
(ak by bolo dobre, ver mi, ze by uz davno bolo implementovane
vo VCL a casto pouzivane), pripomina mi skor workaround
(ze sa da nieco take urobit za urcitych specifickych
podmienok a obmedzeni) nez skutocne riesenie. Odpovedou
na riesenie tohto problemu je genericky typ, ten ale v Delphi
nie je podporovany, ale napr. C++ to umoznuje pomocou
tzv. sablon (templates).
Erik Salaj
ADMIN: Jakou databazi doporucite ?
[*] Mirek Junek <mjunek(zv)uo.fairnet(tec)cz> - 15.12.1999 21:41:58
Petre,
FF vypada zajimave, ALE
asi o tom budes povidat v Laznich Belohrad, ale mohl bys tu alespon strucne
popsat, jak se ve Flash Fileru obchazi to, ze tam neni SQL nebo neco
podobneho.
1.
Jak se treba smazou zaznamy starsi nez nejaky datum, jak se najde max
hodnota nebo provede soucet sloupce ? Je tam na to neco, nebo se to musi
sekvencne prochazet record po recordu ?
Webovske stranky TP software o tom mlci jako hrob.
2.
Jak se FF vyporadava s cestinou ? Jsou tam nejake zadrhely ? Umi to trideni
s CH ?
Staci strucne, diky, Mirek
----- Original Message -----
From: Petr Zahradnik <clexpert(zv)clexpert(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Wednesday, December 15, 1999 10:35 AM
Subject: Re: ADMIN: Jakou databazi doporucite ?
Puvodni zprava, kterou napsal Ren� Otisk dne 15 Dec 99,:
> Dalo by se to blize specifikovat jaka ktera na co a proc? Dik.
Tak konkretne muj pohled na databaze, ktere pouzivam:
Sybase Adaptive Server Anywhere - SQL Server s opravdu mnoha
moznostmi, ktere mnohdy konkurencni nemaji. Napriklad velmi
dobra ochrana dat, tedy moznost nastaveni opravdovych prav
na databazi, kodovani databazoveho souboru apod. Dale pak
treba nadherna replikace dat (hodi se napriklad, pokud ma
aplikace chodit i na noteboocich, ktere se obcas pripoji
a nebo se replikuji e-mailem, pres FTP apod.). V neposledni
rade kaskadni delete apod.
MSDE - to je velice vhodne tehdy, potrebuji-li vykon SQL,
ale aplikace neni tak draha, aby se vyplatil nakup licenci
za SQL Server. Jednoduse proto, ze to zakaznik nezaplati
a nebo chci 100% penez dostat ja a ne se s nekym delit.
MSDE je sireno zdarma, pracuje velmi dobre do 5 stanic,
ma sve nevyhody, ale je to plnohodnotny SQL Server. Zase
ho pouziji tam, kde se dostanu osobne, protoze dalkova
instalace je sice mozna pomoci CD, i kdyz je potreba
trochu znat prostredi, kam se to instaluje. Pres Internet
absolutne nevhodne, protoze je to silene velike pro stahnuti.
FlashFiler - nepodporuje zatim SQL, takze prestoze zvlada
gigabyty dat, jeho pouziti je omezene ruznymi kriterii.
Hodi se ale na mnoho aplikaci, kde si jine databaze dokazi
predstavit jen stezi. Je to Client Server databaze, maka
bez upravy zdrojaku jak na jednom pocitaci, tak na siti,
treba i pres Internet. Zadne DLL, zadna instalace, zadne
BDE, jsou to bud jen dva EXE (Server a aplikace) a nebo
jen jeden EXE (aplikace, pokud je to pro jeden pocitac,
ne na siti). Bezpecnost, kodovani databaze, 100% transakce,
zadne problemy. Idealni pro software na CD, pro stazeni
z Internetu (single EXE prida asi 160 kB)...
Takze znovu opakuji, kazda databaze ma neco, kdokoliv sem
muze doplnit zase vyhody tech jeho, tedy InterBase, Oracle,
plneho MS SQL Serveru apod. Pokud delas jen jeden typ
aplikaci a nic jineho, vystacis s jednou databazi. Jestli
ale (jako ja) delas vice projektu, pak budes potrebovat
vic databazi, protoze urcite chces pouzit to, co je pro
ten dany ucel nejlepsi.
S pozdravem
Petr Zahradnik, pocitacovy expert
Autorizovany dealer TurboPower Software... knihovny pro Delphi
==============================================================
=== Petr Zahradnik - Computer Laboratory ===
=== Obvodova 740/14, PO BOX 15, 400 07 Usti nad Labem 7 ===
=== telefon: 047-5500610, telefon/fax: 047-5501627 ===
=== mobilni telefon GSM (hotline): 0602-409601 ===
=== http://www.clexpert(tec)cz/ clexpert(zv)clexpert(tec)cz ===
==============================================================
ICQ: 21215917, PGP vitano
Jakou databazi doporucite ?
[*] Jaro <jaro(zv)sinea(tec)cz> - 15.12.1999 13:03:11 -0800
Vyhodou IB (Interbase) je, ze D5 obsahuje primou konektivitu, ktera se mi
jevi jako podstatne lepsi nez BDE.
Myslim, ze z hlediska ceny je vsak asi vyhodnejsi MSSQL 7.
Krome toho si myslim, ze do budoucna bude u nas tento server
diky strategii MS rozsirenejsi.
Jinak zreme nejlevnejsim server je asi Anywhere a myslim, ze si
jeho schopnosti Zahradnik pochvaluje. Jedinou jeho zrejme stalou
nevyhodou je pristup pouze pomoci ODBC. Ja osobne nemam rad
prilis mnoho prostredniku, jako napr. Klient -> BDE -> ODBC -> Server
Vice prostredniku muze byt zdrojem vice chyb a pak asi tez delsi odezvy.
Jaro
>
> ----- Original Message ----- >
> > 2.) Problemy byly se spatnou komponentou v Delphi a s problemy okolo
> TCP/IP
> > socketu na W9x/NT. Pokud vim, tak od verze D5, Win98/NT4sp3 a IB5.5 je
vse
> > ok.
>
> Snad bych jen doplnil, ze vse je u IB ok od verze 5.6 verze 5.5 mela par
> chyb, ktere
> mohly zneprijemnovat zivot, staci se podivat do fora IB. Update na 5.6 z
5.5
> je pro NT zdarma.
>
> Pavel
>
>Memo1
Jak zjistit, ze jsem na poslednim zaznamu datasetu
[*] Jaro <jaro(zv)sinea(tec)cz> - 15.12.1999 13:09:58 -0800
Problematicke je ovsem pouziti metody RecordCount.
Je tedy nutno pocitat s tim, ze funkce bude stejne tak pomala, jako je
metoda RecordCount. Pro vetsi tabulky bude tedy nevhodna tak� nevhodn�.
Jaro
> Pavel Bocek wrote:
> > poradi nekdo, jak zjistit, jestli aktualni zaznam tabulky je ten
posledni?
> > Potreboval bych neco podobneho jako je EOF, ale aby se nastavil
> > *vzdy* kdyz prejdu na posledni radek datasetu.
>
> Ahoj,
>
> Nevim jestli je to presne ono, ale slo by to (ponekud nehezky) udelat
> takhle. Ma to vsak mala omezeni, napriklad to nemuzes dat do udalosti
> TDataSet.Before/AfterScroll a podobne.
>
> function IsLastRecord(DS: TDataSet): Boolean;
> var
> BM: TBookMark;
> begin
> with DS do
> if (not Active) or Bof or Eof then Result := False else
> if IsSequenced then Result := (RecNo = RecordCount) else
> begin
> BM := GetBookmark;
> DisableControls;
> try
> Next;
> Result := Eof;
> GotoBookmark(BM);
> finally
> EnableControls;
> FreeBookmark(BM);
> end;
> end;
> end;
>
> --
>
> Petr Vones, amatersky programator
>
Jak schovat MDI wokno ?
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:31:39
bures wrote:
> Mam tu takovy maly a zrejmene nepodstatny promlem. Kdyz mam nejaky form
> jako FsMdiChild tak
> nelze uplne schovat pouze se minimalizuje...
> Neni mozne aby se ten form schoval uplne ???
Ahoj,
Toto je dano speficikaci MDI rozhrani od Microsoftu, nelze jej skryt. Po
Internetu jsem sice videl obcas nejake triky s prepisovanim WM_PAINT zprav
a podobne, ale to se mi jevi jako silenost ...
--
Petr Vones, amatersky programator
Image Listy
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:31:45
Radek KALA wrote:
> > > Mam na formulari nekolik ImageListu a v nich ruzne obrazky, ktere
> > > za runtime vykresluji. Obcas se stane, ze se tam ty obrazky zmrsi.
> UP#3 nainstalovany mam. Co se tyka IE, tak je to 4.0
> (4.72.3110.4).
Ahoj,
Udelej update na IE4.01SP1 nebo rovnou na petku, ale asi to nepomuze.
> Muj problem nespociva v tom, ze by aplikace nezobrazovala ikonky
> (to uz znam - problem s COMCTL32), ale v tom, ze aplikace
> zobrazuje obrazky nejak podivne zmrsene (treba jen divnou modrou
> barvou a navic lze jen tezko rozpoznat, co na tom obrazku vlastne
> je).
Zkousel si to i na jinem pocitaci ?
--
Petr Vones, amatersky programator
Prevencia pred a oprava poskodenia databazovych su
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:32:56
Ondrej Jaura wrote:
> Existuju postupy (jeden uz bol ohladne znovuvytvorenia dBase indexovych
> suborov poslany), komponenty, BDE API funkcie na riesenie tychto nepeknych
> problemov?
Ahoj,
Pro Paradox tabulky existuji TUtility, ktere ti umozni nektere opravy
poskozenych tabulek. Najdes je tady:
http://www.borland.com/devsupport/bde/utilities.html
> Ako su nachylne dBase a Paradox tabulky na napr. vypadok prudu, nahodne
> vypnutie pocitaca (ja som ho nevypol, to same :), atd. ?
Hodne. Probira se to zde pomerne casto, v sitovem provozu jsou souborove
databaze znacne nespolehlive, z dnesniho pohledu se da rict ze uz temer
nepouzitelne. U mensich jednouzivatelskych aplikaci je podle meho nazoru
jejich pouziti jeste unosne, ale musis dusledne provadet zalohovani dat
(alespon denne) a UPSka neni taky k zahozeni.
Pak je tu jeste Access, ktery je alespon podle nekterych reakci zde na tom
z ne-SQL databazi malinko lepe. U neho je vsak otazka, jak je to presne s
licencnimy podminkami pro sireni aplikaci. Pokud totiz pouzivas pristup k
databazim pres ADO, tak instalaci MDAC ziskas zaroven i pristup k Access
databazi (coz v pripade BDE bylo mozne jen s instalovanym Accessem). Takze
v tomto by bylo ale lepsi, kdyby odpovedel nekdo povolanejsi ...
--
Petr Vones, amatersky programator
Reindexace po II
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:32:04
Bednar��k Dalibor wrote:
> Zjistil jsem ale, ze reindex z Delphi mi udela vetsi index, nez kdyz jsem ho
> preindexoval FOXkou..
> Napadaj me veci, zda li ten index bude korektni. Zatim to sice funguje a
> tvari se ze jo, ale kdo vi...
Ahoj,
Zkus ten index pouzit zpetne Foxkou, to je asi jediny test. Uz si to presne
nepamatuju, ale vim ze jsem tusim v BDE 5.00 narazil na nejaky problem s CDX
indexy. Konkretne v pripadech, kdy tabulka obsahovala smazane zaznamy. Muzes
zkusit udelat index s podminkou vyrazeni deleted zaznamu, jestli se to nejak
zmeni.
--
Petr Vones, amatersky programator
DB-aware komponenty (Was: D5 - ano ci ne ?)
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:33:51
Zbysek Hlinka wrote:
> > > DBEdit je dobry pro lokalni souborove databaze. Ale povazuji ho za
> > > naprosto nevhodny pro SQL databaze na siti. Proc:
>
> Pred tim vsak uvedu par veci:
> Otviram Query.Open, listuji navigatorem. Najdu si nejakou vetu a zacinam v
> DBEditu menit zaznam (vkladam prvni znak). Bez otevreneho Query operaci
> nelze provest, tedy je dokazana pravdivost bodu 1.
> Zaroven TDBEdit.KeyPress vola metodu FDataLink.Edit, tedy dokazan bod 2.
Ahoj,
Tohle je ale spis dano obecnym pristupem k datum v Delphi prostrednictvim
DataSetu a DB-aware komponent. Nevyresilo by to pouziti CachedUpdates ?
Podobny mechanismus ma tusim i ADO (mozna ted placam, v databazich se zase
tak nevyznam :-) pomoci metod TCustomADODataSet.UpdateBatch a spol.
--
Petr Vones, amatersky programator
Sdilena konfigurace
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:34:09
Bene� Jaroslav wrote:
> mam problem s verejnym typovym konfiguracnim souborem, ktery je ulozen na
> sitovem (vzdalenem) disku, u exe. Mam problem s neustalym hlasenim ze
> pristup byl odmitnut (uzivatel musi odklepnout). Obvykle je program spusten
> na cca 30 stanicich (ale muze byt i na vice) a vsechny instance neco ctou a
> zapisuji do tohoto souboru, ktery je spolecny. Jak bych mel resit konflikt
> pri zapisu do tohoto souboru (s predpokladem ze se sejde vice nez jeden
> pozadavek na zapis). Psano v D2, bezi pod ruznymi Windows (95/98/NT), soubor
> je bezny typovy vel. cca 30 KB.
Ahoj,
Co to resit jinak, tedy misto sdileni souboru si vytoris nejaky server a
pres neho budes predavat pozadavky na cteni/zapis konfigurace. Komunikaci
aplikace se serverem udelas treba pres TCP/IP nebo s pouzitim DCOMu.
--
Petr Vones, amatersky programator
Zmenseni obrazku
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:36:25
> Petr Voborn�k wrote:
> Mam obrazek 300x800 a chci z nej udelat obrazek 100x100 (metodou stretch,
> tedy aby tam bylo videt vsechno) a ulozit to na disk (nejspis jako JPG
> nebo treba BMP).
Ahoj,
Napriklad takhle:
uses
Jpeg;
procedure SaveToJpegStretch(Graphic: TGraphic; const FileName: TFileName;
TargetWidth, TargetHeight: Integer);
var
JpegImage: TJPEGImage;
Bitmap: TBitmap;
begin
JpegImage := TJPEGImage.Create;
try
Bitmap := TBitmap.Create;
try
Bitmap.Width := TargetWidth;
Bitmap.Height := TargetHeight;
Bitmap.Canvas.StretchDraw(Rect(0, 0, TargetWidth, TargetHeight), Graphic);
JpegImage.Assign(Bitmap);
JpegImage.SaveToFile(FileName);
finally
Bitmap.Free;
end;
finally
JpegImage.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Graphic: TGraphic;
begin
Graphic := GetFormImage;
try
SaveToJpegStretch(Graphic, 'Form1.jpg', 100, 100);
finally
Graphic.Free;
end;
end;
--
Petr Vones, amatersky programator
Language Drivers of Table and Index do not match
[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 15.12.1999 23:37:09
Ondrej Jaura wrote:
> Pri pokuse otvorit tabulky (vytvorene v D4, DBF, dBase SLO cp852) v D5
> mi hadze chybu "Language Drivers of Table and Index do not match".
> Pozrel som sa na tabulky Database Desktopom - v strukture tabulky mi
> vyhodil, ze mam driver "ASCII Ansi", co je znacne odlisne od nastaveneho
> D4.
Ahoj,
Patrne doslo k nejakemu zmatku s oznacenim driveru v tabulce. Neni to tim,
ze jsi ji treba jednou oteviral pres DBASE driver a po druhe pres FOXPRO ?
Melo by to jit odstranit reindexaci. Tady je nastroj "Table Interrogator"
ktery zobrazuje pomerne dost informaci o tabulkach:
http://www.borland.com/devsupport/bde/utilities.html
--
Petr Vones, amatersky programator
Image Listy
[*] Pavel Malinsk� <spiderland(zv)seznam(tec)cz> - 16.12.1999 00:15:04
Ahoj,
Jen na okraj, nova verze COMCTL32 v5.8
je na http://www.microsoft.com/msdownload/ieplatform/ie/comctrlx86.asp
S pozdravem
==================================
> Pavel Malinsky; spiderland(zv)seznam(tec)cz <
>================================<
> ...The Truth Is Out There... <
==================================
GSM: 0602 652 203
----- Original Message -----
From: Petr Vones <pvones(zv)mbox.vol(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Wednesday, December 15, 1999 11:31 PM
Subject: Re: Image Listy
> Radek KALA wrote:
> > > > Mam na formulari nekolik ImageListu a v nich ruzne obrazky, ktere
> > > > za runtime vykresluji. Obcas se stane, ze se tam ty obrazky zmrsi.
>
> > UP#3 nainstalovany mam. Co se tyka IE, tak je to 4.0
> > (4.72.3110.4).
>
> Ahoj,
>
> Udelej update na IE4.01SP1 nebo rovnou na petku, ale asi to nepomuze.
>
> > Muj problem nespociva v tom, ze by aplikace nezobrazovala ikonky
> > (to uz znam - problem s COMCTL32), ale v tom, ze aplikace
> > zobrazuje obrazky nejak podivne zmrsene (treba jen divnou modrou
> > barvou a navic lze jen tezko rozpoznat, co na tom obrazku vlastne
> > je).
>
> Zkousel si to i na jinem pocitaci ?
>
> --
>
> Petr Vones, amatersky programator
>
>
>
Jakou databazi doporucite ?
[*] chaloupka(zv)mboxzn(tec)cz (Chaloupka Pavel) - 16.12.1999 00:17:23
Zdar,
ja pouzivam pro nektere projekty IB 5.5 + FreeIbComps. Je to celkem bez
problemove a nemusi se to udrzovat. V soucasne dobe zkousim WinBase od
Software602 a komponenty pro primy pristup WDE. WinBase je VELICE levna a
single user se siri Free. Pripada mi dost podobna Oraclu. Pekne je tam
udelane ladeni triggeru a procedur. Vyberu, ktere pripojeni budu krokovat,
nastavim breakpointy a v IDE ladim vizualne (treba jako v Delphi), moc
hezke. Rychlostne podle vlastnich experimentu je na urovni InterBase.
Existuje i na Linux a FreeBSD.
Pavel Chaloupka
E-Mail chaloupka(zv)mboxzn(tec)cz
V�voj SW (Windows NT, Linux, SQL Datab�ze, Internet)
MSDE
[*] Radoslav =?iso-8859-1?Q?Krehl=EDk?= <heretic(zv)softok(tec)cz> - 15.12.1999 15:20:39 -0800
Hi,
Enteprise manazer neni bohuzel soucasti MSDE (to je jen hole ocesane jadro
SQL7 velkostne omezene). Pokud chces spravovat MSDE lze to delat oficialne
pres MSACCESS 2000 nebo si nainstaluj ten Enteprise manager
z instalacniho CDka SQL7, v podstate vyhovuje i trial verze.
Heretic-X, SOFTWARE specialist,<hx.mutant(tec)cz>
ADMIN: Jakou databazi doporucite ?
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 16.12.1999 00:23:51
Puvodni zprava, kterou napsal Mirek Junek dne 15 Dec 99,:
> asi o tom budes povidat v Laznich Belohrad, ale mohl bys tu alespon strucne
Ano, urcite tam o tom budu povidat, pokud to vsechno stihnu :)
Nebo pokud me nevyvedou...
> popsat, jak se ve Flash Fileru obchazi to, ze tam neni SQL nebo neco
> podobneho.
K tomu jeste malou poznamku - FlashFiler zatim SQL nepodporuje,
ale do dalsi verze se pocita s filtrovanim na strane klienta
i s nejakym SQL. Ted existuje nadstavba nad FlashFiler, ktera
SQL podporuje. Je free, ale ja ji nepouzivam, protoze FlashFiler
pouzivam tam, kde neni potreba SQL.
> 1.
> Jak se treba smazou zaznamy starsi nez nejaky datum, jak se najde max
> hodnota nebo provede soucet sloupce ? Je tam na to neco, nebo se to musi
> sekvencne prochazet record po recordu ?
Ano, musis s tim zachazet jako s tabulkou. Da se nasadit filtr,
ktery zatim pracuje na klientu, pozdeji bude i na serveru.
> Webovske stranky TP software o tom mlci jako hrob.
:) Pisi preci, ze je to tabulka, tedy zadne SQL.
> 2.
> Jak se FF vyporadava s cestinou ? Jsou tam nejake zadrhely ? Umi to trideni
> s CH ?
O tom pisi na svych strankach FlashFileru. Ano, vyporadaji
se s cestinou. Funguje to tak, ze pokud chces tridit cesky,
tak ta pole nevolis String, ale AnsiString (v tabulce).
Pak musis zajistit, aby server i klient mely nastaveny
ceske prostredi. No a v pripade AnsiString FlashFiler pro
trideni vola sluzby operacniho systemu. Takze to funguje
pekne cesky.
PS: A jestli priste nebudes spravne quotovat, dostanes
hned napomenuti administratora. Psal jsem to sem uz nekolikrat
a stale nekomu za to musim nadavat...
S pozdravem
Petr Zahradnik, pocitacovy expert
Autorizovany dealer TurboPower Software... knihovny pro Delphi
==============================================================
=== Petr Zahradnik - Computer Laboratory ===
=== Obvodova 740/14, PO BOX 15, 400 07 Usti nad Labem 7 ===
=== telefon: 047-5500610, telefon/fax: 047-5501627 ===
=== mobilni telefon GSM (hotline): 0602-409601 ===
=== http://www.clexpert(tec)cz/ clexpert(zv)clexpert(tec)cz ===
==============================================================
ICQ: 21215917, PGP vitano
Zrychleni aplikace
[*] Infra Red <nezadal(zv)volny(tec)cz> - 16.12.1999 00:42:07
Ahoj,
v ramci diplomove prace zjistuji pomoci metody "box dimension" fraktalni
dimenzi obrazu.
Obrazem je cernobila bitmapa a velikosti cca 17000x4000 pixelu. Vypocet trva
cca 10 hodin.
na P 200, 32 MB RAM. Prikladam smycku, ve ktere to travi vetsinu casu.
Nepomohl by mi nekdo jak aplikaci zrychlit ?
Dekuji za kazdy napad.
Martin Nezadal
j := 0;
repeat
i := 0;
repeat
Application.ProcessMessages;
d1 := false; d3 := false;
for j1 := 0 to n-1 do begin
for i1 := 0 to n-1 do begin
if Obr.Canvas.Pixels[i+i1,j+j1]=$00000000 then d1 := true;
if Obr.Canvas.Pixels[i+i1,j+j1]=$00ffffff then d3 := true;
end;
end;
if (d1 = true) and (d3 = false)then Inc(Data[poradi,1]);
if (d1 = false)and (d3 = true) then Inc(Data[poradi,3]);
if (d1 = true) and (d3 = true) then Inc(Data[poradi,2]);
Inc(i,n);
until i > A.X-1;
Inc(j,n);
until j > A.Y-1;
Obr je TBitmap
A je TPoint - pravy dolni roh obrazku
Prehrani wave pres DirectSound
[*] Lukas Voborsky <xvobl03(zv)vse(tec)cz> - 16.12.1999 00:53:15
Ahojte,
potreboval bych prehrat wave soubor pres DirectSound. Jistych vysledku jsem
docilil pouzitim knihovny DelphiX od toho Japonce (po nekolika upravach,
aby to fungovalo pod D4). Delam to takto:
DXSound.Initialize;
try
DXSound.Primary.LoadFromFile(P);
DXSound.Primary.Play(0); // tu nulu jsem tam jen tak strelil
while DxSound.Primary.Playing do
Sleep(100); // trosku zbesilost, ale co...
finally
DXSound.Finalize;
end;
kde DXSound: TDxSound;
Bohuzel takto prehraju pouze nezkompresovany soubor PCM. Netusite nekdo,
jak tedy prehrat jakykoli wave, na ktery je nainstalovany codec? Asi to
nepujde tak jednoduse :-(
Lukas
-==============================================================-
mailto: voborsky(zv)menza.mff.cuni(tec)cz ICQ: 21084410
www: http://come.to/voborsky tel. 8551040-9 l. 393
-==============================================================-
PGP podporovano
trideni was: D5 - ano ci ne ?
[*] Jaro <jaro(zv)sinea(tec)cz> - 15.12.1999 16:12:45 -0800
> S tim nelze nez souhlasit. Zde jsme se ale bavili o specifickem okruhu
> aplikaci, presneji o interaktivni praci s daty. SQL servery a SQL jako
> takove byly koncipovany v dobe, kdy byl typycky davkovy system prace (a
> klienti byly terminaly). Pokud je system prace davkovy, je jednoznacne
> vyhodnejsi volit spise reseni pracujici na serveru. Ale s mirou
> interaktivity roste intenzita komunikace mezi klientem a serverem vcetne
> objemu prenasenych dat. Je jasne, ze cim vice prace prevezme klient, tim
je
> odezva lepsi a plynulejsi (odpada predevsim rezie na komunikaci a prenos
> dat) a to i v pripade, ze klient je vyrazne slabsi stroj nez server.
Tak s tim ja bych tedy velmi silne nesouhlasil! To ze technologie
client/server
ma sve koreny uz v pocitacovem davnoveku, jeste neznamena, ze je nevhodna
i pro interaktivni zpusob prace. Predevsim to do znacne miry zavisi na
charakteru ulohy,
na objemech dat a velikosti jejich segregace. Technologie SQL je zalozena
na mnozinovych principech. Ja mohu interaktivne a velmi intenzivne pracovat
s podmnozinou dat. Napr. z nekolikalete historie zaznamu me zajima aktualni
mesic
a pouze nektere polozky. To byva maly zlomek dat. Tento zlomek dat
presouvam na klienta a tam ho mou dale zpracovat. Server zajisti vlastni
segregaci
dat a pripadne i setrideni vybranych dat.
Jestli tvrdis, ze ze cim vice prace prevezme klient, tim mene rezie a naroku
na komunikaci, tak ja tvrdim, ze to byva presne naopak. Jestli ma klient
prevzit vetsinu cinnosti, pak mu musim zpravidla dopravit take vetsinu dat.
(nad cim jinym by ty cinnosti delal)
Ovsem posilat po siti KB, MB nebo dokonce GB dat, to je zatracene velky
rozdil. Co je platny, ze klient provede rychle nektere operace, kdyz
vetsinu casu ceka na dopravu dat? A jestli mas na mysli interaktivni praci
pouze s malymi objemy dat, pak na to ani technoligii C/S mozna
nepotrebujes.
Prace se serverm nelze zjednodusit jenom
na problem davkoveho zpusob prace proti interaktivnimu zpusobu.
Krome mnoha dalsich vlastnosti serveru jde predevsim prave o segregaci dat
a tudiz o odtizeni komunikace. Nebo myslys, ze dotaz na SUM pro milion
polozek, ktery po siti vrati jenom jedno cislo, tedy par bitiku, zatizi sit
vice nez kdyz stahnu milion zaznamu na klienta a tam to sectu?
Rad bych take pripomnel, ze technologie C/S a predevsim servery od
dob sveho vzniku prodelaly nezanedbatelny vyvoj, takze argument, ze
je to stara technologie a na dnesni zpusob prace se tolik nehodi je take
dosti lichy. V neposlednie rade stale plati, ze hardware i software upgrade
serveru je stale mene narocny nez upgrade desitek klientu a vykonu site.
Jaro
To je
> realny fakt. Nejde tedy jen o problem trideni, ten je jen zastupcem
> (prikladem) obecnejsi problematiky. Soucasnym trendem je vytvareni vysoce
> interaktivnich aplikaci nad SQL servery. To samozrejmne prinasi specificke
> problemy vyzadujici specificka reseni.
>
> >Nelze kategoricky
> >rici, co je lepsi a uz vubec nelze argumentovat zatizenim serveru (bez
> >ohledu na ostatni
> >pozitiva a negativa). Od toho prece databazove servery jsou, aby
provadely
> >narocnou praci
> >a ulehcili tak svemu okoli.
>
> Ze servery jsou urceny pro narocnou praci a ulehceni klientum je zasadni
> omyl. Servery jsou urceny pro CENTRALIZACI zpracovani, tedy pro
ZJEDNODUSENI
> celkoveho schematu reseneho problemu. Ze servery delaji vetsinu prace je
> dusledek, nikoliv pricina proc jsou vytvareny. A navic je to dusledek ne
> vzdy zadany.
>
> Hodne zdaru
>
> Pavel Cisar <pcisar(zv)atlas(tec)cz>
> Delphree.org CEO
> http://delphree.clexpert.com
> Nexus project coordinator
> http://delphree.clexpert.com/pages/projects/nexus/default.htm
>
>
Obrovske soubory *.lck pro PDOX tabulky
[*] Libor Neklapil <neklapil(zv)iol(tec)cz> - 16.12.1999 01:15:52
Nevim z jakeho duvodu mi zacinaji nabobtnavat soubory zamku (*.LCK) pro
tabulky Paradoxu v sitovem provozu. Jedna se i o 5MB, pricemz normalne maji
asi do 20kB.
Libor Neklapil
neklapil(zv)iol(tec)cz
trideni was: D5 - ano ci ne ?
[*] Jaro <jaro(zv)sinea(tec)cz> - 15.12.1999 17:34:17 -0800
> Jura napsal
> Tohle je taky hloupost. Mas mozna na mysli nejakou konkretni praci.
> Obecne rozhodne ne. Treba priklad s tridenim - kdyz je potreba setridit
> select vracejici milion zaznamu a klient se chce podivat napr. na prvnich
> deset. Rikas, ze je jasne, ze kdyz prevezme klient to trideni, ze bude
> odezva lepsi nez kdyby data setridil server. Skutecne si to myslis?
Ten kdo si tohle mysli, jakoby zapominal na to, ze
ta data se na klienta musi nejdrive dopravit a ze jejich vlastni doprava
zejmena pri vetsich objemech dat bude rozhodne trvat dele nez
vlastni vypocetni operace.
Pokud by takovy pristup k datum pouzivalo vice klientu, tak se
sit rychle zahlti. Coz teprve site typu VAN.
Jestli ma teprve klient provadet segregaci a trideni dat, pak neni
C/S potreba a je mozne pouzit klasicke souborove sdileni dat.
Pak totiz jsou vlastnosti serveru redukovany pouze na datovou bezpecnost
a vynalozene naklady za jeho porizeni se mozna nevyplati.
Souhlas�m proto s Jurou
Pavlova myslenka, ze: "servery delaji vetsinu prace je dusledek,
nikoliv pricina proc jsou vytvareny" mi pripada dosti zcestna.
Vubec prece nejde o to, aby server delal vetsinu nebo mensinu prace, ale o
to, aby delal takovou praci, ktera je pro neho vhodnejsi z hlediska
charakteru te prace. Podle charakteru ulohy pak muze byt takove prace vice
nebo mene. Zpravidla jde o rychlost, ale zdaleka ne vzdy. Je tu otazka
transakci, sekv. zpracovani a pod. Klient nemuze nektere operace provadet,
protoze narozdil od serveru nemuze vedet o soucasne cinnosti ostatnich
klientu a pod.
Jaro
Nastaveni aplikace pri startu
[*] lumir.delphi(zv)post(tec)cz - 16.12.1999 02:48:44
Ahoj vsichni,
vzdy kdyz neco delam v Delphi tak mam stejny problem, ktery se mi zatim nepodarilo vyresit ale pouze nejak obejit. Muj problem spociva v nastaveni aplikace pri startu napr. \"FormStyle:=fsStayOnTop;\" kdy mi spusteni hlasi vzdy stejnou chybu \"Cannot change visible in OnShow or OnHide.\". S timto problemem jsem se setkal mnohokrat. Nemohu pouzit ani FormCreate ani FormActivate. Kde se tedy takova nastaveni pri startu obvykle davaji?
Mam Delphi 3 Client/Server suite a MS W98 Second edition.
Diky za kazdou pomoc. Lumir.
Najit informace na internetu je snadne:
*** http://NAJDI.TO
SQL-zobrazeni shodnych zaznamu
[*] Karel Vlcek <vlcekk(zv)hotmail(tec)com> - 16.12.1999 02:10:56 pst
Prvni mail jsem sice necetl, ale snad by to mohlo byt tohle
UNION ALL
samotny UNION (u nekterych DB) vyhazuje duplicitni zaznamy,
docela mne ale prekvapuje, ze i v ramci jedne tabulky,
zatim jsem to moc nepouzival, tk mam malo zkusenoisti - tim to bude.
Karel Vlcek
===========================
poskytovani software
GSM : ++420 602 264812
mailto: Vlcekk(zv)hotmail.com
===========================
----Original Message Follows----
From: "Miroslav Hro��o" <hrossik(zv)atlas(tec)cz>
Reply-To: delphi-l(zv)fwd(tec)cz
To: <delphi-l(zv)fwd(tec)cz>
Subject: RE: SQL-zobrazeni shodnych zaznamu
Date: Thu, 16 Dec 1999 08:25:20 +0100
>Dobry den,
>
> mam nasledujici problem:
>
>Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
>Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s
tabulkou
>A.
>Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
>zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
>prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
>Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
>
______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
Seriove cislo
[*] Robo Fujak <fujak(zv)px.psg.sk> - 16.12.1999 05:33:31
Ahoj,
1)
poradte mi, prosim, ako a kde mam v hotovom programe spravit kontrolu na
seriove
cislo, nieco ako shareware verziu (napr: na obmedzenie tlace).
2)
ako v InterBase nadefinujem uzivatelov s roznymi pravami
pristup(ReadOnly,Read/Write) a roznymi pristupmi k tabulkam(napr.:
Uzivatel1->Tab1 - Read/Write,Tab2 - Read/Write; Uzivatel2->Tab1 - Read,
Tab2 - Read/Write, a pod.) a ci sa to vobec da. Ak nie, tak ako mam taky
pristup vytvorit?
Dakujem, Robo.
Nastaveni aplikace pri startu
[*] Robo Fujak <fujak(zv)px.psg.sk> - 16.12.1999 05:56:40
fsStayOnTop prirad pred samotnym zobrazenim formulara(nemozes menit tuto
valstnost pri zobrazenom formulari)
Form1 := TForm1.Create(Application);
with Form1 do begin
FormStyle := fsStayOnTop;
Show;
end;
,alebo ak ho mas zobrazeny tak ho najskor schovaj prirad fsStayOnTop a znovu
zobraz
with Form1 do begin
Hide;
FormStyle := fsStayOnTop;
Show;
end;
Robo.
----- Original Message -----
From: <lumir.delphi(zv)post(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Thursday, December 16, 1999 2:48 AM
Subject: Nastaveni aplikace pri startu
> Ahoj vsichni,
>
> vzdy kdyz neco delam v Delphi tak mam stejny problem, ktery se mi zatim
nepodarilo vyresit ale pouze nejak obejit. Muj problem spociva v nastaveni
aplikace pri startu napr. \"FormStyle:=fsStayOnTop;\" kdy mi spusteni hlasi
vzdy stejnou chybu \"Cannot change visible in OnShow or OnHide.\". S timto
problemem jsem se setkal mnohokrat. Nemohu pouzit ani FormCreate ani
FormActivate. Kde se tedy takova nastaveni pri startu obvykle davaji?
> Mam Delphi 3 Client/Server suite a MS W98 Second edition.
>
> Diky za kazdou pomoc. Lumir.
>
> Najit informace na internetu je snadne:
> *** http://NAJDI.TO
>
SQL-zobrazeni shodnych zaznamu
[*] k.machac(zv)iol(tec)cz - 16.12.1999 6:00:42
Dobry den,
mam nasledujici problem:
Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s tabulkou
A.
Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
Pokud mi nekdo dokaze poradit, tak predem dekuji za odpoved. Karel Machac
kmachac(zv)seznam(tec)cz
Reindexace po II
[*] Jan Fiala <jan.fiala(zv)iol(tec)cz> - 16.12.1999 06:02:58
----- Original Message -----
From: Petr Vones <pvones(zv)mbox.vol(tec)cz>
Bednar��k Dalibor wrote:
> Zjistil jsem ale, ze reindex z Delphi mi udela vetsi index, nez kdyz jsem ho
> preindexoval FOXkou..
> Napadaj me veci, zda li ten index bude korektni. Zatim to sice funguje a
> tvari se ze jo, ale kdo vi...
>Ahoj,
>Zkus ten index pouzit zpetne Foxkou, to je asi jediny test. Uz si to presne
>nepamatuju, ale vim ze jsem tusim v BDE 5.00 narazil na nejaky problem s CDX
>indexy. Konkretne v pripadech, kdy tabulka obsahovala smazane zaznamy. Muzes
>zkusit udelat index s podminkou vyrazeni deleted zaznamu, jestli se to nejak
>zmeni.
> Petr Vones, amatersky programator
FoxPro taky zvetsuje indexy, pokud se zrusi pouze (dele tag xxx) a vytvori se
znovu. Proste misto zabrane puvodnim indexem zustava, nevyuziva se a zezadu se
nalepi ten tag znovu. To bude asi ten problem s Paradoxem.Nejlepsi by bylo ty
indexy shodit a vytvorit znovu.
Jan Fiala
Jakou databazi doporucite?
[*] Tomas Peroutka <tperoutka(zv)drusoft(tec)cz> - 16.12.1999 07:17:06
Ahoj,
Pavel Chaloupka se tady zminil o Winbase602. Mate s ni nejake
zkusenosti? Jestli ano, tak bych uvital, kdyby o ni nekdo neco
blizsiho napsal.
Dekuji
Tomas Peroutka
tperoutka(zv)drusoft(tec)cz
---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.87 / Virov� b�ze: 47 - datum vyd�n�: 1.11.1999
Pristup k datum, Delphree a vubec was: D5 - ano ci
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 16.12.1999 07:35:06
> Mozno Ty si spokojny s tymto riesenim ale ja nie som. Napr. uz len
> porovnavacia funkcia umoznuje porovnavat hrusky s jablkami,
Ale hrusky s jablky ma vyznam porovnavat. Muzes tridit ovoce
podle hmotnosti, podle energetickeho obsahu, podle mnozstvi vitaminu...
Staci nadefinovat potrebnou relaci.
> napr. aky vyznam ma leq(5, 'abcd')? Tento vyraz ale prelozis
Treba takovy, ze chces mit ve vyslednem poli nejdrive integery a potom
stringy.
Zkus si predstavit, ze mas pole objektu
TAuto a TMotorka (zdedenych z TDopravniProstredek). Potom asi ma smysl
na TDopravniProstredek nadefinovat tridici funkci, dodelat na n�j leqSPZ,
leqColor, a leqObjemMotoru. Taky mas moznost nadefinovat leqTyp, ktery
ti oddeli jednotlive dopravni prostredky
(Auto = Auto, Motorka = Motorka, Motorka < Auto);
> aj spustis uplne bez problemov (cize typova kontrola je v ...).
:-))
Nikdo netvrdil, ze to je perfektni reseni,
netvrdim, ze ja jsem s nim spokojen a jsem si vedom omezeni variantu.
Ale v jednom prispevku jsi rekl, ze:
> "... Ale to, ze nie je mozne
> specifikovat obecne triedenie a takisto to, ze nie je mozne
> napisat genericke triedenie (t.j. pracujuce s obecnym typom)
> to su uz dost vazne problemy, ktore v Delphi (ale nie len
> v Delphi, plati to samozrejme aj pre mnoho dalsich jazykov)
> nie je mozne jednoducho obist."
Tim jsem Ti dokazal, ze to mozne je. A neni to jediny mozny model.
Jednotlive vytky, ktere se na toto reseni snesly, jsou opravnene
a daly by se do jiste miry vetsinou obejit. Napsal jsem nejjednodussi
reseni, ktere mne nejdrive napadlo, abych ukazal, ze je mozne
specifikovat obecne trideni. A k vytce o typove kontrole - myslel
jsem, ze Ti jde mimo jine o nemoznost porovnani ruznych datovych typu.
> smernikov. Tvoje riesenie ma aj cely rad inych nedostatkov
> (ak by bolo dobre, ver mi, ze by uz davno bolo implementovane
> vo VCL a casto pouzivane), pripomina mi skor workaround
S tim souhlasim, smysluplnost obecnejsiho trideni bych si
predstavoval skutecne spise na objektovych typech.
Jura
MSDE
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 16.12.1999 07:40:38
Radoslav Krehl�k wrote:
> Enteprise manazer neni bohuzel soucasti MSDE (to je jen hole ocesane
> jadro SQL7 velkostne omezene). Pokud chces spravovat MSDE lze to delat
> oficialne pres MSACCESS 2000 nebo si nainstaluj ten Enteprise manager
> z instalacniho CDka SQL7, v podstate vyhovuje i trial verze.
Pokud znas syntaxi, tak muzes poslat skript i primo ze sveho
programu.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
MSDE a pocet uzivatelu - zkusenosti
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 16.12.1999 07:40:38
Bob wrote:
> Kdo ma zkusenosti s max. poctem pripojenych uzivatelu v praxi?
> Podle M$ je to pri 5 uzivatelich spolehlive.
> Mylite, ze by to zvladlo vyjimecne i 12 uzivatelu, kteri budou data
> spise cist?
Jak se tu ted debatuje, pokud bude uzivatel jen cist, a ty to udelas
tak, ze se pripojis, rychle vyctes a zase odpojis, muzes takhle
zvladnout docela velke mnozstvi uzivatelu. Takhle muzes v nouzi
delat i inserty a updaty, pokud je treba nasackujes do baliku. Je to
ovsem piplacka. :-)
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
Jakou databazi doporucite ?
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 16.12.1999 07:40:38
Jaro wrote:
> Zahradnik pochvaluje. Jedinou jeho zrejme stalou nevyhodou je pristup
> pouze pomoci ODBC. Ja osobne nemam rad prilis mnoho prostredniku, jako
> napr. Klient -> BDE -> ODBC -> Server Vice prostredniku muze byt
> zdrojem vice chyb a pak asi tez delsi odezvy. Jaro
S tim bych si hlavu az tak nelamal, protoze behem pristiho roku by
mely mit vsechny SQL databaze, ktere chteji chodit pod
Woknama, provider na OLE DB.
Tedy cesta bude (ADO+) OLE DB -> Server.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
trideni was: D5 - ano ci ne ?
[*] Polak Jiri <Jiri.Polak(zv)tconsult(tec)cz> - 16.12.1999 07:49:03
> -----P�vodn� zpr�va-----
> Od: Jaro [mailto:jaro(zv)sinea(tec)cz]
> Odesl�no: 16. prosince 1999 2:34
> Komu: delphi-l(zv)fwd(tec)cz
> P�edm�t: Re: trideni was: D5 - ano ci ne ?
>
> Pavlova myslenka, ze: "servery delaji vetsinu prace je dusledek,
> nikoliv pricina proc jsou vytvareny" mi pripada dosti zcestna.
> Vubec prece nejde o to, aby server delal vetsinu nebo
> mensinu prace, ale o
> to, aby delal takovou praci, ktera je pro neho vhodnejsi z hlediska
> charakteru te prace. Podle charakteru ulohy pak muze byt
Tady jeste poznamku, vcera jsem to chtel napsat, ale zapomnel jsem na to.
Kdyby soucasny moderni trend byl co nejvice odlehcovat serverum a prenaset
vsechnu praci na klienty, jak Pavel tvrdi, asi by nebyla potreba
skalovatelnosti
vykonu, vytvareni farem serveru ci serverovych clusteru (a nevim jake jeste
mozne terminy). A to jsou hlavni prezentovane prednosti novych technologii
(vim predevsim o MS - i kdyz v jejich provedeni jsem trochu rozpacity).
A dalsi duraz (mozna budu vypadat jako agent Microsoftu :-) klade Microsoft
na zlepsovani vykonu MS SQL Serveru. Kdekoliv je slysim, nezapomenou
zduraznit, kolik transakci zvladne dvoutisicovka za vterinu. To cislo si
nepamatuju,
ale v praxi je v soucasnosti nedosazitelne. Svedci to podle meho o tom, ze
prikladaji centralnimu zpracovani velky vyznam.
Jura
Zrychleni aplikace
[*] CHMEL Karel, Mgr. <kchmel(zv)csob(tec)cz> - 16.12.1999 07:56:23
Zkus doplnit ukonceni obou fro cyklu v okamziku,
kdy uz jsou d1 i d3 nastaveny na true. Dalsi
probihani cyklu uz nic noveho neprinese.
Karel
-----P�vodn� zpr�va-----
Od: Infra Red [mailto:nezadal(zv)volny(tec)cz]
Odesl�no: 16. prosince 1999 0:42
Komu: delphi-l(zv)fwd(tec)cz
P�edm�t: Zrychleni aplikace
Ahoj,
v ramci diplomove prace zjistuji pomoci metody "box dimension" fraktalni
dimenzi obrazu.
Obrazem je cernobila bitmapa a velikosti cca 17000x4000 pixelu. Vypocet trva
cca 10 hodin.
na P 200, 32 MB RAM. Prikladam smycku, ve ktere to travi vetsinu casu.
Nepomohl by mi nekdo jak aplikaci zrychlit ?
Dekuji za kazdy napad.
Martin Nezadal
j := 0;
repeat
i := 0;
repeat
Application.ProcessMessages;
d1 := false; d3 := false;
for j1 := 0 to n-1 do begin
for i1 := 0 to n-1 do begin
if Obr.Canvas.Pixels[i+i1,j+j1]=$00000000 then d1 := true;
if Obr.Canvas.Pixels[i+i1,j+j1]=$00ffffff then d3 := true;
end;
end;
if (d1 = true) and (d3 = false)then Inc(Data[poradi,1]);
if (d1 = false)and (d3 = true) then Inc(Data[poradi,3]);
if (d1 = true) and (d3 = true) then Inc(Data[poradi,2]);
Inc(i,n);
until i > A.X-1;
Inc(j,n);
until j > A.Y-1;
Obr je TBitmap
A je TPoint - pravy dolni roh obrazku
Prevencia pred a oprava poskodenia databazovych su
[*] Martin Nedopil <nedopil(zv)eskon(tec)cz> - 16.12.1999 08:03:44
Ahoj
>Hodne. Probira se to zde pomerne casto, v sitovem provozu jsou souborove
>databaze znacne nespolehlive, z dnesniho pohledu se da rict ze uz temer
>nepouzitelne. U mensich jednouzivatelskych aplikaci je podle meho nazoru
>jejich pouziti jeste unosne, ale musis dusledne provadet zalohovani dat
>(alespon denne) a UPSka neni taky k zahozeni.
Ja budu oponovat a tvrdim, ze snesou i viceuzivatelsky pristup a to pomerne
dobre. Je treba jen dbat urcitych pravidel.
na adrese http://www.itecuk.com/delmag/paradox.htm je velmi zajimavy
clanek, kde pisou o moznostech, kterak vylepsit ono padani:
* dbiSaveChanges, ale to uz je dnes pomerne zname
* Local share na true
* Private dir nasmerovat do nejakeho podadresare
* aktualni vredir.vxd
* nastaveni v registrech pro NT, Win95 i Novell
* je tam i ukazkovy priklad pro kontrolu registru a odkazy
Martin
Obrovske soubory *.lck pro PDOX tabulky
[*] Martin Nedopil <nedopil(zv)eskon(tec)cz> - 16.12.1999 08:04:36
Zkus, jestli pomuze nastaveni PrivateDir do jineho
adresare nez je root pripadne nejakeho adresare, kde
by mohla jen prislusna aplikace
Martin
ADMIN: Jakou databazi doporucite ?
[*] Karel Kral <kral(zv)purus(tec)cz> - 16.12.1999 08:12:46
Mirek Junek wrote:
> 1.
> Jak se treba smazou zaznamy starsi nez nejaky datum, jak se najde max
> hodnota nebo provede soucet sloupce ? Je tam na to neco, nebo se to musi
> sekvencne prochazet record po recordu ?
Na sumaci musis samozrejme projit celou databazi na klientske strane,
coz je vykonove slabe. Ale pro FF jsou nadstavby SQL, ktere ti tyhle
veci provedou na strane serveru.
Na mazani data nebo hledani max. hodnoty potrebujes mit podle klicoveho
pole indexy, coz mi nikdy nedelalo problem.
______________________________________________________
Karel Kral, informatik
Purus, s.r.o., Cezavy 627, 664 56 Blucina
Tel: 05/47235000, 0602/552432, Fax: 05/47231203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________
OT:Sentinel HARDlock na siti
[*] Mik Radim <mik(zv)oce(tec)cz> - 16.12.1999 08:18:40
Vazeni,
nemate nahodou zkusenost s pouzivanim SENTINEL hardlocku pro parallelni port
tak, aby byl nainstalovan jen na jednom PC a ostatni PC si na serverove PC
sahaly pro licence?
Dekuji za soukr.mail
---------------------------------------
Radim Mik,
mik(zv)oce(tec)cz
SQL-zobrazeni shodnych zaznamu
[*] Miroslav Hro��o�����,�(�j�Z��3 - 16.12.1999 08:25:20
>Dobry den,
>
> mam nasledujici problem:
>
>Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
>Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s
tabulkou
>A.
>Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
>zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
>prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
>Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
>
>Pokud mi nekdo dokaze poradit, tak predem dekuji za odpoved.
>
> Karel Machac
> kmachac(zv)seznam(tec)cz
Pokial som to spravne pochopi chces vypisat vsetky zaznamy bez ohladu na
zhodnost.
tak ti odporucam pouzit miesto "UNION" prikaz "UNION ALL"
Miro.
omezeni TStringList a TMemo
[*] Richard Valny <Richard.Valny(zv)oku-st(tec)cz> - 16.12.1999 08:32:16
Ahojky,
proc je TStringList omezen velikosti a TMemo nikoli? (pochopitelne oboji ve WinNT, ve Win9x je omezeno oboji)
Blahove jsem se domnival ze ve svem programku na zpracovani logu firewalu pouziji TStringListy pro kazdeho nalezeneho uzivatele, ale stale to preteka.
Neda se nejak nadefinovat vetsi velikost TStringListu?
V popisu metody Create (je dedena az z TObject) se pise, ze se vytvori o implicitni velikosti. Jak ji zmenit jsem nenasel.
Co puzit pripadne misto TStringListu aby to neztratilo rychlost? (pouzivam je jako objecty v TCheckListBoxu)
P.S. Aplikace nemusi bezet pod Win95, tvorim ji na WinNT4.0 v D5
dik
=========================================
Richard Valny richard.valny(zv)oku-st(tec)cz
Okresni urad Strakonice tel. 0342-441 l. 216
Smetanova 533 fax. 0342-21208
386 22 STRAKONICE FiDoNet 2:423/35
=========================================
SQL-zobrazeni shodnych zaznamu
[*] Jan Fiala <jan.fiala(zv)iol(tec)cz> - 16.12.1999 08:36:57
----- Original Message -----
From: <k.machac(zv)iol(tec)cz>> Dobry den,
>
> mam nasledujici problem:
>
> Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
> Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s tabulkou
> A.
> Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
> zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
> prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
> Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
Zkus doplnit klausuli ALL :
Select All * From ....
Jan Fiala
Pozor! Tahle zprava obsahuje viry, protoze nebyla zkontrolovana zadnym
antivirovym programem. Proto ji po dukladnem procteni ihned smazte :-)
Zrychleni aplikace
[*] Jirka <jnagy(zv)nh-trans(tec)cz> - 16.12.1999 08:46:55
Ja bych navrhnul vybrat vsechny vypocty, co se daji mimo cyklus nebo
alespon do promennych a na pole Data zavest pointre.
----- P�vodn� zpr�va -----
var p1, p2, p3: ^integer; // nebo podle toho, jakeho typu je pole DATA
pom1, pom2: integer;
Pix: integer; // tady by mel byt typ Pixels, co nevim ted z hlavy
with Obr.Canvas, A do begin
p1:=(zv)data[poradi,1];
p2:=(zv)data[poradi,2];
p3:=(zv)data[poradi,3];
> j := 0;
> repeat
> i := 0;
> repeat
> Application.ProcessMessages;
> d1 := false; d3 := false;
> for j1 := 0 to n-1 do begin
pom1:=i; pom2:=j+j1;
> for i1 := 0 to n-1 do begin
Pix:=Pixels[pom1,pom2];
> if Obr.Canvas.Pixels[i+i1,j+j1]=$00000000 then d1 := true;
> if Obr.Canvas.Pixels[i+i1,j+j1]=$00ffffff then d3 := true;
if Pix=$00000000 then d1 := true;
if Pix=$00ffffff then d3 := true;
> end;
> end;
> if (d1 = true) and (d3 = false)then Inc(Data[poradi,1]);
> if (d1 = false)and (d3 = true) then Inc(Data[poradi,3]);
> if (d1 = true) and (d3 = true) then Inc(Data[poradi,2]);
if d1 then
if d3 then Inc(p2^) else Inc(p1^)
else if d3 then Inc(p3^);
> Inc(i,n);
Inc(pom1,n);
> until i > A.X-1;
until i > X-1;
> Inc(j,n);
Inc(pom2, n);
> until j > A.Y-1;
until j > Y-1;
end;
podobne muzes jeste nahradit X-1 a Y-1 promennou. I kdyz predpokladam,
ze neco z toho udela optimalizace.
Tady jsem se vsak snazil trochu optimalizovat pocet prevedenych
instrukci pro tvuj program. Mozna mnohom lepsich vysledku bys dosahl
optimalizaci behu tech cyklu, jak Ti uz nekdo poradil.
Doufam,ze jsem vsechno napsal spravne.
Jirka
SQL-zobrazeni shodnych zaznamu
[*] Ladislav Nagy <lnag7384(zv)mail.kolej.mff.cuni(tec)cz> - 16.12.1999 08:48:12
Ahoj,
Operace UNION dela mnozinove sjednoceni n-tic.
Tim padem i nasledujici dotaz
SELECT ...
FROM A
UNION
SELECT ...
FROM B
WHERE 0 = 1
odpovida vysledku dotazu SELECT ... FROM A, ze ktereho jsou vyrazeny
duplovane zaznamy, resp. necha jen jeden.
Jak se tomu vyhnout?
Doporucuji nad kazdnou tabulkou definovat primarni klic. Tim padem pak
nemuze nastat, ze by
v SELECT * FROM A byly duplicity. (Ve Vasem pripade to znamena pridat jeden
atribut, umely klic, a
zajistit si generovani hodnot do tohoto atributu (myslim, ze v dbf typ
Autoincrement neexistuje).)
Pokud byste mel nad tabulkou definovany primarni klic a jen v dotazu byste
se ptal na nejake nejednoznacne atributy, tak samozrejme staci rozsirit
SELECT cast dotazu o takove atributy z tabulky, aby nemohlo dochazet k
duplicitam.
S pozdravem Ladislav Nagy
===========================================
Mgr. Ladislav Nagy
MFF UK & Baader Computer spol. s r.o.
tel. : 02 / 24941962, -63, -65 fax : -64
lnag7384(zv)mail.kolej.mff.cuni(tec)cz , Ladislav.Nagy(zv)bcpraha.com
ICQ: 40948953
> Dobry den,
>
> mam nasledujici problem:
>
> Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
> Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s
tabulkou
> A.
> Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
> zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
> prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
> Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
>
> Pokud mi nekdo dokaze poradit, tak predem dekuji za odpoved.
>
> Karel Machac
> kmachac(zv)seznam(tec)cz
Prevencia pred a oprava poskodenia databazovych su
[*] Jirka <jnagy(zv)nh-trans(tec)cz> - 16.12.1999 08:53:48
----- P�vodn� zpr�va -----
> Ja budu oponovat a tvrdim, ze snesou i viceuzivatelsky pristup a to
pomerne
> dobre. Je treba jen dbat urcitych pravidel.
Ano snesou. Pokud jsme jeli s aplikaci v Delphi1 na Novell 3.12 (asi
35 uzivatelu), za 3 roky nenastal ZADNY problem s daty v Paradoxu
(cela databaze mela asi 200MB). Ihned po prechodu na Intranetware to
vsak bylo mnohem horsi. Je vsak pravda, ze se databaze mezitim
rozrostla, zvetsil se pocet uzivatelu, atd.
> na adrese http://www.itecuk.com/delmag/paradox.htm je velmi
zajimavy
> clanek, kde pisou o moznostech, kterak vylepsit ono padani:
Stoji to za precteni. Muze to opravdu hodne pomoci.
Jirka
Form Stay on top
[*] Werki <delphi(zv)minv.sk> - 16.12.1999 08:57:18
Zobraz ho cez showmodal, nie show...
Werki
> To jsem udelal, ale ostatni aplikace mi ho prekryji (neni to hlavni form
> aplikace)
>
> Mirek
> ----- Original Message -----
> From: Petr Vones <pvones(zv)mbox.vol(tec)cz>
> To: <delphi-l(zv)fwd(tec)cz>
> Sent: Tuesday, December 14, 1999 11:16 PM
> Subject: Re: Form Stay on top
>
>
> | Mirek Junek wrote:
> | > Panove, nemuzu si zaboha vzpomenout, jak dostat formular (a udrzet ho
> tam) i
> | > nad okna ostatnich aplikaci.
> |
> | Ahoj,
> |
> | Nastav u neho vlastnost FormStyle na fsStayOnTop.
> |
> | --
> |
> | Petr Vones, amatersky programator
> |
> |
>
Databaze a sireni + par drobnosti III - Jak to del
[*] Werki <delphi(zv)minv.sk> - 16.12.1999 09:01:53
v Instal Shielde mas moznost spravenia aliasu, cesta k db suborom je prevzata z uz existujuceho aliasu
na tvoiei local maxine. Subory *.db kidni do tejto cesty ...
Werki
----- Original Message -----
From: Ren� Otisk
To: delphi-l(zv)fwd(tec)cz
Sent: Wednesday, December 15, 1999 7:52 AM
Subject: Re: Databaze a sireni + par drobnosti III - Jak to delate vy ? Hi,
V DBD Adminu mas moznost si nastavit alias, tzn.: zaloz novy, pojmenuj ho Test a nastav cestu k databazim.
Sroub
Zdravim !!!
Tak jsem neco zkusil na druhym PC a pise mi to chybovou hlasku:
Exception EDBEngineError in module PROJECT1.EXE at 0007A202.
Unknown database.
Alias: Test.
Instaloval jsem to pomoci InstallShieldu dodavaneho s Delphi. BDE engine (jen ovladace Paradoxu) jsem instaloval do slozky windows a databazi s programem do slozky: C:\Program Files\Gamemaker\Test
Sice jsem PC nerestartoval, ale to podle me nevadi. Mam nastavit cestu k databazi nejak v programu nebo nejak nastavit cestu BDE ? Jak to delate vy ?
Predem dik za radu. Cau Martin.
/======================\
/ pesek.martin(zv)mymail(tec)cz \
/-------------------------------------------------\
<---<([ Martin Pesek ] [ Gamemaker ])>--->
\-------------------------------------------------/
\ www.mujweb(tec)cz/www/gusman /
\======================/
SQL-zobrazeni shodnych zaznamu
[*] Jaroslav Nadhera <nadhera(zv)csh(tec)cz> - 16.12.1999 09:08:05
Ja bych zkusil UNION ALL.
J. N�dhera
CSH spol. s r.o.
Velflikova 10, 160 00 Praha 6
tel: 02/2431 2344-5, fax: 02/652 28 92
Nedbalova 14, 701 00 Ostrava
tel: 069/663 56 87
e-mail: nadhera(zv)csh(tec)cz WWW: http://www.csh(tec)cz
----- Original Message -----
From: <k.machac(zv)iol(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Thursday, December 16, 1999 6:00 AM
Subject: SQL-zobrazeni shodnych zaznamu
> Dobry den,
>
> mam nasledujici problem:
>
> Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
> Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s
tabulkou
> A.
> Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
> zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
> prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
> Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
>
> Pokud mi nekdo dokaze poradit, tak predem dekuji za odpoved.
>
> Karel Machac
> kmachac(zv)seznam(tec)cz
>
Zrychleni aplikace
[*] Roman LISZKA <liszak(zv)usa(tec)net> - 16.12.1999 09:12:55
Infra Red wrote:
>
> Ahoj,
> v ramci diplomove prace zjistuji pomoci metody "box dimension" fraktalni
> dimenzi obrazu.
> Obrazem je cernobila bitmapa a velikosti cca 17000x4000 pixelu. Vypocet trva
> cca 10 hodin.
A kolik aplikace spotrebuje pameti? Neuchovava-li TBitmap tento obrazek
jako 1bod=1bit, bude travit hodne casu na swapovani pri pristupu k
pameti: 17000*4000=68M, pokud 1bod=1bit, spotrebovano 8.5MB, coz se
jeste da, ale potom asi bude pomaly pristup k jednotlivym bodum
(Obr.Canvas.Pixels), ktery by slo urychlit primym pristupem a prepsanim
kriticke sekce (nejvnitrnejsi smycky) do assembleru. Pokud 1bod >=
1Bajt, spotrebuje se minimalne 68MB RAM, takze dochazi na vasem stroji k
swapovani na disk, a pristup na disk je o nekolik radu pomalejsi nez do
RAM. Takze se podivejte, kolik aplikace spotrebuje pameti a zda chrusti
s diskem. Kdyz jsou problemy s pameti, pouvazujte nad moznosti rozdeleni
obrazku na mensi casti, ktere se do pameti vejdou a zpracovat obrazek po
castech. Jinak doporucuji spustit pres profiler at vypise, kde travi
vetsinu casu.
> na P 200, 32 MB RAM. Prikladam smycku, ve ktere to travi vetsinu casu.
> Nepomohl by mi nekdo jak aplikaci zrychlit ?
> Dekuji za kazdy napad.
> Martin Nezadal
>
> j := 0;
> repeat
> i := 0;
> repeat
> Application.ProcessMessages;
pokud nechcete provadet nejake jine operace s timto programem (napr.
preruseni vypoctu), zrusit predchazejici radek
> d1 := false; d3 := false;
> for j1 := 0 to n-1 do begin
jakych hodnot nabyva n?
> for i1 := 0 to n-1 do begin
nejcastejsi cyklus, jeho pocet volani: priblizne A.X*A.Y (68M), pokud je
obrazek cernobily, usetrime druhy if, nebot bud jedna barva nebo druha a
pouzijeme else:
> if Obr.Canvas.Pixels[i+i1,j+j1]=$00000000 then d1 := true
else d3 := true; // a zrusit nasledujici podminku
> if Obr.Canvas.Pixels[i+i1,j+j1]=$00ffffff then d3 := true;
kdyz d1 i d3=true, nemusim dale provadet tyto dve smycky, nebot se na
techto hodnotach nic nezmeni, takze neco takoveho (nema smysl, kdyz tato
podminka bude platit pouze velmi vyjimecne napr. pro mala n, kdy bude
tato ctvercova plocha jednolita):
if d1 and d3 then break;
> end;
if d1 and d3 then break; // vyskoci i z druhe smycky
> end;
> if (d1 = true) and (d3 = false)then Inc(Data[poradi,1]);
> if (d1 = false)and (d3 = true) then Inc(Data[poradi,3]);
> if (d1 = true) and (d3 = true) then Inc(Data[poradi,2]);
> Inc(i,n);
> until i > A.X-1;
> Inc(j,n);
> until j > A.Y-1;
>
> Obr je TBitmap
> A je TPoint - pravy dolni roh obrazku
--
================================================================
Ing. Roman LISZKA AplInt
mailto: webmaster(zv)www.hledam(tec)cz 1. Maje 500
tel.: +420 659 334 621, +420 603 344611 739 61 Trinec 1
http://www.hledam(tec)cz Czech Republic
Zrychleni aplikace
[*] Vaclav Krmela <krmela(zv)pecomp(tec)cz> - 16.12.1999 09:31:58
Tady vidim dva mozne kroky:
1. Nepracovat pres Canvas.
Je rychlejsi pracovat s polem obrazovych bodu v pameti, nez z nich
vytvorit obrazek na Canvasu a potom se v nem hrabat.
Obzvlast, pokud se jedna o cernobilou nekomprimovanou bitmapu.
Doporucuji nacist do pameti a pracovat v pameti.
2. Pouzit Assembler
Pokud se nejaka akce provadi v cyklu (17000/n)x(4000/n) krat,
bude efekt vyrazny.
Pomohlo by i jen udelat asm proceduru na jeden radek (17000/n)
a ten volat 4000/n krat uz z Pascalu.
Bodu 2 by mel predchazet bod 1.
Vaclav Krmela
----- Original Message -----
From: Infra Red <nezadal(zv)volny(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Thursday, December 16, 1999 12:42 AM
Subject: Zrychleni aplikace
> Ahoj,
> v ramci diplomove prace zjistuji pomoci metody "box dimension" fraktalni
> dimenzi obrazu.
> Obrazem je cernobila bitmapa a velikosti cca 17000x4000 pixelu. Vypocet
trva
> cca 10 hodin.
> na P 200, 32 MB RAM. Prikladam smycku, ve ktere to travi vetsinu casu.
> Nepomohl by mi nekdo jak aplikaci zrychlit ?
> Dekuji za kazdy napad.
> Martin Nezadal
>
> j := 0;
> repeat
> i := 0;
> repeat
> Application.ProcessMessages;
> d1 := false; d3 := false;
> for j1 := 0 to n-1 do begin
> for i1 := 0 to n-1 do begin
> if Obr.Canvas.Pixels[i+i1,j+j1]=$00000000 then d1 := true;
> if Obr.Canvas.Pixels[i+i1,j+j1]=$00ffffff then d3 := true;
> end;
> end;
> if (d1 = true) and (d3 = false)then Inc(Data[poradi,1]);
> if (d1 = false)and (d3 = true) then Inc(Data[poradi,3]);
> if (d1 = true) and (d3 = true) then Inc(Data[poradi,2]);
> Inc(i,n);
> until i > A.X-1;
> Inc(j,n);
> until j > A.Y-1;
>
> Obr je TBitmap
> A je TPoint - pravy dolni roh obrazku
>
>
Jak schovat MDI wokno ?
[*] Michal HAMPL <hampl(zv)GJS(tec)cz> - 16.12.1999 09:38:02
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
A co takhle skusit toto:
procedure TMdiForm1.Button1OnClick(Sender: TObject);
begin
ShowWindow(Handle, SW_HIDE);
end;
procedure TMdiForm1.Button2OnClick(Sender: TObject);
begin
ShowWindow(Handle, SW_SHOW);
end;
-----Original Message-----
From: bures [mailto:bures(zv)ssakhk(tec)cz]
Sent: Wednesday, December 15, 1999 1:05 PM
To: delphi-l(zv)fwd(tec)cz
Subject: Jak schovat MDI wokno ?
Ahoj lidi
Mam tu takovy maly a zrejmene nepodstatny promlem. Kdyz mam nejaky form jako
FsMdiChild tak
nelze uplne schovat pouze se minimalizuje...
Neni mozne aby se ten form schoval uplne ???
me napadlo pouze toto :
schovat :
form3.FormStyle := FsNormal;
form3.Hide;
ukazat:
form3.FormStyle := FsMdiChild;
form3.Show;
Ale toto reseni se mi vubec nelibi ... nelze to udelat nejakym jinym
zpusobem ?
Predem dekuji za odpovedi Vlada
Probl�my p�i pou��v�n� BCD v BDE (
[*] Daniel Fojt�k <xfojtik(zv)albert.osu(tec)cz> - 16.12.1999 09:39:58
Uz jsem se jednou ptal ale zatim mi nikdo neodpovedel a protoze
jde pro nasi firmu o velky problem tak to posilam jeste jednou:
Problemy pri pouzivani BDE
Prostredi: Delphi 3 - BDE - SQL Link - InterBase (Enable BCD=true).
1.problem: Definice pole typu Numeric(9,6). InterBase vraci cislo na spravny
pocet desetinn�ch mist, ale pri pouziti BDE se vrati maximalne 4 desetinna
mista.
2. problem: Definice pole typu Numeric(15,2), intern� hodnota pole
"0.699984". InterBase vraci spravne zaokrouhlenou hodnotu "0.70", BDE
spatnou oriznutou hodnotu "0.69".
Dotaz: Kde hledat chybu? Jak ji odstranit nebo zda je ji� odstranena v
nejake novejsi verzi? Problem totiz vede k tomu, ze kdyz mam v databazi
udaje jako mnozstvi a cena/MJ a cena se snizi o nejakou nizkou marzi, pak
cenacelkem se od mnozstvi*cena/MJ diky orezavaci chybe lisi u nekterych
polozek i o 8 - 10 % coz u ekonomickeho software neni zanedbatelna chyba!!!
Predem diky za jakekoliv rady, napady ci pripominky
Dan
Zrychleni aplikace
[*] Miroslav �ipel <Miroslav.Cipel(zv)oku-tu(tec)cz> - 16.12.1999 09:41:58
1. nepouzivej Obr.Canvas.Pixels - vsechno si to nastrkej do bafru a
prohledavel to jako array of byte nebo char
2. pokud zjistis ze ctverec je celej cernej nebo bilej tak v pristim ctverci
testuj jen nove pridany sloupec nebo sloupce
M.
trideni was: D5 - ano ci ne ?
[*] Pavel Cisar <pcisar(zv)aktis(tec)cz> - 16.12.1999 10:03:45
Haj hou!
From: Jaro <jaro(zv)sinea(tec)cz>
> Tak s tim ja bych tedy velmi silne nesouhlasil! To ze technologie
> client/server
> ma sve koreny uz v pocitacovem davnoveku, jeste neznamena, ze je nevhodna
> i pro interaktivni zpusob prace.
To jsem ani netvrdil. Pouze jsem podtrhl principialni rozdil mezi davkovym a
interaktivnim stylem prace, ktere vyzaduji odlisne strategie pri
implementaci. Skutecnost, ze SQL C/S databaze maji koreny prave v dobe
prevazne davkoveho zpracovani dat se prirozene odrazi v jejich zakladnich
charakteristikach. Pokud clovek "splyva s proudem" (tedy prirozenosti SQL
C/S), je svaden k volbe ne zcela vhodnych postupu, a v opacnem pripade je
postaven pred radu zasadnich (prevazne vykonostnich) problemu. To je nesvar,
ktery jsem vypozoroval u rady aplikaci vytvarenych v posledni dobe (a
psanych v Delphi obvzlaste). Koncepce "plochych" databazi (xBase,Paradox)
dovoluje velkou interaktivitu prace s daty bez vyraznych problemu. Aplikace
techto postupu na SQL C/S databazi (typyckym prikladem a nejcastejsi chybou
je pouziti TTable) vede ke spatnym vysledkum. Nicmene uzivatele vyzaduji
funkce jako prubezne vyhledavani v seznamu, trideni dle libovolneho udaje,
grupovani seznamu atd. a to vse s odezvou v radu nekolika vterin a bez
ohledu na velikost zakladni baze dat. Rada vyvojaru po neuspechu klasickych
prostredku (dobre zvladnutych z prace nad xBase/Paradox) voli automaticky
reseni z druhe strany (vse na server). Vysledkem je, ze znacne slevuji z
interaktivity, coz ale naprosto neni nutne. Jde o to najit jen vhodne
reseni. Bohuzel, tato reseni nelze nalezt v baliku "zdedenych" zkusenosti
jak z "plochych" databazi, tak z klasickeho SQL C/S. A to je to, o cem v
podstate celou dobu pisu.
> Predevsim to do znacne miry zavisi na charakteru ulohy,
> na objemech dat a velikosti jejich segregace. Technologie SQL je zalozena
> na mnozinovych principech. Ja mohu interaktivne a velmi intenzivne
pracovat
> s podmnozinou dat.
Naprosto souhlasim a nikdy jsem netvrdil opak. Jde samozrejme o segregaci
dat. Bohuzel jsi opomel i druhou cast problemu, a tou je transformace dat.
Segregace dat (vyber rozumne velke pracovni mnoziny / relace) je jednoznacne
ulohou databazoveho serveru. Po segregaci ov�em p�ichazi faze transformaci,
co� je v podstate hlavni naplni interaktivni prace (vyberu data a pak je
tridim, oznacuji, prohlizim, grupuji, filtruji, vyhledavam v nich).
Frekvence transformaci je zaroven mirou interaktivity aplikace. U aplikaci
navrzenych pro interaktivni praci prevysuje frekvence transformaci znacne
frekvenci segregaci. Pri implementaci lze pouzit tyto strategie:
Pri pozadavku uzivatele na novou transformaci jiz segregovanych dat...
1) ...provest novou segregaci a naslednou transformaci na serveru. Coz je
klasicky postup noveho selectu se zmenenou klauzuli ORDER BY.
2) ...odeslat segregovanou mnozinu na server k transformaci. Tezko
realizovatelne jen prostredky SQL serveru. Muze to na prvni pohled vypadat
jako naprosta pitomost, ale jsou i pripady kdy je to vhodne reseni (napr.
pri komplikovane transformaci jako napr. u map, zvuku apod. jde vsak typycky
o spec. server, ne SQL)
3) Provest transformaci na klientovi.
Z vyse uvedeneho vyplyva, ze (v prevazne vetsine pripadu) nejmene narocne na
cas a zdroje serveru je reseni c.3
BDE se snazi prave toto reseni poskytnout. Bohuzel to nedela zcela optimalne
a dusledne, a navic je prakticky nemozne mit plnou kontrolu nad jeho
fungovanim. Pokud ovsem nekdo investuje cas a usili do vytvoreni vlastni
podpory, ziska velkou (konkurencni) vyhodu v podobe maximalne efektivnich a
zaroven vysoce interaktivnich aplikaci.
Bohuzel, neni to jednoduche. Jiz radu let se snazim navrhnout a
implementovat nejvhodnejsi postupy pro tuto strategii (a rekl bych ze s
vyraznymi uspechy). Pokud nekoho tyto postupy zajimaji, rad se o ne podelim.
Hodne zdaru vsem
Pavel Cisar <pcisar(zv)atlas(tec)cz>
Delphree.org CEO
http://delphree.clexpert.com
Nexus project coordinator
http://delphree.clexpert.com/pages/projects/nexus/default.htm
Probl�my p�i pou��v�n� BCD v
[*] Martin Fron�k <FRONEK(zv)zznslany(tec)cz> - 16.12.1999 10:42:01
Pokud ti to pomuze, tak v nekterych aplikacich se uchovavaji financni
hodnoty jako cela cisla, kde jednotka je halir.
Martin Fron�k
ZZN Slan� a.s.
Pra�sk� 1579, 274 49, Slan�
tel. +420-314-522986
e-mail: fronek(zv)zznslany(tec)cz
> -----P�vodn� zpr�va-----
> Od: Daniel Fojt�k [SMTP:xfojtik(zv)albert.osu(tec)cz]
> Dotaz: Kde hledat chybu? Jak ji odstranit nebo zda je ji� odstranena v
> nejake novejsi verzi? Problem totiz vede k tomu, ze kdyz mam v
> databazi
> udaje jako mnozstvi a cena/MJ a cena se snizi o nejakou nizkou marzi,
> pak
> cenacelkem se od mnozstvi*cena/MJ diky orezavaci chybe lisi u
> nekterych
> polozek i o 8 - 10 % coz u ekonomickeho software neni zanedbatelna
> chyba!!!
>
Zrychleni aplikace
[*] Vladislav.Skalicka(zv)koncept(tec)cz - 16.12.1999 10:47:36
Ja si myslim, ze jeden z hlavnich zroutu casu je
Application.ProcessMessages;
pokud tam je nutny, volat ho 1xza treba 100 nebo 1000 pruchodu.
VVS.
--------------------------------------------------------
Koncept CZ, a.s.
S�dlo: Tursko 142, 252 65 Praha-z�pad
Po�tovn� adresa: Nad V��inkou 2, 150 00 Praha 5
Phone: +420-2-57310970,57310971, Fax:+420-2-57313772
MailTo:vladislav.skalicka(zv)koncept(tec)cz
--------------------------------------------------------
Ovaldani hlasitosti
[*] bures <bures(zv)ssakhk(tec)cz> - 16.12.1999 10:52:22
Ahoj radi bychom se zeptali jak se pouziva WinApi WaveOutSetVolume. Vzdy kdyz tuto funkci pouzijem
hlasitost se pohybuje tak jako potrebujem, ale balanc se nam hned nastavi uplne do leva.
pro ovaldani pouzivame toto:
WaveOutSetVolume(0,trackbar1.position + 256 * (trackbar1.position));
predem dekujeme za pomoc
Vlada a Cody
SQL-zobrazeni shodnych zaznamu
[*] k.machac(zv)iol(tec)cz - 16.12.1999 10:58:14
Je to skvele, UNION ALL funguje bezvadne. Zkousel jsem i SELECT ALL a to
bohuzel nefunguje.
Dekuji vsem za odpovedi.
Karel Machac
kmachac(zv)seznam(tec)cz
--- Puvodni dopis ----------------------------------------------------------
Datum: 16.12.1999 10:44
Od: "Jaroslav Nadhera" <nadhera(zv)csh(tec)cz>
Pro: <delphi-l(zv)fwd(tec)cz>
Vec: Re: SQL-zobrazeni shodnych zaznamu
----------------------------------------------------------------------------
>Ja bych zkusil UNION ALL.
>
>J. Nadhera
>
>CSH spol. s r.o.
>Velflikova 10, 160 00 Praha 6
>tel: 02/2431 2344-5, fax: 02/652 28 92
>Nedbalova 14, 701 00 Ostrava
>tel: 069/663 56 87
>e-mail: nadhera(zv)csh(tec)cz WWW: http://www.csh(tec)cz
>
>----- Original Message -----
>From: <k.machac(zv)iol(tec)cz>
>To: <delphi-l(zv)fwd(tec)cz>
>Sent: Thursday, December 16, 1999 6:00 AM
>Subject: SQL-zobrazeni shodnych zaznamu
>
>
>> Dobry den,
>>
>> mam nasledujici problem:
>>
>> Mam dBase tabulku A a tabulku B. V tabulce A SE OBJEVUJI shodne zaznamy.
>> Tabulka B NEOBSAHUJE shodne zaznamy ani v ramci teto tabulky, ani s
>tabulkou
>> A.
>> Pokud si vypisu tabulku A prikazem SELECT * FROM A, tak se mi spravne
>> zobrazi i shodne zaznamy z teto tabulky. Pokud vsak spojim tabulku A a B
>> prikazem UNION, tak se mi z tabulky A vyjmou vsechny tyto shodne zaznamy.
>> Dotaz zni, jak lze zakazat ruseni shodnych zaznamu?
>>
>> Pokud mi nekdo dokaze poradit, tak predem dekuji za odpoved.
>>
>>
>> Karel Machac
>> kmachac(zv)seznam(tec)cz
>>
>
>
WinBase602 was:Jakou databazi doporucite?
[*] Ivan Turcan <iturcan(zv)gamo.sk> - 16.12.1999 11:27:42
>Pavel Chaloupka se tady zminil o Winbase602. Mate s ni nejake
>zkusenosti? Jestli ano, tak bych uvital, kdyby o ni nekdo neco
>blizsiho napsal.
WinBase602 je relacna databaza obohatena o prvky sietoveho modelu. Pracuje na
Win32 , Netware
a Unix (Linux a FreeBSD). Jazyk SQL plne podporuje SQL 2 (SQL 92), niektore
casti podporuju
normu SQL 3 (jazyk ulozenych procedur a trigger-ov). Okrem standardnych fieldov
WB602 podporuje:
- 2 stringove typy pre ceske triedenie
- sledovacie atributy (fields) umoznuju sledovat:
- datumovu -> zmenu hodnoty sledovaneho stlpca (zaznamu)
- autora -> zmeny hodnoty sledovaneho stlpca (zaznamu)
- historiu -> tento field archivuje vsetky predchadzajuce hodnoty sledovaneho
atributu.
V pripade ze je uvedeny v kombinacii zo sledovanim datumu alebo
autora
zahrnu sa do historii aj tieto hodnoty
Pri atributoch je mozne nastavit default hodnotu, pouzitelne napr. pre
generator. Od verzie
6.0 je mozne vytvarat generatory.
WinBase602 podporuje tranzakcie, od verzii 6.0 aj stupen nastavenia izolacie
tranzakcie. Tu je
mozne aj nastavit body navratu vramci tranzakcii.
Je mozne definovat procedury ktore su umiestnene niekde v DLL, potom ich
pouzivat ako standardne
procedury volane v SQL (like Interbase)
WinBase602 ma integrovany aj vlastny programovaci jazyk (like Pascal) takze je
mozne vytvarat vramci WB602 celu aplikaciu. Tiez je jednoducho mozne vytvorit
pohlady (formulare ale aj tlacove zostavy)
ktore sa potom daju pouzit aj z Delphi (zobrazenim bud ako dialogove okno alebo
ako okno MDIChild)
V pripade nutnosti spoluprace z druhou databazov je mozne si tabulky tejto
databazy pripojit do WinBase602 (staci nadefinovany ODBC alias) a dalej s nimi
pracovat ako keby boli sucastou
WinBase602.
Velkou vyhodou WinBase je aj jej cena a licencina politika. Lokalna verzia je
Free, sietova je podobne ako Interbase. Inak zatial nie je licencne osetrena
varianta programovania tenkych aplikacii, tj. v pripade ze mate vytvoreny
aplikacny server na ktory pristupuje povedzme 100 users
tak aplikacny server ako jena aplikacia aj ked sa pripoji x-krat na WinBase je
chapana ako lokalna
tj. licencia je FREE (konzultoval som osobne zo sefom vyvoja WinBase602)
WinBase602 podporuje mnozstvo dalsich funkcii ktore som nespomenul,ak potrebujte
ine informacie napiste co Vas zaujima.
Pristup na WinBase602 prevadzkujem pomocou komponent WDE ktore som
naprogramoval, tieto su
umiestnene na www.software602(tec)cz/wde
Stru�n� charakteristika�komponent WDE:
- podpora WinBase 5.1 a� 6.0
- podpora Delphi 3,4,5 a C++Buildra 3,4
- jeden zdrojov� k�d pre v�etky verzie Winbase,Delphi a C++Buildera
- podpora v�etk�ch atrib�tov WinBase602, vr�tane sledovac�ch atrib�tov
- nat�vny pr�stup na WinBase602 bez pou�itia BDE a ODBC
- podpora pr�stupu na ODBC zdroje d�t, realizovan� pomocou WB API fn.
.
.
.
Zkusenosti:
co Vas zaujima ?
i.t.
-----------------------------------------------------------------------------
Ivan Turcan
Development specialist
(Delphi,C++ , Assembler, Interbase, Informix, WinBase602)
WDE HomePage: www.software602(tec)cz/wde
Tel: +421-88-4137 935
e-mail: iturcan(zv)gamo.sk
WWW Server: www.gamo.sk
GAMO a.s.
Slovakia
Probl�my p�i pou��v�n� BCD v
[*] Jan Tomsa <tomsa(zv)NOTIA.CZ> - 16.12.1999 11:38:36
> Prostredi: Delphi 3 - BDE - SQL Link - InterBase (Enable BCD=true).
a "Enable BCD=false" by neslo?
-- Jan Tomsa (Tomy) tomsa(zv)notia(tec)cz
-- Notia Informacni Systemy s.r.o., V Olsinach 709/45, 100 00 Praha
-- TEL +42-02-67313764 FAX +42-02-67313752 http://www.notia(tec)cz
D5 - ano ci ne ?
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 16.12.1999 11:46:48
Robert Kindl wrote:
> > > Bud mluvis o necem jinem (nepletes si to s TTable?),
> > > nebo jsi asi nikdy DBEdit nepouzil a meles
> > > uplne nesmysly ktere jsi jen slysel.
> > > V kazdem pripade tady nerozsiruj HLOUPOSTI!!!!!
> > > Sorry, ale to co jsi tu napsal o DBEditu
> > > opravdu neni ani trochu pravda.
> > > Rob
> > Mohl bys nam vsem tedy zjevit pravdu o DBEdit, prosim?
> > Pred tim vsak uvedu par veci:
> > Konfigurace: TDatabase pripojena na MS SQL Server, databaze pubs,
> > TQuery:
> SLQ = select * from authors, RequestLive:=true, Navigator. DBEdit
> napojeny na au_lname. > ... > Pri pouziti TTable dostanes obdobne
> vysledky > Zbysek Hlinka
>
> Nic z toho neni vlastnosti DBEdit, ale chovani TQuery.
> Jak jsi spravne rekl pri pouziti TTable dostanes obdobne vysledky, ale
> ne stejne, protoze TTable se chova jinak. Tim je dokazano, ze za to
> DBEdit nemuze :-)
Uaaaa! :-) DBEdit je primo napojen na DataSet a tedy pracuje s
jeho vlastnostmi. Jestlize ho napojim na TQuery, pak nutne musim
pocitat s chovanim TQuery, protoze TQuery nejde odpojit. A za
tohle DBEdit muze. Dalsi viz nize.
> Cele to zavisi na tom jak s TQuery zachazis.
> Ale neni zadny problem udelat aplikaci pouzivajici DBEdit a nemajici
> prakticky zadny z uvedenych problemu. Takhle jsou, ale naprogramovany
> maximalne dema k Delphi! Zadny normalni programator se s tim
> nespokoji. A v zadnem pripade neni pravdou, ze uvedene problemy
> implikuje pouziti DBEditu. Je to vlastnost LIVE
> QUERY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Bez live query by pouziti DBEdit k editaci nemelo smysl, a tim
padem ani tato debata. :-)
> ad 1. Pokud pustis
> uzivatele primo na data tak to ma asi takove vlastnosti jak popisujes.
> Normalni je vytahnout si pro editaci jen jediny record pomoci select *
> WHERE PrimaryKey=XYZ
S tim souhlasim, problem vsak je, jak se ziskanymi daty nalozis
dal.
> ad 2. Volani Edit (Insert) je relativne prirozena
> vlastnost Editacni radky. Jak by jsi asi chtel aby to fungovalo (pokud
> chces dovolit editaci az po explicitnim stisku nejakeho tlacitka tak
> od toho mas property AutoEdit u DataSource). Post DBEdit nevola nikdy!
Zde jsem se nepresne vyjadril - Post nevola DBEdit jako takovy,
ale vola ho otevreny DataSet, pokus se hnes na dalsi vetu (a
nemas zapnute kesovani). Tedy chovani je stejne, jako kdybys
editoval primo nad DBGridem.
> ad 3. Pokud jiny uzivatel zmeni data DBEdit nic nerozpoznava. O
> rozpoznani se muze (ale nemusi postarat) SQL prikaz UPDATE WHERE
> podminka.
Jak vidim, jeden o voze, druhy o koze.
> ad 4. Staci zapnout CachedUpdates a mas plnou kontrolu nad
> tim co se pri updatovani dat odehrava.
Coz neni pravda, protoze v nekterych pripadech (pokud upravy na
sobe zaviseji) mas sice lepsi, v pripadech kdy zmeny na sobe
nezavisi tak dokonce horsi, ale urcite ne _plnou_ kontrolu.
Kazdopadne ve veci DBEdit se nic k lepsimu nemeni.
CachedUpdates pomaha v urcitych situacich, ale vydavat ho div ne
za vselek je dost nebezpecne!
> Tve tvrzeni je tedy NEPRAVDIVE, VELMI ZAVADEJICI
Totez prohlasuji o rade tvych tvrzeni. :-)
> a kdyby jsi zaroven s tim nabizel nejaky konkurencni produkt
> tak bych te obvinil z nekale souteze.
> Takhle mam pocit, ze chces byt jediny, ktery zustane u Delphi
> a ostatni odradit.
> Jen kydas hnuj na neco cemu absolutne nerozumis!
Mno, to je dost silne tvrzeni.
> Sorry ted te chci nastvat protoze jsi nastval ty mne :-)
> Proste jsi si o to rekl, kdyz neumis priznat, ze nemas pravdu :-(
Shrnu tedy jinymi slovy, proc povazuji DBEdit za nevhodny pro
praci nad SQL databazi a na siti:
Vyzaduje otevreny dataset, tedy NUTNE se projevi vsechny dobre,
ale i _spatne_ vlastnosti pouziteho datasetu. Pokud by DBEdit
umoznoval vyber mezi otevrenym datasetem a tim, ze dataset
zavru a presto mohu nactena data dale zpracovavat, a pak
obslouzit treba rucne (sestavim UPDATE, napr.), pak bych nemel
namitek. Jenze toto DBEdit (a ani zadne jine DB komponenty)
neumi.
Pokud pouziji postup z tveho ad 1, pak namisto DBEditu nacpu
data do obycejnych editu, tam je zpracuji, a pak pod plnou
kontrolou (protoze o plne kontrole lze hovorit az zde) vyresim
ulozeni zmen. Pokud dojde k chybe, stale si ponechavam plnou
kontrolu (jak to jen jde) nad osetrenim te chyby, aniz bych ztratil
porizena data. Pokud budu pracovat nad DBEditem (a treba ve
spojeni s BDE), pak v pripade chyby o data prijdu, protoze dataset
mi vrati chybu a porizena data proste nedovoli ulozit. A protoze
DBEdit neumi uchovat data v pripade, ze bych dataset zavrel, je mi
k nicemu. Jiste, mohu data vytahnout ven do pomocnych
promenny, ale tohle mohu udelat uz na zacatku, dataset v klidu
zavrit a usetrit si tak zbytecne starosti. Jestlize se ti DBEdit libi, je
to samozrejme tvoje vec. Ja zde uvadim duvody, proc se mi nelibi a
proc jeho pouziti nad uvedenou sestavou povazuji za
problematicke. Nemluve o tom, ze za dalsi nerozum povazuji
udrzovani otevreneho datasetu nad jednou vetou, jen proto, ze tam
cosi stouram (a mezitim mohu jit na obed, vyridit 10 telefonu a
kdovico jeste). Otevreny dataset mi v pripade editace k nicemu
nepomaha, spolu s pouzitim DBEditu spise naopak.
Kdyz to uzavru, tak cela debata je vlastne o stylu prace nad
databazemi s narazkami na chovani tech ci onech komponent.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ
DB-aware komponenty (Was: D5 - ano ci ne ?)
[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 16.12.1999 11:46:48
Petr Vones wrote:
> > Pred tim vsak uvedu par veci:
> > Otviram Query.Open, listuji navigatorem. Najdu si nejakou vetu a
> > zacinam v DBEditu menit zaznam (vkladam prvni znak). Bez otevreneho
> > Query operaci nelze provest, tedy je dokazana pravdivost bodu 1.
> > Zaroven TDBEdit.KeyPress vola metodu FDataLink.Edit, tedy dokazan
> > bod 2.
>
> Tohle je ale spis dano obecnym pristupem k datum v Delphi
> prostrednictvim DataSetu a DB-aware komponent. Nevyresilo by to
> pouziti CachedUpdates ? Podobny mechanismus ma tusim i ADO (mozna ted
> placam, v databazich se zase tak nevyznam :-) pomoci metod
> TCustomADODataSet.UpdateBatch a spol.
Zalezi na situaci. Pokud bych chtel napriklad kesovat vice na sobe
nezavislych vet, pak chyba pri ukladani byt jen jedine vety mi zrusi
vsechno - tedy stylem vsechno, nebo nic. Protoze prakticky totez,
co se deje nad jednou vetou, se deje davkove nad vice vetami
(zacatek a konec transakce je kolem baliku). Predstav si
rozzureneho uzivatele, kdyz mu povolis kesovani na nevhodnem
miste a on prijde diky jedne vete zmenene nekym jinym o vsechny
upravy ve 20 vetach. Nez tohle sverovat kesujicim komponentam,
to si radeji obslouzim sam a odchytim prave jen tu vetu, kde dojde
k chybe a ostatni v klidu ulozim. Tolik k BDE.
U ADO je situace priznivejsi (pro dany pripad), protoze tam se pri
pouziti UpdateBatch neulozi pouze ty vety, kde dojde k chybe. Ale
ani zde se neresi problemy spojene s pouzitim DBEdit.
S pozdravem
Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ