Archív konference Delphi
Zpět na výběr roku archívu nebo přejít na fulltextové vyhledávání v konferenci.
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 29.9.2006 21:05:01
Jeste pro informaci jeden nazor od Intersystems :-)
Otazka: Proc je system Cache lepsi nez "cisty" objektovy databazovy system?
Odpoved: System Cache nabizi to, co typickym objektove orientovanym databazovym systemum tradicne chybi: rozhodujici vykon, rozsiritelnost, spolehlivost a produktivitu. Tyto vlastnosti jsou rozhodujici pro transakcni systemy pouzivane v obchodni nebo podnikove sfere. Prestoze ciste objektove databazove systemy zpocatku pritahovaly zajem vyvojaru, nedostatecny uspech na trhu bezpochyby ukazuje na znacne technologicke nedostatky.
------------ Puvodni zprava ------------
Od: Vlastislav Cilek <bigvlci(zv)seznam(tec)cz>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 19:59:08
----------------------------------------
Je to tim. :-)
------------ Puvodni zprava ------------
Od: Erik Salaj <winsoft(zv)netkosice.sk>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 16:34:49
----------------------------------------
> No, jestli oni jen neudelali tu praci, kterou si pri soucasnem stavu veci (db
komponent ad.) musis stejne pri objektovem pristupu
udelat sam, vcetne zachovani te moznosti relacniho pristupu.:-).
alebo ci to nie je tym, ze to nie je objektova ale postrelacna databaza
erik salaj
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 29.9.2006 19:58:56
Je to tim. :-)
------------ Puvodni zprava ------------
Od: Erik Salaj <winsoft(zv)netkosice.sk>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 16:34:49
----------------------------------------
> No, jestli oni jen neudelali tu praci, kterou si pri soucasnem stavu veci (db
komponent ad.) musis stejne pri objektovem pristupu
udelat sam, vcetne zachovani te moznosti relacniho pristupu.:-).
alebo ci to nie je tym, ze to nie je objektova ale postrelacna databaza
erik salaj
Pouziti objektove orientovane databaze v Delphi
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 29.9.2006 18:26:49
Ahoj,
chtel bych se zeptat, co budu vsechno potrebovat, abych mohl
programovat, jak uvadis. Do technologie
NET se zatim nehrnu.
Jako memory table bych chtel pouzivat ClientDataSet. Tomu transfer
objektu moc nerozumim.
Neco takoveho jiz existuje nebo je to nutne naprogramovat?
Ladislav Stary
>DB-komponent (Grid, TDBEdit, ... + komponenty tretich vyrobcu postavenych na
>datasetech) bych se rozhodne nevzdaval.
>Vzhledem k mnozstvi a jednoduchosti pouziti data aware komponent v Delphi
>lze data prezentacni vrstve nabidnou ve forme nejakeho in memory datasetu.
>Nebo ve forme transfer objektu, ktery takovy(-e) in memory dataset(-y)
>poskytuje a pritom poskytuje objektovy pristup k jednotlivym fieldum
>aktualniho zaznamu (misto myDataSet.FieldByName('NAME').AsString se vola
>myTo.getName() -> lepsi kontrola spravnosti kodu jiz v dobe prekladu).
>
>Pouzivam Delphi 6.
>
>S pozdravem Ladislav Nagy
>
>
>
Pouziti objektove orientovane databaze v Delphi
[*] Hampel Radim <radim.hampel(zv)ips-ag(tec)cz> - 29.9.2006 17:58:47
> Je mozne nativne pracovat .NET, JAVA, vygenerujes si popisy a pouzivas je
> soucast >NET nebo JAVA projektu.
Je nejaky link na demo? Odpovim si sam :)
http://www.intersystems.com/cache/dotnet/index.html
Timto se to dostava do roviny (pro mne) pouzitelne varianty.
Pokud se tyce vykonnosti, nevim, jestli 500 uzivatelu ukladajicich video otestuje vykonnost databaze, at relacni nebo jakekoliv. V mem pripade je to 64b SQL Server 2005. Jsem ovsem presvedcen, ze v syrovem vykonu - klasicke selecty nad nekolika tabulkami (nemyslim join 20-ti super normovanych tabulek) vzdy poradi relace objekty. Proc ale zadnou objektovou db nevidim v popredi tpc testu, ze by kvuli spatnym testovacim datum (bez ironie, dokazu si prestavit testy, ktere se pro objekty moc nehodi)?
Radim
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 29.9.2006 17:36:45
> Existuje moznost nativni prace z beznych objektovych prostredi (.net,
> java)? Treba tim, ze si muzu vytvorit proxy tridu ve vyssim jazyku
> (tedy jakysi wrapper nad cache objekty)? Pokud ano - je to super a
> pouzitelne, pokud ne - je to nepouzitelne pro jakykoliv rozsahlejsi vyvoj.
Ano
Je mozne nativne pracovat .NET, JAVA, vygenerujes si popisy a pouzivas je
soucast >NET nebo JAVA projektu.
> O vykonnosti se asi nema cenu bavit se bez konkretniho prikladu.
> Zajimalo by mne, jak by se to chovalo treba s moji 100GB databazi
> (pouze faktury, ceny,..). Nedokazu si totiz predstavit (zatim jsem
> takovy nevidel) spravne navrzeny system, ktery by "nestihal", kvuli
relacni databazi.
Souhlas.
Myslim ze pokud inteligent napise aplikace ve FoxPro 2.5 tak muze chodit
perfetktne rychle a pokud ji napise debil na Cache tak to bude nanic.
Otazka je co to udela pri pristupu treba 500 klientu on-line, kdyz zacnou tu
databaqzi pekne kourit, ukladat videa , obrazky On-line pripojeni pristroju
atd.
Co konkretne pouzivas za databazi?
Zvo.
Pouziti objektove orientovane databaze v Delphi
[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 29.9.2006 17:16:43
Ladislav Nagy wrote:
>> Nevim, jakou verzi Delphi myslis. Pokud 7-, pak ano, doporucuju se
> vykaslat
>> na standardni db komponenty. Ty jsou uzce vazane na dataset, coz je pro
>> popisovanou situaci problem.
>
> DB-komponent (Grid, TDBEdit, ... + komponenty tretich vyrobcu postavenych na
> datasetech) bych se rozhodne nevzdaval.
> Vzhledem k mnozstvi a jednoduchosti pouziti data aware komponent v Delphi
> lze data prezentacni vrstve nabidnou ve forme nejakeho in memory datasetu.
> Nebo ve forme transfer objektu, ktery takovy(-e) in memory dataset(-y)
> poskytuje a pritom poskytuje objektovy pristup k jednotlivym fieldum
> aktualniho zaznamu (misto myDataSet.FieldByName('NAME').AsString se vola
> myTo.getName() -> lepsi kontrola spravnosti kodu jiz v dobe prekladu).
V nasem frameworku pouzivame podobne O/R mapovani, objekty poskytuji
dve rozhrani: jedno s vlastnostmi a metodami urcene pro programatora
a druhe s generickym pristupem k vlastnostem (ala FieldByName) ktere
pouziva perzistentni vrstva ale take prezentacni vrstva -- tam s
uspechem pouzivame custom datasety, ktere edituji vlastnosti objektu
a napr. pri Postu zavolaji na objektu metodu Save. Pro cteni dat
(napr. tiskove sestavy) pouzivame relacni pristup, ktery je
samozrejme rychlejsi. Ideovym autorem koncepce je Pavel Cisar
(zdravim Pavle!).
Jedna se o celkem rozsahly projekt >1O let vyvoje a >500 tabulek. Po
zkusenostech musim rict ze bychom asi radu veci resili trochu jinak,
ale celkem se dari udrzet v projektu poradek. Nemam zkusenost s
klasickym relacnim pojetim u takto velkeho projektu.
Mozna by nekoho zajimalo, ze v ramci vyvojoveho partnerstvi muzete
vyvijet sva reseni v ramci naseho frameworku a distribuovat pres
nasi sit. Delphi 7 & Kylix 3 & Firebird & Oracle.
Martin Schayna
www.abra(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Hampel Radim <radim.hampel(zv)ips-ag(tec)cz> - 29.9.2006 17:10:42
> Ale pokud mas stesti a narazis na firmu ktera to pouziva a mas cas to
> pochopit tak pak prijdes na tu genialitu teto databaze.
> strom, ktery datove realne kopiruje tvou aplikaci at je ucetnictvi, sklady,
Budocnost rozhodne patri jak objektovym databazim, tak treba deklarativnim jazykum. Jde mi ale o soucasny stav a zkusenosti cloveka z praxe. Vetsina "odborniku" pochazi bud z akademickeho prostredi, ktere je realnemu svetu nekonecne vzdaleno, anebo z home-made kutilu.
Existuje moznost nativni prace z beznych objektovych prostredi (.net, java)? Treba tim, ze si muzu vytvorit proxy tridu ve vyssim jazyku (tedy jakysi wrapper nad cache objekty)? Pokud ano - je to super a pouzitelne, pokud ne - je to nepouzitelne pro jakykoliv rozsahlejsi vyvoj.
O vykonnosti se asi nema cenu bavit se bez konkretniho prikladu. Zajimalo by mne, jak by se to chovalo treba s moji 100GB databazi (pouze faktury, ceny,..). Nedokazu si totiz predstavit (zatim jsem takovy nevidel) spravne navrzeny system, ktery by "nestihal", kvuli relacni databazi. IMHO je vykonnost relacnich db dani za krkolomnost vzhledem v hierarchickym datum, v pripade objektovych je to naopak.
Radim Hampel
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 29.9.2006 16:40:40
> Ahoj!
>
> Konecne vidim nekoho, kdo ma osobni a produkcni zkusenosti. Moje
> vlastni zkusenost z testu byla opravdu otresna, jak ve vykonu, tak v
To je bohuzel pravda. Ani se ti nedivim. Pokud nekdo, kdo v zivote neslysel
o Cache si to stahne a chce zacit neco delat tak se s toho posere, protoze
to nepochopi. Za pul hodiny si to odinstaluje nebot se mu to nepodari rozjet
a vyzkouset tak jak by potreboval nebo zjisti ze tam neni vykon, atd.
Ta pouzitelnost pro zacatecniky je uboha. Bylo to i smerem k InterSystems
kritizovano. Timto zpusobem nechyti nikoho noveho.
Ale pokud mas stesti a narazis na firmu ktera to pouziva a mas cas to
pochopit tak pak prijdes na tu genialitu teto databaze.
Za vse sveci to ze nase firma v nekolika lidech je schopna delat takove veci
jako v jinych firmach delaji desitky lidi.
Pokud nekdo ma zajem pak by nebylo od veci kontaktovat v Praze zastoupeni,
ktere si myslim dokaze velmi dobre poradit co s konkretnim problemem.
>
> " ... They ported the department's Tribuna 2000 application that
> regulates all aspects of the department's business to Cache without
> changing a single line of the application's code. ... "
>
> :) Srandovni je, ze kdyz neprepsali radek kodu a tim pouzivaji ole db
> relacni ovladace, jakto, ze jim narostl vykon byt o zlomek procenta?
> Ze by cache valcovalo sybase i v relacnim pristupu? Nerozumim...
Prave ja tomu velmi dobre rozumim. To je prave ten performance Cache, ktery
je zpusben hlavne hierchickym ulozenim dat a take tim ze mas Cache Object
script. To ti dava "mohutnou zbran v boji s imperializmem" jak by rekl
porucik Orech.
V klasicke SQL si omezen jen SQL prikazy v Cache ale ne. Tam si naimportujes
data s klasicke relacni dtabaze. V 99% jsou hiearchicka. V SQL je to spousta
souboru ktere jsou provazane nejakyma relacema. V cache si je uloziz tak aby
to kopirovalo realne tak jak je to ve zkutecnosti. Je to vlastne hiearchicky
strom, ktery datove realne kopiruje tvou aplikaci at je ucetnictvi, sklady,
provoz knihovny, pacient v nemocnici atd.
Tyto data se zapouzdri, tak aby se ti tvarily ven jako relacni. Cache ma
potom svuj vlastni konmpilator ktery prevadi tvou SQL query do Cache
scriptu. Pokud ti tento implicitni pristup nevyhovuje nebo je to pomale
tak si napises sam jak chces. Je nutne pododknout ze je v tom vice jak 30
let vyvoje je tam genialne zvladnuta prace s daty, bufferovani, prace v siti
atd. My do toho rveme vse od klasickych dat az po videa, obrazky atd vse v
jedne databazi na jednom serveru.
Muzu doporucit nejake clanky od pana Kocana z dizkuze v databazovem svete,
kery nekde mel nejaky tutorial.
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 29.9.2006 16:36:39
>
> Takze by bylo vyhodne zjistit seznam Hlinku, ale zaroven levne ziskat
> udaje o jejich adresach. Jestli umi Cache ziskat adresy primo, bez
> dodatecneho dotazovani do seznamu adres, bylo by to prima (a to je
> vlastne to, co me zajima, na co se ptam). Ovsem je zajimave se ptat i
> obracene - kdo vsechno bydli na adrese abc? Nebo lepe, kdo vsechno
> bydli v ulici xyz, bez ohledu na mesto a cislo? Dostanu vysledky opet
> stejne svizne jako pri dotazu do relacni databaze, nebo ne?
Samozrejme.
Vytvoris si objekt Clovek a Objekt bydliste Ty si vytvoris Relationship
ktery ti ukazuje z Cloveka na dane bydliste.
Pak spustis.
Select name,bydliste->Ulice from clovek where name="HLINKA"
Prepoklad mame v databazi 10 000 000 osob a 100 HLINKU
System, si sahne na data pouze 100 krat ani o jednou navic
Obracene:
Select name,bydliste->Ulice from clovek where bydliste.ulice="Svobodova"
Prepoklad mame 20000 ulic a lidi co bydli na ni je 10000
System, si sahne na dat pouze 10000 krat ani o jednou navic
A ted to na co se ptas naposled
Select name,bydliste->Ulice from clovek where name="HLINKA" and
bydliste.ulice="Svobodova"
Mame 100 Hlinku 10000 cloveku s bydlistem Svobodova
U kazde property se stanovujes selectivity coz znamena ze pokud mas slozenou
podminku tak system vi co je lepsi prochazet a podle toho taky zvoli
pristup.
Pokud by byla selectivita lepsi pro jmeno tak si sahnu 100 pro kazdeho
HLINKU a dalsim dotazem zjistim jestli jestli je OK nepojedu 10000 x po
bydlisti.
Vyhody poznas az pri velmi velkych a slozitych dotazech. My to pouzivame pro
datovy sklad s manazerskymi vystupy, s BSC atd. kde si kazdy trouba muze
zadefinovat bez znalosti SQL dotazy. A manazeri neradi cekaji proto to musi
byt rychle.
A to do toho jeste netaham bitmapove indexy, protoze toto neni ten pravy
priklad pro ne.
Pouziti objektove orientovane databaze v Delphi
[*] Erik Salaj <winsoft(zv)netkosice.sk> - 29.9.2006 16:34:39
> No, jestli oni jen neudelali tu praci, kterou si pri soucasnem stavu veci (db komponent ad.) musis stejne pri objektovem pristupu
udelat sam, vcetne zachovani te moznosti relacniho pristupu.:-).
alebo ci to nie je tym, ze to nie je objektova ale postrelacna databaza
erik salaj
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 15:46:35
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Erik Salaj
> Sent: Friday, September 29, 2006 3:17 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> objektovu databazu. Aky ma vobec vyznam medzi OOP aplikaciu a
> objektovu databazu vlozit nejaky relacny jazyk? Nieco mi tu
> skratka nesedi.
Ja si myslim, ze to vyznam muze mit. Jde jen o to, jak je to implementovane
- a to me prave zajima.
Prikladek. Mejme seznam lidi. Jasne relacni zalezitost. Vetsina lidi vsak
nekde bydli, ma adresu. Takze si vytahnu vsechny Hlinky do gridu a necham si
vypsat i jejich adresy. V relacni databazi napisu zhruba tento dotaz:
select jmeno, prijmeni, ulice, cislo, mesto from lidi
left join adresa on ... // nekdo muze byt bezdomovec a chci to videt
where prijmeni='Hlinka'
Dostanu vsechno do jednoho spojeneho relacniho seznamu.
Vedle toho mam napriklad DataObjects (O/R mapper), ktere vsak provedou
nasledujici. Vytahnu si seznam vsech Hlinku (zatim OK), ale pri zobrazovani
v gridu se DO pro kazdy radek znovu zepta samostatnym dotazem na udaje z
adresy. Peklo, vykon jde do [censored], Hlinku neni zas az tak malo,
vygeneruje se hromada SQL dotazu.
Takze by bylo vyhodne zjistit seznam Hlinku, ale zaroven levne ziskat udaje
o jejich adresach. Jestli umi Cache ziskat adresy primo, bez dodatecneho
dotazovani do seznamu adres, bylo by to prima (a to je vlastne to, co me
zajima, na co se ptam). Ovsem je zajimave se ptat i obracene - kdo vsechno
bydli na adrese abc? Nebo lepe, kdo vsechno bydli v ulici xyz, bez ohledu na
mesto a cislo? Dostanu vysledky opet stejne svizne jako pri dotazu do
relacni databaze, nebo ne?
Toto je jednoducha situace, v realu byvaji vztahy vyrazne slozitejsi, a tedy
odezvy databazi tomu odpovidaji. Tam O/R mappery tezce selhavaji vykonostne,
totez bych si troufal tvrdit i o _ciste_ objektovych databazich.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 29.9.2006 15:40:34
No, jestli oni jen neudelali tu praci, kterou si pri soucasnem stavu veci (db komponent ad.) musis stejne pri objektovem pristupu udelat sam, vcetne zachovani te moznosti relacniho pristupu.:-).
Vlasta.
------------ Puvodni zprava ------------
Od: Erik Salaj <winsoft(zv)netkosice.sk>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 15:16:41
----------------------------------------
> >SQL je jazyk vyhodny prave na relacne databazy,
> > takze je dost podozrive ak objektova databaza
>
> jd eo to, ze cache umoznuje libovolnou projekci - objektova
> je jedna z nich, stejne jako je jedn az nich relacni. KER
tak ako to vlastne je? Je to objektova databaza alebo
sa len tvari, ze je? Naco mi je u objektovej databazy
relacna "projekcia" a SQL jazyk? Ved tym sa miesa
objektovy a relacny model a to je presne to,
co objektova databaza ma odstanit (tzv. impedancny
problem medzi OOP jazykom a relacnou, teda
nie-OOP databazou). Ak mam programovat v SQL
jazyku, tak predsa robim na urovni relacneho modelu
a k tomu nepotrebujem objektovu databazu. Aky
ma vobec vyznam medzi OOP aplikaciu a objektovu
databazu vlozit nejaky relacny jazyk? Nieco mi tu
skratka nesedi.
Eik Salaj
Pouziti objektove orientovane databaze v Delphi
[*] Erik Salaj <winsoft(zv)netkosice.sk> - 29.9.2006 15:16:32
> >SQL je jazyk vyhodny prave na relacne databazy,
> > takze je dost podozrive ak objektova databaza
>
> jd eo to, ze cache umoznuje libovolnou projekci - objektova
> je jedna z nich, stejne jako je jedn az nich relacni. KER
tak ako to vlastne je? Je to objektova databaza alebo
sa len tvari, ze je? Naco mi je u objektovej databazy
relacna "projekcia" a SQL jazyk? Ved tym sa miesa
objektovy a relacny model a to je presne to,
co objektova databaza ma odstanit (tzv. impedancny
problem medzi OOP jazykom a relacnou, teda
nie-OOP databazou). Ak mam programovat v SQL
jazyku, tak predsa robim na urovni relacneho modelu
a k tomu nepotrebujem objektovu databazu. Aky
ma vobec vyznam medzi OOP aplikaciu a objektovu
databazu vlozit nejaky relacny jazyk? Nieco mi tu
skratka nesedi.
Eik Salaj
Pouziti objektove orientovane databaze v Delphi
[*] Hampel Radim <radim.hampel(zv)ips-ag(tec)cz> - 29.9.2006 15:06:31
> Vykon je samzrejmne excelentni. A to diky tomu ze je hiearchicka.
> Je potreba to zkusit. Ten kdo ma problemy s rychlosti na klasicke relacni
> databazi a je ochoten zplatit nejake penize za hodne muziky tak doporuciji.
Ahoj!
Konecne vidim nekoho, kdo ma osobni a produkcni zkusenosti. Moje vlastni zkusenost z testu byla opravdu otresna, jak ve vykonu, tak v pouzitelnosti. Precetl jsem si ted reklamni success story na webu interSystems:
" ... They ported the department's Tribuna 2000 application that regulates all aspects of the department's business to Cache without changing a single line of the application's code. ... "
:) Srandovni je, ze kdyz neprepsali radek kodu a tim pouzivaji ole db relacni ovladace, jakto, ze jim narostl vykon byt o zlomek procenta? Ze by cache valcovalo sybase i v relacnim pristupu? Nerozumim...
Radim Hampel
Pouziti objektove orientovane databaze v Delphi
[*] Ing. Marek Kocan <kocan(zv)ebchod(tec)cz> - 29.9.2006 14:56:31
>SQL je jazyk vyhodny prave na relacne databazy,
> takze je dost podozrive ak objektova databaza
jd eo to, ze cache umoznuje libovolnou projekci - objektova
je jedna z nich, stejne jako je jedn az nich relacni. KER
Pouziti objektove orientovane databaze v Delphi
[*] Erik Salaj <winsoft(zv)netkosice.sk> - 29.9.2006 14:50:30
> "Department of Justice in Bern, Switzerland switches from Sybase to Cache
> for 20x faster SQL performance"
>
> aneb "Verim jen testum ktere jsem si sam zfalsoval....."
SQL je jazyk vyhodny prave na relacne databazy,
takze je dost podozrive ak objektova databaza
je rychlejsia v SQL. Mnozno nemali dobry relacny
model (zeby pouzili generovanie pomocou O/R
mappera?) alebo nebol dobre implementovany,
ale to je len moja spekulacia. Ale taketo 20 nasobne
zrychlenia sa obvykle nedeju, to by sme uz asi vsetci
robili s objektovymi databazami.
Erik Salaj
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 29.9.2006 14:32:28
> Jak vypada soucasny stav? A hlavne, jak vypada jeji vykon?
Soucasny stav je takovy jaky je. To se neda 1 ani par vetami popsat.
Vykon je samzrejmne excelentni. A to diky tomu ze je hiearchicka.
Je potreba to zkusit. Ten kdo ma problemy s rychlosti na klasicke relacni
databazi a je ochoten zplatit nejake penize za hodne muziky tak doporuciji.
Nemam osobni zkusenosti s prechodem s DBMS na Cache neb vse co delame je
zalozene na Cache.
Posilam odkaz na clanek nadepsany :
"Department of Justice in Bern, Switzerland switches from Sybase to Cache
for 20x faster SQL performance"
aneb "Verim jen testum ktere jsem si sam zfalsoval....."
http://www.e-dbms.com/cache/testimonials/success/bernstory.html
http://www.e-dbms.com/cache/testimonials/performance.html
> Mejme takovou modelovou situaci. Mam objekty a, b a c. Z objektu a me
> zajima
> ID, z b Name a z c nejaky soucet z vice polozek, napriklad cena. a:b =
> 1:1,
> b:c = 1:n. V relacni db, pokud to prevedu na tabulky, zjistim data zhruba
> takto:
> select a.id, b.name, sum(c.cena) from a
> join ...
> where b.name like ...
>
> Z relacni databaze dostanu vysledek velmi rychle, bez ohledu na pocet
> ziskanych zaznamu. Jak to bude vypadat v pripade Cache
To nejsem schopen posudit nebot tvuj dotaz je v teoreticke rovine. Praxe je
takova ze mam vice jak miliony radku tabulek a s temi pracuji vice jak 100
klientu on-line.
Moznost na tom samem PC mit jak Cache tak DBMS databazi a zkouset dotaz je
sice nejaka cesta jak ziskat vysledek ale neni objektivni nebot realna praxe
je neco jineho.
Obecne to ale funguje v Cache tak ze SQL je interface nad hiearchickou
databazi. Data si navrhnu tak aby byl nejoptimalnejsi pruchod pri danych
dotazech. Pokud mi z nejakych duvodu nevyhovuje pruchod dotazu tak jak mi je
navrhl kompilator, tak si napisu svuj vlastni dotaz v Cache scriptu (coz je
vnitrni jazyk. Mimo jine naprosto genialni pro praci s retezci)a jeho
rychlost zavisi uz jen na tom jestli jsem inteligent nebo idiot. Ten se pak
zapouzdri smerem ven do SQL prostredi. Mam takovouto zkusenost. U naseho
zakaznika (Okresni nemocnice ) pred par lety jelo Cache, 2xIntel Pentium
III 350 MHz (WIN2000) + SCSI asi 250 soucasne pripojenych klientu rychlost
excelentni a vedle na 5 pocitacu server s Oraclem, PC 2 x Intel Xeon SCSI
bezelo ucetnictvi jak kdyz sere a maluje. Odbornici z firmy rikaly ze na PC
platforme uz neni mozne dosahnou vetsiho vykonu a je nutne prejit na nejaky
Unix.
Osobne si myslim, ze databaze je size dulezita ale i s "malym kasparkem se
da zahrat velke divadlo", tzn. ze je dulezite kdo a jak to programuje a take
vybrat spravne prostredky pro dany ucel.
A na zaver: pouziti objektu ma zrejme vyhody ale i na Cache je znat
zpomaleni oproti nativnimu pristupu k datum. Je to pochopitelna dan za
vyhody, ktere objekty prinaseji.
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 14:20:27
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ladislav Nagy
> Sent: Friday, September 29, 2006 1:38 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> > Nevim, jakou verzi Delphi myslis. Pokud 7-, pak ano, doporucuju se
> vykaslat
> > na standardni db komponenty. Ty jsou uzce vazane na dataset, coz je
> > pro popisovanou situaci problem.
>
> DB-komponent (Grid, TDBEdit, ... + komponenty tretich vyrobcu
> postavenych na
> datasetech) bych se rozhodne nevzdaval.
Jako rozumne reseni vidim takove komponenty, ktere umeji jak dataset, tak
nejaky objekt nebo jeho kolekci. Vylucna navazanost pouze na dataset vede v
konecnem dusledku ke zvyseni pracnosti a rizikum v pripadech, ze se to
snazim nejak obchazet pres nejake transformace. Zkratka, pokud mam moznost
si vybrat zpusob, jakym komponente predam data v zavislosti na konkretnich
potrebach, je to OK. Pokud mi komponenta tuto funkcnost neposkytuje, je cas
poohlednout se po jine.
Pro predstavu:
Mam tridu (sorry za C# syntaxi, OPascal si uz moc nepamatuju)
class Clobrda
{
string Jmeno;
string Prijmeni;
Adresa Adresa;
}
class Adresa
{
string Ulice;
string Cislo;
string CelaUlice {get {return Ulice + " " + Cislo;}}
}
A ted grid, namapuju sloupecky:
grid.DataSource = ClobrdaDataSource;
col1.MapName = "Jmeno";
col2.MapName = "Prijmeni";
col3.MapName = "Adresa.CelaUlice";
Podobne editace:
edit1.DataSource = ClobrdaDataSource;
edit1.MapName = "Jmeno";
edit3.MapName = "Adresa.Ulice";
ClobrdaDataSource muze byt treba ten genericky list, o kterem jsem psal
drive.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Ladislav Nagy <delphi-konference(zv)bcpraha(tec)com> - 29.9.2006 13:38:24
> > > Mam tridu, ktera popisuje data tak, jak je potrebuju v prezentacni
> > > vrstve. Z teto tridy si mohu vyrobit kolekci, kterou lze zobrazit v
> > > gridu atp. Do teto tridy nactu data z databaze - muze to odpovidat
> > > tabulce v databazi, ale take nemusi, muzu ziskat data i napric
> > > tabulkami (joiny).
> >
> > Navrhujes se uplne vykaslat na DBGrid a podobne komponenty?
>
> Nevim, jakou verzi Delphi myslis. Pokud 7-, pak ano, doporucuju se
vykaslat
> na standardni db komponenty. Ty jsou uzce vazane na dataset, coz je pro
> popisovanou situaci problem.
DB-komponent (Grid, TDBEdit, ... + komponenty tretich vyrobcu postavenych na
datasetech) bych se rozhodne nevzdaval.
Vzhledem k mnozstvi a jednoduchosti pouziti data aware komponent v Delphi
lze data prezentacni vrstve nabidnou ve forme nejakeho in memory datasetu.
Nebo ve forme transfer objektu, ktery takovy(-e) in memory dataset(-y)
poskytuje a pritom poskytuje objektovy pristup k jednotlivym fieldum
aktualniho zaznamu (misto myDataSet.FieldByName('NAME').AsString se vola
myTo.getName() -> lepsi kontrola spravnosti kodu jiz v dobe prekladu).
Pouzivam Delphi 6.
S pozdravem Ladislav Nagy
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 13:20:23
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ing. Marek Kocan
> Sent: Friday, September 29, 2006 1:08 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> doporucuji stahnout a vyzkouset, pripadne se kouknout na
> testy, neco maji primo na webu intersystems. KER
Hm, dobra rada, na kterou nemam cas. Zajimaji me prakticke zkusenosti
nekoho, kdo s tim dela komercni projekt.
Ja mam prakticke zkusenosti s DataObjects (O/R mapper) z .NET. 3 aplikace,
jednou prima pohodicka, 2x pruser.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 13:10:22
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ladislav Stary
> Sent: Friday, September 29, 2006 12:42 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> > Mam tridu, ktera popisuje data tak, jak je potrebuju v prezentacni
> > vrstve. Z teto tridy si mohu vyrobit kolekci, kterou lze zobrazit v
> > gridu atp. Do teto tridy nactu data z databaze - muze to odpovidat
> > tabulce v databazi, ale take nemusi, muzu ziskat data i napric
> > tabulkami (joiny).
>
> Navrhujes se uplne vykaslat na DBGrid a podobne komponenty?
Nevim, jakou verzi Delphi myslis. Pokud 7-, pak ano, doporucuju se vykaslat
na standardni db komponenty. Ty jsou uzce vazane na dataset, coz je pro
popisovanou situaci problem.
> To pak pouzivas jen StringGrid?
Ne, pouzivam .NET. Prave proto, ze v Delphi 7- se popsane ulohy resi dost
obtizne, pracne a tedy draze.
> Me z toho vychazi spoustu rezijniho kodu. Nemel by si nejaky
> priklad, pripadne nastin, jak se to da udelat?
Prejit na .NET. :) V C#2 je velmi uzitecna vlastnost jazyka, ktera se zove
genericke typy. Vypada to nejak takto:
List<MojeTrida> list = new ...
Tato konstrukce mi umoznuje vyrobit si vlastni tridu, ve ktere mam nejaky
popis dat a funkcnost nad nimi (proste klasicka trida, jak ji znas i z
Delphi). List<> mi umozni vyrobit kolekci objektu daneho typu, a ja se pak
mohu dotazovat na jednotlive prvky pres tu kolekci, a muzu s nimi pracovat
bez pretypovani. Napriklad takto:
foreach(MojeTrida mt in list)
jmeno = mt.Jmeno;
Tento list muzu samozrejme nabidnout i datagridu, napojit sloupce na
jednotlive property (vizualne) a zbytek se zaridi automaticky sam.
Jednotlive property muzu samozrejme nabindovat i na editacni prvky, takze
pak ziskam obsah objektu se zmenenymi daty, u ktereho se nasledne staram,
jak a kam ho ulozit. Take si mohu zabezpecit trideni podle nejake property.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Ing. Marek Kocan <kocan(zv)ebchod(tec)cz> - 29.9.2006 13:08:21
> > Cache od InterSystems ... KER
>
> Jak vypada soucasny stav? A hlavne, jak vypada jeji vykon?
>
doporucuji stahnout a vyzkouset, pripadne se kouknout na
testy, neco maji primo na webu intersystems. KER
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 12:58:20
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ing. Marek Kocan
> Sent: Friday, September 29, 2006 12:30 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> Cache od InterSystems ... KER
Jak vypada soucasny stav? A hlavne, jak vypada jeji vykon?
Mejme takovou modelovou situaci. Mam objekty a, b a c. Z objektu a me zajima
ID, z b Name a z c nejaky soucet z vice polozek, napriklad cena. a:b = 1:1,
b:c = 1:n. V relacni db, pokud to prevedu na tabulky, zjistim data zhruba
takto:
select a.id, b.name, sum(c.cena) from a
join ...
where b.name like ...
Z relacni databaze dostanu vysledek velmi rychle, bez ohledu na pocet
ziskanych zaznamu. Jak to bude vypadat v pripade Cache?
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 29.9.2006 12:42:19
Opravdu zajimave tema.
> Mam tridu, ktera popisuje data tak, jak je potrebuju v
> prezentacni vrstve. Z teto tridy si mohu vyrobit kolekci, kterou lze
> zobrazit v gridu atp. Do teto tridy nactu data z databaze - muze to
> odpovidat tabulce v databazi, ale take nemusi, muzu ziskat data i napric
> tabulkami (joiny).
Navrhujes se uplne vykaslat na DBGrid a podobne komponenty? To pak
pouzivas jen StringGrid?
Me z toho vychazi spoustu rezijniho kodu. Nemel by si nejaky priklad,
pripadne nastin, jak se to da udelat?
Ladislav Stary
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 29.9.2006 12:34:18
Uz jsem se o ni jednou zajimal. Ale v tu dobu tam nebyla zadna moznost propojeni do Delphi. Zmenilo se neco?
Vlasta.
------------ Puvodni zprava ------------
Od: Josef Zvonicek <prosoft(zv)prosoft(tec)cz>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 12:28:27
----------------------------------------
> > 1)Takze oo databaze pro Delphi dostatecne vykonna (a pokud
> > mozno free) jeste neexistuje?
>
> Otazka nema znit "databaze pro Delphi", ta ma byt na vyvojovem prostredi
> nezavisla. Kdyz uz, tak jde o moznost pristupu k takove databazi.
> Zda existuje nebo, to nevim. Vzhledem k tomu, jak funguji objekty, proste
> objektova databaze nemuze byt vykonnejsi nez relacni - az na pripady, kdy
> mam v ni ulozene male objemy silne provazanych a roztrousenych dat. Dale
> predpokladam, ze kdyby srovnatelne vykonna OO databaze s relacnimi byla,
> vseobecne by se o ni vedelo. A na free bych vubec nesazel, OO databaze
> museji projit dlouhym a drahym vyvojem, stejne jako tomu bylo u relacnich.
>
Urcite existuje je to Cache od firmy InterSystems.
http://www.e-dbms.com/
Zvo.
Pouziti objektove orientovane databaze v Delphi
[*] Ing. Marek Kocan <kocan(zv)ebchod(tec)cz> - 29.9.2006 12:30:18
> predpokladam, ze kdyby srovnatelne vykonna OO databaze s
relacnimi byla,
> vseobecne by se o ni vedelo. A na free bych vubec nesazel,
OO databaze
Cau,
Cache od InterSystems ... KER
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 29.9.2006 12:28:18
> > 1)Takze oo databaze pro Delphi dostatecne vykonna (a pokud
> > mozno free) jeste neexistuje?
>
> Otazka nema znit "databaze pro Delphi", ta ma byt na vyvojovem prostredi
> nezavisla. Kdyz uz, tak jde o moznost pristupu k takove databazi.
> Zda existuje nebo, to nevim. Vzhledem k tomu, jak funguji objekty, proste
> objektova databaze nemuze byt vykonnejsi nez relacni - az na pripady, kdy
> mam v ni ulozene male objemy silne provazanych a roztrousenych dat. Dale
> predpokladam, ze kdyby srovnatelne vykonna OO databaze s relacnimi byla,
> vseobecne by se o ni vedelo. A na free bych vubec nesazel, OO databaze
> museji projit dlouhym a drahym vyvojem, stejne jako tomu bylo u relacnich.
>
Urcite existuje je to Cache od firmy InterSystems.
http://www.e-dbms.com/
Zvo.
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 12:14:16
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Vlastislav Cilek
> Sent: Friday, September 29, 2006 11:36 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> Diky za dobrou odpoved. Mohl by jsi byt prosim byt konkretnejsi?:
>
> 1)Takze oo databaze pro Delphi dostatecne vykonna (a pokud
> mozno free) jeste neexistuje?
Otazka nema znit "databaze pro Delphi", ta ma byt na vyvojovem prostredi
nezavisla. Kdyz uz, tak jde o moznost pristupu k takove databazi.
Zda existuje nebo, to nevim. Vzhledem k tomu, jak funguji objekty, proste
objektova databaze nemuze byt vykonnejsi nez relacni - az na pripady, kdy
mam v ni ulozene male objemy silne provazanych a roztrousenych dat. Dale
predpokladam, ze kdyby srovnatelne vykonna OO databaze s relacnimi byla,
vseobecne by se o ni vedelo. A na free bych vubec nesazel, OO databaze
museji projit dlouhym a drahym vyvojem, stejne jako tomu bylo u relacnich.
> 2)Jake "udelatory", kterym se vyhnout jsi mel na mysli. Co
> rikas na InstantObjects?
Neznam, je treba vyzkouset. Popsal jsem obecne pohledy a na co si dat pozor,
podle zcela konkretni zkusenosti s DataObjects pro .NET.
> 3)Jak tedy skloubit o/r mapovani s pouzivanim ulozenych procedur?
V Delphi je rada dost tezka, protoze tam rada veci chybi, resp. neco jineho
nez je naservirovano se tam resi ponekud obtizneji (ale jde to). Popisu tedy
zakladni princip. Mam tridu, ktera popisuje data tak, jak je potrebuju v
prezentacni vrstve. Z teto tridy si mohu vyrobit kolekci, kterou lze
zobrazit v gridu atp. Do teto tridy nactu data z databaze - muze to
odpovidat tabulce v databazi, ale take nemusi, muzu ziskat data i napric
tabulkami (joiny). V takoveto tride si mohu nadefinovat objektove vazby s
jinymi daty a pak zalezi na mne, jak tyto pridruzene objekty budu plnit
(tedy pokud nepouziju nejaky udelator, ktery to bude resit za me). Vedle
toho mam servisni tridu, ktera zna dany objekt a umi poslat zmeny do
databaze. Je na tobe (nebo na tom udelatoru), zda budes volat zmeny mimo
tridu s daty, nebo pres ni. V kazdem pripade je lepsi se vyhybat udelatorum,
ktere resi zmeny dynamicky sestavovanym insertem, updatem a deletem primo v
kodu.
> 4)Mohl by jsi me trochu nasmerovat ohledne informaci, jak
> psat ty "objekty na spodni urovni" pro formulare? Existuje
> nejaky uz pouzity nebo overeny postup, nejake howto?
Jedna se o klasickou 3vrstvou architekturu. V databazi mas persistentni data
s nejakou databazovou logikou. Nad tim je aplikacni vrstva se svou vlastni
logikou, kde premeles data do podoby, jakou vyzaduje prezentacni vrstva, a
na druhou stranu prebiras zmeny a posilas je do databaze. Podstata spociva v
tom, ze usporadani dat v databazi se ridi hlediskem vykonnosti, kdezto
usporadani dat na prezentacni vrstve hlediskem uzivatelske pritulnosti.
Aplikacni vrstva se stara o konverzi mezi temito dvema pohledy. A zde mas
volbu, zda na prezentacni vrstvu budes posilat zase nejakou relacni podobu
dat (pokud jsou data v relacni databazi), nebo objekty.
Moje zkusenosti rikaji toto: jestlize u slozitejsich reseni navrhuju
databazi podle toho, jak se s daty pracuje na formularich, mam tezke
problemy s vykonem. Pokud se naopak formulare prizpusobuji tomu, jak je
navrzena databaze, jsou problemy s uzivateli.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 29.9.2006 11:36:14
Diky za dobrou odpoved. Mohl by jsi byt prosim byt konkretnejsi?:
1)Takze oo databaze pro Delphi dostatecne vykonna (a pokud mozno free) jeste neexistuje?
2)Jake "udelatory", kterym se vyhnout jsi mel na mysli. Co rikas na InstantObjects?
3)Jak tedy skloubit o/r mapovani s pouzivanim ulozenych procedur?
4)Mohl by jsi me trochu nasmerovat ohledne informaci, jak psat ty "objekty na spodni urovni" pro formulare? Existuje nejaky uz pouzity nebo overeny postup, nejake howto?
Vlasta.
------------ Puvodni zprava ------------
Od: Zbysek Hlinka <konference(zv)hlinka(tec)cz>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 10:41:40
----------------------------------------
Ahoj,
musim varovat pred jednim neuvazlivym rozhodnutim. OO databaze nebo O/R
mappery jsou prima vec, ale jen pro urcite typy uloh. Pokud potrebuju vysoky
vykon, je nejlepsi se temto technologiim velkym obloukem vyhnout, protoze
jsou v urcitych situacich az o nekolik radu pomalejsi nez relacni databaze.
Pokud tedy uvazujes o objektovem pristupu k datum, promysli si nejprve
poradne, zda zalezi na vykonu databaze nebo ne.
Typicke ulohy, pro ktere se OO databaze nebo O/R mappery hodi:
Jednouzivatelske aplikace nebo sitove s malym poctem uzivatelu, kde je malo
dat, ktera jsou vsak hodne strukturovana (patrne ucetnictvi pro male firmy
atp.), nebo ktera nevyzaduji hromadne zmeny napric tabulkami.
Ulohy, kde se takove technologie naopak nehodi:
Webove portaly s velkymi pocty pristupu, rozsahle datove sklady, ve kterych
potrebuju delat hromadne zmeny (napriklad update [vsechny zaznamy ]... where
cena > 500), datove struktury, ktere jsou svou povahou prevazne relacne
usporadane (sklad pro obchodni dum bych rozhodne v OO databazi nedelal a to
ani pres to, ze urcite vztahy by se takto delaly pohodlneji).
Pokud si zvolis O/R mapovani, pak doporucuju tento postup. Pokud se jedna o
vetsi aplikaci, vyhni se udelatorum, ktere si modeluji databazi samy. Ty
musis mit vzdy moznost navrhnout si databazi samostatne, oddelene od
aplikace. Teprve z takto navrzene databaze lze vygenerovat nejaky objektovy
model. Takovyto model ti vsak nesmi branit v jinem pristupu k datum: tedy,
insert, update a delete vyhradne pres ulozene procedury, generovani techto
prikazu z kodu je blbe a vede to k potizim; nektere dotazy je treba psat
primo a optimalizovane, zcela mimo O/R mapovani.
Dalsi techniky, ktere se mi osvedcily. ZASADNE nepracuj s "zivymi" daty na
urovni formulare. Napis si objekty na spodni urovni, ktere budes plnit z
databaze, a teprve s temi pak budes pracovat na formularich. To ti umozni
lepsi flexibilitu pro pripad zmen. Pro zmeny dat si napis nejake servisni
tridy, ktere spravne a kontrolovatelne ulozi data do databaze prave v
okamziku a zpusobem, jak to ty chces a potrebujes. Zde se uz vlastne jedna o
urcitou formu O/R mapovani, a pak jen zalezi na tom, zda si to budes psat
rucne nebo si pomuzes nejakym udelatorem.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Vlastislav Cilek
> Sent: Friday, September 29, 2006 9:43 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> Dik za odpoved, mam dalsi.
>
> Jde mi hlavne o to, vyporadat se s tim, kdyz potrebuju v
> tabulce zmenit napr. typ polozky, nebo jednu polozku pridat,
> a pak treba jinou zrusit, tak abych nemusel menit projekt na
> spouste dalsich mist, ktere s tou polozkou souvisi.
> Dival jsem se na ty instantobjects, skouknul jsem to video -
> tuhle variantu jsem jednou prochazel (odradilo mne to
> zobrazovani DATASET jako odkaz na ty polozky telefonu). Na
> prvni pohled se mi libil ten navrhar trid, ale zatim nemam
> moc jistotu, jestli tohle lze nejak pouzit pro ulehceni
> prace, jestli to neni moc pracne (viz. co vsechno se muselo
> udelat, aby fungoval ten jednoduchy formular, i kdyz s tou
> tridovou vychytavkou). A co pak jak budou vypadat nejake
> zmeny. A co napojeni na DBGRID a ovladaci prvky tretich stran.
> Pak mne take zajima to napojeni na sestavy.
> Pomohlo by snad to ECO?
> Nebo se dat uplne jinou cestou?
> Vlasta.
>
> ------------ Puvodni zprava ------------
> Od: radek_456 radek_456 <radek_456(zv)seznam(tec)cz>
> Predmet: Re: Pouziti objektove orientovane databaze v Delphi
> Datum: 29.9.2006 07:57:38
> ----------------------------------------
>
> no pokud ti jde o ukladani objektu do databaze tak mrkni sem:
> http://www.instantobjects.org/
>
> a soucasti poslenich verzich Delphi je ECO - Enterprise
> Core Objects
>
> Radek
>
>
>
>
>
>
>
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 29.9.2006 10:41:32
Ahoj,
musim varovat pred jednim neuvazlivym rozhodnutim. OO databaze nebo O/R
mappery jsou prima vec, ale jen pro urcite typy uloh. Pokud potrebuju vysoky
vykon, je nejlepsi se temto technologiim velkym obloukem vyhnout, protoze
jsou v urcitych situacich az o nekolik radu pomalejsi nez relacni databaze.
Pokud tedy uvazujes o objektovem pristupu k datum, promysli si nejprve
poradne, zda zalezi na vykonu databaze nebo ne.
Typicke ulohy, pro ktere se OO databaze nebo O/R mappery hodi:
Jednouzivatelske aplikace nebo sitove s malym poctem uzivatelu, kde je malo
dat, ktera jsou vsak hodne strukturovana (patrne ucetnictvi pro male firmy
atp.), nebo ktera nevyzaduji hromadne zmeny napric tabulkami.
Ulohy, kde se takove technologie naopak nehodi:
Webove portaly s velkymi pocty pristupu, rozsahle datove sklady, ve kterych
potrebuju delat hromadne zmeny (napriklad update [vsechny zaznamy ]... where
cena > 500), datove struktury, ktere jsou svou povahou prevazne relacne
usporadane (sklad pro obchodni dum bych rozhodne v OO databazi nedelal a to
ani pres to, ze urcite vztahy by se takto delaly pohodlneji).
Pokud si zvolis O/R mapovani, pak doporucuju tento postup. Pokud se jedna o
vetsi aplikaci, vyhni se udelatorum, ktere si modeluji databazi samy. Ty
musis mit vzdy moznost navrhnout si databazi samostatne, oddelene od
aplikace. Teprve z takto navrzene databaze lze vygenerovat nejaky objektovy
model. Takovyto model ti vsak nesmi branit v jinem pristupu k datum: tedy,
insert, update a delete vyhradne pres ulozene procedury, generovani techto
prikazu z kodu je blbe a vede to k potizim; nektere dotazy je treba psat
primo a optimalizovane, zcela mimo O/R mapovani.
Dalsi techniky, ktere se mi osvedcily. ZASADNE nepracuj s "zivymi" daty na
urovni formulare. Napis si objekty na spodni urovni, ktere budes plnit z
databaze, a teprve s temi pak budes pracovat na formularich. To ti umozni
lepsi flexibilitu pro pripad zmen. Pro zmeny dat si napis nejake servisni
tridy, ktere spravne a kontrolovatelne ulozi data do databaze prave v
okamziku a zpusobem, jak to ty chces a potrebujes. Zde se uz vlastne jedna o
urcitou formu O/R mapovani, a pak jen zalezi na tom, zda si to budes psat
rucne nebo si pomuzes nejakym udelatorem.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Vlastislav Cilek
> Sent: Friday, September 29, 2006 9:43 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> Dik za odpoved, mam dalsi.
>
> Jde mi hlavne o to, vyporadat se s tim, kdyz potrebuju v
> tabulce zmenit napr. typ polozky, nebo jednu polozku pridat,
> a pak treba jinou zrusit, tak abych nemusel menit projekt na
> spouste dalsich mist, ktere s tou polozkou souvisi.
> Dival jsem se na ty instantobjects, skouknul jsem to video -
> tuhle variantu jsem jednou prochazel (odradilo mne to
> zobrazovani DATASET jako odkaz na ty polozky telefonu). Na
> prvni pohled se mi libil ten navrhar trid, ale zatim nemam
> moc jistotu, jestli tohle lze nejak pouzit pro ulehceni
> prace, jestli to neni moc pracne (viz. co vsechno se muselo
> udelat, aby fungoval ten jednoduchy formular, i kdyz s tou
> tridovou vychytavkou). A co pak jak budou vypadat nejake
> zmeny. A co napojeni na DBGRID a ovladaci prvky tretich stran.
> Pak mne take zajima to napojeni na sestavy.
> Pomohlo by snad to ECO?
> Nebo se dat uplne jinou cestou?
> Vlasta.
>
>
> ------------ Puvodni zprava ------------
> Od: radek_456 radek_456 <radek_456(zv)seznam(tec)cz>
> Predmet: Re: Pouziti objektove orientovane databaze v Delphi
> Datum: 29.9.2006 07:57:38
> ----------------------------------------
>
> no pokud ti jde o ukladani objektu do databaze tak mrkni sem:
> http://www.instantobjects.org/
>
> a soucasti poslenich verzich Delphi je ECO - Enterprise
> Core Objects
>
> Radek
>
>
>
>
>
>
>
>
>
Pouziti objektove orientovane databaze v Delphi
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 29.9.2006 09:51:26
Tak to by me zajimalo. Ziju v domneni, ze ECO je jen pro NET. Proletel
jsem rychle nekolik odkazu a moji domenku to potvrzuje.
Nebo se pletu a neumim cist?
Ladislav Stary
> a soucasti poslenich verzich Delphi je ECO - Enterprise Core Objects
>
> Radek
>
>
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 29.9.2006 09:43:25
Dik za odpoved, mam dalsi.
Jde mi hlavne o to, vyporadat se s tim, kdyz potrebuju v tabulce zmenit napr. typ polozky, nebo jednu polozku pridat, a pak treba jinou zrusit, tak abych nemusel menit projekt na spouste dalsich mist, ktere s tou polozkou souvisi.
Dival jsem se na ty instantobjects, skouknul jsem to video - tuhle variantu jsem jednou prochazel (odradilo mne to zobrazovani DATASET jako odkaz na ty polozky telefonu). Na prvni pohled se mi libil ten navrhar trid, ale zatim nemam moc jistotu, jestli tohle lze nejak pouzit pro ulehceni prace, jestli to neni moc pracne (viz. co vsechno se muselo udelat, aby fungoval ten jednoduchy formular, i kdyz s tou tridovou vychytavkou). A co pak jak budou vypadat nejake zmeny. A co napojeni na DBGRID a ovladaci prvky tretich stran.
Pak mne take zajima to napojeni na sestavy.
Pomohlo by snad to ECO?
Nebo se dat uplne jinou cestou?
Vlasta.
------------ Puvodni zprava ------------
Od: radek_456 radek_456 <radek_456(zv)seznam(tec)cz>
Predmet: Re: Pouziti objektove orientovane databaze v Delphi
Datum: 29.9.2006 07:57:38
----------------------------------------
no pokud ti jde o ukladani objektu do databaze tak mrkni sem:
http://www.instantobjects.org/
a soucasti poslenich verzich Delphi je ECO - Enterprise Core Objects
Radek
Pouziti objektove orientovane databaze v Delphi
[*] radek_456 radek_456 <radek 456(zv)seznam(tec)cz> - 29.9.2006 07:57:16
no pokud ti jde o ukladani objektu do databaze tak mrkni sem:
http://www.instantobjects.org/
a soucasti poslenich verzich Delphi je ECO - Enterprise Core Objects
Radek
Pouziti objektove orientovane databaze v Delphi
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 28.9.2006 18:16:15
Zdravim vsechny.
Ma nekdo prakticke zkusenosti s pouzitim nejake free objektove orientovane databaze v Delphi? Zajima me take navazani na tisk sestav. Nasel jsem jen Spider Object Database, ale nevim jestli je to pomoc nebo spise komplikace.
dialog pre zadanie hesla v TDataSnap
[*] Ivan Dulgerov <idulgerov(zv)stonline.sk> - 28.9.2006 17:38:12
Zdravim.
Pripajam sa do databazy Oracle cez aplikacny
server (TOraSesion+TSmartQuery+OraProvider),
na clientovi mam TWebConnection+TClientDataSet.
Neviete, nahodou ako mozem vyvolat dialog
pre zadanie UserName + Password pri prihlaseni
na server?
S pozdravom
Ivan Dulgerov
J.Straku 12
969 00 Banska Stiavnica
SLOVAK REPUBLIC
tel : 00421 - 045/6920428
ICQ : 190698607
mail : idulgerov(zv)smware.sk
www : http://www.smware.sk
Jak menit obsah PDF dokumentu
[*] Pavel Zidek <delphi(zv)kopr(tec)cz> - 28.9.2006 07:51:26
Zdravim,
mam nejaky (cizi) dokument ve formatu PDF, do ktereho bych chtel vlozit
nejake znacky a programove v D6pro potrebuji tyto znacky vymenit za nejaky
text.
1. Jak do PDF vlozit znacky - pozice XY
2. Jak v D6pro tyto znacky najit a jak je vymenit za text
Diky za pomoc a snad to moc nevybocuje z pravidel teto knference
delphi(zv)kopr(tec)cz
Pavel ZIDEK
Kresleni na plochu s Alpha blend
[*] DjBall <djball(zv)seznam(tec)cz> - 30.9.2006 17:32:36
Ahoj, dlouho uz hledam zpusob jak nakreslit na plochu obrazek s nejakou
pruhlednosti. Nevite jak na to?
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 02.10.2006 09:07:49
> Jsem ovsem presvedcen, ze v syrovem vykonu -
> klasicke selecty nad nekolika tabulkami (nemyslim join 20-ti super
> normovanych tabulek) vzdy poradi relace objekty.
O to jsem presvecen taky.
Zkusenosti s pouzitim Instant Objects
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 02.10.2006 08:59:48
> Zaver: O/R mappery jsou prima, ledacos usnadni, ovsem plati se za to dan
> ve
> vykonu. Proto je vzdy treba dobre zvazit, co bude aplikace vyzadovat a
> podle
> se rozhodnout pro vhodnou technologii. Na zaklade vyse popsanych
> zkusenosti
> take doporucuju priklonit se spise k takovym mapatorum, ktere mi nebrani v
> "klasickem" pristupu k datum, a to jak pro ukladani, tak i pro dolovani
> dat.
> Ciste objektovym databazim bych se zatim vyhnul z principu, jeste pro neni
> zrala doba (tedy, pocitace jsou stale prilis pomale a pameti stale prilis
> male). Mapatory pokud vybirat, tak velmi obezretne, a s dukladnymi testy.
> V
> pripade Cache nejsem schopen se vyjadrit.
To je ta prava parketa pro Cache.
Pokud je to webova aplikace, tak prave tady je nesmirnou vyhodou pouzit
objekty. Neni kolegove z pratelske firmy maji postavene velke webove systemy
vyhradne na objektech a Cache. Interne se to nazyva CSP- cache Server pages
..Velky vykon a hlavne velka produktivita prace. A pokud potrebuji udelat
nejakou chlivarnu tak to muzu sahnout na data primo bez objektu.
Co vic si muzes prat.
Zkusenosti s pouzitim Instant Objects
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 02.10.2006 08:15:44
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Vlastislav Cilek
> Sent: Sunday, October 01, 2006 9:15 PM
>
> Teda musim rict, ze asi propadam mirne skepsi :-).
Nejshorsi na tom je, ze celkem opravnene. :( Brigadnicim ten na projektu
(kdyz jsem do nej vstupoval a videl jsem, v jakem je to stavu, rovnou jsem
se prohlasil za brigadnika, protoze tohle na triku mit nechci), ktery je
postaven na DataObjects (O/R mapper, ktery si ridi sam i vytvareni db
tabulek a ukladani dat do db). Jedna se o webovou aplikaci, ktera ma dost
slozite vztahy, hodne dat, a navic se tam muze sejit vic lidi v jednom
okamziku. Na zacatku a behem vyvoje doslo ke dvoum fatalnim chybam, diky
nimz je ted projekt nezpusobily pro ostry provoz a jedina cesta jak z toho
ven je to predelat. Projekt je zkratka v pasti...
1. brutalni chyba. Kazdy dela vsechno, tedy od navrhu datovych objektu az po
formulare. DO k takovemu zpusobu prace primo svadeji, protoze prace s nimi
vypada jednoduse. Zkratka, i zde plati, ze db se MUSI navrhovat zvlast, se
znalosti souvislosti a vykonostnich slabin. Teprve pak se masti uzivatelske
rozhrani. Spravny postup by sice celkovou aplikaci vylepsil, ale nevyresil.
2. brutalni chyba. DO byly zvoleny na zaklade hodne vagnich testu, ktere
neukazaly problemy na kritickych mistech tehdy budouci ulohy. Prevod dat do
objektu je tak velkou brzdou, ze nutne dojde k takovemu zpomaleni odezvy pri
soucasnem pristupu vice uzivatelu, ze se aplikace stane nepouzitelnou, a pri
urcitem soubehu zatizeni hrozi pad SQL serveru, mozna i serveru jako
pocitace.
Zaver: O/R mappery jsou prima, ledacos usnadni, ovsem plati se za to dan ve
vykonu. Proto je vzdy treba dobre zvazit, co bude aplikace vyzadovat a podle
se rozhodnout pro vhodnou technologii. Na zaklade vyse popsanych zkusenosti
take doporucuju priklonit se spise k takovym mapatorum, ktere mi nebrani v
"klasickem" pristupu k datum, a to jak pro ukladani, tak i pro dolovani dat.
Ciste objektovym databazim bych se zatim vyhnul z principu, jeste pro neni
zrala doba (tedy, pocitace jsou stale prilis pomale a pameti stale prilis
male). Mapatory pokud vybirat, tak velmi obezretne, a s dukladnymi testy. V
pripade Cache nejsem schopen se vyjadrit.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Zkusenosti s Instant objects
[*] martin <krata(zv)tomst(tec)com> - 01.10.2006 22:43:00
Ahoj
Zkouseli jste nekdy DEPO ? Me to prislo docela dobry.
--
S pozdravem,
martin
mailto:krata(zv)tomst.com
Zkusenosti s pouzitim Instant Objects
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 01.10.2006 21:14:53
Teda musim rict, ze asi propadam mirne skepsi :-).
Asi tak pred trictvrte rokem jsem se tady ptal na objektove databaze. Nikdo nic moc nevedel (tj. nepouzival). Ale preci jen nekdo ano, dostal jsem se ke Cache. Tu jsem si nainstaloval, odzkousel, prisla mi dobra, avsak nejak jsem neprisel na to, jak ji propojit s Delphi. (No a pak taky ta cena ;-)) Dival jsem se tenkrat na db4o - slozity.
Pak uz to jelo - instant objects - dobry designer objektu - tabulek, ale malo pruzny, a na nektery veci nepouzitelny.
Cas pokrocil. A po roce zase koncim u IO - poznatky ty samy. Tak ted jsem jeste ve stadiu studovani tiOPF, tam zadny designer neni, ale uz ted mam pocit, ze tyhle systemy programovani stejne praci neulehci. Vzdy nekdo vymysli system, ale vpodstate si pak clovek musi nadatlovat vsechno sam.
Jak to vidim, tak zase pouziju klasickou relacni databazi, klasicke nebo cizi dbkomponenty, proste suma sumarum nic moc se k lepsimu nezmenilo.
Vlasta Cilek.
------------ Puvodni zprava ------------
Od: Zbysek Hlinka <konference(zv)hlinka(tec)cz>
Predmet: Re: Zkusenosti s pouzitim Instant Objects
Datum: 01.10.2006 20:45:00
----------------------------------------
....
Mam tomu rozumet tak, ze se jedna o O/R mapper, ktery si vytvari sam db
tabulky a ukladani dat do nich? Pokud je tomu tak, musim znovu DURAZNE
varovat pred pouzitim takovych technologii pro vetsi aplikace. Vetsi
aplikaci pro tento pripad rozumim budto slozitejsi vztahy, nebo velke objemy
dat, u kterych jsou zaroven naroky na vykon. O/R mapper klidne ano, ale
takovy, ktery mapuje uz nad hotovou databazi a umoznuje ukladani dat mimo
svou (tedy z pohledu mapatoru) rezii a stejne tak dolovani dat v pripadech,
kdy je takovy mapator nevykonny.
Myslim, ze uz mam namet pro dalsi seminar v Laznich Belohrad. Letos jsem
mluvil o jednom mapatoru, ted bych to vzal z druhe strany - varovani pred
neuvazenym pouzitim takovych veci za kazdou cenu v blahove nadeji, ze to
usnadni praci. Je to omyl - v urcitych situacich to praci usnadnuje, ale v
urcitych naopak brzdi a muze ji to zhorsit natolik, ze se projekt stane
nepouzitelnym (bohate zkusenosti, tisice rozhorcenych dopisu :)).
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Zkusenosti s pouzitim Instant Objects
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 01.10.2006 20:44:51
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Krakora Martin
> Sent: Sunday, October 01, 2006 6:59 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Zkusenosti s pouzitim Instant Objects
>
> Zdravim,
>
> me IO pripada celkem nestrne pri praci s DB.
Mam tomu rozumet tak, ze se jedna o O/R mapper, ktery si vytvari sam db
tabulky a ukladani dat do nich? Pokud je tomu tak, musim znovu DURAZNE
varovat pred pouzitim takovych technologii pro vetsi aplikace. Vetsi
aplikaci pro tento pripad rozumim budto slozitejsi vztahy, nebo velke objemy
dat, u kterych jsou zaroven naroky na vykon. O/R mapper klidne ano, ale
takovy, ktery mapuje uz nad hotovou databazi a umoznuje ukladani dat mimo
svou (tedy z pohledu mapatoru) rezii a stejne tak dolovani dat v pripadech,
kdy je takovy mapator nevykonny.
Myslim, ze uz mam namet pro dalsi seminar v Laznich Belohrad. Letos jsem
mluvil o jednom mapatoru, ted bych to vzal z druhe strany - varovani pred
neuvazenym pouzitim takovych veci za kazdou cenu v blahove nadeji, ze to
usnadni praci. Je to omyl - v urcitych situacich to praci usnadnuje, ale v
urcitych naopak brzdi a muze ji to zhorsit natolik, ze se projekt stane
nepouzitelnym (bohate zkusenosti, tisice rozhorcenych dopisu :)).
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Zkusenosti s pouzitim Instant Objects
[*] Krakora Martin <mkkonfera(zv)seznam(tec)cz> - 01.10.2006 18:58:43
Zdravim,
me IO pripada celkem nestrne pri praci s DB. Jen jsem to zkousel, ale vice
se mi jako OPF osvedcil pro Delphi tiOPF http://www.techinsite.com.au/. Sice
neobsahuje zadne pruvodce, ale je mnohem flexibilnejsi.
S pozdravem Krakora M.
-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Vlastislav Cilek
Sent: Saturday, September 30, 2006 9:25 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Zkusenosti s pouzitim Instant Objects
Zdravim.
Prosim, jake ma kdo zkusenosti s pouzivanim InstantObjects ve svych
aplikacich. Doporucil by to nekdo na zaklade sve praxe?
Vlasta Cilek.
Zkusenosti s pouzitim Instant Objects
[*] Vlastislav Cilek <bigvlci(zv)seznam(tec)cz> - 30.9.2006 21:24:54
Zdravim.
Prosim, jake ma kdo zkusenosti s pouzivanim InstantObjects ve svych aplikacich. Doporucil by to nekdo na zaklade sve praxe?
Vlasta Cilek.
Kresleni na plochu s Alpha blend
[*] DjBall <djball(zv)seznam(tec)cz> - 30.9.2006 19:06:43
Konkretneji potrebuju vyriznout ctverec o velikost 100x100 z obrazovky
se vsim co tam je mimo moji aplikace a kurzoru.
DjBall napsal(a):
> Ahoj, dlouho uz hledam zpusob jak nakreslit na plochu obrazek s nejakou
> pruhlednosti. Nevite jak na to?
>
>
>
Zkusenosti s pouzitim Instant Objects
[*] Ladislav Nagy <delphi-konference(zv)bcpraha(tec)com> - 02.10.2006 09:15:50
K tomu "nadatlovat vsechno sam":
Hromadu veci je mozne si generovat na zaklade metadat, na zaklade struktury
DB (nejlepe podle case nastroje nebo aspon podle systemovych tabulek). A
sice bud generovat uplne celou *.pas unitu (nebo treba *.java) s definici
cele tridy anebo generovat jen nejakou cast kodu treba s vykricniky na
mistech, ktera je pak treba dopsat rucne.
To usnadnuje si realizovat OR mapping sam.
Pouzivame, rozhodne doporucuji.
S pozdravem Ladislav Nagy
----- Original Message -----
From: "Vlastislav Cilek" <bigvlci(zv)seznam(tec)cz>
> Tak ted jsem jeste ve stadiu studovani tiOPF, tam zadny designer neni, ale
uz ted mam pocit, ze tyhle systemy programovani stejne praci neulehci. Vzdy
nekdo vymysli system, ale vpodstate si pak clovek musi nadatlovat vsechno
sam.
> Jak to vidim, tak zase pouziju klasickou relacni databazi, klasicke nebo
cizi dbkomponenty, proste suma sumarum nic moc se k lepsimu nezmenilo.
Zkusenosti s pouzitim Instant Objects
[*] Richard Kejval <kejval.delphi(zv)centrum(tec)cz> - 02.10.2006 09:43:52
----- Original Message -----
From: "Zbysek Hlinka" <konference(zv)hlinka(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Sunday, October 01, 2006 8:44 PM
Subject: Re: Zkusenosti s pouzitim Instant Objects
> Mam tomu rozumet tak, ze se jedna o O/R mapper, ktery si vytvari sam db
> tabulky a ukladani dat do nich? Pokud je tomu tak, musim znovu DURAZNE
> varovat pred pouzitim takovych technologii pro vetsi aplikace...
Zda se mi, ze zbytecne zobecnujes. Uz pri minule diskuzi o objektovych db,
jsem upozornoval, ze DataObjects jsou hodne nezrale a ze napr. s Eco III to
nejde vubec porovnavat. Pripada mi to jako kdybych pred par lety narazil na
1 nekvalitni SQL DB a smahem odsoudil celou technologii jako nepouzitelnou..
Takze bych souhlasil s nazorem, nepouzivat DataObjects a kazdou objektovou
db podrobit dukladnym vykonostnim testum, pred pouzitim v konkretni
aplikaci, coz nakonec dela kazdy rozumny programator i pro relacni db..
S pozdravem
ing. Richard Kejval
mobil: 602477679
http://www.icsoftware(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 02.10.2006 09:57:54
Kdo ma zajem nasel jsem nejaky strucny vycuc o Cache.
http://www.intersystems(tec)cz/cache/technology/techguide/Cache_Tech_Guide_CZ.pd
f
Zvo.
Zkusenosti s pouzitim Instant Objects
[*] radek_456 radek_456 <radek 456(zv)seznam(tec)cz> - 02.10.2006 10:39:57
me se na InstantObjects libi ze InstantSelektor je TDataSet takze neni zadny problem s pripojenim objektu do standardnich DB controlu a taky se daji pouzit bezne report generatory ktere jsou zalozeny na TDataSetu - treba RAVE ktery je soucasti Delphi. V InstantSelektoru je take mozne vybirat objekty vlastnorucne psanym SQL dotazem. Za nejvetsi vyhodu povazuju ze je mozne navrhovat aplikaci na urovni objektu/navrhovych vzoru a neni nutne se zabyvat databazi protoze databazova struktura je generovana automaticky. To je velka vyhoda pokud ma byt program pokud mozno databazove nezavisly a ma podporovat vice databazi. Problemy s vykonem by mozna sly resit vhodnym navrhem aplikace/objektu nez se snazit vnutit aplikaci svuj pohled na to jak ma vypadat databaze
Radek
Nefungujici zvetsovani Image.width za behu program
[*] Ing. Josef Staufcik <j.staufcik(zv)msp.mesit(tec)cz> - 02.10.2006 11:20:01
Zdravim vsechny.
Na panel polozim image1 s nastavenym image1.width na hodnotu 100 a tri
tlacitka:
Tlacitko PRICTI s kodem image1.width:=image1.width+50;
Tlacitko ODECTI s kodem image1.width:=image1.width-50;
Tlacitko VYKRESLI s kodem image1.Canvas.Brush.Color := clWhite;
image1.Canvas.Rectangle(0,0
,image1.Width,image1.Height);
Po spusteni se mi kliknutim na tlacitko VYKRESLI vykresli obdelnik o delce
100, kliknutim na ODECTI a VYKRESLI se mi zmensi image1.width na 50 a
vyktesli se mi obdelnik o delce 50. To je vporadku. Nyni kliknu trikrat na
PRICTI, cimz se mi zvetsi image1.width na 200, ale VYKRESLI mi vykresli
obdelnik pouze o delce 100, tedy puvodni prvne vykreslena delka. Nelze jej
dale zvetsovat.
Vedel by prosim nekdo proc nejde vykreslenou plochu zvetsit, kde delam
chybu?
Diky. Pepa
Zkousel jsem to ve WinXP, Delphi 5 i Delphi BDS2006.
Naplneni dokumentu Open Office
[*] Marek Dostal <konf(zv)agnis(tec)cz> - 02.10.2006 12:04:05
Z programu vytvarime ze sablony dokumenty formatu MS Word a potreboval bych obdobne vytvaret dokument ze sablony a do formatu Open Office. Prosim o nasmerovani, pripadne nejaky priklad.
Marek Dostal
D7Prof, WinXP, FireBird 1.0, 1.5
Naplneni dokumentu Open Office
[*] Erik Salaj <winsoft(zv)netkosice.sk> - 02.10.2006 12:46:08
> Z programu vytvarime ze sablony dokumenty formatu MS Word a potreboval bych obdobne vytvaret dokument ze sablony a do formatu Open
Office. >Prosim o nasmerovani, pripadne nejaky priklad.
v OpenOffice SDK je demo priklad pre Delphi
Erik Salaj
Pouziti objektove orientovane databaze v Delphi
[*] radek_456 radek_456 <radek 456(zv)seznam(tec)cz> - 02.10.2006 12:58:09
>Prikladek. Mejme seznam lidi. Jasne relacni zalezitost. Vetsina lidi vsak
>nekde bydli, ma adresu. Takze si vytahnu vsechny Hlinky do gridu a necham si
>vypsat i jejich adresy. V relacni databazi napisu zhruba tento dotaz:
>select jmeno, prijmeni, ulice, cislo, mesto from lidi
>left join adresa on ... // nekdo muze byt bezdomovec a chci to videt
>where prijmeni='Hlinka'
>Dostanu vsechno do jednoho spojeneho relacniho seznamu.
>Vedle toho mam napriklad DataObjects (O/R mapper), ktere vsak provedou
>nasledujici. Vytahnu si seznam vsech Hlinku (zatim OK), ale pri zobrazovani
>v gridu se DO pro kazdy radek znovu zepta samostatnym dotazem na udaje z
>adresy. Peklo, vykon jde do [censored], Hlinku neni zas az tak malo,
>vygeneruje se hromada SQL dotazu.
prave ze ne protoze v idealnim pripade vetsina objektu existuje v pameti aplikacniho serveru a negeneruje se zadny SQL dotaz
>Toto je jednoducha situace, v realu byvaji vztahy vyrazne slozitejsi, a tedy
>odezvy databazi tomu odpovidaji. Tam O/R mappery tezce selhavaji vykonostne,
>totez bych si troufal tvrdit i o _ciste_ objektovych databazich.
Radek
Naplneni dokumentu Open Office
[*] aldria <aldria(zv)centrum(tec)cz> - 02.10.2006 14:38:17
Pos+AO0-lam p+AVkA7Q-klad pr+AOE-ce s OpenOfiice co jsem na+AWE-el kdesi na webu.
Milan
Marek Dostal napsal(a):
> Z programu vytvarime ze sablony dokumenty formatu MS Word a potreboval bych obdobne vytvaret dokument ze sablony a do formatu Open Office. Prosim o nasmerovani, pripadne nejaky priklad.
>
> Marek Dostal
> D7Prof, WinXP, FireBird 1.0, 1.5
>
>
>
Naplneni dokumentu Open Office
[*] Branislav Zaujec <bzaujec(zv)zoznam.sk> - 02.10.2006 22:08:52
Marek Dostal wrote / napisal(a):
> Z programu vytvarime ze sablony dokumenty formatu MS Word a potreboval bych obdobne vytvaret dokument ze sablony a do formatu Open Office. Prosim o nasmerovani, pripadne nejaky priklad.
>
> Marek Dostal
> D7Prof, WinXP, FireBird 1.0, 1.5
>
>
>
EditorDoc, EditorDocText:OleVariant;
StarOffice:OleVariant;
StarDesktop : Variant;
LoadParams : Variant;
PropertyValue : Variant;
CoreReflection : Variant;
...
StarOffice := CreateOleObject('com.sun.star.ServiceManager');
if not(VarIsEmpty(StarOffice) or VarIsNull(StarOffice)) then
begin
StarDesktop :=
StarOffice.Createinstance('com.sun.star.frame.Desktop');
LoadParams := VarArrayCreate([0, 0], varVariant);
CoreReflection
:=StarOffice.CreateInstance('com.sun.star.reflection.CoreReflection');
CoreReflection.ForName('com.sun.star.beans.PropertyValue').CreateObject(PropertyValue);
PropertyValue.Name := 'Hidden';
PropertyValue.Value := False;
LoadParams[0] := PropertyValue;
sUrl :=
'file:///'+StringReplace(novy_nazov,'\','/',[rfReplaceAll]);
EditorDoc := StarDesktop.LoadComponentFromURL(sUrl,
'_blank', 0,LoadParams);
EditorDocText := EditorDoc.GetText;
...
DocReplace := Text.CreateReplaceDescriptor;
pomtext := VarToStr(text.GetText.GetString);
for i:=0 to data.FieldCount-1 do
begin
try
if Q_PosStr('&&'+data.Fields[i].FieldName+'&&',pomtext)>0 then
begin
DocReplace.SetSearchString('&&'+data.Fields[i].FieldName+'&&');
DocReplace.SetReplaceString(data.Fields[i].AsString);
text.ReplaceAll(DocReplace);
end;
except
end; // try/except
...
Snad to je dostatocne zrozumitelne
Branislav Zaujec
Pouziti objektove orientovane databaze v Delphi
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 02.10.2006 22:08:52
> Pokud mas pocit, ze takove zasahy se delaji zridka, tak si zpracovatele
> nekolik hodin az dni pockaji, tak si predstav situaci, ze se jedna o
> verejne
> poskytovane informace (pres internet), a kazdy den se na neco zepta
> nekolik
> tisic lidi. Myslim, ze v takove situaci bys objektovou databazi velmi
> rychle
> opustil - pri dnesnim stavu techniky.
Nechci aby to vypadalo nejak velkohube, ale jsem presvedcen ze Cache by to
bez problemu zvladlo, a prave pro tuto aplikaci, kterou popisujes a pro
dotazy, ktere chces vykonavat by bylo vyhodne pouzit objektovy model a i na
soucasnem stavu hardware by to velmi slusne slapalo.
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 02.10.2006 20:10:42
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of radek_456 radek_456
> Sent: Monday, October 02, 2006 12:58 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> prave ze ne protoze v idealnim pripade vetsina objektu
> existuje v pameti aplikacniho serveru a negeneruje se zadny SQL dotaz
Hehe. Mejme tedy velkou slozitou databazi. Napriklad, neco dostatecne
srozumitelneho, mame Cesko, cca 10 milionu obyvatel. Obyvatele se nejak
jmenuji, nekde bydli, pracuji, chodi do skoly, maji pribuzenske vztahy atp.
O kazdem obyvateli existuji zaznamy na matrice, mistnich uradech, bernaku,
zivnostenskem uradu, katastru nemovitosti atp. Pozor, zaznamy jsou mistne
distribuovane, tedy zalezi i na lokalite uradu. Ne kazdy obyvatel ma zaznamy
na vsech mistech, nekteri maji zaznam na vice uradech stejneho typu (protoze
se stehovali, nebo maji vice podnikatelskych aktivit atp.). U kazdeho
obyvatele lze vysledovat historii pobytu, nekdo muze mit i vic bydlist
zaroven (v jednom case). Kvuli potrebnemu rozsahu dat rekneme, ze v databazi
sledujes udaje za poslednich 100 let (pro stouraly, kterym nevyhovuje
existence pocitacu na zacatku sledovane doby, jsou data porizena zpetne).
Typickymi dotazy jsou napriklad tyto: kde vsude ma bydliste nejaky clovek,
kdo vsechno je hlasen k pobytu na nejake adrese, v cem vsem podnika nejaky
clovek, kolik podnikatelu vykonava konkretni zivnost atp.
Ted se dostanou k moci bolsevici. Vezmou si do hlavy, ze potrestaji vsechny
lidi a jejich rodiny, kteri meli v letech L1-L2 prijmy ve vysi X-Y. Treba
tak, ze je vymazou z databaze. To znamena, ze zmizi fyzicky vsechny zaznamy
o tech lidech a jejich rodinnych prislusnicich, kteri v dane dobe ziji v
jedne domacnosti, avsak na matrice vznikne trvaly log o vymazu osob, na
mistnim urade vnikne log s trvanlivosti 5 let, jinde dojde k uvolneni vazeb.
Zkus odhadnou, kolik RAMeti bys na takovou databazi potreboval, abys ji
udrzel v pohotovosti a jaky vykon bys potreboval na osetreni vsech zmen
(muze se klidne jednat o desitky az stovky tisic lidi, kterych se tato
hromadna zmena dotkne).
Pokud mas pocit, ze takove zasahy se delaji zridka, tak si zpracovatele
nekolik hodin az dni pockaji, tak si predstav situaci, ze se jedna o verejne
poskytovane informace (pres internet), a kazdy den se na neco zepta nekolik
tisic lidi. Myslim, ze v takove situaci bys objektovou databazi velmi rychle
opustil - pri dnesnim stavu techniky.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Zkusenosti s pouzitim Instant Objects
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 02.10.2006 19:46:41
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of radek_456 radek_456
> Sent: Monday, October 02, 2006 10:40 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Zkusenosti s pouzitim Instant Objects
>
> Za nejvetsi vyhodu
> povazuju ze je mozne navrhovat aplikaci na urovni
> objektu/navrhovych vzoru a neni nutne se zabyvat databazi
> protoze databazova struktura je generovana automaticky.
Po urcitych zkusenostech to povazuju spise za nevyhodu. Duvodem je
problematicky vykon.
> To je
> velka vyhoda pokud ma byt program pokud mozno databazove
> nezavisly a ma podporovat vice databazi.
To lze resit i jinak.
> Problemy s vykonem
> by mozna sly resit vhodnym navrhem aplikace/objektu nez se
> snazit vnutit aplikaci svuj pohled na to jak ma vypadat databaze
Nekdy ano, nekdy ne. Pokud mi jde o pohodli a na vykonu mi nezalezi, pak
mohu takove reseni zvolit. Pokud mi jde o vykon, pak takovy mapator rozhodne
nezvolim. Pak totiz ani vcelku neprichazi v uvahu migrovani mezi vice
databazemi.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Zkusenosti s pouzitim Instant Objects
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 02.10.2006 19:40:40
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Richard Kejval
> Sent: Monday, October 02, 2006 9:44 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Zkusenosti s pouzitim Instant Objects
>
> > Mam tomu rozumet tak, ze se jedna o O/R mapper, ktery si
> vytvari sam db
> > tabulky a ukladani dat do nich? Pokud je tomu tak, musim
> znovu DURAZNE
> > varovat pred pouzitim takovych technologii pro vetsi aplikace...
>
> Zda se mi, ze zbytecne zobecnujes. Uz pri minule diskuzi o
> objektovych db,
> jsem upozornoval, ze DataObjects jsou hodne nezrale a ze
> napr. s Eco III to
> nejde vubec porovnavat.
Myslim, ze jsem to napsal celkem srozumitelne. O/R mappery jsou prima, ALE
je treba si davat pozor na jejich vyber a zpusob pouziti. Pricemz mappery,
ktere si obhospodaruji spravu databaze samy (jako DataObjects), jsou znacne
riskantni (ale i pres to maji sve vymezene pole pusobnosti, kde funguji
docela dobre). A pred jejich vobou je NUTNE dobre otestovat kriticka mista,
ktera se v aplikaci vyskytnou.
Take lze napsat mapper vlastni, ktery vygeneruje tridy vcetne servisnich
sluzeb pro ukladani a dolovani dat presne tak, jak sam potrebuju. Neni to
zas tak narocne.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 03.10.2006 08:03:41
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Josef Zvonicek
> Sent: Monday, October 02, 2006 10:09 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> Nechci aby to vypadalo nejak velkohube, ale jsem presvedcen
> ze Cache by to bez problemu zvladlo, a prave pro tuto
> aplikaci, kterou popisujes a pro dotazy, ktere chces
> vykonavat by bylo vyhodne pouzit objektovy model a i na
> soucasnem stavu hardware by to velmi slusne slapalo.
Je objektovy model a "objektovy model". O Cache nejsem schopen se bavit, uz
jsem to psal. To, co mi lezi v zaludku, jsou O/R mappery, ktere si generuji
databazi samy. At to budes navrhovat jakkoliv, vzdy tam narazis na misto,
kdy pujde vykon do haje. V takovychto situacich (tedy nad relacni databazi!)
nezbyva nic jineho, nez navrhnout databazi s ohledem na vykon, a TEPRVE nad
tim si muzu mapovat objekty - pro kazdou situaci to vsak muze vypadat jinak.
Objekty v tomto pripade nemaji popisovat strukturu databaze, ale maji
odpovidat tomu, jak s nimi potrebuju pracovat v aplikaci. Coz jsou v rade
pripadu dost rozdilne pohledy.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Richard Kejval <kejval.delphi(zv)centrum(tec)cz> - 03.10.2006 09:19:49
----- Original Message -----
From: "Zbysek Hlinka" <konference(zv)hlinka(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, October 02, 2006 8:10 PM
Subject: Re: Pouziti objektove orientovane databaze v Delphi
> Hehe. Mejme tedy velkou slozitou databazi. Napriklad, neco dostatecne
> srozumitelneho, mame Cesko, cca 10 milionu obyvatel. Obyvatele se nejak
> jmenuji, nekde bydli, pracuji, chodi do skoly, maji pribuzenske vztahy
> atp.
> O kazdem obyvateli existuji zaznamy na matrice, mistnich uradech, bernaku,
> zivnostenskem uradu, katastru nemovitosti atp. Pozor, zaznamy jsou mistne
> distribuovane, tedy zalezi i na lokalite uradu. Ne kazdy obyvatel ma
> zaznamy
> na vsech mistech, nekteri maji zaznam na vice uradech stejneho typu
> (protoze
> se stehovali, nebo maji vice podnikatelskych aktivit atp.). U
> kazdeho.......
Mam pocit, ze tvoje rozcarovani prameni z neexistence moznosti u DataObjects
definovat abstraktni tridy. Ty totiz nemaji zadnou reprezentaci v DB a
zdedene tabulky se ukladaji naprosto stejne jako v relacni DB. Pokud si
rucne zoptimalizuju jeste indexy, nevidim ve vykonu zadny zasadni problem.
Navic sofistikovanejsi systemy maji svuj objektovy dotazovaci jazyk OCL,
ktery muzes volne rozsirovat o sve "optimalizovane" prikazy..
S pozdravem
ing. Richard Kejval
mobil: 602477679
http://www.icsoftware(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 03.10.2006 10:25:54
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Richard Kejval
> Sent: Tuesday, October 03, 2006 9:20 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Pouziti objektove orientovane databaze v Delphi
>
> Mam pocit, ze tvoje rozcarovani prameni z neexistence
> moznosti u DataObjects definovat abstraktni tridy.
Umeji.
> Ty totiz
> nemaji zadnou reprezentaci v DB a zdedene tabulky se ukladaji
> naprosto stejne jako v relacni DB. Pokud si rucne
> zoptimalizuju jeste indexy, nevidim ve vykonu zadny zasadni problem.
> Navic sofistikovanejsi systemy maji svuj objektovy dotazovaci
> jazyk OCL, ktery muzes volne rozsirovat o sve
> "optimalizovane" prikazy..
DO maji nekolik podstatnych problemu.
1. Vyrabeji si strukturu v DB samy a nad ni absolutisticky vladnou.
2. Z toho plyne problem, ze jim nemohu podstrcit strukturu, ktera nevznikla
v jejich rezii. Indexy se definuji na urovni popisu tridy.
3. Spolecnym predkem vsech tabulek (v implementaci v DB) je jedna tabulka,
ktera urcuje jednoznacna ID v cele databazi. To ma na jednu stranu vyhodu v
tom, ze mi staci znat jen ID a pres nez zjistim objekt, ke kteremu je vazan,
na druhe strane to zpusobuje problemy, kdyz chci fyzicky smazat nejaky
zaznam. DO nuti cloveka kvuli vykonu vytvaret vazby, ktere jsou prakticky
zbytecne (z pohledu relacni databaze), coz jen umocnuje problem pri mazani
(vykon jde do ...).
4. Z povahy veci nelze nektere konstrukce vhodne zoptimalizovat na vykon.
5. Ukladani dat se deje vylucne v rezii DO - coz povazuju za obrovskou
chybu. Spravny postup je pres ulozene procedury a to v okamziku a hlavne
zpusobem kdy a jak ja chci, a ne kdy a jak chteji DO.
6. OQL (aspon ten v DO) neumi vybirat seznam sloupcu, neumi agregace. Napsat
v tom _vykonny_ dotaz je mnohdy pracnejsi nez to psat primo v SQL. Tyka se
to zejmena dotazu pro ruzne prehledove sestavy, grafy atp. Nad malymi daty
je to fuk, nad velkymi pres vice tabulek uz ne.
7. Preklad z OQL do SQL je nekdy dost kostrbaty. Zkousel jsem ladit nektere
takove dotazy a dival jsem se pres profiler, co se deje na nizsi urovni.
Vetsinou to jde, ale v urcitych specifickych (ale nikoliv zridkavych)
situacich neni mozne sestavit solidni dotaz pomoci OQL.
8. Drive nebo pozdeji se dostavam k raznemu reseni problemu, ktere by se bez
pouziti DO vubec neobjevily.
Konkretni pripady. Mel jsem napsat vyhledavani duplicit osob podle nejakych
priznaku. S pristupem pres DO se jedna o nerealizovatelnou ulohu - nalil
jsem do databaze pul milionu osob, prohledavani vsech proti vsem je
neskutecne dlouhe. Primym dotazem do db s pouzitim unionu mam vysledek
obratem ruky.
Podobne, vyrobit prehledovou sestavu se soucty vynosu podle tydnu nebo
mesicu je v DO porod. Pricemz zde se velmi elegantne a svizne da pouzit
operator pivot (MS SQL) v kombinaci s agregacnimi funkcemi. OQL v DO nic
takoveho nezna.
DO jsou sikovne pro male webiky o nekolika strankach. V techto pripadech
skutecne usnadnuji a urychluji praci. Od jiste urovne reseni vsak dochazi k
opacnemu efektu - praci komplikuji a brzdi.
Co se tyka jinych systemu, ty neznam. V DO jsem se vsak naucil jednu vec -
vim, kde mam hledat slaba mista a co je treba protestovat, nez budu
investovat penize a cas do nejake takoveto technologie.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Richard Kejval <kejval.delphi(zv)centrum(tec)cz> - 03.10.2006 11:25:59
----- Original Message -----
From: "Zbysek Hlinka" <konference(zv)hlinka(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Tuesday, October 03, 2006 10:25 AM
Subject: Re: Pouziti objektove orientovane databaze v Delphi
>> Mam pocit, ze tvoje rozcarovani prameni z neexistence
>> moznosti u DataObjects definovat abstraktni tridy.
>
> Umeji.
> DO maji nekolik podstatnych problemu.
> 1. Vyrabeji si strukturu v DB samy a nad ni absolutisticky vladnou.
> 2. Z toho plyne problem, ze jim nemohu podstrcit strukturu, ktera
> nevznikla
> v jejich rezii. Indexy se definuji na urovni popisu tridy.
> 3. Spolecnym predkem vsech tabulek (v implementaci v DB) je jedna tabulka,
> ktera urcuje jednoznacna ID v cele databazi. To ma na jednu stranu vyhodu
> v
Z tveho popisu plyne, ze neumi, nebo jen castecne. Kdyby ano, tak si sam
ovlivnuju, jestli budu pouzivat spolecnou tabulku nebo ne. Dejme tomu, ze
chci mit ve vsech tabulkach guid. Stanovim spolecneho predka tabulku A. Od
te budu odvozovat tabulku B s dalsimi vlastnostmi. Pokud A neni abstraktni,
zalozi se mi do SQL DB 2 tabulky A a B a v B uz nebude polozka guid, ale jen
rozsirene vlastnosti. Pokud, ale objektova DB umi pouzit abstraktni tabulku
A, pak se tabulka A v SQL DB vubec neobjevi a tabulka B bude obsahovat i
polozku guid. Doufam, ze je videt, ze s timto pristupem, muzu strukturu
navrhovat dost volne, takze jestli maji DO natvrdo jednu tabulku spolecnou,
tak se nedivim, ze s tim vznikaji takove problemy..
Ale asi dost diskuze, chtel jsem jen, aby bylo videt, ze ty problemy
vznikaji s konkretni technologii a ze bych takto vseobecne objektove DB
neodsuzoval. Porad si myslim, ze to je technologie budoucnosti a jeji cas
urcite prijde..
S pozdravem
ing. Richard Kejval
mobil: 602477679
http://www.icsoftware(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 03.10.2006 11:44:00
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Richard Kejval
> Sent: Tuesday, October 03, 2006 11:26 AM
>
> Ale asi dost diskuze, chtel jsem jen, aby bylo videt, ze ty
> problemy vznikaji s konkretni technologii a ze bych takto
> vseobecne objektove DB neodsuzoval. Porad si myslim, ze to je
> technologie budoucnosti a jeji cas urcite prijde..
Ja take objektove db nebo O/R mappery vseobecne neodsuzuju, jen tvrdim, ze
pro urcite ulohy jsou dnes stale jeste nevhodne a ze je tedy treba si dat
dobry pozor, nez takovou db pouziju. Zde je na miste dvakrat, nebo radeji
trikrat merit, nez si pak trhat vlasy nad tim, do ceho jsem to pustil. Je
nutne vedet, jaka slaba mista me mohou zaskocit, zda se mohou vyskytnou v me
aplikaci a tato mista je treba solidne otestovat, s plnymi daty.
Jinak, az budou v pocitacich stovky procesoru a terabajty ramky, pak bude
prizniva doba i pro ciste objektove databaze, protoze nebude problem vyresit
narocne ulohy hrubou silou. Napriklad vyhledani duplicit v milionech
zaznamu. Nebo nekdo vymysli kvalitni algoritmy, ktere plne nahradi adekvatni
schopnosti zname z relacnich databazi. ;)
Jo, a je tu jeste jeden faktor, ktery je nebezpecnejsi nez u relacnich
databazi. Kdyz se "rozjedes" a zacnes zbesile dedit, pak vyrobis neprehledne
monstrum, v kterem aby se pak prase vyznalo.
S pozdravem
Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz
Pouziti objektove orientovane databaze v Delphi
[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 03.10.2006 11:52:01
Ahoj,
snad to nebude uplne mimo tema - muzete prosim nekdo doporucit nejaky
generator kodu (pro Delphi - Object Pascal) pro zapouzdreni databazi MS SQL
pres ADO do trid ? Uz to nejakou chvili hledam, ale krome .NET veci nemuzu
nic kloudneho najit...
Diky
Jiri Foldyna
Synapse - odesilani dat na PVS
[*] MaReK Penguin Olsavsky <orsm(zv)centrum(tec)cz> - 03.10.2006 13:36:10
Dobry den,
z duvodu mnoha dobrych referenci, ale i diky problemum, ktere mame s
komunikaci na nekolika pocitacich, jsem se rozhodl pro komunikaci s PVS
opustit Indy komponenty a preportovat aplikaci na Synapse.
Zatim mi to trochu vazne pri odesilani a momentalne nevim, jak dal.
Inicializuji si http:
ssl := TTCPBlockSocket.Create;
https := THTTPSend.Create;
with https do begin
MimeType := 'text/xml';
UserAgent := 'Mozilla/4.0 (compatible; AMzdy ELDP/Synapse)';
Protocol := '1.1';
Status100 := True;
TargetPort := '443';
Sock.SSL.SSLType := LT_all;
if (PrUse = True) then begin
ProxyHost := PrServer;
ProxyPort := IntToStr(PrPort);
if((ProxyUsr<>'') or (ProxyPwd<>'')) then begin
ProxyUser := ProxyUsr;
ProxyPass := ProxyPwd;
end;
end;
end;
A pak odesilam:
//HTTP.Post(baseaddr+adresa,data,Response);
WriteStrToStream(https.Document, xmltext);
//http.
result := https.httpMethod('POST',adresa);
XMLShow.Lines.Assign(Https.headers);
XMLShow.Lines.LoadFromStream(https.Document);
vysledek := https.ResultString;
//vysledek := WriteStreamToString(http.Document);
A jsem u jadra pudla, podle XML mam pocit, ze XML na portal odeslo, ale
mailova odpoved veskera zadna :-(. Zapomel jsem na neco pri nastavovani
Synapse, nebo je vse OKi a proste dev vetev je zase ppoommaallaa, nebo
prestala posilat maily, je-li vse OK?
Jeste to XML, ktere mi prislo:
<?xml version="1.0"?>
<GovTalkMessage xmlns="http://www.govtalk.gov.uk/CM/envelope">
<EnvelopeVersion>2.0</EnvelopeVersion>
<Header>
<MessageDetails>
<Class>CSSZ_RELDP</Class>
<Qualifier>acknowledgement</Qualifier>
<Function>submit</Function>
<TransactionID></TransactionID>
<CorrelationID>4C0F990BFFE1CFC4AE9D19B26FE06EAD</CorrelationID>
<ResponseEndPoint
PollInterval="10">https://bezpecne.dev.gov(tec)cz/submission</ResponseEndPoint>
<GatewayTimestamp>2006-10-03T11:33:34.042</GatewayTimestamp>
</MessageDetails>
<SenderDetails/>
</Header>
<GovTalkDetails>
<Keys/>
</GovTalkDetails>
<Body></Body>
</GovTalkMessage>
PVS je asi evergreenem :-)
-- MO
- --
MaReK "Penguin" Olsavsky
PHP Voodoo
private mail: orsm(zv)centrum(tec)cz
private web: http://orsm.wz(tec)cz
ICQ#: 160 178 925; MSN: orsm(zv)centrum(tec)cz; Skype: Penguin_007
tel.: +420-603-519-650; +420-775-154-689 (775-1-LINUX)
Jak zobrazovat vetsi bitmapy?
[*] delphak(zv)centrum(tec)cz - 03.10.2006 14:22:14
V aplikaci pracuju s oskenovanymi papiry A4 v 300DPI - tedy obraz (cca 2400x3500px) ulozeny do JPG ma cca 600Kb a jako BMP 25MB. Problem je s jejich zobrazovanim - pouzivam TImage - kde nastavim pozadovanou velikost (100%, na stranku,na sirku, apod ...) a nastavim k tomu ScrollBars.
Bohuzel kdyz kliknu na ScrollBar, tak se dole objevi sedivej prouzek a cca 3-4 vteriny trva nez se obrazek prekresli .. o tazeni za posuvnik uz ani nemluve.
Mate nekdo nejakou praktickou zkusenost a pouzitelnou radu, kterak tyto obrazky zobrazovat (velikost zmensit nemohu).
Synapse - odesilani dat na PVS
[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 03.10.2006 14:44:16
> Zatim mi to trochu vazne pri odesilani a momentalne nevim, jak dal.
> Inicializuji si http:
> ssl := TTCPBlockSocket.Create;
K cemu vytvaris ten objekt ssl? V uvedenem prikaldu jej na nic
nepotrebujes. Jinak se mi tam nedari najit zadnou blbost, tvuj
prikald by mel normalne fungovat. A dle vraceneho XML bych soudil, ze
v komuniakci pres HTTPS asi problem nebude, ne?
--
Lukas Gebauer.
E-mail: gebauerl(zv)mlp(tec)cz
http://synapse.ararat(tec)cz/ - Ararat Synapse - TCP/IP Lib.
Jak zobrazovat vetsi bitmapy?
[*] Vaclav Sazima <vaclav.sazima(zv)utilia(tec)cz> - 03.10.2006 14:54:17
Zkusil bych: Nacist obrazek do tbitmap a pak na zaklade pohybu posuvniku
kopirovat pozadovanou cast pres canvas.copyrect.
Vaclav Sazima
delphak(zv)centrum(tec)cz napsal(a):
> V aplikaci pracuju s oskenovanymi papiry A4 v 300DPI - tedy obraz (cca 2400x3500px) ulozeny do JPG ma cca 600Kb a jako BMP 25MB. Problem je s jejich zobrazovanim - pouzivam TImage - kde nastavim pozadovanou velikost (100%, na stranku,na sirku, apod ...) a nastavim k tomu ScrollBars.
> Bohuzel kdyz kliknu na ScrollBar, tak se dole objevi sedivej prouzek a cca 3-4 vteriny trva nez se obrazek prekresli .. o tazeni za posuvnik uz ani nemluve.
>
> Mate nekdo nejakou praktickou zkusenost a pouzitelnou radu, kterak tyto obrazky zobrazovat (velikost zmensit nemohu).
>
>
>
>
Synapse - odesilani dat na PVS
[*] MaReK Penguin Olsavsky <orsm(zv)centrum(tec)cz> - 03.10.2006 15:12:18
Lukas Gebauer napsal(a):
>> Zatim mi to trochu vazne pri odesilani a momentalne nevim, jak dal.
>> Inicializuji si http:
>> ssl := TTCPBlockSocket.Create;
>
> K cemu vytvaris ten objekt ssl? V uvedenem prikaldu jej na nic
> nepotrebujes. Jinak se mi tam nedari najit zadnou blbost, tvuj
> prikald by mel normalne fungovat. A dle vraceneho XML bych soudil, ze
> v komuniakci pres HTTPS asi problem nebude, ne?
Ten jsem uz vyhodil, protoze jsem koukal, ze ho nepouzivam pesky nikde,
predtim tam byla Idny a tam jsem to holt rucne cely mel, takze na
zacatku jsem mechanicky prepisoval :-).
Podle toho XML mi taky prijde vse OKi, ale nejak postradam mail do PVS,
proto jsem se radsi zeptal, jestli jsem neco v dokumentaci neprehledl a
nemam nejakou fikovinu.
Diky za pomoc.
-- MO
- --
MaReK "Penguin" Olsavsky
PHP Voodoo
private mail: orsm(zv)centrum(tec)cz
private web: http://orsm.wz(tec)cz
ICQ#: 160 178 925; MSN: orsm(zv)centrum(tec)cz; Skype: Penguin_007
tel.: +420-603-519-650; +420-775-154-689 (775-1-LINUX)
select s vylucenim duplicitnych hodnot
[*] pavel.simicek(zv)centrum(tec)cz - 04.10.2006 08:17:38
Pouzij distinct.
select distinct cislo from tabulka
P.
>Zdravim
>
>Je mozne nejakym sposobom napisat select, ktory
>automaticky vyluci duplicitne hodnoty?
>
>Napr. vysledok selectu by bol:
> ? 47
> ? 13
> ? 13
> ? 47
> ? 47
> ? 11
>A ja by som potreboval toto:
> ? 13
> ? 11
> ? 47
>
>
Jak zobrazovat vetsi bitmapy?
[*] Jan Dvorak <dvorak(zv)szu(tec)cz> - 04.10.2006 08:17:38
Pouzivam free knihovnu Graphics32, kde je k dispozici plynuly zoom a odezva
na pohyb posuvniku u mych obrazku ma nepostrehnutelne zpozdeni. Na soukromy
mail posilam demo program z knihovny pro vyzkouseni.
Jan Dvorak
> V aplikaci pracuju s oskenovanymi papiry A4 v 300DPI - tedy
> obraz (cca 2400x3500px) ulozeny do JPG ma cca 600Kb a jako
> BMP 25MB. Problem je s jejich zobrazovanim - pouzivam TImage
> - kde nastavim pozadovanou velikost (100%, na stranku,na
> sirku, apod ...) a nastavim k tomu ScrollBars.
> Bohuzel kdyz kliknu na ScrollBar, tak se dole objevi sedivej
> prouzek a cca 3-4 vteriny trva nez se obrazek prekresli .. o
> tazeni za posuvnik uz ani nemluve.
>
> Mate nekdo nejakou praktickou zkusenost a pouzitelnou radu,
> kterak tyto obrazky zobrazovat (velikost zmensit nemohu).
InnoSetup - zhozeni instalovaneho programu
[*] Pavel Zidek <delphi(zv)kopr(tec)cz> - 04.10.2006 08:07:36
Zdravim,
potrebuji nejak nastavit v InnoSetup aby zhodil bezici program, ktery prave instaluji.
Diky za pomoc
Pavel ZIDEK
select s vylucenim duplicitnych hodnot
[*] Ivan Dulgerov <ivan.dulgerov(zv)sazp.sk> - 04.10.2006 09:07:44
Tomas Krejzek wrote / napisal(a):
> select distinct id from ...
>> Je mozne nejakym sposobom napisat select, ktory
>> automaticky vyluci duplicitne hodnoty?
*Dik vsetkym, to je ono ;-))
--
S pozdravom
Ivan Dulgerov CEI SAZP Delphi programator
Tajovskeho 28
97590 Banska Bystrica
tel: 048 4374144
ICQ : 190698607
mail : ivan.dulgerov(zv)sazp.sk
select s vylucenim duplicitnych hodnot
[*] kocan(zv)ebchod(tec)cz - 04.10.2006 08:11:37
> Je mozne nejakym sposobom napisat select, ktory
> automaticky vyluci duplicitne hodnoty?
cau,
select distinct hodnota from tabulka;
napr. viz http://www.dbsvet(tec)cz/view.php?cisloclanku=2002011601
KER
Pouziti objektove orientovane databaze v Delphi
[*] radek_456 radek_456 <radek 456(zv)seznam(tec)cz> - 04.10.2006 08:25:39
>snad to nebude uplne mimo tema - muzete prosim nekdo doporucit nejaky
>generator kodu (pro Delphi - Object Pascal) pro zapouzdreni databazi MS SQL
>pres ADO do trid ? Uz to nejakou chvili hledam, ale krome .NET veci nemuzu
>nic kloudneho najit...
mrkni sem:
http://www.objectsight.com/Overview.htm#Class%20Generator
Radek
select s vylucenim duplicitnych hodnot
[*] Miroslav Suchy <suchy(zv)jplusj(tec)cz> - 04.10.2006 08:15:38
SELECT DISTINCT ?
Mirek
----- Original Message -----
From: "Ivan Dulgerov" <ivan.dulgerov(zv)sazp.sk>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Wednesday, October 04, 2006 8:03 AM
Subject: select s vylucenim duplicitnych hodnot
> Zdravim
>
> Je mozne nejakym sposobom napisat select, ktory
> automaticky vyluci duplicitne hodnoty?
>
> Napr. vysledok selectu by bol:
> ? 47
> ? 13
> ? 13
> ? 47
> ? 47
> ? 11
> A ja by som potreboval toto:
> ? 13
> ? 11
> ? 47
>
>
>
> --
> S pozdravom
>
> Ivan Dulgerov CEI SAZP Delphi programator
>
> Tajovskeho 28
> 97590 Banska Bystrica
> tel: 048 4374144
> ICQ : 190698607
> mail : ivan.dulgerov(zv)sazp.sk
>
>
>
>
>
select s vylucenim duplicitnych hodnot
[*] Tomas Krejzek <tomas.krejzek(zv)kpsys(tec)cz> - 04.10.2006 08:13:37
select distinct id from ...
Ivan Dulgerov napsal(a):
> Zdravim
>
> Je mozne nejakym sposobom napisat select, ktory
> automaticky vyluci duplicitne hodnoty?
>
> Napr. vysledok selectu by bol:
> ? 47
> ? 13
> ? 13
> ? 47
> ? 47
> ? 11
> A ja by som potreboval toto:
> ? 13
> ? 11
> ? 47
>
>
>
select s vylucenim duplicitnych hodnot
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 04.10.2006 08:11:37
select distinct * from Tabulka
distinct zajisti, ze se vybere z nekolika naprosto stejnych radku
vystupu vzdy jen jeden
Ladislav Stary
Ivan Dulgerov napsal(a):
>Zdravim
>
>Je mozne nejakym sposobom napisat select, ktory
>automaticky vyluci duplicitne hodnoty?
>
>Napr. vysledok selectu by bol:
> ? 47
> ? 13
> ? 13
> ? 47
> ? 47
> ? 11
>A ja by som potreboval toto:
> ? 13
> ? 11
> ? 47
>
>
select s vylucenim duplicitnych hodnot
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 04.10.2006 08:07:36
select distinct
S pozdravem
Milan Tomes
Ivan Dulgerov napsal(a):
> Je mozne nejakym sposobom napisat select, ktory
> automaticky vyluci duplicitne hodnoty?
>
select s vylucenim duplicitnych hodnot
[*] Ivan Dulgerov <ivan.dulgerov(zv)sazp.sk> - 04.10.2006 08:03:36
Zdravim
Je mozne nejakym sposobom napisat select, ktory
automaticky vyluci duplicitne hodnoty?
Napr. vysledok selectu by bol:
? 47
? 13
? 13
? 47
? 47
? 11
A ja by som potreboval toto:
? 13
? 11
? 47
--
S pozdravom
Ivan Dulgerov CEI SAZP Delphi programator
Tajovskeho 28
97590 Banska Bystrica
tel: 048 4374144
ICQ : 190698607
mail : ivan.dulgerov(zv)sazp.sk
Jak zobrazovat vetsi bitmapy?
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 03.10.2006 14:46:16
Ahoj,
vykreslovani velkych obrazku (ortofotomapy 5000 x 4000 px 24 bit)
resim bezbolestne pomoci TPaintBox. Musis si samostatne obslouzit posun,
ale to je celkem v pohode. Pokud nekreslis v meritku 1:1, zavolej
SetStretchBltMode(ACanvas.Handle, STRETCH_HALFTONE); (radove rychlejsi
nez treba STRETCH_ANDSCANS).
fragment vykreslovaciho kodu:
if NotPolotonProBW and src.Monochrome then
SetStretchBltMode(ACanvas.Handle, STRETCH_ANDSCANS)
else
SetStretchBltMode(ACanvas.Handle, STRETCH_HALFTONE);
SetBrushOrgEx(dst.Handle, 0, 0, nil);
ACanvas.Lock;
try
StretchBlt(
dst.Handle, // cil
d.Left, d.Top,
d.Right-d.Left, d.Bottom-d.Top, // zdrojovy vyrez
src.Canvas.Handle, // zdroj
s.Left, s.Top,
s.Right-s.Left, s.Bottom-s.Top, // zdrojovy vyrez
FRasterOperation); // zpusob
finally
ACanvas.Unlock;
end;
Peca
Jak z GetCommandLine korektne ukousnout volani pro
[*] Ludek <konference(zv)sales(tec)cz> - 04.10.2006 15:30:13
----- Original Message -----
From: "Pavel Smerk" <xsmerk(zv)fi.muni(tec)cz>
> (s WinAPI mam bohuzel nula zkusenosti a) potreboval bych z
> GetCommandLine()
> nejak korektne vyhodit jmeno programu a pripadnou cestu. Jak to lze
> udelat?
Ahoj,
Predpokladam, ze tedy chces komplet parametry.
To jde nejak takhle:
s := '';
for i:=1 to ParamCount do s := s+#32+ParamStr(i);
Ludek
Jak z GetCommandLine korektne ukousnout volani pro
[*] Pavel Smerk <xsmerk(zv)fi.muni(tec)cz> - 04.10.2006 15:16:11
Zdravim,
(s WinAPI mam bohuzel nula zkusenosti a) potreboval bych z GetCommandLine()
nejak korektne vyhodit jmeno programu a pripadnou cestu. Jak to lze udelat?
[Asi nemuzu moc rozumne vyuzit ParamStr(0), protoze tam je umisteni binarky,
zatimco v GetCommandLine je relativni cesta (a ani neni korektni najit v
ParamStr(0) jmeno programu, protoze to by se teoreticky mohlo vyskytovat v
ceste i s nasledujici mezerou).]
Diky, P.
Jak z GetCommandLine korektne ukousnout volani pro
[*] Ondrej Kelle <o.kelle(zv)digitalpublishing.de> - 04.10.2006 15:52:15
> potreboval bych z GetCommandLine() nejak korektne vyhodit
> jmeno programu a pripadnou cestu.
var
S: string;
begin
GetParamStr(GetCommandLine, S);
ShowMessage(S);
end;
GetParamStr je v unite System ale v sekcii implementation, tak si to
skopiruj odtial.
HTH
TOndrej
fastMM
[*] David Kopecek <david.kopecek(zv)hacktrack(tec)com> - 05.10.2006 01:22:59
Preji dobry den,
nemohl by mi nahodou nekdo poradi jak spravne pod Delphi 7 nastavit
FastMM tak aby dana aplikace fungovala stejne jako kdyz je
skompilovana v delphi 2006 ?..
Ono totiz tam sou neustale ty problemy s uvolnovani pameti.. FastMM
samo osobe nic nehlasi ale po case naroste virtualni pamet..
Diky David..
spadnuti spojeni a synapse..
[*] delphin(zv)post(tec)cz - 05.10.2006 01:53:02
> pouzivam v jedne aplikaci synapsi a narazil sem na problem jak zjisti
> ze je dane spojeni preruseno..
>
> mam to resene takto na zacatku otestuju jestli je neco v LastError..
> Je to tak uplne v poradku vyresi to vsechny problemy?...
Zkuste druhemu PC odpojit sitovy kabel (predpokladam, ze mate normalni sit,
ne dve PC propojene naprimo). Prvni PC se potom bude jeste hodiny tvarit, ze
se spojenim je vse v poradku.
Jedina 100% funkcni moznost, jak zjistit zda spojeni je preruseno, je
pravidelne odesilat data. To se da zajistit celkem lehce zapnutim KeepAlive
mechanismu.
spadnuti spojeni a synapse..
[*] David Kopecek <david.kopecek(zv)hacktrack(tec)com> - 05.10.2006 01:22:59
Zdravim konferenci
pouzivam v jedne aplikaci synapsi a narazil sem na problem jak zjisti
ze je dane spojeni preruseno..
mam to resene takto na zacatku otestuju jestli je neco v LastError..
Je to tak uplne v poradku vyresi to vsechny problemy?...
FSock:TTCPBlockSocket;
var
stemp:string;
begin
if fsock.lasterror=0 then
begin
result:=false;
stemp:=FSock.RecvString(10*1000);
if stemp='+MSG' then result:=true;
end;
out of memory
[*] Petr Borkovec <petrborkovec(zv)volny(tec)cz> - 04.10.2006 21:32:41
Delphi 7, Firebird 1.5.2 , Windows XP
V aplikaci pouzivam pro vyhledavani slova v poli obsah (varchar(10000))
tabulky TAB_ARCHIVSLO nasledujici postup - priklad je pro slovo stavebni:
retez:='select * from TAB_ARCHIVSLO where upper(obsah collate PXW_CSY)
like upper(''%stavebni%'' collate PXW_CSY) order by ZakC';
FormArchivHlavni.IBQuery3.Active:=false;
FormArchivHlavni.IBQuery3.SQL.Clear;
FormArchivHlavni.IBQuery3.SQL.Add(retez);
FormArchivHlavni.IBQuery3.Active:=true;
Nepravidelne - po nekolikerem vyhledavani za sebou - se objevuje chyba
Out of memory. Netusim, co s tim - muze nekdo poradit?
Petr
Jak z GetCommandLine korektne ukousnout volani pro
[*] Pavel Smerk <xsmerk(zv)fi.muni(tec)cz> - 04.10.2006 18:30:27
On Wed, Oct 04, 2006 at 03:52:15PM +0200, Ondrej Kelle wrote:
> > potreboval bych z GetCommandLine() nejak korektne vyhodit
> > jmeno programu a pripadnou cestu.
>
> var
> S: string;
> begin
> GetParamStr(GetCommandLine, S);
> ShowMessage(S);
> end;
>
> GetParamStr je v unite System ale v sekcii implementation, tak si to
> skopiruj odtial.
Jo, to je asi ono, diky. Zdrojaky unity System jsem ve svych Delphi nenasel,
ale na http://members.aye.net/~bstowers/delphi/bugs/generated/rtlunits.htm
je to podle vseho dokonce s opravou.
Na druhou stranu, zrejme to dela presne to, co me napadlo jako korektni
reseni, ale nechtelo se mi to kodovat, protoze mi to prislo jako kanon na
vrabce. Jsem myslel, ze na to bude primo nejaka funce API nebo tak neceho,
systemu to prece musi byt znamo, co je volani programu a co jsou parametry,
tak mi prislo zbytecne to parsovat znovu. No aspon, ze to mam zadarmo. :-)
Diky, P.
Jak z GetCommandLine korektne ukousnout volani pro
[*] Pavel Smerk <xsmerk(zv)fi.muni(tec)cz> - 04.10.2006 17:46:24
On Wed, Oct 04, 2006 at 05:06:21PM +0200, radek_456 radek_456 wrote:
> moc jsem nepochopil co vlastne chcete ale zkuste pouzit promennou "CmdLine"
No to ale vraci to same, co GetCommandLine, ne? Zejmena tedy na zacatku je
volana binarka i s relativni cestou. To nechci.
> Description Note:
> On Windows, the CmdLine variable points to a null-terminated string that
> contains the command-line arguments specified when the application was
> started. Use ParamStr to access individual arguments. In a library (DLL),
> CmdLine is nil (Delphi) or NULL (C++).
>
> Note:
> On Linux, CmdLine is always nil (Delphi) or NULL (C++).
>
> mozna pro vas dale bude uzitecne Application.ExeName a ExtractFilePath()
ExtractFilePath nemuzu pouzit, protoze pro CmdLine
program.exe ahoj "\zdar"
mi vrati
program.exe ahoj "\
Presto diky, P.
Jak z GetCommandLine korektne ukousnout volani pro
[*] Pavel Smerk <xsmerk(zv)fi.muni(tec)cz> - 04.10.2006 16:44:19
On Wed, Oct 04, 2006 at 03:52:15PM +0200, Ondrej Kelle wrote:
> > potreboval bych z GetCommandLine() nejak korektne vyhodit
> > jmeno programu a pripadnou cestu.
>
> var
> S: string;
> begin
> GetParamStr(GetCommandLine, S);
> ShowMessage(S);
> end;
>
> GetParamStr je v unite System ale v sekcii implementation, tak si to
> skopiruj odtial.
To vypada slibne --- ale ja asi nevim, kde najdu zdrojak/vyvolam jeho
zobrazeni unity System. :-) Muze me nekdo nasmerovat, pripadne mi uvedeny
kousek poslat?
Diky moc, P.
Jak z GetCommandLine korektne ukousnout volani pro
[*] radek_456 radek_456 <radek 456(zv)seznam(tec)cz> - 04.10.2006 17:06:21
moc jsem nepochopil co vlastne chcete ale zkuste pouzit promennou "CmdLine"
Description Note:
On Windows, the CmdLine variable points to a null-terminated string that contains the command-line arguments specified when the application was started. Use ParamStr to access individual arguments. In a library (DLL), CmdLine is nil (Delphi) or NULL (C++).
Note:
On Linux, CmdLine is always nil (Delphi) or NULL (C++).
mozna pro vas dale bude uzitecne Application.ExeName a ExtractFilePath() Radek
Jak z GetCommandLine korektne ukousnout volani pro
[*] Pavel Smerk <xsmerk(zv)fi.muni(tec)cz> - 04.10.2006 16:42:19
On Wed, Oct 04, 2006 at 03:30:13PM +0200, Ludek wrote:
>
> ----- Original Message -----
> From: "Pavel Smerk" <xsmerk(zv)fi.muni(tec)cz>
>
> > (s WinAPI mam bohuzel nula zkusenosti a) potreboval bych z
> > GetCommandLine()
> > nejak korektne vyhodit jmeno programu a pripadnou cestu. Jak to lze
> > udelat?
>
> Ahoj,
> Predpokladam, ze tedy chces komplet parametry.
> To jde nejak takhle:
>
> s := '';
> for i:=1 to ParamCount do s := s+#32+ParamStr(i);
Jeste bych tam musel pocitam narvat uvozovky okolo ParamStr(i), takze jednak
by to nebylo totez, co na te cmdline bylo (uznavam, ze to je detail,
vyhodnoti se to stejne), zejmena ale mi to pripada jakesi zbytecne slozite,
ta cmdline je rozparsovana do ParamStr[] a ja ji pak zase skladam zpatky...
P.
out of memory
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 05.10.2006 08:23:30
Ten formular existuje po celou dobu?
Me spis napadlo jestli si ten formular nevytvaris za chodu a pak ho
nezapominas uvolnit.
Ladislav Stary
Petr Borkovec napsal(a):
>Delphi 7, Firebird 1.5.2 , Windows XP
>
>V aplikaci pouzivam pro vyhledavani slova v poli obsah (varchar(10000))
>tabulky TAB_ARCHIVSLO nasledujici postup - priklad je pro slovo stavebni:
>
>retez:='select * from TAB_ARCHIVSLO where upper(obsah collate PXW_CSY)
>like upper(''%stavebni%'' collate PXW_CSY) order by ZakC';
>FormArchivHlavni.IBQuery3.Active:=false;
>FormArchivHlavni.IBQuery3.SQL.Clear;
>FormArchivHlavni.IBQuery3.SQL.Add(retez);
>FormArchivHlavni.IBQuery3.Active:=true;
>
>Nepravidelne - po nekolikerem vyhledavani za sebou - se objevuje chyba
>Out of memory. Netusim, co s tim - muze nekdo poradit?
>
>Petr
>
>
spadnuti spojeni a synapse..
[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 05.10.2006 08:51:32
> pouzivam v jedne aplikaci synapsi a narazil sem na problem jak zjisti
> ze je dane spojeni preruseno..
>
> mam to resene takto na zacatku otestuju jestli je neco v LastError..
> Je to tak uplne v poradku vyresi to vsechny problemy?...
Doporucuji prostudovat wiki stranky Synapse, je tam tato vec
diskutovana.
Strucne receno, prerusene spojeni se jako takove samo o sobe
detekovat neda nikdy. Muzes detekovat jen symptomy preruseneho
spojeni - nedari se komunikovat se vzdalenym pocitacem.
Tedy, pokus se komunikovat, a pokud operace skoncila chybou, je neco
spatne se spojenim a musis to v programu resit.
Takze kontrolovat LastError pred operaci nema zadny smysl. Naopak,
melo by se to kontrolovat az po operaci.
--
Lukas Gebauer.
E-mail: gebauerl(zv)mlp(tec)cz
http://synapse.ararat(tec)cz/ - Ararat Synapse - TCP/IP Lib.
out of memory
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 05.10.2006 09:03:35
Ahoj,
Petr Borkovec napsal(a):
> retez:='select * from TAB_ARCHIVSLO where upper(obsah collate PXW_CSY)
> like upper(''%stavebni%'' collate PXW_CSY) order by ZakC';
nedelej "select *", ale "select <vycet jen potrebnych sloupcu>"
> FormArchivHlavni.IBQuery3.Active:=true;
tak TIBQuery z IBX?
> Nepravidelne - po nekolikerem vyhledavani za sebou - se objevuje chyba
> Out of memory. Netusim, co s tim - muze nekdo poradit?
no to je "znamy problem". dela to kesovani dat do pameti IBX
komponentami. pokud muzes, pouzij TIBSQL (jednosmerny - nekesuje) nebo u
TIBQuery zapni "unidirectional" (nekesuje). pokud nemuzes ani jedno,
omez maximalnim moznym zpusobem mnozinu nacitanych dat = minimalni pocet
sloupcu a minimum radku.
> Petr
Peca
out of memory
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 05.10.2006 09:09:36
Nebo prejdi na IBObjects :)
Mam zjisteno, ze tam kde IBX konci chybou Out of memory IBO vesele
pokracuji dal a dal :)
S pozdravem
Milan Tomes
petr palicka napsal(a):
> Petr Borkovec napsal(a):
>
>> Nepravidelne - po nekolikerem vyhledavani za sebou - se objevuje chyba
>> Out of memory. Netusim, co s tim - muze nekdo poradit?
>>
>
> no to je "znamy problem". dela to kesovani dat do pameti IBX
> komponentami. pokud muzes, pouzij TIBSQL (jednosmerny - nekesuje) nebo u
> TIBQuery zapni "unidirectional" (nekesuje). pokud nemuzes ani jedno,
> omez maximalnim moznym zpusobem mnozinu nacitanych dat = minimalni pocet
> sloupcu a minimum radku.
>
MySql odstraneni diakritiky
[*] delphi(zv)spst(tec)cz - 05.10.2006 13:23:57
Ahoj
zkousim databaze. Pouzivam MySQL a komponenty ZEOS v Delphi 7.
Nactu tabulku, spojim a do sloupce userloginname potrebuji doplnit
retezec, ktery vznikne sloucenim nekolika sloupcu zobrazene tabulky.
pro spojeni a zobrazeni pouzivam toto
SELECT o.jmeno, o.prijmeni, o.userloginname, s.zkratka FROM OSOBY AS o
JOIN strukt AS s ON o.utvar =s.id
toto funguje.
pak provedu dopocitani sloupce takto
UPDATE osoby SET userloginname=CONCAT(osoby.prijmeni,'.',(SELECT zkratka
FROM strukt WHERE id=osoby.utvar),'.TEXT') WHERE osoby.utvar<01009000000
toto take funguje. Mam vsak problem s diakritikou - prijmeni mam s
diakritikou. Do userloginname potrebuji dostat prijmeni bez diakritiky.
Je to mozne nejak udelat. Pripadne jak provedu editaci polozek primo z
Delphi. Tam si uz s odstranenim diakritiky dovedu poradit.
Pouzivam komponenty TZConnection, TZQuery, TDataSource a TDBGrid.
Dotazy zapisuji do TZQuery.SQL a provadim je pomoci TZQuery.ExecSQL.
Mam uvedene prikazy dobre. To, ze funguji jeste neznamena, ze se to
takto zapisuje.
Je mozne nejak kontrolovat zda existuje sloupec tabulky?
Predem dekuji Jirka
MySql odstraneni diakritiky
[*] Cizek.Milan <cizek.milan(zv)seznam(tec)cz> - 05.10.2006 13:49:59
> Je mozne nejak kontrolovat zda existuje sloupec tabulky?
Ahoj,
napr.
SHOW FIELDS FROM tabulka, DESCRIBE tabulka, EXPLAIN tabulka
Milan
out of memory
[*] Petr BoL?kovec <petrborkovec(zv)volny(tec)cz> - 05.10.2006 13:49:59
Moc dekuji za vsechny rady, nastavil jsem IBQuery3.unidirectional = true
a zda se, ze to zabralo, uvidim za nekolik dni v provozu, az to upravim
takto u zakaznika.
petr palicka napsal(a):
>Ahoj,
>
>Petr Borkovec napsal(a):
>
>
>>retez:='select * from TAB_ARCHIVSLO where upper(obsah collate PXW_CSY)
>>like upper(''%stavebni%'' collate PXW_CSY) order by ZakC';
>>
>>
>
> nedelej "select *", ale "select <vycet jen potrebnych sloupcu>"
>
>
>
>>FormArchivHlavni.IBQuery3.Active:=true;
>>
>>
>
> tak TIBQuery z IBX?
>
>
>
>>Nepravidelne - po nekolikerem vyhledavani za sebou - se objevuje chyba
>>Out of memory. Netusim, co s tim - muze nekdo poradit?
>>
>>
>
> no to je "znamy problem". dela to kesovani dat do pameti IBX
>komponentami. pokud muzes, pouzij TIBSQL (jednosmerny - nekesuje) nebo u
>TIBQuery zapni "unidirectional" (nekesuje). pokud nemuzes ani jedno,
>omez maximalnim moznym zpusobem mnozinu nacitanych dat = minimalni pocet
>sloupcu a minimum radku.
>
>
>
>>Petr
>>
>>
>
>Peca
>
>
>
>
>
TPanel v XP
[*] Radim Kunz <rkunz(zv)casestudio(tec)com> - 05.10.2006 14:52:04
Ahoj,
nevi nekdo, jak zajistit, aby byl TPanel opravdu bily,
kdyz nastavim Panel.Color := clWhite? Pokud to nastavuji
v XP vzhledu, tak muzu nastavit jakoukoliv barvu krome bile,
kdyz nastavim bilou, tak je to porad sede. Je tu nejaky jednodussi
zpusob, nez delat potomka?
Jde o Delphi 7
Radim
Rolovani v memo
[*] Kalhous <kalhous(zv)eu(tec)cz> - 05.10.2006 17:36:16
Zdravim.
Celkem drobny problemek ale stve me: Na trivialnim formulari je v podstate jen memo pole s vertikalnim scrollem do ktereho posilam z programu nejake texty (protokol o zpracovani). Dokud bylo na formulari jen toto jedno memo pole, text v pohode "sam od sebe" roloval takze uzivatel videl co se prave deje. Pak ale prisel pozadavek, aby tam ta memo pole byla dve - jedno pro zpravy o korektne zpracovanych zaznamech a druhe pro vypis chyb. Zadny problem, pridal jsem druhe memo a texty posilam podle typu tu do jednoho, tu do druheho. ALE - zadne z nich neroluje, jen blikaji a uzivatel vidi stale zacatky textu.
Nevite cim to je a jak si rolovani na konec po pridani dalsiho radku vynutit?
Z.Kalhous
ToWare s.r.o.
Rolovani v memo
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 05.10.2006 18:08:19
Tim druhym memem to asi nebude. Hodil jsem to narychlo na formular a
roluji mi v pohode obe mema.
procedure TForm1.Button1Click(Sender: TObject);
var
Retezec : String;
begin
Inc(Cislo);
Retezec := 'dalsi radek' + IntToStr(Cislo);
Memo1.Lines.Add(Retezec);
Memo2.Lines.Add(Retezec);
end;
Kalhous napsal(a):
>Zdravim.
>Celkem drobny problemek ale stve me: Na trivialnim formulari je v podstate jen memo pole s vertikalnim scrollem do ktereho posilam z programu nejake texty (protokol o zpracovani). Dokud bylo na formulari jen toto jedno memo pole, text v pohode "sam od sebe" roloval takze uzivatel videl co se prave deje. Pak ale prisel pozadavek, aby tam ta memo pole byla dve - jedno pro zpravy o korektne zpracovanych zaznamech a druhe pro vypis chyb. Zadny problem, pridal jsem druhe memo a texty posilam podle typu tu do jednoho, tu do druheho. ALE - zadne z nich neroluje, jen blikaji a uzivatel vidi stale zacatky textu.
>Nevite cim to je a jak si rolovani na konec po pridani dalsiho radku vynutit?
>
>Z.Kalhous
>ToWare s.r.o.
>
Rolovani v memo
[*] spurny(zv)kavlounky(tec)cz - 05.10.2006 20:36:30
Kalhous napsal(a):
>Nevite cim to je a jak si rolovani na konec po pridani dalsiho radku vynutit?
>
>
Vynutit si zobrazeni pozadovaneho mista v TMeme lze pomoci SelStart treba:
Memo1.Lines.Add(format('Radek: %d',[Memo1.Lines.Count]));
Memo1.SelStart:=Length( Memo1.Text)-2; //vypocet mista kde ma byt kurzor
Memo1.SelLength:=0;
Tonda
--
Ing. Antonin Spurny
OT: Problemy s instalaci MS SQL 2005
[*] Ing. Igor Vodicka <vodicka(zv)sagit(tec)cz> - 06.10.2006 09:17:28
Zdravim!
Snazim se nainstalovat si MS SQL 2005 standard edition na lokalni pocitac.
Pocitac je soucasti firemni site. Na jednom ze serveru uz bezi SQL 2005
server. Pocitac je novy (WinXP SP2) a postupne na neho instaluji vse co jsem
mel na starem PC (Win2000 SP4). Mel jsem nainstalovany toolsy a bookonline
pro SQL 2005 a pozdeji jsem si doinstaloval SQL 2005 Expres Edition. Vse
fungovalo OK.
Na novem PC jsem si chtel nainstalovat plnou instalaci SQL 2005 jako lokalni
pro potreby vyvoje a testovani dat. Zatim neuspesne. Vzdy se pri instalaci
objevi nejaka chyba a vzdy az ke konci instalace.
Pojevene chyby:
Error writing to file: microsoft.sqlserver.monitorframework.dll. Verify that
you have access to that directory.
nebo
The cabinet file 'SqlBol.cab' required for this installation is corrupt and
cannot be used. This could indicate a network error, an error reading from
the CD-ROM, or a problem with this package.
(zde se take objevil i soubor 'Sql.cab')
Zkousel jsem ruzne varinaty instalace napr. jen toolsy bez dokumentace, plne
instalace nebo jen casti a porad stejny vyledek. SQL 2005 neni dobre
nainstalovane.
Prosim vas nema nekdo zkusenosti s podobnym pripadem. Na webu jsem nasel
ruzne informace, ale nic nepomaha.
Predem diky
Igor Vodicka
Focus pro IB_Edit na zdedenem formulari
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 06.10.2006 10:35:37
> procedure TEVTMain.EVTFormCreate(TEVT_Form : TFormClass; EVT_Form : TForm);
>
> begin
>
> if CurrentEVTForm <> nil then CurrentEVTForm.Release;
> Application.CreateForm(TEVT_Form, EVT_Form);
> CurrentEVTForm := EVT_Form;
> CurrentEVTForm.Parent := LMDPanelFill1;
> CurrentEVTForm.Align := alClient;
> CurrentEVTForm.BringToFront;
> CurrentEVTForm.Show;
> end;
>
> Po spusteni a vytvoreni formulare nefunguje prechod na IB_Edit komponenty
> pomoci kliknuti mysi. Vse jsem nouzove vyresil
>
Jo jo, pripomina mi to nas problem. Na vine ale nejsou komponenty, ale
fakt, ze form ma parenta. Takova child okna se totiz chovaji podivne,
kdysi jsme to tu v konfere rozebirali s O.Kelle tusim. Doporucuji se oknum
majicim parenta vyhnout - anebo hold pouzivat takove berlicky, jako tam uz
mas. Ja to resil tenkrat stejne.
David Lebeda
Focus pro IB_Edit na zdedenem formulari
[*] Marian Winkler <mw(zv)osoud.frm.justice(tec)cz> - 06.10.2006 08:57:26
Ahoj,
mam formular, ktery dedim, a na ktery pridavam nekolik IB_Edit komponent z IB_Objects. Formular vytvarim pomoci procedury:
procedure TEVTMain.EVTFormCreate(TEVT_Form : TFormClass; EVT_Form : TForm);
begin
if CurrentEVTForm <> nil then CurrentEVTForm.Release;
Application.CreateForm(TEVT_Form, EVT_Form);
CurrentEVTForm := EVT_Form;
CurrentEVTForm.Parent := LMDPanelFill1;
CurrentEVTForm.Align := alClient;
CurrentEVTForm.BringToFront;
CurrentEVTForm.Show;
end;
Po spusteni a vytvoreni formulare nefunguje prechod na IB_Edit komponenty pomoci kliknuti mysi. Vse jsem nouzove vyresil
Pomoci procedury na OnClick pro kazdy IB_Edit (IB_Edit.SetFocus). Na predkovi mam pouze proceduru pro release formulare, par panelu a nejake IB_Bars - taky z IB_Objects.
D7 Enterprise
Win XP Sp2
Firebird 1.5
IB_Objects 4.5B
Kde mam chybu?
Diky za Vas cas.
Marian
Focus pro IB_Edit na zdedenem formulari
[*] Martin Cajbik <cajbik(zv)sct.sk> - 06.10.2006 11:59:44
Zdravim,
taketo zalezitosti som vzdycky riesil tak, ze som cely obsah formulara
umiestnil na panel a menil Parent toho panelu, nie formularu. Dalsou
vyhodou je, ze je mozne nastavit napr. zarovnanie panelu.
Jediny problem moze vznikat pri uvolnovani, pred uvolnenim prvku na
ktorom je tento panel umiestneny alebo samotneho formularu je potrebne
nastavit Parent zase spat. Ostatne veci funguju na 100%, co sa napr. o
TFrame povedat neda.
Martin Cajbik
Lebeda David wrote:
>> procedure TEVTMain.EVTFormCreate(TEVT_Form : TFormClass; EVT_Form : TForm);
>>
>> begin
>>
>> if CurrentEVTForm <> nil then CurrentEVTForm.Release;
>> Application.CreateForm(TEVT_Form, EVT_Form);
>> CurrentEVTForm := EVT_Form;
>> CurrentEVTForm.Parent := LMDPanelFill1;
>> CurrentEVTForm.Align := alClient;
>> CurrentEVTForm.BringToFront;
>> CurrentEVTForm.Show;
>> end;
>>
>> Po spusteni a vytvoreni formulare nefunguje prechod na IB_Edit komponenty
>> pomoci kliknuti mysi. Vse jsem nouzove vyresil
>>
>
> Jo jo, pripomina mi to nas problem. Na vine ale nejsou komponenty, ale
> fakt, ze form ma parenta. Takova child okna se totiz chovaji podivne,
> kdysi jsme to tu v konfere rozebirali s O.Kelle tusim. Doporucuji se oknum
> majicim parenta vyhnout - anebo hold pouzivat takove berlicky, jako tam uz
> mas. Ja to resil tenkrat stejne.
>
> David Lebeda
> .
Delphi odmieta pracovat - help
[*] Ivan Dulgerov <ivan.dulgerov(zv)sazp.sk> - 09.10.2006 09:35:06
Marian Winkler wrote / napisal(a):
>
> Tak dnes rano pridem do prace, a ked chcem spustit
> Delphi 7 zareve na mna :
>
> Borland license information was found but is not valid for Delphi.
> You can not run Delphi without this information.
> Click the exit Button to exit Delphi.
> Ahoj, mne se to stalo po instalaci IBObjects. Musel jsem po konzultaci s Borlandem (cz) preregistrovat D7.
*Takze, vratil som system na bod obnovenia na 5 .10 a
*skusil som spustit Delphi, neslo to , a pri pokuse
*o registraciu na mna reval ze nemam validne informacie v registroch.
*Tak som vratil system este o jeden den na 4. 10 a
*skusil som to znovu .. teda pri spusteni Delphi
*v tom chybovom formulari som klikol na
*"Registrovat" , a uz mi to slo.
*Zaujimave je ze rano som Delphi prvy raz spustil
*bez problemov, potom som ho vypol, a po chvili
*uz "ani tuk" ;-)
S pozdravom
Ivan Dulgerov CEI SAZP Delphi programator
Tajovskeho 28
97590 Banska Bystrica
tel: 048 4374144
ICQ : 190698607
mail : ivan.dulgerov(zv)sazp.sk
Delphi odmieta pracovat - help
[*] Marian Winkler <mw(zv)osoud.frm.justice(tec)cz> - 09.10.2006 09:03:03
Ahoj, mne se to stalo po instalaci IBObjects. Musel jsem po konzultaci s Borlandem (cz) preregistrovat D7.
-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ivan Dulgerov
Sent: Monday, October 09, 2006 8:13 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Delphi odmieta pracovat - help
Zdravim
Tak dnes rano pridem do prace, a ked chcem spustit
Delphi 7 zareve na mna :
Borland license information was found but is not valid for Delphi.
You can not run Delphi without this information.
Click the exit Button to exit Delphi.
Otazka : co s tym?
--
S pozdravom
Ivan Dulgerov CEI SAZP Delphi programator
Tajovskeho 28
97590 Banska Bystrica
tel: 048 4374144
ICQ : 190698607
mail : ivan.dulgerov(zv)sazp.sk
Ziskani bitmapy z formulare
[*] stefunko(zv)szm.sk - 09.10.2006 08:35:01
nestacilo by stlacit PrintScreen a v nejakom bitmapovom editore si vystrihn
ut pozadovanu cast?
Ahoj, potrebuju udelat z casti formulare bitmapu tak, aby na bitmape
byl
o vse co je na te casti formulare tzn. labely, memo, apod. Jak na to?
Pr
edem diky.
=== reklama =======
=========================
======
http://mail.szm.com - e-mail a priestor na www stra
nku zadarmo
http://webhosting.szm.com - domeny a webhosting za najnizs
ie ceny
Delphi odmieta pracovat - help
[*] Ivan Dulgerov <ivan.dulgerov(zv)sazp.sk> - 09.10.2006 08:12:59
Zdravim
Tak dnes rano pridem do prace, a ked chcem spustit
Delphi 7 zareve na mna :
Borland license information was found but is not valid for Delphi.
You can not run Delphi without this information.
Click the exit Button to exit Delphi.
Otazka : co s tym?
--
S pozdravom
Ivan Dulgerov CEI SAZP Delphi programator
Tajovskeho 28
97590 Banska Bystrica
tel: 048 4374144
ICQ : 190698607
mail : ivan.dulgerov(zv)sazp.sk
Prevod dbf tabulek do paradoxu a vytvoreni indexu
[*] Jiri Semler <jsemler(zv)stbk.mcs(tec)cz> - 08.10.2006 20:48:06
Dobry vecer,
pro jeden starsi projekt potrebuji zmenit format dat z dbf na Paradox.
Prevod pomoci BatchMove mi projde bez problemu, ale u nekterych tabulek
se mi nedari vytvorit ani primarni index. Dochazi k chybe: Number is out
of range. Ta se objevuje jak v prazdnych tabulkach, tak i ve vyplnenych.
Nepodarilo se mi najit zavislost, proc nektere tabulky jdou prevest a
nektere ne.
Muzete mi nekdo, prosim, poradit, proc k nekterym tabulkam jde
vytvorit index a k jinym ne?
Pouzivam D6 Pro + BDE verze 5.01, XP
Prikladam proceduru, kde vytvarim indexy.
if not Table2.Exclusive then
raise EDatabaseError.Create('TTable.Exclusive must be set to ' +
'true in order to add an index to the table');
for i:=0 to length(NewTabFields)-1
do // Prochazim pole kde je
seznam indexu pro vybranou tabulku
begin
sl.DelimitedText :=
NewTabFields[i].IndexField; // Seznam indexovany
poli pro vybrany index
fillchar(NewIndex,SizeOf(NewIndex),#0);
with NewIndex do begin
iIndexId:= i;
bPrimary:= i=0;
bUnique:= false;
bDescending:= False;
bMaintained:= True;
bSubset:= False;
bExpIdx:= False;
if not bPrimary then
StrPCopy(szName, NewTabFields[i].NameIndex); //
Nastaveni jmena indexu
iFldsInKey:= sl.Count;
for j:=0 to sl.Count-1
do // Nastaveni
vybranych poli
begin
aiKeyFld[j]:= Table2.FieldByName(sl[j]).Index+1;
abDescending[j]:=false;
end;
bCaseInsensitive:= False;
end;
if NewIndex.bPrimary then
Check(DbiAddIndex(Table2.dbhandle, Table2.handle,
PChar(Table2.TableName), szParadox, NewIndex, nil)) // na tomto radku
se mi objevuje vyse uvedena chyba
else
Check(DbiAddIndex(Table2.dbhandle, Table2.handle, nil, nil,
NewIndex, nil));
end;
Ziskani bitmapy z formulare
[*] Martin Kasman <mdelphi(zv)centrum.sk> - 08.10.2006 18:23:55
Takto mozes skopirovat celu obrazovku do bmp:
http://forum.kasman.sk/viewtopic.php?t=407
Staci si to len upravit na vyrez tvojho formulara a mas to.
-----Original Message-----
Ahoj, potrebuju udelat z casti formulare bitmapu tak, aby na bitmape
bylo vse co je na te casti formulare tzn. labely, memo, apod. Jak na to?
Predem diky.
Ziskani bitmapy z formulare
[*] DjBall <djball(zv)seznam(tec)cz> - 07.10.2006 18:44:04
Ahoj, potrebuju udelat z casti formulare bitmapu tak, aby na bitmape
bylo vse co je na te casti formulare tzn. labely, memo, apod. Jak na to?
Predem diky.
MySql z Delphi - characterset
[*] delphi(zv)spst(tec)cz - 09.10.2006 11:43:15
Ahoj,
pouzivam Delphi 7 pro pristup do jiz existujici databaze v MySQL. Kdyz
se prihlasim z prikazoveho radku pomoci mysql a nastavim kodovou
stranku, tak vse vidim tak jak mam. Jak se v ZEOS nastavuje kodova
stranka. Zaznamy jsou bez diakritiky.
Predem dekuji Jirka
Delphi odmieta pracovat - help
[*] Marian Winkler <mw(zv)osoud.frm.justice(tec)cz> - 09.10.2006 11:59:17
-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ivan Dulgerov
Sent: Monday, October 09, 2006 9:35 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: Delphi odmieta pracovat - help
Marian Winkler wrote / napisal(a):
>
> Tak dnes rano pridem do prace, a ked chcem spustit
> Delphi 7 zareve na mna :
>
> Borland license information was found but is not valid for Delphi.
> You can not run Delphi without this information.
> Click the exit Button to exit Delphi.
> Ahoj, mne se to stalo po instalaci IBObjects. Musel jsem po konzultaci s Borlandem (cz) preregistrovat D7.
*Takze, vratil som system na bod obnovenia na 5 .10 a
*skusil som spustit Delphi, neslo to , a pri pokuse
*o registraciu na mna reval ze nemam validne informacie v registroch.
*Tak som vratil system este o jeden den na 4. 10 a
*skusil som to znovu .. teda pri spusteni Delphi
*v tom chybovom formulari som klikol na
*"Registrovat" , a uz mi to slo.
*Zaujimave je ze rano som Delphi prvy raz spustil
*bez problemov, potom som ho vypol, a po chvili
*uz "ani tuk" ;-)
..................................
Jeste me napada, co takhle - pokud mas XP - zkusit nejblizsi bod obnovy?
Nepouzivas nahodou neco jako Registry Mechanic na udrzbu registru? V tom by taky mohl byt zadrhel.
M.
MySql z Delphi - characterset
[*] Milan Hurtik <hurtik(zv)stemmark(tec)cz> - 09.10.2006 12:05:18
> Jak se v ZEOS nastavuje kodova stranka. Zaznamy jsou bez diakritiky.
bezprostredne po pripojeni zavolej:
SET character_set_client=charset_name;
SET character_set_connection=charset_name;
SET character_set_results=charset_name;
kde charset_name je MySQL nazev prislusne kodove schranky.
kvuli (napr. ceskemu) trideni pak jeste bude dobre nastavit collation:
SET collation_connection=collation_name;
kde collation_name je MySQL nazev sady pravidel na porovnavani
znaku (=collation).
Milan M:)
Vlozeni Vnorene procedury na IB/FB programem
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 09.10.2006 14:17:28
Nastav ParamCheck na false
S pozdravem
Milan Tomes
Tomas Krejzek napsal(a):
> Ahoj mam problem, snazim se vylepsit nasi databazi pridanim vnorene procedury, bohuzel se
> mi to vubec programove nedari, protoze vsechny parametry :parametr mi to nahradi znakem ?,
> takze pulka vubec neprojde a druha je nanic
Vlozeni Vnorene procedury na IB/FB programem
[*] Tomas Krejzek <tomas.krejzek(zv)kpsys(tec)cz> - 09.10.2006 14:11:27
Ahoj mam problem, snazim se vylepsit nasi databazi pridanim vnorene procedury, bohuzel se
mi to vubec programove nedari, protoze vsechny parametry :parametr mi to nahradi znakem ?,
takze pulka vubec neprojde a druha je nanic.
Zkusil jsem IBQuery i IBSQL ale oba takto oznacuji paramtetry SQL dotazu a protoze je
samozrejme nemuzu nijak nastavit tak to takhle blbne.
Nemate s tim nekdo zkusenost?
Diky, Tomas
Vlozeni Vnorene procedury na IB/FB programem
[*] Tomas Krejzek <tomas.krejzek(zv)kpsys(tec)cz> - 09.10.2006 14:39:30
Presne ono, moc dik, Tom
Milan Tomes napsal(a):
> Nastav ParamCheck na false
>
> S pozdravem
>
> Milan Tomes
>
> Tomas Krejzek napsal(a):
>> Ahoj mam problem, snazim se vylepsit nasi databazi pridanim vnorene procedury, bohuzel se
>> mi to vubec programove nedari, protoze vsechny parametry :parametr mi to nahradi znakem ?,
>> takze pulka vubec neprojde a druha je nanic
>
>
>
>
MySql z Delphi - characterset
[*] Martin Pavera <martin.pavera(zv)gmail(tec)com> - 10.10.2006 09:38:59
delphi(zv)spst(tec)cz napsal(a):
> Jak se v ZEOS nastavuje kodova stranka.
>
Pred pripojenim k databazi je treba nastavit v parametrech ZConnection
vlastnost "codepage". Nasledujici kod je vyzkousen s MySQL 5.0 a funguje
dobre.
// ...
ZConnection.Properties.Values['codepage'] := 'cp1250';
// ...
ZConnection.Connected := True;
Martin Pavera
Pripojeni v lokalni siti nebo pres internet
[*] Martin Burle <mburle2(zv)volny(tec)cz> - 10.10.2006 11:07:06
Ahoj vsem,
potreboval bych zjistovat, zda je FB server, ke kteremu se pripojuje databaze (IBX) umisten na pocitaci nekde v lokalni siti, nebo se jedna o pripojeni pres internet. Tj. potreboval bych umet takto rozlisit IP adresy. Predem diky za kazde nakopnuti...
Martin
Pripojeni v lokalni siti nebo pres internet
[*] URBAN Leos <leos.urban(zv)qds(tec)cz> - 10.10.2006 11:25:07
Martin Burle napsal(a):
> potreboval bych zjistovat, zda je FB server, ke kteremu se pripojuje databaze (IBX) umisten na pocitaci nekde v lokalni siti, nebo se jedna o pripojeni pres internet. Tj. potreboval bych umet takto rozlisit IP adresy. Predem diky za kazde nakopnuti...
Neverejne adresy oficialne jsou:
10.0.0.0 az 10.255.255.255
172.16.0.0 az 172.31.255.255
192.168.0.0 az 192.168.255.255
Pokud tedy adresa serveru v tomto rozmezi, jde o LAN.
To ovsem nic nevypovida o rychlosti linky - muze jit o server na
pobocce, ktera je pripojena 64 kbit bezdratem.
A naopak znam LAN, kde z historickych duvodu pouzivaji verejne adresy
protoze to tak pred 15 lety nekdo zacal a mezi servery jsou GBit spojeni...
Leos
Pripojeni v lokalni siti nebo pres internet
[*] Martin Burle <mburle2(zv)volny(tec)cz> - 10.10.2006 11:37:08
> Neverejne adresy oficialne jsou:
> 10.0.0.0 az 10.255.255.255
> 172.16.0.0 az 172.31.255.255
> 192.168.0.0 az 192.168.255.255
>
> Pokud tedy adresa serveru v tomto rozmezi, jde o LAN.
> A naopak znam LAN, kde z historickych duvodu pouzivaji verejne adresy
a naopak - jsem pripojen pres CDMA a mam 10.162.34.127, takze moc spoleh na
to neni... :(
Martin
Prijem a odeslani sms
[*] Marek Dostal <konf(zv)agnis(tec)cz> - 10.10.2006 11:51:09
Potreboval bych aby uzivatel ze sveho mobilu mohl poslat sms v urcitem tvaru na urcite cislo, muj program si tuto sms precte a odesle odpoved, opet ve forme sms. Existuje nejake zarizeni, ktere se pripoji k PC, jev nem sim karta a lze s nim programove komunikovat? Mohl by to byt treba mobil pripojeny kabelem? A jak by se v takovem pripade dal programove ovladat?
Diky za nasmerovani.
Marek Dostal
D7Prof, WinXP, FireBird 1.0, 1.5
Pripojeni v lokalni siti nebo pres internet
[*] URBAN Leos <leos.urban(zv)qds(tec)cz> - 10.10.2006 11:55:10
Martin Burle napsal(a):
>>Pokud tedy adresa serveru v tomto rozmezi, jde o LAN.
>>A naopak znam LAN, kde z historickych duvodu pouzivaji verejne adresy
> a naopak - jsem pripojen pres CDMA a mam 10.162.34.127, takze moc spoleh na
> to neni... :(
Ono presnejsi vyjadreni nez LAN a WAN je v teto souvislosti Intranet
(uzavrena sit v ramci firmy, skoly, domacnosti, vesnice, mesta atd) a
Internet (celosvetova sit). To LAN a WAN zavani nestastnymi pojmy maly
(lokalni) a velky (siroky).
Nadnarodni koncerny maji intranet pres cely svet a v nem neverejne adresy.
To je i pripad Eurotelu O2, ty se pripojujes v podstate do jejich
intranetu a ten obsahuje branu do internetu, tam take provadi NAT,
preklad adres z neverejnych na verejne.
Abychom se vratili k Delphi - pokud to chces na uzpusobeni aplikace
kvuli rychlosti tak se tim klidne rid, prednastav to podle detekovane
adresy. Umozni ale uzivateli vynutit zmenu, treba v konfiguraci.
Ono v 99% pripadu skutecne 192.168.x.x znamena rychlou sit v ramci
firmy/domacnosti a i u tech nadnarodnich intranetu je to podstatne
rychlejsi nez (vetsinou) internet do stejne lokace.
Leos
Prijem a odeslani sms
[*] Tomas Rosa <trosa(zv)seznam(tec)cz> - 10.10.2006 12:05:11
Bud se prodavaji specialni modemy - mame dobre zkusenosti s Wavecom
modemama (nedoporucuju nove Siemense - od modelu MT20 se dost zhorsili),
nebo mobil ktery v sobe ma HW modem (dnes je jich pomerne dost). Staci
ale i treba starsi Nokia z bazaru. U telefou vsak pozor, pokud na ne
nekdo posle neco jineho (treba logo) telefon zobrazi na displeji hlasku
o tom ze neco takoveho prislo a ceka na reakci a zablokuje port. Proto
jsou lepsi modemy.
Ty jsou obvykle pripojene pres seriovy port, takze pak pustis synapsi
(synaser) a jedes. Komunikuje se pres AT prikazy a SMSku je lepsi
posilat v tzv PDU formatu. Hledej na Torry, pripadne google poradi
obecne popisy kodovani PDU.
TR
Marek Dostal wrote:
> Potreboval bych aby uzivatel ze sveho mobilu mohl poslat sms v urcitem tvaru na urcite cislo, muj program si tuto sms precte a odesle odpoved, opet ve forme sms. Existuje nejake zarizeni, ktere se pripoji k PC, jev nem sim karta a lze s nim programove komunikovat? Mohl by to byt treba mobil pripojeny kabelem? A jak by se v takovem pripade dal programove ovladat?
> Diky za nasmerovani.
>
> Marek Dostal
> D7Prof, WinXP, FireBird 1.0, 1.5
>
>
>
Prijem a odeslani sms
[*] Roman Borkovec <roman(zv)borkovec(tec)com> - 10.10.2006 12:17:13
Ahoj,
nam kompletne ke vsemu vyhovelo reseni www.dreamcom(tec)cz
Roman
Pripojeni v lokalni siti nebo pres internet
[*] Martin Burle <mburle2(zv)volny(tec)cz> - 10.10.2006 12:25:13
> Abychom se vratili k Delphi - pokud to chces na uzpusobeni aplikace
> kvuli rychlosti tak se tim klidne rid, prednastav to podle detekovane
> adresy. Umozni ale uzivateli vynutit zmenu, treba v konfiguraci.
Diky, ale potiz je v tom, ze me ani tak nejde o rychlost, ale o to, ze v
ramci licencni politiky bych chtel odlisit, komu povolim pripojeni k
databazi pres internet a komu ne.
Martin
Pripojeni v lokalni siti nebo pres internet
[*] Ladislav Fitz <ladislav.fitz(zv)kodytek(tec)cz> - 10.10.2006 12:43:15
neslo by to resit trasovanim?
----- Original Message -----
From: "Pavel Malinsky" <malinsky(zv)pmcom(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Tuesday, October 10, 2006 12:35 PM
Subject: Re: Pripojeni v lokalni siti nebo pres internet
>> -----Original Message-----
>> From: delphi-l-owner(zv)clexpert(tec)cz
>> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of URBAN Leos
>
>> Ono v 99% pripadu skutecne 192.168.x.x znamena rychlou sit v ramci
>> firmy/domacnosti a i u tech nadnarodnich intranetu je to podstatne
>> rychlejsi nez (vetsinou) internet do stejne lokace.
>
> S procentama bych byl opatrnej :) a srychlosti intra a internetu taky,
> zalezi pres co je ten "intranet" delanej, muze to byt VPNka po internetu
> nebo samostatny digiokruh a pak se samozrejme muzem bavit i o jinych
> rychlostech.
>
> Samotneho by me zajimalo, jestli nekdo navrhne reseni %subj%. Urcite
> nelze spolehat na rozsah adres...
>
> PM
>
>
>
>
>
>
Pripojeni v lokalni siti nebo pres internet
[*] Pavel Malinsky <malinsky(zv)pmcom(tec)cz> - 10.10.2006 12:35:14
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of URBAN Leos
> Ono v 99% pripadu skutecne 192.168.x.x znamena rychlou sit v ramci
> firmy/domacnosti a i u tech nadnarodnich intranetu je to podstatne
> rychlejsi nez (vetsinou) internet do stejne lokace.
S procentama bych byl opatrnej :) a srychlosti intra a internetu taky,
zalezi pres co je ten "intranet" delanej, muze to byt VPNka po internetu
nebo samostatny digiokruh a pak se samozrejme muzem bavit i o jinych
rychlostech.
Samotneho by me zajimalo, jestli nekdo navrhne reseni %subj%. Urcite
nelze spolehat na rozsah adres...
PM
Prijem a odeslani sms
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 10.10.2006 12:07:11
Puvodni zprava ze dne 10.10.2006 od Marek Dostal:
> Potreboval bych aby uzivatel ze sveho mobilu mohl poslat sms v
> urcitem tvaru na urcite cislo, muj program si tuto sms precte a
> odesle odpoved, opet ve forme sms. Existuje nejake zarizeni, ktere
> se pripoji k PC, jev nem sim karta a lze s nim programove
> komunikovat? Mohl by to byt treba mobil pripojeny kabelem? A jak by
> se v takovem pripade dal programove ovladat? Diky za nasmerovani.
Ano, existuje, muzes k pocitaci bud pripojit primo mobil se seriovym
rozhranim (musi mit v sobe HW modem, abys ho mohl ovladat) a nebo GSM
modem, coz je skatulka k tomu urcena. Najdes na internetu. Ale
normalni GSM mobily a modemy nejsou urcene na velke prutoky SMSek,
kdybys treba chtel udelat nejake hlasovani, kde chodi silena kvanta
zprav, musel by ses napojit primo na SMS branu k operatorovi,
napriklad jsem takto napojeny na Eurotel, tam je vyssi prutok.
Muzes se na me pripadne obratit soukrome (clexpert(zv)clexpert(tec)cz), pokud
bys chtel neco konkretnejsiho k hardware.
Petr Zahradnik, pocitacovy expert
==========================================================
Petr Zahradnik, Computer Laboratory
web: http://www.clexpert(tec)cz, e-mail: clexpert(zv)clexpert(tec)cz
==========================================================
Prijem a odeslani sms
[*] Martin Stanek <all.stuff(zv)seznam(tec)cz> - 10.10.2006 12:47:16
Toto lze resit jednoduse prostrednictvim Siemens GPRS modemu, nebo mobilnich
telefonu pripojenych k seriovemu portu, doporucuji radu 45. Dokumentace je
vyborne dostupna. Siemens dodrzuje(val) vsechny zavazne normy. Vlastni
komunikace probiha prostrednictvim "AT" prikazu. Vic prozradi google.com
|--
|Potreboval bych aby uzivatel ze sveho mobilu mohl poslat sms v urcitem
|tvaru na urcite cislo, muj program si tuto sms precte a odesle odpoved,
|opet ve forme sms. Existuje nejake zarizeni, ktere se pripoji k PC, jev nem
|sim karta a lze s nim programove komunikovat? Mohl by to byt treba mobil
|pripojeny kabelem? A jak by se v takovem pripade dal programove ovladat?
|Diky za nasmerovani.
|
| Marek Dostal
| D7Prof, WinXP, FireBird 1.0, 1.5
|--
Pripojeni v lokalni siti nebo pres internet
[*] URBAN Leos <leos.urban(zv)qds(tec)cz> - 10.10.2006 12:59:17
Martin Burle napsal(a):
> Diky, ale potiz je v tom, ze me ani tak nejde o rychlost, ale o to, ze v
> ramci licencni politiky bych chtel odlisit, komu povolim pripojeni k
> databazi pres internet a komu ne.
A zjistuje se adresa klienta nebo serveru? Ja dosud predpokladal ze
serveru ale ted to spise vypada ze Te zajima adresa toho klienta...
Leos
Prijem a odeslani sms
[*] Jozef Uhler <uhler(zv)os.sk> - 10.10.2006 12:07:11
Nazdar,
skus gammu (http://www.mwiacek.com/). Bezi to aj na windows. Ja to
pouzivam uz cele roky a som spokojny. Mam to v automatickom rezime ked mi
to uklada data do MSSQL databazy a na tom mam poveseny softver, ktory si
precita novu SMS a zapise odpoved do databazy. Gammu vsetko ostatne
zariadi. mam tam pripojenu nokiu 6230 a noki 7110.
Jozo;
At 11:51 10. 10. 2006 +0200, you wrote:
>Potreboval bych aby uzivatel ze sveho mobilu mohl poslat sms v urcitem
>tvaru na urcite cislo, muj program si tuto sms precte a odesle odpoved,
>opet ve forme sms. Existuje nejake zarizeni, ktere se pripoji k PC, jev
>nem sim karta a lze s nim programove komunikovat? Mohl by to byt treba
>mobil pripojeny kabelem? A jak by se v takovem pripade dal programove ovladat?
>Diky za nasmerovani.
>
> Marek Dostal
> D7Prof, WinXP, FireBird 1.0, 1.5
OT: Delphi 6
[*] Lada <truska.lad(zv)centrum(tec)cz> - 11.10.2006 02:06:21
Dobry den,
nenasel by se prosim nekdo, komu prebyva licence Delphi6 a za rozumnou
cenu by ji prodal..?
Diky moc, pripadne nabidky prosim na muj e-mail
truska.lad(zv)centrum(tec)cz
Delphi 6 odmita spustit/ladit program
[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 11.10.2006 00:06:11
> Nu a co nainstalovat starsi verzi eTrustu? Pokud to bude zlobit, jak
> pises, tak ja to urcite udelam. Seriove cislo mas, takze samotny
> starsi .exe instalator Ti mohu poslat, mam ho nekde v archivu.
Coz o to, starsi verzi urcite mame taky, ale nevim, jestli by s ni sly
updaty. Zrovna predevcirem jsem pri surfovani natrefil na nejake exploity -
aspon eTrust to tvrdil. To nerisknu, lepsi obcasny restart, nez dalsi
reinstalace a problemy ve firemni siti.
Ale diky za nabidku.
Zdravim
Jiri Foldyna
Delphi 6 odmita spustit/ladit program
[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 10.10.2006 20:35:54
Quoting Jiri Foldyna <jiri.f(zv)avizo(tec)cz>:
> to omezeni real-time protection na slozky jsem zkusil, ale kdyz jsem tam
> nechal jen slozku s projekty, tak to obcas slo do kytek taky. Mozna kvuli
> nejakym balickum, ktere si odnekud taha. Takze to zatim vypinam, ale leze mi
> to na nervy. Zrovna pred chvili jsem na to zapomnel :-)
Nu a co nainstalovat starsi verzi eTrustu? Pokud to bude zlobit, jak
pises, tak ja to urcite udelam. Seriove cislo mas, takze samotny
starsi .exe instalator Ti mohu poslat, mam ho nekde v archivu.
Karel Rys
Delphi 6 odmita spustit/ladit program
[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 10.10.2006 20:29:53
> mezitim jsem prisel na stejny zdroj problemu. Ale mam lepsi
> reseni :)
> Pisu to zpameti z domova, snad se moc neutnu:
> Scan settings, Real-time, Modify. Tam jdou zapsat vyjimky, ktere to
> nema skenovat. Pridat vyjimku a nejlepe asi pres to jejich vybiraci
> tlacitko a zvolit v prave casti celou slozku, kde mas
> projekty. Jinak
> lze tez zadat jen cestu k tomu zkompilovanemu .exe. Resil
> jsem to i s
> jejich technickou podporou, ze by se obtezovali priznat, ze
> maji neco
> blbe, to ani ne :( Daval jsem vyjimku i pro delphi32.exe, nejspis
> zbytecne. Jinak ten novy etrust hnedka pri instalaci smazal 80 pidi
> bitmap, ze pry jsou v nich viry :)
Ahoj,
to omezeni real-time protection na slozky jsem zkusil, ale kdyz jsem tam
nechal jen slozku s projekty, tak to obcas slo do kytek taky. Mozna kvuli
nejakym balickum, ktere si odnekud taha. Takze to zatim vypinam, ale leze mi
to na nervy. Zrovna pred chvili jsem na to zapomnel :-)
Zdravim
Jiri Foldyna
Synapse a HTTP status 500
[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 10.10.2006 19:21:48
> > Chyba 500 je hlasena v pripade, ze se vubec nepodarilo zkontaktovat
> > server...
>
> Mozno mi nieco uniklo, ale podla mna, ak dostanes od servra nejaku
> odpoved, tak asi skontaktovany bol. ;-)
Ano, unika ti, ze hodnota 500 je v synapsi defaultni, tedy pokud jsi
server nezkontaktoval, najdes v property s HTTpstatus kodem prave tuto
hodnotu. Pochopitelne od situace, kdy tuto hodnotu vratil primo server,
to odlisis podle toho, jestli je ti vracena chyba na urovni socketu ci
nikoliv.
V popsane situaci, kdy to jinde funguje, to s velkou pravdepodobnosti
bude prave ta mnou popsana situace.
Inu, nerejpat, kdyz nevis pozadi. ;-)
--
Lukas Gebauer.
E-mail: gebauerl(zv)mlp(tec)cz
WEB: http://www.ararat(tec)cz/synapse - Synapse Delphi and Kylix TCP/IP
Library
Delphi 6 odmita spustit/ladit program
[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 10.10.2006 18:33:45
Quoting Jiri Foldyna <jiri.f(zv)avizo(tec)cz>:
> Ahoj,
>
> presne tohle se mi stalo po instalaci JVCL 3.20 v Delphi 5. Nakonec jsem
> metodou postupnych instalaci zjistil, ze to asi ma na svedomi antivirus (mam
> eTrust ezAntivirus). Pomaha mi pouzit "Snooze Antivirus Protection" a
> odstavit tak real-time protection... Pokud bys prisel na neco chytrejsiho,
> dej vedet, je to dost otravne, hlavne kdyz na to zapomenu a musim natvrdo
> resetovat pixlu.
Ahoj,
mezitim jsem prisel na stejny zdroj problemu. Ale mam lepsi reseni :)
Pisu to zpameti z domova, snad se moc neutnu:
Scan settings, Real-time, Modify. Tam jdou zapsat vyjimky, ktere to
nema skenovat. Pridat vyjimku a nejlepe asi pres to jejich vybiraci
tlacitko a zvolit v prave casti celou slozku, kde mas projekty. Jinak
lze tez zadat jen cestu k tomu zkompilovanemu .exe. Resil jsem to i s
jejich technickou podporou, ze by se obtezovali priznat, ze maji neco
blbe, to ani ne :( Daval jsem vyjimku i pro delphi32.exe, nejspis
zbytecne. Jinak ten novy etrust hnedka pri instalaci smazal 80 pidi
bitmap, ze pry jsou v nich viry :)
Karel Rys
Pripojeni v lokalni siti nebo pres internet
[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 10.10.2006 17:17:39
On Tuesday, October 10, 2006 11:07 AM ,
Martin Burle <mburle2(zv)volny(tec)cz> wrote:
> Ahoj vsem,
>
> potreboval bych zjistovat, zda je FB server, ke kteremu se pripojuje
> databaze (IBX) umisten na pocitaci nekde v lokalni siti, nebo se
> jedna o pripojeni pres internet. Tj. potreboval bych umet takto
> rozlisit IP adresy. Predem diky za kazde nakopnuti...
zadna spolehliva metoda neexistuje. Konkretni zpusob reseni znacne
zavisi na tomjake situace mohou nastat nebo nastanou nejcasteji.
- Mozna staci zkontrolovat zda server i klient lezi v jedne subnete
(ale i LANka muze byt 'odroutovana').
- Mozna by stacil reverzni DNS dotaz na IP serveru a vyhodnoceni
nalezeneho domenoveho jmena (IP v internetu by melo mit adekvatni
funkcni domenove jmeno - ale ne vzdy to ISP dodrzuji).
- Relativne spolehlive by bylo urceni 'vzdalenosti' serveru poctem
hopu (radku na traceroute) - tj. zjistit jak nizko (resp vysoko) muzu
nastavit TTL packetu nez se zacne od serveru vracet odezva. Lze
predpokladat, ze normalni LAN bude bez routeru ci obsahovat max jeden
2. Naopak server pripojeny v Internetu bude urcite dal nez 1 spise az
za vice nez cca 4-5 routery).
- Pokud budou IP adresy routeru po ceste (viz predesly bod) na
verejnych IP jsou to dalsi body pro server v Internetu a naopak
Asi by bylo vhodne zkusit nekolik ruznych metod a vysledky rozumne
zkombinovat/vyhodnotit.
D. Toman
Synapse a HTTP status 500
[*] Ondrej Kelle <o.kelle(zv)digitalpublishing.de> - 10.10.2006 16:51:37
> Chyba 500 je hlasena v pripade, ze se vubec nepodarilo zkontaktovat
> server...
Mozno mi nieco uniklo, ale podla mna, ak dostanes od servra nejaku odpoved,
tak asi skontaktovany bol. ;-)
Podla standardu HTTP/1.1:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1
500 Internal Server Error
The server encountered an unexpected condition which prevented it from
fulfilling the request.
Takze poziadavka bola prijata, ale nebolo mozne ju spracovat. Typicky (u mna
;-)) priklad je access violation v ISAPI DLL a podobne ;-)
Alebo je tu rec o nejakej inej chybe 500?
TOndrej
Delphi 6 odmita spustit/ladit program
[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 10.10.2006 16:39:35
Ahoj,
presne tohle se mi stalo po instalaci JVCL 3.20 v Delphi 5. Nakonec jsem
metodou postupnych instalaci zjistil, ze to asi ma na svedomi antivirus (mam
eTrust ezAntivirus). Pomaha mi pouzit "Snooze Antivirus Protection" a
odstavit tak real-time protection... Pokud bys prisel na neco chytrejsiho,
dej vedet, je to dost otravne, hlavne kdyz na to zapomenu a musim natvrdo
resetovat pixlu.
Jiri Foldyna
> Delphi 6 mi zacalo stavkovat - zkompiluju program, z Delphi
> jej necham spustit, ovsem program uz
> nenabehne, Delphi ani v titulkovem pruhu nenapisi, ze program
> bezi. Ani F7/F8 pro spusteni
> aplikace nevede ke krokovani, jako kdyby se Delphi k aplikaci
> nedokazaly pripojit.
>
> V Task Manageru je aplikace bezici, 48 kB pameti, nelze ji
> odstrelit (Task Manager vytuhne), nelze
> ji zabit ani programem kill.exe (taky vytuhne). Netusite
> nekdo, v cem by mohl byt zakopany pes,
> popr. co s tim? Zkusil jsem preinstalovat Delphi s volbou
> Repair, to nezabralo, a fakt se mi
> nechce odinstalovat Delphi, mazat kde co po nich zbyde v
> registru, a pak instalovat znovu plus
> komponenty plus update atd., to vse s nejistym vysledkem, zda
> to pomuze.
Synapse a HTTP status 500
[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 10.10.2006 16:31:34
> pouzivame v programu pro odesilani na PVS dat knihovnu Synapse ve
> verzi 37 a pri odesilani z jedne firmy, kde jsou za dost striktni
> proxy (v podstate temer nikdo nemuze ven z intranetu) dostavame zpet
> HTTP status 500, takze data server nedostane ke zpracovani. Pokud je
Chyba 500 je hlasena v pripade, ze se vubec nepodarilo zkontaktovat
server...
--
Lukas Gebauer.
E-mail: gebauerl(zv)mlp(tec)cz
http://synapse.ararat(tec)cz/ - Ararat Synapse - TCP/IP Lib.
Delphi 6 odmita spustit/ladit program
[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 10.10.2006 16:21:33
Hezke odpoledne,
Delphi 6 mi zacalo stavkovat - zkompiluju program, z Delphi jej necham spustit, ovsem program uz
nenabehne, Delphi ani v titulkovem pruhu nenapisi, ze program bezi. Ani F7/F8 pro spusteni
aplikace nevede ke krokovani, jako kdyby se Delphi k aplikaci nedokazaly pripojit.
V Task Manageru je aplikace bezici, 48 kB pameti, nelze ji odstrelit (Task Manager vytuhne), nelze
ji zabit ani programem kill.exe (taky vytuhne). Netusite nekdo, v cem by mohl byt zakopany pes,
popr. co s tim? Zkusil jsem preinstalovat Delphi s volbou Repair, to nezabralo, a fakt se mi
nechce odinstalovat Delphi, mazat kde co po nich zbyde v registru, a pak instalovat znovu plus
komponenty plus update atd., to vse s nejistym vysledkem, zda to pomuze.
Karel Rys
Regularni vyrazy ve FirebirdSQL
[*] Slavomir Skopalik <skopalik(zv)elektlabs(tec)cz> - 10.10.2006 15:45:30
Mohlo by to jit pomoci UDF funkce, kterou je treba bud si napsat, nebo najit na
netu.
Priklad:
create domain a int check ( ABS(Value)>0 )
Slavek
Ing. Slavomir Skopalik
Jednatel spolecnosti
Elekt Labs s.r.o.
Chaloupky 158
783 72 Velky Tynec
Czech Republic
--------------------------------------------
Mobil: +420 724 207 851
icq:199 118 333
e-mail:skopalik(zv)elektlabs(tec)cz
http://www.elektlabs(tec)cz
> MaReK Penguin Olsavsky wrote:
> > Dobry den,
> > mozna jen ctu spatne dokumentaci k FirebirdSQL, ale potrebuji se
> > zeptat,
> > je-li mozne pouzivat pri definovani domeny omezeni na jeji hodnoty
> > regulernim vyrazem (mapriklad, ma-li byt domena email).