Archív konference Delphi

Zpět na výběr roku archívu nebo přejít na fulltextové vyhledávání v konferenci.

Vykonani SP na FB

[*] miromr <preas_w(zv)stonline.sk> - 17.7.2002 21:59:19

Ahoj,

> > a ako je to u MSDE s licenciami?
>
> pokial viem tak je to urcene pre 5 sucasne pripojenych uzivatelov.
> Mozes pripojit aj viac, ale cinnost servera sa potom (naschval) spomali.
> Ked pouzijes .Net a disconnected model, tak takato situacia
> nastane malokedy i pri daleko vyssom pocte uzivatelov.

Nemyslel som vykonovo, myslel som ci je to licencne ciste.

> 1. no povedz mi, co je to za firmu, ktora ma desiatky uzivatelov
> (pracovnikov) a nema niekolko desattisic na SQL server? Pripada
> mi to uplne absurdne.
Napr maju server UNIX, alebo LINUX.

> 2. a zoberme si iny priklad (netvrdim, ze typicky ;-) ), ze firma ma
> dost financnych prostriedkov, prosperuje, uzivatelia i mnozstvo
> udajov pribudaju a vykon FB jej nestaci. Co potom? V pripade
> SQL servera je moznost upgradov na vykonnejsi system
> (niekolko urovni).

Mozno by nam niekto vedel povedat kedy FB zacne dochadzat dych,
ale kedy to je som sa zatial nedozvedel - vie to niekto?

Miro

Interbase - vazne problemy s Windows XP

[*] miromr <preas_w(zv)stonline.sk> - 17.7.2002 22:13:21

Ahoj,
>zrychlilo z 50s na ihned, ale na klientech je to stale
Zaujimave je ze mne z klineta na W2000 trva prihlasenie presne vzdy 53
sekund!
Co to moze byt tych 50 sekund - co sa vtedy deje? potom uz vsetko bezi OK,
aj rychlost je vyborna.

Miro

Interbase - vazne problemy s Windows XP

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 17.7.2002 23:01:45

17.7.2002 Petr Vones:
> From: "Roland Turcan" <rolo(zv)sedas.sk>
>> error. Tak este pre istotu sme po sieti tu suborovu databazu ani
>> nepouzivali a jemu sa stracali nadalej doklady. Od 10-19 hodiny sa

> Pokud se jednalo o reseni se *souborovou* databazi po siti, tak to snad neni
> treba ani komentovat ;-)

Ale nac ta ironie ?
Mame system, ktery zatim bezi pod FoxPro 2.5, samozrejme na siti, nektere
tabulky maji i miliony zaznamu.
Vrat se o tri roky zpet, kdy se teprve s SQL zacinalo a vetsina
systemu byla stavena na souborovych databazich.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Kurzor pro THintWindow

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 00:38:59

From: "Bene� Jaroslav" <JBenes(zv)cpoj(tec)cz>
> jak nastavim v THintWindow vlastni kurzor? Vzdycky tam ma defaultni !

Standartne hint okno zmizi pri pohybu mysi, takze ten kurzor se prece u neho
nemuze uplatnit, protoze to hint okno je zobrazeno mimo pozici mysi.

Petr Vones

ComboBox a databaze

[*] Ludek Paral <ludek.paral(zv)quick(tec)cz> - 18.7.2002 00:38:27

Ahoj,

ja nejradsi pouzivam komponentu z RX library (RxDbComboBox). Ta ma jak vlastnost items, tak values - staci naplnit do items seznam a do values poradova cisla z db a je to.

Ludek

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Sula Milos
Sent: Wednesday, July 17, 2002 1:26 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: ComboBox a databaze


Cau
muzete mi nekdo poradit jak priradit v comboboxu ke stringum take poradova cisla z DB (mam hlavni tabulku ktera se pres poradove cislo odkazuje na data v jine tabulce ktera se zobrazuje prave v comboboxu) ? Mam to reseno zatim tak ze nactu do comboboxu data pres cb.Items.AddObject(string,TObject(integer)); tj. pretypovavam integer na TObject

Milos

Interbase - vazne problemy s Windows XP

[*] Petr Fejfar <development(zv)callnet(tec)cz> - 18.7.2002 06:28:47

From: <tomchal(zv)mybox(tec)cz>

> Problem spociva v prihlaseni klienta na server.
> Trva to nekolik desitek sekund.

A cestu k DB zadavas primo IP adresou nebo jmenem serveru?


Bye, pf

Kurzor pro THintWindow

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 18.7.2002 06:37:19

To bohuzel neni pravda, za jistych podminek se da rejdit mysi po plose hintu. Pokud ho ale opustim, nebo vyprsi interval zobrazeni, tak to samozrejme zhasne.
Jaro B.

-----Original Message-----
From: Petr Vones [mailto:pvones(zv)mbox.vol(tec)cz]
Standartne hint okno zmizi pri pohybu mysi, takze ten kurzor se prece u neho
nemuze uplatnit, protoze to hint okno je zobrazeno mimo pozici mysi.
From: "Bene� Jaroslav" <JBenes(zv)cpoj(tec)cz>
> jak nastavim v THintWindow vlastni kurzor? Vzdycky tam ma defaultni !

Problem s MessageBox

[*] Milan Tome� <milan.tomes(zv)haida(tec)cz> - 18.7.2002 08:18:15

Jeste drobne upresneni - pouzivam D6 prof + Win XP prof. Vse s
nejaktualnejsimi SP.

S pozdravem

Milan Tomes
mailto:milan.tomes(zv)haida(tec)cz

> Udelal jsem si komponentu pro validovany vstup textu (TTypeEdit) a jeho
> potomka TButtonTypeEdit a dalsiho TCisTypeEdit, ktery po
> stisknuti tlacitka
> otevre prislusny ciselnik a prevezme prislusnou hodnotu do volajiciho
> TCisTypeEditu.
>
> Procedura pro otevreni vypada takto:
>
> procedure TCisTypeEdit.ButtonClick(Sender: TObject);
> var
> CisForm: TG3WCisForm; //Formular, ktery se otevre pro vyber hodnoty
> CanOpen: boolean; //Muze se otevrit formular
> Params: TDynArray; //TDynArray = class(TCollection), predavane
> parametry formulari CisForm
> begin
> if not Assigned(FCisFormClass) then //Zkontroluj, jestli je vubec
> nastavena property
> raise EG3Error.Create('Nen� poioazena to�da formul�oe pro otevoen�
> !!!');
> CanOpen := true;
> DoBeforeCisOpen(CanOpen); //Vyvolani udalosti OnBeforeCisOpen
> if not CanOpen then
> exit;
> CisForm := FCisFormClass.Create(getParentForm(self)); //Vytvoreni
> formulare, parent je nutno predat, protoze se tim automaticky
> predava jeste
> nekolik dalsich vlastnosti. Jedna se o vlastniho potomka TForm
> try
> Params := TDynArray.Create;
> try
> DoGetKey(Params); //Vyvolani udalosti OnGetKey
> CisForm.Params := Params; //Predani parametru formulari
> finally
> freeAndNil(Params);
> end;
> CisForm.Open; //Provede select zaznamu z databaze, ktere odpovidaji
> podmince
> if CisForm.ShowModal = mrOK then //ShowModal je predefinovan u predka
> (pouze drobne upravy kvuli MDI - prepinani FormStyle)
> begin
> //AsVariant - property, ktera nastavuje text editu
> asVariant :=
> CisForm.SelectedRecord.columnByName(FCisColumnName).asVariant;
> ---> if Assigned(CisTextLabel) and (Length(CisTextColumnName) <> 0) and
> Assigned
> (CisForm.SelectedRecord.Columns.ColumnByName(CisTextColumnName))
> then <---- A TADY TO POCHOPITELNE SPADNE !!!
> CisTextLabel.Caption :=
> CisForm.SelectedRecord.Columns.ColumnByName(CisTextColumnName).asC
> haracter;
> SendMessage(GetParentForm(Self).Handle, WM_NEXTDLGCTL, 0, 0);
> end;
> finally
> freeAndNil(CisForm);
> end;
> end;
>
> na radku asVariant :=
> CisForm.SelectedRecord.columnByName(FCisColumnName).asVariant; se
> automaticky vyvola udalost OnChangeValue a ta vyvola metodu
> Validate. Metoda
> Validate interne vyvola udalost OnValidate a vypada takto:
>
> function TCisTypeEdit.Validate(const ACheckRequired: boolean = true; const
> AOpenForm: boolean = true): boolean;
> var
> IsValid: boolean;
> begin
> Result := false;
> try
> if Length(Text) = 0 then
> begin
> if Length(getValueIfBlank) <> 0 then
> begin
> Text := getValueIfBlank;
> DoChangeValue(Null);
> end;
> end;
> DoValidate(ACheckRequired, AOpenForm);
> if Assigned(FOnValidate) then
> begin
> IsValid := true;
> FOnValidate(self, IsValid);
> Result := IsValid;
> end
> else
> Result := true;
> except
> on E: EValidateError do
> begin
> Self.SetFocus;
> if Length(E.Message) <> 0 then
> Application.MessageBox(PChar(E.Message), 'Chyba', MB_OK +
> MB_ICONERROR);
> end;
> end;
> if Result then
> FLastValInValidate := asVariant
> else
> asVariant := FLastValInValidate;
> end;
>
> V jednom konkretnim pripade mam prirazenu obsluhu udalosti
> OnValidate takto:
>
> procedure Tf_E_ZList.e_ID_ETSCORJ_DODValidate(Sender: TObject;
> var IsValid:
> boolean);
> begin
> if Rec.DOD_ETSCORJ_Detail.EXTERNI.asBoolean then
> begin
> Application.MessageBox('Dodavatel nesm� b�t extern� organizace !!!',
> 'Chyba', MB_OK + MB_ICONERROR);
> IsValid := false;
> end;
> end;
>
> Jenze tady vznikne obrovsky problem. Na radku s volanim
> Application.MessageBox je vse v poradku, ale jakmile se toto spusti, tak
> (opravdu nevim proc) dojde k tomu, ze je zrusen formular CisForm (metoda
> TCisTypeEdit.ButtonClick). K zadne vyjimce nedojde (alespon o ni vubec
> nevim).
>
> Prosim o pomoc - je to opravdu urgentni.........

Interbase - vazne problemy s Windows XP

[*] Jiri Wendl, KSH-Data <wendl(zv)ksh-data(tec)cz> - 18.7.2002 08:18:33

>Ahoj,

>mam veliky problem s Interbase 6.0 a firebird na Windows XP.
>Problem spociva v prihlaseni klienta na server. Trva to nekolik
>desitek sekund. Vyzkousel jsem vsechny mozne rady z delhi
>/odstranit restore, isb jen pro cteni, fast user switch. /.
>Po vsech techto upravach se prihlaseni na serveru ze serveru
>zrychlilo z 50s na ihned, ale na klientech je to stale nekonecne
>dlouhe. Instalace na WinMe nebo Win2000 bezi bez problemu.
>Muze nekdo pomoct. Dekuji

Ahoj,

u nas to delalo to same a stacilo na stanicich pridat do
hosts jmeno a adresu pocitace s FB. Nebo zadavat cestu k
FB ve forme IP:cesta\databaze.gdb a ne Jmeno:cesta\databaze.gdb

Preji hodne zdaru

Jirka

Omezeni modality pouze na ParentWindow

[*] Pavel Malinsky <spiderland(zv)iol(tec)cz> - 18.7.2002 08:42:04

Ahoj vsem,

potreboval bych, prosim, akutne pomoct s nasledujicim
problemem:

Mam aplikaci, ktera se sklada z nekolika DLL
a kazda DLL ma jedno nemodalni okno, ktere je
pro tuto DLL hlavni (spravu nemodal. oken si
zajistuji sam). Z techto nemodal. okne se volaji
pouze modalni okna. Problem je ten, ze v okamziku
kdy zavolam modalni okno z nektereho nemodalniho,
tak dojde k zablokovani VSECH nemodalnich i z ostatnich
DLL. Aplikace je prekladana s balicky.

Strucny popis vytvareni a volani oken:

Nemodalni: - Create(nil);
- CreateParams.ExStyle:= ExStyle or WS_EX_APPWINDOW;
- CreateParams.WndParent:= Application.Handle;
- Show;

Modalni: - Create(nil)
- CreateParams.WndParent:= HandleVolajiciho;
- ShowModal;

Jde o to, ze ShowModal prochazi vsechna okna v kontextu
ulohy a znepristupni je vsechny:(.

Jak tedy udelat, aby bylo bloknute pouze nemodalni
okno, ktere zavolalo okno modalni? Asi by pomohlo, aby
kazda knihovna(resp. jeji hlavni nemodal okno) bezelo
ve vlastnim vlakne, ale potreboval by jednodussi reseni.

Env: W2k, D5Pro, IBO,

S pozdravem a dikem Pavel Malinsky

CreateThread a predavani argumentu funkci

[*] Sula Milos <milos.sula(zv)oku-su(tec)cz> - 18.7.2002 09:00:22

Cau

mam nasledujici kousek kodu kde vytvarim thread

threadhandle:=CreateThread(nil,0,(zv)Thread_ThreadProcInterface,nil,0,ThreadId);

funkce
Thread_ThreadProcInterface je deklarovana nasledovne
procedure Thread_ThreadProcInterface(ThreadProc,OnTerminateProc:tthreadproc;threadindex:integer);

a potreboval bych do teto funkce predat argumenty primo z CreateThread
ale toto nefunguje:
threadhandle:=CreateThread(nil,0,(zv)Thread_ThreadProcInterface(xx,yy,zz),nil,0,ThreadId);

Nevite jak to udelat ?

Milos

Interbase - vazne problemy s Windows XP

[*] Zbysek Hlinka <hlinka(zv)hlinka(tec)cz> - 18.7.2002 09:16:27

On 17 Jul 2002 at 23:01, ing. Jan Fiala wrote:

> > Pokud se jednalo o reseni se *souborovou* databazi po siti, tak to
> > snad neni treba ani komentovat ;-)
>
> Ale nac ta ironie ?
> Mame system, ktery zatim bezi pod FoxPro 2.5, samozrejme na siti,
> nektere tabulky maji i miliony zaznamu. Vrat se o tri roky zpet, kdy
> se teprve s SQL zacinalo a vetsina systemu byla stavena na souborovych
> databazich.

SQL je podstatne starsi nez 3 roky, a to nekolikanasobne. Pokud se v
nasich krajich delaly vetsi reseni nad souborovymi databazemi, pak to
bylo proto, ze zakaznici nechteli platit za vetsi spolehlivost. Tedy
z nouze ctnost, presne podle komunistickeho hesla setrit se bude at
to stoji co to stoji.

Jinak je to ale nesmysl, udrzba souborove databaze je obvykle drazsi
nez totez u SQL. A zaplati to budto zakaznik na servisnich zasazich,
nebo programator na _vyrazne_ vetsi pracnosti pri osetrovani ruznych
chybovych stavu, ktere sitovy provoz generuje.

Souborovou databazi lze na siti pouzit pouze u takovych projektu, kde
na datech nijak moc nezalezi, a kde lze jejich ztratu nebo poskozeni
s lehkym srdcem ozelet. To platilo pred 3 roky uplne stejne jako
dnes.

S pozdravem

Zbysek Hlinka


OT:nabidka prace

[*] Radek Zhasil <radek.zhasil(zv)vitkovice(tec)cz> - 18.7.2002 09:25:54

Ahoj,
hledame programatora(ku) v Ostrave a okoli.
Pozadujeme :
- vybornou znalost Delphi
- IB (nebo jina SQL DB)
- tvorba C/S aplikaci
- vyhodou muze byt znalost FoxPro, VisualStudio .NET.
Nabizime :
- pruznou prac.dobu
- slusny plat

Odpovedi a zivotopisy zasilejte na nize uvedeny e-mail.

e-mail: radek.zhasil(zv)vitkovice(tec)cz
http://www.mujweb(tec)cz/pocitace/radek.zhasil/

INTERBASE a cestina

[*] Jindrich Nikodem <nikodem(zv)kh-kinetic(tec)cz> - 18.7.2002 09:33:01

Ahoj,

mam problem s INTERBASE. Zakaznik ma syst�m napsany v Delphi a databazi
INTERBASE 5.0.
Na vsech pocitacich je vse OK, ale na jednom s Win98 se nezobrazuje cestina
(jen zmrsene znaky).
Nevite nekdo proc?


Predem dik

Jindrich Nikodem

OT: GeForce4 + PCI Radio

[*] SPELZA s.r.o. <spelza(zv)spelza(tec)cz> - 18.7.2002 09:59:47

Ahoj,
mam problem z trochu jineho soudku. Mam v pocitaci GeForce4 MX440 (WinFast
A170 DDR) vse funguje OK. Pridal jsem kartu PCI Radio a po zapnuti pocitac
pipanim signalizuje, ze nenalezl videokartu. Nesetkal jste se nekdo s timto
problemem?

Dik a preji pekny den. Jara

svehla(zv)spelza(tec)cz


Problem s DBF

[*] Tom Beran <assas(zv)bonbon(tec)net> - 18.7.2002 09:38:41

>
>Pot�eboval bych poradit s probl�mem s DBF v Delphi 5. M�m pom�rn� velkou DBF tabulku cca 40 000 z�znam� o velikosti 24MB a k tomu soubor index� (v�t�inou Expression), kter� maj� tak� asi 20MB. M�j probl�m je, �e pokud se pokus�m data zkop�rovat do stejn� strukturovan� tabulky s jin�m jm�nem p�es dbiAppendRecord(...) (fce BDEApi) v�e b�� OK a� asi do 11 000-ho z�znamu kdy program ozn�m� chybu v z�pisu do souboru kopie.dbf a v�e spadne. Jedin� mo�nost jak nechat kop�rov�n� dob�hnout do konce je zru�it indexy, ale vytvo�it je po kop�rov�n� znovu je zdlouhav� a divn�, a krom� toho jak vytvo��m za b�hu expression index?
>
>Zkou�el r�zn� nucen� vyprazdnov�n� bufferu, dokonce i open p�ed p�id�n�m z�znamu a close po jeho ulo�en� a bylo to taky na nic.
>
>Nesetkal se tu n�kdo s n���m podobn�m a je v�bec mo�n� pod BDE pracovat s tak objemn�ma datama nebo tam je n�jak� limit?
>
>D�k za jakoukoliv radu �i n�pad.
>

Zkus mrknout na obecne rady tady http://www.bdesupport.com

T.

Problem TPageControl [SOS]

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 18.7.2002 10:47:18

Ahoj,
vyskytl se mi problem s TPageControl a je docela akutni. Mam za sebou ctyri zalozky A,B,C,D po chvilce preklapavani se mi prehodi na B,A,C,D. Mam povesenou udalost na OnChange (povoleni nejakych akci pro urcite zalozky v menu, testuju PageControl1.ActivePage.PageIndex) a OnResize (aby zalozky mely ouska stale stejne siroke). Nevite, prosim, nekdo, v cem by mohl byt problem? Na funkci to vliv nema jen je to jinak usporadane. Pokud program restartuju tak je chvili vse OK. Je to v D5.01, bezi to zatim na W2K.
Diky
Jaro B.

CreateThread a predavani argumentu funkci

[*] Delphin <delphin(zv)post(tec)cz> - 18.7.2002 10:57:07

>
threadhandle:=CreateThread(nil,0,(zv)Thread_ThreadProcInterface(xx,yy,zz),nil,0
,ThreadId);

CreateThread to rozhodne nepujde, dostanes jenom jeden argument a to dword.
Muze to ale byt pointer na data.

threadhandle:=CreateThread(nil,0,(zv)Thread_ThreadProcInterface,(zv)data,0,ThreadI
d);

Nebylo by jednodussi si v tomto pripade nadefinovat potomka TThread ?

Komponenta TDBF

[*] "Mirek Drej�ek" <drejcek(zv)schkocr(tec)cz> - 18.7.2002 10:05:08

zdravim,
zkousim Delphi 6 personal. Zde zkousim komponentu TDBF. Ale porad se mi nedari dostat ji do Dephi (nemuze najit vcldb). Muzete mi nekdo poradit? Nebo doporucit jinou komponentu?
Predem diky za jakoukoli radu.

Mirek Drejcek

CreateThread a predavani argumentu funkci

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 18.7.2002 11:12:33

>Thread_ThreadProcInterface je deklarovana nasledovne
>procedure
Thread_ThreadProcInterface(ThreadProc,OnTerminateProc:tthreadproc;thre
adindex:integer);
>
>a potreboval bych do teto funkce predat argumenty primo z
CreateThread
>ale toto nefunguje:
>threadhandle:=CreateThread(nil,0,(zv)Thread_ThreadProcInterface(xx,yy,zz
),nil,0,ThreadId);

musis si deklarovat a alokovat strukturu (bacha na soubezne spusteni
vice threadu - zamykat), jejiz adresu predas
novemu threadu (ten by si mel vyrobit lokalni kopii dat pokud je ma
dale pouzivat aby je volajici proces mohl uvolnit)


D. Toman


Problem TPageControl [SOS]

[*] Ing. Pavel �ilinec����)b���zf���3 - 18.7.2002 12:00:52

Prozatim zkus misto PageControl1.ActivePage.PageIndex testovat rovnou
napr.
if PageControl1.ActivePage = tsPrvniZalozka then ....
Tim se Ti vyresi problem s povolovanim akci (a treba i to
prehazovani:)).

--------
ing. Pavel Zilinec
MailTo:zilinec(zv)email(tec)cz

Prog-Soft s.r.o. Plzen
Informacni system pro vyrobce
a distributory napoju

BJ> Ahoj,
BJ> vyskytl se mi problem s TPageControl a je docela akutni. Mam za sebou ctyri zalozky A,B,C,D po chvilce preklapavani se mi prehodi na B,A,C,D. Mam povesenou udalost na OnChange (povoleni nejakych
BJ> akci pro urcite zalozky v menu, testuju PageControl1.ActivePage.PageIndex) a OnResize (aby zalozky mely ouska stale stejne siroke). Nevite, prosim, nekdo, v cem by mohl byt problem? Na funkci to
BJ> vliv nema jen je to jinak usporadane. Pokud program restartuju tak je chvili vse OK. Je to v D5.01, bezi to zatim na W2K.
BJ> Diky
BJ> Jaro B.

Probl�m s DBF

[*] "K�ss, Pavel" <Pavel.Kaess(zv)trimondo(tec)com> - 18.7.2002 12:08:29

Ahoj,
> jak vytvo��m za b�hu expression index?
napr.:
nnewTable := TTable.Create(nil);
nnewTable.TableName := kkundeDBFPr;
nnewTable.Exclusive:= True;
try
nnewTable.Open;
nnewTable.AddIndex(IDX1PR, TABLEPR[0].FeldName + '+STR(' +
TABLEPR[1].FeldName + ')+' + TABLEPR[2].FeldName, [ixUnique, ixExpression]);
...

S pozdravem
Pavel
PS: Subject jsi mohl nazvat trochu vystizneji: Treba DBF-Kopirovani velkeho
souboru, Create ExpressionIndex nebo tak nejak...

> -----Original Message-----
>

CreateThread a predavani argumentu funkci

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 18.7.2002 12:15:40

----- Original Message -----
From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>
> a potreboval bych do teto funkce predat argumenty primo z CreateThread
> ale toto nefunguje:
> threadhandle:=CreateThread(nil,0,(zv)Thread_ThreadProcInterface(xx,yy,zz),nil,0,ThreadId);

Muzes si treba udelat nejakou funkci GetTrhreadProcParams(ThreadID; var xx, yy, zz),
kterou thread zavola bezprostredne po svem spusteni a ta mu ty jeho parametry vrati
podle jeho ThreadID. Pozor - tato funkce musi byt synchronizovana kritickou sekci.

Martin Schayna

Interbase - vazne problemy s Windows XP

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.7.2002 12:43:34

Haj hou!

On 17 Jul 2002 at 18:18, tomchal(zv)mybox(tec)cz wrote:

> mam veliky problem s Interbase 6.0 a firebird na Windows XP.
> Problem spociva v prihlaseni klienta na server. Trva to nekolik
> desitek sekund. Vyzkousel jsem vsechny mozne rady z delhi
> /odstranit restore, isb jen pro cteni, fast user switch. /.
> Po vsech techto upravach se prihlaseni na serveru ze serveru
> zrychlilo z 50s na ihned, ale na klientech je to stale nekonecne
> dlouhe. Instalace na WinMe nebo Win2000 bezi bez problemu.
> Muze nekdo pomoct. Dekuji

Sitovy problem v lokalizaci pocitace. Zkuste doplnit hosts tabulku na stanici o
adresu serveru, DNS zaznam pokud pouzivate DNS, nebo specifikujte server IP
adresou misto jmenem. Tohle byva casty problem u siti s dynamickym
pridelovanim IP (DHCP), kde se server hleda po vsech certech. Obvzlaste
pokud je sit i trvale pripojena k Internetu. Kolikrat staci jen zmenit poradi
dotazovanyh DNS serveru (nejdrive lokalni a pak vzdalene). BTW, IB/FB
pouziva standardni API volani pro zjisteni IP ze jmena. Tato funkce ma ale
trochu odlisnou logiku na ruznych Windows i verzich sitoveho rozhrani
(aktualizovane napr. IE 4/5/6 na W95 apod.). Rovnez muze byt problemem
spatne bindings sitovych vrstev, pokud mate vice protokolu (dat IP jako prvni).

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

Interbase - vazne problemy s Windows XP

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.7.2002 12:43:33

Haj hou!

On 17 Jul 2002 at 23:01, ing. Jan Fiala wrote:

> Vrat se o tri roky zpet, kdy se teprve s SQL zacinalo a vetsina
> systemu byla stavena na souborovych databazich.

Dovolim si nesouhlasit. S SQL servery na PC se zacinalo jiz v polovine
devadesatych let, tedy nejmene jiz pred osmi lety. Ale teprve posledni cca tri
roky jsou k dispozici natolik levne SQL servery, ze se vyplati je pouzivat i tam,
kde se z cenovych duvodu pouzivalo FoxPro, Access nebo Paradox.

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

Vykonani SP na FB

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.7.2002 12:43:33

Haj hou!

On 17 Jul 2002 at 21:59, miromr wrote:

> Mozno by nam niekto vedel povedat kedy FB zacne dochadzat dych,
> ale kedy to je som sa zatial nedozvedel - vie to niekto?


Pokud je aplikace vhodne napsana, server a sit dobre nastaveny, a zvolen dobry
OS a HW, zvlada FB az obdivuhodne mnoho. Existuji pouze dve oblasti, ktere
ho spolehlive limituji:

1) Aplikace vyzaduje vice, nez je tvrdy limit FB, napr. pocet indexu na tabulku,
delka indexniho klice, delka sloupce nebo radku.

2) Velke mnozstvi (vice nez 300) _soucasne_ pracujicich uzivatelu.

Pote existuje "seda" zona, kde se prace s FB komplikuje, predevsim po
administratorske strance. To jsou pripady velmi velkych databazi, velkeho poctu
uzivatelu, vyzadovane trvale dostupnosti apod. Nejde o neresitelne problemy,
ale prace s FB pak uz neni tak jednoducha (nainstaluj a zapomen :-)

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

INTERBASE a cestina

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.7.2002 12:43:34

Haj hou!

On 18 Jul 2002 at 9:33, Jindrich Nikodem wrote:

> mam problem s INTERBASE. Zakaznik ma syst�m napsany v Delphi a
> databazi INTERBASE 5.0. Na vsech pocitacich je vse OK, ale na jednom s
> Win98 se nezobrazuje cestina (jen zmrsene znaky). Nevite nekdo proc?

Predpokladam, ze pristup je pres ten cizi soft v Delphi, a ze ten ma spravne
nastaveny jazyk pro klienta, a ze databaze ma nastaveny character set pro
ulozeni dat. Potom je problem v nastaveni Windows (i kdyz je to divne).
Pravdepodobne jde o anglicka windows, bez nainstalovane podpory pro
stredoevropske jazyky, spatne nastaveni locale, nebo je nekde neco zmrseneho
(DLL, apod.). Doporucoval bych overit vystup v nejake konzoli (treba IBConsoli)
s nastavenym spravnym charsetem pro klienta (WIN1250). Pokud je zobrazeni
spravne, pak je problem s aplikaci, ktera vybere spatny font pro zobrazeni
(nikoliv stredoevropsky rez pro dany font). Muze to byt aplikaci nebo nastavenim
windows, pripadne interakci obojiho.

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

Interbase - vazne problemy s Windows XP

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 18.7.2002 12:53:43

18.7.2002 Pavel Cisar:
> Haj hou!

> On 17 Jul 2002 at 23:01, ing. Jan Fiala wrote:

>> Vrat se o tri roky zpet, kdy se teprve s SQL zacinalo a vetsina
>> systemu byla stavena na souborovych databazich.

> Dovolim si nesouhlasit. S SQL servery na PC se zacinalo jiz v polovine
> devadesatych let, tedy nejmene jiz pred osmi lety. Ale teprve posledni cca tri
> roky jsou k dispozici natolik levne SQL servery, ze se vyplati je pouzivat i tam,
> kde se z cenovych duvodu pouzivalo FoxPro, Access nebo Paradox.

Omlouvam se za to, ze jsem se chybne vyjadril.
Samozrejme jsem to myslel tak, ze s SQL se poradne zacinalo v "nasich
koncinach".
Rozhodne jsem to nemyslel tak, ze by do te doby SQL servery
neexistovaly.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

GeForce4 + PCI Radio

[*] Pavel Malinsky <spiderland(zv)iol(tec)cz> - 18.7.2002 12:59:44

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
>

Ahoj,

> mam problem z trochu jineho soudku. Mam v pocitaci GeForce4 MX440 (WinFast
> A170 DDR) vse funguje OK. Pridal jsem kartu PCI Radio a po zapnuti pocitac
> pipanim signalizuje, ze nenalezl videokartu. Nesetkal jste se
> nekdo s timto
> problemem?

Obdobny problem sem vyresil tak, ze jsem
radioakrtu dal do _nejvzdalenejsiho_ slotu od
videokarty.

S pozdravem a dikem
=====================================
> Pavel Malinsky; spiderland(zv)iol(tec)cz <
=====================================
GSM: 0602 652 203

Problem TPageControl [SOS]

[*] Vaclav Votipka <vaclav.votipka(zv)merlin(tec)cz> - 18.7.2002 13:11:03

Nepouzivas pro programove prepinani mezi zalozkama neco jako

PageControl1.ActivePage.PageIndex := _cislo_ ?

To by mohlo zpusobit popisovane chovani. Pouzivej misto toho
PageControl1.ActivePage := _zalozka_;

Pripadne prohledej zdroje, jestli nekde neprirazujes cislo do PageIndex.

eNca

Bene� Jaroslav wrote:

>Ahoj,
>vyskytl se mi problem s TPageControl a je docela akutni. Mam za sebou ctyri zalozky A,B,C,D po chvilce preklapavani se mi prehodi na B,A,C,D. Mam povesenou udalost na OnChange (povoleni nejakych akci pro urcite zalozky v menu, testuju PageControl1.ActivePage.PageIndex) a OnResize (aby zalozky mely ouska stale stejne siroke). Nevite, prosim, nekdo, v cem by mohl byt problem? Na funkci to vliv nema jen je to jinak usporadane. Pokud program restartuju tak je chvili vse OK. Je to v D5.01, bezi to zatim na W2K..
>Diky
>Jaro B.
>
>
>

Problem TPageControl [SOS]

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 13:27:03

From: "Bene� Jaroslav" <JBenes(zv)cpoj(tec)cz>
> zalozky A,B,C,D po chvilce preklapavani se mi prehodi na B,A,C,D. Mam
> povesenou udalost na OnChange (povoleni nejakych akci pro urcite zalozky v
> menu, testuju PageControl1.ActivePage.PageIndex) a OnResize (aby zalozky

Jak presne ty akce vlastne povolujes ? K tomu totiz udalost OnChange vubec
nepotrebujes. Smyslem akci je definovat logiku na zaklade stavu ostatnich akci
nebo ovladadich prvku. Udalosti TAction.OnUpdate vola VCL vzdy kdyz je to
treba, ty pouze definujes logicky podminky, viz priklad:

procedure TForm1.Action1Update(Sender: TObject);
begin
Action1.Enabled := PageControl1.ActivePageIndex = 0;
end;

procedure TForm1.Action2Update(Sender: TObject);
begin
Action2.Enabled := PageControl1.ActivePageIndex = 1;
end;

Petr Vones

TWebBrowser.Navigate('C:\') a klavesnice

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 18.7.2002 13:35:42

Pokud dam na novy formular komponentu TWebBrowser
(D5, IE5) a otevru v ni cestu na lokalnim disku, mam rychle
hotovy zapouzreny file manager ve sve aplikaci.

Vsechno funguje naramne ale pouze mysi, pro pohyb po
ikonkach nelze pouzit kurzorove klavesy, Home, End,
PgUp, PgDn protoze ty se chytaji zrejme kvuli posouvani
scrollbaru pri beznejsim pouziti TWebBrowseru pro
prohlizeni html.

Nevite nekdo nahodou jak klavesy zpristupnit?

Martin Schayna

array

[*] Peter Surovy <psurovy(zv)uevora.pt> - 18.7.2002 12:38:01

Ahoj
mam taku amat. otazku
chcem mat pole structur
napr:

var priemer[r,g,b]:array of structura;

ale neviem to zadefinovat.
asi by som mohol zadefinovat jednu polozku struct
ako meno ale potom by som ju musel hladat ci nie?
napr.

ak priemer[1].meno= r tak priemer[1].hodnota:= ....
chcel by som nieco ako: priemer[r].hodnota := ....

<pointa>skratka chcel by som volat ten prvok podla mena
nie podla poradoveho cisla aby som sa v tom vyznal.</pointa>

Da sa to ?
Peter Surovy

Problem TPageControl [SOS]

[*] Ben, Martin (CAP, GCF) <Martin.Ben(zv)gecapital(tec)com> - 18.7.2002 13:42:43

Nepouzivas nekde konstrukci PageControl1.ActivePage.PageIndex := <cislo> ?

Ja pro testovani i zmenu stranky pouzivam PageControl1.ActivePageIndex a
jeste jsem se nesetkal s zadnymi problemy:
Nebo pouzivej primo PageControl1.ActivePage.

Martin Ben


> -----Original Message-----
> From: Bene� Jaroslav [mailto:JBenes(zv)cpoj(tec)cz]
>
> Ahoj,
> vyskytl se mi problem s TPageControl a je docela akutni. Mam
> za sebou ctyri zalozky A,B,C,D po chvilce preklapavani se mi
> prehodi na B,A,C,D. Mam povesenou udalost na OnChange
> (povoleni nejakych akci pro urcite zalozky v menu, testuju
> PageControl1.ActivePage.PageIndex) a OnResize (aby zalozky
> mely ouska stale stejne siroke). Nevite, prosim, nekdo, v cem
> by mohl byt problem? Na funkci to vliv nema jen je to jinak
> usporadane. Pokud program restartuju tak je chvili vse OK. Je
> to v D5.01, bezi to zatim na W2K.
> Diky
> Jaro B.
>

array

[*] Robert Suska <delphi(zv)korak.sk> - 18.7.2002 13:44:49

Ahoj!

V rychlosti Ti napisem len toto aj ked Tvoj problem neriesi mozno Ti pomoze.

type struktura= packed record
meno: String;
cislodomu: Integer;
end;

var pole: array[0..N] of struktura;

begin

pole[i].Meno:= 'Robo';
pole[i].cislodomu:= 150;

end;

S pozdravom

************************************
Robert Suska
KORAK SLOVAKIA s.r.o.
Horna 52
974 01 Banska Bystrica
www.korak.sk robert(zv)korak.sk
Network administrator, Delphi programmer
************************************

----- Original Message -----
From: "Peter Surovy" <psurovy(zv)uevora.pt>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, July 18, 2002 1:38 PM
Subject: array


> Ahoj
> mam taku amat. otazku
> chcem mat pole structur
> napr:
>
> var priemer[r,g,b]:array of structura;
>
> ale neviem to zadefinovat.
> asi by som mohol zadefinovat jednu polozku struct
> ako meno ale potom by som ju musel hladat ci nie?
> napr.
>
> ak priemer[1].meno= r tak priemer[1].hodnota:= ....
> chcel by som nieco ako: priemer[r].hodnota := ....
>
> <pointa>skratka chcel by som volat ten prvok podla mena
> nie podla poradoveho cisla aby som sa v tom vyznal.</pointa>
>
> Da sa to ?
> Peter Surovy
>

CreateThread a predavani argumentu funkci

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 13:48:51

From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>

1. Nikdy nevolej primo CreateThread, ale pouzij BeginThread z RTL.
2. Proc nepouzijes TThread ?

Petr Vones

Database MySQL na host.sk a pristup na ni

[*] jtomecek <jtomecek(zv)dezadata(tec)cz> - 18.7.2002 13:48:37


Omlouvam se za dotaz...ale nahodou mate nekdo vytvorenou MySQL databazi na
host.sk?
Proc se k ni nemuzu pripojit napr. pres Zeos Mysql komponenty....?
Drive to fungovalo...
Nejaky zmeny na host.sk?

Format GUID ukladaneho jako PK do DB

[*] Petr Fejfar <development(zv)callnet(tec)cz> - 18.7.2002 13:49:24

From: "Martin Macko" <martinm(zv)m-pro(tec)cz>

> u nas varchar(36) - bez {} - kdyz je potom potreba neco dohledat, lze to
> i "rucne" pomoci SELECT * FROM xxx WHERE ID='dlouhyosklivyguid'

Uz jsem taky narazil na potrebu rucne pracovat s GUID ve scriptu ;-),
takze jsme museli napsat jednoduchou utilitku, ktera vygeneruje GUID
a strci ho do clipboard v prislusnem formatu.

Pokud by mel nekdo zajem, muzu poskytnout (jen pro D6).


Bye, pf

TWebBrowser.Navigate('C:\') a klavesnice

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 13:54:46

From: "Martin Schayna" <mschayna(zv)aktis(tec)cz>
> Vsechno funguje naramne ale pouze mysi, pro pohyb po
> ikonkach nelze pouzit kurzorove klavesy, Home, End,
> PgUp, PgDn protoze ty se chytaji zrejme kvuli posouvani
> scrollbaru pri beznejsim pouziti TWebBrowseru pro
> prohlizeni html.

Neco je tady ale nejde to ani prelozit:
http://community.borland.com/article/0,1410,6302,00.html

Petr Vones

Komponenta TDBF

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 14:00:51

From: "Mirek Drej�ek" <drejcek(zv)schkocr(tec)cz>
> zkousim Delphi 6 personal. Zde zkousim komponentu TDBF. Ale porad se mi
> nedari dostat ji do Dephi (nemuze najit vcldb). Muzete mi nekdo poradit?

V Delphi 6 Personal neni zadna databazova podpora, tedy ani trida TDataSet od
ktere je patrne TDBF odvozena.

Petr Vones

Komponenta TDBF

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 18.7.2002 14:06:07

> zkousim Delphi 6 personal. Zde zkousim komponentu TDBF. Ale

se obavam, ze personal verze delphi byly zamerne delany tak, aby
v nich nesli delat databaze. vcldb v D6 personal nenajdes. pokud
potrebujes databazi, zkus Zbyskovo OLE DB, o kterem si myslim,
ze jsem zde cetl, ze to nejak jde do personal verze dostat.

peca

CreateThread a predavani argumentu funkci

[*] Sula Milos <milos.sula(zv)oku-su(tec)cz> - 18.7.2002 14:08:12

Proc proboha ? CreateThread je funkce pouzivana bezne v cecku tak proc ne v delphi ?
BeginThread je pouze wrapper pro CreateThread tohle si snad kazdej dovede napsat ne ?

function BeginThread(SecurityAttributes: Pointer; StackSize: LongWord;
ThreadFunc: TThreadFunc; Parameter: Pointer; CreationFlags: LongWord;
var ThreadId: LongWord): Integer;
var
P: PThreadRec;
begin
New(P);
P.Func := ThreadFunc;
P.Parameter := Parameter;
IsMultiThread := TRUE;
Result := CreateThread(SecurityAttributes, StackSize, (zv)ThreadWrapper, P,
CreationFlags, ThreadID);
end;

mozna to bude znit hloupe, ale TThread a dalsi 'cerne skrinky' v delphi mi jdou proti srsti a tak radsi pouzivam primo api funkce, dela se mi s nimi lepe,nebot vim co presne delam a nemusim spolehat na to ze to nekdo predemnou napsal jeste hure nez ja :)). V delphi je sice plno komponent a objektu ovsem detailni popis jak vlastne funguji v helpu urcite nenajdete, musite se podivat do zdrojaku jak to tam je udelane, kdyz vam neco nefunguje nebo to chcete trosku jinak. A prostudovat casto zdrojak ke komponente jsou i tisice radku (z toho polovinu funkci ani nepotrebujete). A tak radeji si to napisu sam a tim padem vim jak jsem to napsal a jak se to bude presne chovat. Doufam ze z toho nebude flamewar.

Milos

-----Original Message-----
From: Petr Vones [mailto:pvones(zv)mbox.vol(tec)cz]
Sent: Thursday, July 18, 2002 1:49 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: CreateThread a predavani argumentu funkci


From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>

1. Nikdy nevolej primo CreateThread, ale pouzij BeginThread z RTL.
2. Proc nepouzijes TThread ?

Petr Vones

CreateThread a predavani argumentu funkci

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 14:23:02

From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>
> Proc proboha ? CreateThread je funkce pouzivana bezne v cecku tak proc ne v
> delphi ?

I v RTL C mas beginthread a beginthreadex.

> BeginThread je pouze wrapper pro CreateThread tohle si snad kazdej dovede
> napsat ne ?

Ten wrapper totiz zajisti, ze:

1. Memory manager bude v mutlithread rezimu
2. Neostrena vyjimka bude spravne zpracovana RTL, mimochodem ThreadWrapper je
v implementation sekci System.pas, takze si to 'kazdej nenapise'.

> mozna to bude znit hloupe, ale TThread a dalsi 'cerne skrinky' v delphi mi

Potom si musis napsat znovu cely operacni system a prekladac, to jsou taky
cerne skrinky.

> napsal jeste hure nez ja :)). V delphi je sice plno komponent a objektu
> ovsem detailni popis jak vlastne funguji v helpu urcite nenajdete,

Co konkretne neni u TThread v helpu ?

Petr Vones

edit pro heslo

[*] Peter Jarunek <p_jarunek(zv)hotmail(tec)com> - 18.7.2002 14:34:01


Zdravim,
chci udelat edit pro heslo; tzn. aby se tam psali hvezdicky;
jenze nevim, jak na to, protoze pokud pouziju smazani textu
v eventu keydown, keypress (keyup je nevhodne)
tak se mi vzdy to posledni znak zobrazi;

mate s tim nekdo zkusenost? dik, peter


win2k server; delphi 6 enterprise;


_________________________________________________________________
Send and receive Hotmail on your mobile device: http://mobile.msn.com

edit pro heslo

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 14:36:44

From: "Peter Jarunek" <p_jarunek(zv)hotmail.com>
> chci udelat edit pro heslo; tzn. aby se tam psali hvezdicky;
> jenze nevim, jak na to, protoze pokud pouziju smazani textu

Do PasswordChar property u TEdit dej '*'

Petr Vones

ComboBox a databaze

[*] Martin Chaloupka <Martin.Chaloupka(zv)gmx(tec)net> - 18.7.2002 14:36:24

> Ahoj,
>
> ja nejradsi pouzivam komponentu z RX library (RxDbComboBox). Ta ma jak
> vlastnost items, tak values - staci naplnit do items seznam a do values
> poradova cisla z db a je to.
>
> Ludek
>
A nebo snad pouzit TDBLookupComboBox.
Pokud ovsem vyhovuje.
Martin

--
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net

Problem TPageControl [SOS]

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 18.7.2002 14:36:05

Neprirazuji, jen to ctu. Vsude jsem i to cteni zmenil a zatim se to neobjevilo.
Diky
Jaro B.

-----Original Message-----
From: Vaclav Votipka [mailto:vaclav.votipka(zv)merlin(tec)cz]
Nepouzivas pro programove prepinani mezi zalozkama neco jako
PageControl1.ActivePage.PageIndex := _cislo_ ?
To by mohlo zpusobit popisovane chovani. Pouzivej misto toho
PageControl1.ActivePage := _zalozka_;
Pripadne prohledej zdroje, jestli nekde neprirazujes cislo do PageIndex.

edit pro heslo

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 18.7.2002 14:38:30

Pouzij obycejny edit a do property PasswordChar dej hvezdicku

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

18.7.2002 Peter Jarunek:

> Zdravim,
> chci udelat edit pro heslo; tzn. aby se tam psali hvezdicky;
> jenze nevim, jak na to, protoze pokud pouziju smazani textu
> v eventu keydown, keypress (keyup je nevhodne)
> tak se mi vzdy to posledni znak zobrazi;

> mate s tim nekdo zkusenost? dik, peter


> win2k server; delphi 6 enterprise;> _________________________________________________________________
> Send and receive Hotmail on your mobile device: http://mobile.msn.com

CreateThread a predavani argumentu funkci

[*] Jan Krizek <krizek(zv)vitasw(tec)cz> - 18.7.2002 14:40:45

> 2. Neostrena vyjimka bude spravne zpracovana RTL ...

Opravdu? Ja delam vsechny thready pres TThread a vim, ze kdyz zapomenu
na osetreni vyjimky v Execute, tak na W9x se mi objevi modra smrt a v NT
dr.Watson a spol. Tedy to vypada, ze mam nekde neco spatne ...

D5.01Prof

Honza +

OT: Oracle jobs na Linuxu

[*] Martin Chaloupka <Martin.Chaloupka(zv)gmx(tec)net> - 18.7.2002 14:41:27

> Sorry za OT ale potreboval bych vedet jestli je potreba neco nastavit
> na Oraclu pokud chci aby se mi zpracovavali joby. Funkci
> DBMS_JOB.submit je v pohode pridam, v DBA_JOBS jsou normalne videt,
> ale nepusti se :)
>
> Jakub Dusek
Ano, jak mate nastavenou promenou job_queue_processes ?
Pokud je nastavena na nulu, neni mozne job spustit. Musite ji
nahodit na minimalne = 1 pomoci "alter system set job_queue_processes = 5 "
Tez je vhodne to napsat do oraSID.ini, nebot po restartu databaze ...
Martin

--
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net

array

[*] Delphin <delphin(zv)post(tec)cz> - 18.7.2002 14:56:34

> var priemer[r,g,b]:array of structura;
> chcel by som nieco ako: priemer[r].hodnota := ....

Nevim jestli jsem to spravne pochopil, ale mozna by slo pouzit toto:

type TColor=(cR,cG,cB);
TStruktura=record
hodnota:integer;
end;
var Priemer:array [TColor] of TStruktura;

Re[2]: Komponenta TDBF

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 18.7.2002 14:57:36

... a asi vsechny komponenty pro pristup k ruznym databazim jsou kvuli kompatibilite
odvozeny z TDataSet, cili s D6 Personal mas asi smulu.

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Thursday, July 18, 2002, 2:00:51 PM, you wrote:

PV> From: "Mirek Drej�ek" <drejcek(zv)schkocr(tec)cz>
>> zkousim Delphi 6 personal. Zde zkousim komponentu TDBF. Ale porad se mi
>> nedari dostat ji do Dephi (nemuze najit vcldb). Muzete mi nekdo poradit?

PV> V Delphi 6 Personal neni zadna databazova podpora, tedy ani trida TDataSet od
PV> ktere je patrne TDBF odvozena.

PV> Petr Vones

Jak pouzit TIB_StoredProc

[*] Martinec <martin108(zv)post(tec)cz> - 18.7.2002 15:09:41

Pro pristup k FB jsem ted zacal pouzivat IBO komponenty a nevim si rady s pouzitim TIB_StoredProc:

V databazi mam proceduru, ktera ulozi novou osobu do databaze a vrati mi jeji ID

CREATE PROCEDURE NewPerson (<vstupni_parametry>) RETURNS (oID INTEGER)
AS BEGIN
...
END

No a tuto proceduru potrebuji zavolat z Delphi.
Vim jak naplnit parametry a proceduru spustit, ale nedokazu ziskat jeji navratovou hodnotu.

Poradite mi nekdo?

Dik
Martinec
---
Velk� letn� sleva 50% na ve�kerou bannerovou reklamu a� do 30.9.2002
http://reklama.volny(tec)cz

array

[*] Peter Surovy <psurovy(zv)uevora.pt> - 18.7.2002 14:22:29

Ahoj
ano ano to je presne ono.
teda ten prvy riadok :-)
tak ak som to ja spravne pochopil
TColor je tu mnozina prvkov cR,cG,cB
a ich menami potom mozem volat jednotlive polozky
pola ci nie?
teda: priemer[cR].hodnota:=100;
...


Peter Surovy

----- Original Message -----
From: "Delphin" <delphin(zv)post(tec)cz>
Sent: Thursday, July 18, 2002 1:56 PM


>
> Nevim jestli jsem to spravne pochopil, ale mozna by slo pouzit toto:
>
> type TColor=(cR,cG,cB);
> TStruktura=record
> hodnota:integer;
> end;
> var Priemer:array [TColor] of TStruktura;

Vykonani SP na FB

[*] Ji�� Binder <j.binder(zv)albacon(tec)cz> - 18.7.2002 15:25:44

---------- Original message -------------
From: "Pavel Cisar" <pcb(zv)atlas(tec)cz>
>Pote existuje "seda" zona, kde se prace s FB komplikuje, predevsim po
>administratorske strance. To jsou pripady velmi velkych databazi,

Dalo by se priblizit, co znamenaji "velmi velke databaze"? Jsou k dispozici vysledky
nejakych testu nebo doporuceni na konfiguraci v zavislosti na velikost databaze? Je alespon
najky hruby odhad, od jakeho objemu dat lze ocekavat problemy ci pokles vykonu.

Je napr. vhodne uvazovat o pouziti FB k archivaci dokumentu v celkovem objemu dat do sta GB?

Jiri Binder


Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.377 / Virov� b�ze: 211 - datum vyd�n�: 15.7.2002

Re[2]: Komponenta TDBF

[*] Petr Fejfar <development(zv)callnet(tec)cz> - 18.7.2002 15:47:18

From: "Jakub Dusek" <jdev(zv)seznam(tec)cz>

> ... a asi vsechny komponenty pro pristup
> k ruznym databazim jsou kvuli kompatibilite

Jenomze tDBF neni komponenta pro pristup k DB,
ale komponenta implementujici lokalni souborovou
DB.

Takze pokud potrebujes pracovat s lokalni DB a ne se pripojovat na nejaky
server, muzes klidne pouzit
napr. zde nedavno diskutovany SQLite
(http://www.hwaci.com/sw/sqlite/index.html)
popr. janSQL (www.jansfreeware.com)
a asi by se jeste naslo neco dalsiho.


HTH, pf

Vykonani SP na FB

[*] Richard Kejval <kejval.delphi(zv)centrum(tec)cz> - 18.7.2002 16:08:55

> > O to tady prave vubec neslo. Slo o to, ze pokud napr. moji zakaznici se
> > rozhodnou,
> > ze na serveru bude nainstalovan Linux, ktery poridi zdarma a FB bude bez
> > problemu
> > fungovat, tak jsem ochoten akceptovat i jakesi snizeni vykonu na
platforme
> > win,
> > protoze to snizi dalsi naklady na pouziti meho softu a pokud zakaznik ma
> > radove
> > desitky serveru urcite uznas, ze jeho naklady se snizi celkem dosti
> vyrazne,
> > ale to
>
> druha vec je, ci je ochotny to znizenie vykonu na ukor multiplatformnosti
> akceptovat aj zakaznik? Aku ma z toho vyhodu, ako to vyuzije?

Zakaznici nas do toho prave dost tvrde tlaci a ver, ze z toho zadnou
radost nemam, ale pokud vezmu v uvahu, ze nekteri maji asi 10 oddelenych
pobocek, tak Linux na serveru je uspora asi 350000 (nebo kolik stoji licence
na Win 2000 server), tak pak je docela chapu. No a nevim, jak jim budes
vysvetlovat, ze sice sitovy OS se kterym jsou spokojeni maji, ale k vuli
nasemu
programu si muzou klidne koupit jeste jeden a vse preinstalovat. Uz vidim
nadseneho spravce site, jak nas doporucuje pro svoji firmu, kdyz bude
odbornik
na Linux a nedavno presvedcil majitele, jak prechodem na Linux usetri ...

No a mi si pak muzem trosku zvednout zase cenu sveho softu, protoze
jinak by byl neprodejny. A to je ta vyhoda multiplatformosti FB, o ktere
tady
celou dobu mluvim, protoze jestli uz ma serverovy OS winNT, tak at si ho
klidne necha a my jsme bez problemu.

Bohuzel se mi nekdy zda, ze nekteri programatori ziji jen v placenem svete
Microsoftu. Nechci tady rozvirit zase debatu, ktera uz tu byla mnohokrat,
ale tak to proste neni !!!

No a co se tyka vykonu, zakaznikovi je vetsinou uplne fuk na jakem SQL
serveru
aplikace bezi (pokud ho nema uz koupeny), jeho zajima pouze cena a s jakou
odezvou mu data naskakuji ve formularich a jak rychle dostava vystupni
sestavy
a ver mi, ze u nasi aplikace a myslim, ze i u vetsiny jinych, by tezko
poznal, jestli
bezi na FB nebo MS SQL serveru.

Musim, ale uznat, ze v budoucnu bude treba aplikaci prepsat i pro jine SQL
servery,
takze i pro ORACLE nebo MS SQL.

Risa

Databaze v D6 Personal

[*] Petr Hlo�ek <petr h(zv)mrp(tec)cz> - 18.7.2002 16:16:03

Zkus naistalovat balik freeClX komponent.

Komponenta TDBF

[*] Zbysek Hlinka <hlinka(zv)hlinka(tec)cz> - 18.7.2002 16:18:44

On 18 Jul 2002 at 14:06, Petr Palicka wrote:

> > zkousim Delphi 6 personal. Zde zkousim komponentu TDBF. Ale
>
> se obavam, ze personal verze delphi byly zamerne delany tak, aby
> v nich nesli delat databaze. vcldb v D6 personal nenajdes. pokud
> potrebujes databazi, zkus Zbyskovo OLE DB, o kterem si myslim,
> ze jsem zde cetl, ze to nejak jde do personal verze dostat.

OLE DB komponenty ale nejsou pro DBF, respektive vubec netusim, jak
to s tim bude fungovat, jestli je pro to nejaky ovladac. Odladene to
mam proti MS SQL, mozna to funguje i s Accessem. V D Personal by to
fungovat melo, protoze to neni odvozeno od TDatasetu.

S pozdravem

Zbysek Hlinka


Vykonani SP na FB

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 18.7.2002 16:30:26

From: "Richard Kejval" <kejval.delphi(zv)centrum(tec)cz>
> nadseneho spravce site, jak nas doporucuje pro svoji firmu, kdyz bude
> odbornik na Linux a nedavno presvedcil majitele, jak prechodem na Linux
> usetri ...

Tady je prave otazka, jestli opravdu tak strasne moc usetri. Uvaha, ze NT
server je za cca 30,000 Kc a Linux za 0 Kc je ponekud zjednodusena. Ale to uz
se tu opravdu probiralo stokrat. Jak se rika, "Kazdy sveho stesti strujcem .."

Petr Vones

ADO

[*] Je� Draho� - 18.7.2002 17:15:19

Ahoj,

Kdyz pouzivam ADO komponenty v D5 musim mit nainstalovane jeste MDAC nebo
neco jineho?
Resp.
Co potrebuju nainstalovat na holy PC s win95(98), kdyz mam aplikaci ktera je
napojena na databazi access pres ADO?
diky

Vykonani SP na FB

[*] Richard Kejval <kejval.delphi(zv)centrum(tec)cz> - 18.7.2002 17:30:49

> Tady je prave otazka, jestli opravdu tak strasne moc usetri. Uvaha, ze NT
> server je za cca 30,000 Kc a Linux za 0 Kc je ponekud zjednodusena. Ale to
uz
> se tu opravdu probiralo stokrat. Jak se rika, "Kazdy sveho stesti strujcem
.."

S tim mohu jen souhlasit, ale nas zakaznik nas pan ... a my jsme radi,
ze muzem prodat i tem, kteri tento nazor nesdili.

ADO

[*] Robert Suska <delphi(zv)korak.sk> - 18.7.2002 17:55:31

Ahoj !

> Kdyz pouzivam ADO komponenty v D5 musim mit nainstalovane jeste MDAC nebo
> neco jineho?
> Resp.
> Co potrebuju nainstalovat na holy PC s win95(98), kdyz mam aplikaci ktera
je
> napojena na databazi access pres ADO?

podla mna je treba MDAC 2.7 su tam najnovsie drivery

S pozdravom,

************************************
Robert Suska
KORAK SLOVAKIA s.r.o.
Horna 52
974 01 Banska Bystrica
www.korak.sk robert(zv)korak.sk
Network administrator, Delphi programmer
************************************

Probl�m s DBF

[*] bleak <bleak(zv)atlas(tec)cz> - 18.7.2002 19:09:02

ja mam DBF kde je cca 70000 zaznamu, chodi to bez problemu. Expression Index
za behu vytvoris napr. takto:
AddExpFilter(Table1,'IDX01', 'STR(F01,6,0)+STR(F02,4,0)', 'ID=''1''');
k tomu padani - pokud to spadne vzdy na stejnem zaznamu, tak ho smaz.
bleak
----- Original Message -----
From: Filip Rozs�val
jak vytvo��m za b�hu expression index?
Nesetkal se tu n�kdo s n���m podobn�m a je v�bec mo�n� pod BDE pracovat s
tak objemn�ma datama nebo tam je n�jak� limit?

OFF: Yaffil vs Interbase (performance TPC-R)

[*] Alex Cherednichenko <cherednichenko(zv)wo(tec)cz> - 18.7.2002 19:43:47

Zdravim!

Podle cerstveho testovani na TPC-R server Yaffil ma asi 2x vetshi vykon.
Testovani se provadelo na database velikosti 1.5 Gb
Detajly (v rustine) http://www.interbase-world.com/yaffil/yaffilyes.php

With best regards, Alex Cherednichenko.

HTML parser pro Delphi

[*] Brothanek Jiri <jiri.brothanek(zv)seznam(tec)cz> - 18.7.2002 22:09:29

Ahoj vsem,

nevi nekdo, kde ziskat HTML parser pro Delphi ? Mate s tim nekdo nejakou
zkusenost ?
Pouzivam XML parser, ale HTML jsem zatim nikde nevidel.

Diky Jirka.

Udalost pro komponentu vytvorenou za behu

[*] Brothanek Jiri <jiri.brothanek(zv)seznam(tec)cz> - 18.7.2002 22:10:51

Ahoj vsem,

vytvarim za behu komponentu. Dovedu pro ni nastavovat vlastnosti, ale ne
udalost. Konkretne - vytvarim za behu objekt Panelx typu TPanel a potrebuji
pro nej specifikovat reakci na udalost OnMouseDown.

Za kazdou radu dekuji, zkusil jsem vsechno mozne, ale jednoduse mi to nejde.

Jirka.

Vypis :
.
.
.

private
{ Private declarations }
Panelx: TPanel;
.
.
.
procedure TForm1.FormCreate(Sender: TObject);
begin
Panelx := TPanel.Create(Self);
Panelx.Parent := Self;
Panelx.Name := 'Jmeno';
Panelx.Left := 10;
Panelx.Top := 10;
Panelx.Height := 20;
Panelx.Width := 70;
// potrebji registrovat pro nove vytvoreny Panelx tutu udalost
OnMouseDown,
// inspektor je samozrejme nedostupny, protoze v dobe navrhu Panelx
neexistuje
end;

Database MySQL na host.sk a pristup na ni

[*] Milan Cizek <cizek.milan(zv)seznam(tec)cz> - 18.7.2002 22:48:26

ahoj,
drive to opravdu bylo mozne. Vzhledem k tomu, ze na host.sk vznikaly
databaze, ktere byly vyuzivany z jinych webu, rozhodl se provozovatel vnejsi
pristup zrusit. Nepocita se s opetovnym spustenim, takze mame asi smulu.
:-( Ja to delam tak, ze jsem sve programy uparvil pro vystup do sql souboru,
ktery pak nacitam pres phpadmina. Neco k tomu je na host.sk diskusnim foru.

S pozdravem Milan Cizek, amatersky programator, D6 Ent (SP2)
Win2k (SP2) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ: 59826637

-----Original Message-----
Omlouvam se za dotaz...ale nahodou mate nekdo vytvorenou MySQL databazi na
host.sk?
Proc se k ni nemuzu pripojit napr. pres Zeos Mysql komponenty....?
Drive to fungovalo...
Nejaky zmeny na host.sk?

HTML parser pro Delphi

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 18.7.2002 23:31:38

Na www.torry.net je HTML parseru spousta. Jde o to co od toho
ocekavas.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

18.7.2002 Brothanek Jiri:
> Ahoj vsem,

> nevi nekdo, kde ziskat HTML parser pro Delphi ? Mate s tim nekdo nejakou
> zkusenost ?
> Pouzivam XML parser, ale HTML jsem zatim nikde nevidel.

> Diky Jirka.

Udalost pro komponentu vytvorenou za behu

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 18.7.2002 23:34:02

Musis mit proceduru, ktera vykona akci pro MouseDown, deklarovanou v
tele tridy se spravnymi parametry. Vloz si panel, napis si reakci na
udalost a panel smaz.
V Runtime pak provedes
Panel.OnMouseDown := MyMouseDown;

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

18.7.2002 Brothanek Jiri:
> Ahoj vsem,

> vytvarim za behu komponentu. Dovedu pro ni nastavovat vlastnosti, ale ne
> udalost. Konkretne - vytvarim za behu objekt Panelx typu TPanel a potrebuji
> pro nej specifikovat reakci na udalost OnMouseDown.

> Za kazdou radu dekuji, zkusil jsem vsechno mozne, ale jednoduse mi to nejde.

> Jirka.

> Vypis :
> .
> .
> .

> private
> { Private declarations }
> Panelx: TPanel;
> .
> .
> .
> procedure TForm1.FormCreate(Sender: TObject);
> begin
> Panelx := TPanel.Create(Self);
> Panelx.Parent := Self;
> Panelx.Name := 'Jmeno';
> Panelx.Left := 10;
> Panelx.Top := 10;
> Panelx.Height := 20;
> Panelx.Width := 70;
> // potrebji registrovat pro nove vytvoreny Panelx tutu udalost
> OnMouseDown,
> // inspektor je samozrejme nedostupny, protoze v dobe navrhu Panelx
> neexistuje
> end;

Udalost pro komponentu vytvorenou za behu

[*] tomsir1.edu(zv)mail.cez(tec)cz - 19.7.2002 01:12:28


jednoduse pridej jeste radek :

PanelX.OnMouseDown := MojeProceduraProObsluhuStiskuMysi;

kde : MojeProceduraProObsluhuStiskuMysi(Sender: TObject; Button:
TMouseButton; Shift: TShiftState; X, Y: Integer);


Radegast
"Brothanek Jiri" <jiri.brothanek(zv)seznam(tec)cz>(zv)clexpert(tec)cz on 18.07.2002
22:10:51

Odpov�zte pros�m - delphi-l(zv)clexpert(tec)cz

Odesl�no k�m: delphi-l-owner(zv)clexpert(tec)cz


Komu: "Delphi-l" <delphi-l(zv)clexpert(tec)cz>
Kopie:
P�edm�t: Udalost pro komponentu vytvorenou za behu


Ahoj vsem,

vytvarim za behu komponentu. Dovedu pro ni nastavovat vlastnosti, ale ne
udalost. Konkretne - vytvarim za behu objekt Panelx typu TPanel a potrebuji
pro nej specifikovat reakci na udalost OnMouseDown.

Za kazdou radu dekuji, zkusil jsem vsechno mozne, ale jednoduse mi to
nejde.

Jirka.

Vypis :
.
.
.

private
{ Private declarations }
Panelx: TPanel;
.
.
.
procedure TForm1.FormCreate(Sender: TObject);
begin
Panelx := TPanel.Create(Self);
Panelx.Parent := Self;
Panelx.Name := 'Jmeno';
Panelx.Left := 10;
Panelx.Top := 10;
Panelx.Height := 20;
Panelx.Width := 70;
// potrebji registrovat pro nove vytvoreny Panelx tutu udalost
OnMouseDown,
// inspektor je samozrejme nedostupny, protoze v dobe navrhu Panelx
neexistuje
end;

Yaffil vs Interbase (performance TPC-R)

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 19.7.2002 06:55:26

> Podle cerstveho testovani na TPC-R server Yaffil ma asi 2x
> vetshi vykon. Testovani se provadelo na database velikosti 1.5 Gb
> Detajly (v rustine)
http://www.interbase-world.com/yaffil/yaffilyes.php

preci jenom, uz jsem rustinu docela pozapomnel, takze jeji louskani
mi cini problemy. chtel jsem se tedy zeptat, jestli tu nekdo nevi o
yaffilu
trochu vic a mohl by postnout par informaci.

predevsim, jak se na yaffila pripojit. jake komponenty. jak moc je
kompatibilni s IB/FB co se tyce SQL DDL/DML jazyku.

jde mi o to, jak je mozne aplikaci psanou pro FB prevest na yaffil.
pripadne jak by bylo narocne udrzovat moznost pripojeni jak k FB
tak k Yaffilu?

peca

CreateThread a predavani argumentu funkci

[*] Sula Milos <milos.sula(zv)oku-su(tec)cz> - 19.7.2002 07:27:46

Aha dik, ale jsem z toho trosku vedle.
1. Memory manager bude v multithread rezimu ? V cecku se takhle nic prepinat nemusi, aspon jsem to nevidel zatim nikde (nebo se mylim ?), to je pouze delphi feature ?

nasel jsem nasledujici:

IsMultiThread is set to True by BeginThread and by COM class factories that support multi-threaded models in order to allow the memory manager to execute safely if a VCL application has more than one thread. If a second thread attempts to allocate memory, it is blocked until the first thread exits the memory manager.

Aha takze pokud si thread alokuje pamet pres memory manager, tak ostatni thready cekaji(pokud ve stejnou dobu pozadaji o alokaci take) az memory manager vykona alokaci a teprve pak pokracuji v alokaci svych vlastnich prostredku ?

2. ThreadWrapper je v implementation system.pas. Jaky to je rozdil kdyz tam je a nebo neni ?

dik
Milos

Jak pouzit TIB_StoredProc

[*] Milan Tome� <milan.tomes(zv)haida(tec)cz> - 19.7.2002 08:09:29

Pouzij TIB_SQL a spusteni procedury udelej asi takto:

select * from NewPerson(parametry)

S pozdravem

Milan Tomes
mailto:milan.tomes(zv)haida(tec)cz

> Vim jak naplnit parametry a proceduru spustit, ale nedokazu
> ziskat jeji navratovou hodnotu.
> Martinec
>

Vykonani SP na FB

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 19.7.2002 08:20:29

Haj hou!

> Dalo by se priblizit, co znamenaji "velmi velke databaze"? Jsou k
> dispozici vysledky nejakych testu nebo doporuceni na konfiguraci v
> zavislosti na velikost databaze? Je alespon najky hruby odhad, od
> jakeho objemu dat lze ocekavat problemy ci pokles vykonu.


Nad 2GB bylo (a obcas jeste je, viz omezeni OS a file systemu) nutne rozdelit
databazi na vice souboru, coz je docela opruz pri zalohovani / obnove. Hlidat
pridavani dalsich souboru dle potreby atd. Pri nekolika desitkach GB a vice uz
neni lehke s takovou databazi manipulovat pri zaloze, zmene struktury apod.
Rovnez je zapotrebi velmi velky prostor pro docasne soubory.

Jinak samozrejme neni problem mit databazi o velikosti nekolika stovek GB, jen
se s tim blbe dela.

Pokles vykonu v navaznosti na mnozstvi dat je slozita vec, protoze vzdy zalezi
na strukture dat (delka radku, pocet radek, typ polozek) a jejich pouziti (hodne
zmen / malo zmen, spise se pridava a cte nez meni apod.). Je treba to
posuzovat vzdy individualne, ale je jasne, ze vice dat v tabulce znamena
pomalejsi manipulaci s nimi.

> Je napr. vhodne uvazovat o pouziti FB k archivaci dokumentu v celkovem
> objemu dat do sta GB?

Ano, to neni problem.

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

Yaffil vs Interbase (performance TPC-R)

[*] Roman Konecny <rkonecny(zv)datis(tec)cz> - 19.7.2002 08:25:03

Zdravim,

Yaffil je zrejme skutecne genialni produkt a hlavne obsahlost projektu a
obsahlost webu o IB/FB/Yaffil me tesi. Skoda ze se nejde prepnout na
English. Nevite o necem podobnem v Cesku?

Roman
----- Original Message -----
From: "Alex Cherednichenko" <cherednichenko(zv)wo(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, July 18, 2002 7:43 PM
Subject: OFF: Yaffil vs Interbase (performance TPC-R)> Zdravim!
>
> Podle cerstveho testovani na TPC-R server Yaffil ma asi 2x vetshi vykon.
> Testovani se provadelo na database velikosti 1.5 Gb
> Detajly (v rustine) http://www.interbase-world.com/yaffil/yaffilyes.php
>
> With best regards, Alex Cherednichenko.
>

CreateThread a predavani argumentu funkci

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 19.7.2002 08:52:03

>1. Memory manager bude v multithread rezimu ? V cecku se takhle
>nic prepinat nemusi, aspon jsem to nevidel zatim nikde (nebo se
>mylim ?), to je pouze delphi feature ?

memory manager neni implictne thread safe (je to rychlejsi)

>2. ThreadWrapper je v implementation system.pas. Jaky to je rozdil
>kdyz tam je a nebo neni ?

tato knihovna ma ponekud specificke postaveni (je v ni startup/exit kod atd)
a zmeny v ni se musi provadet s rozvahou. Navic ne vsechny verze Delphi
obsahuji jeji zdrojovy kod.


D. Toman

ADO

[*] Lstiburek Pavel <Lstiburek(zv)ceb(tec)cz> - 19.7.2002 09:00:04

> From: Robert Suska [mailto:delphi(zv)korak.sk]
> > Kdyz pouzivam ADO komponenty v D5 musim mit nainstalovane
> jeste MDAC nebo
> > neco jineho?
> > Resp.
> > Co potrebuju nainstalovat na holy PC s win95(98), kdyz mam
> aplikaci ktera
> je
> > napojena na databazi access pres ADO?
>
> podla mna je treba MDAC 2.7 su tam najnovsie drivery
>
Bohate staci MDAC 2.6 (2.7 obsahuje zejmena rozsireni pro .Net), podle db
by mohla stacit i 2.5, ale napr. MSSQL ma problemy s default hodnotou
parametru ulozenych procedur.
Pavel

Svisly text na Canvas

[*] <conehead(zv)email(tec)cz> - 19.7.2002 09:04:38

Budte pozdraveni,

mozna uz mi nekdo odpovidal, ale byl jsem jednim z tech, komu nechodily prispevky, takze se ptam znovu: Poradite mi, jak nakreslit svisly text (tzn. otoceny o 90 nebo 270 stupnu) na Canvas?

Diky,
Tomas Danek

______________________________________________________________________________
Obchodn� d�m(tec)cz � �irok� sortiment dom�c�ch spot�ebi�� a elektroniky, v�razn� slevy, sout�e a doprava zdarma po cel� �R. Nav�tivte http://www.obchodni-dum(tec)cz/index.phtml?prov=52

Svisly text na Canvas

[*] Obermaier Petr Ing. <Obermaier(zv)mail.sdas(tec)cz> - 19.7.2002 09:09:04

> Od: conehead(zv)email(tec)cz [SMTP:conehead(zv)email(tec)cz]
> mozna uz mi nekdo odpovidal, ale byl jsem jednim z tech, komu nechodily
> prispevky, takze se ptam znovu: Poradite mi, jak nakreslit svisly text
> (tzn. otoceny o 90 nebo 270 stupnu) na Canvas?
>
Ano, opravdu odpovedelo dost lidi, PROC tedy nepouzijes funkci vyhledavani:
http://www.delphi(tec)cz/hledani.asp


Ober

HTML parser pro Delphi

[*] Brothanek Jiri <jiri.brothanek(zv)seznam(tec)cz> - 19.7.2002 09:11:23

> Jde o to co od toho
> ocekavas.
> ing. Jan Fiala

Potrebuji pravidelne nacitat obsah stranky a hodnoty ukladat do sve tabulky.
Stranka ma stale stejnou strukturu, ale meni se hodnoty.
Jirka

----- Original Message -----
From: "ing. Jan Fiala" <jan.fiala(zv)iol(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, July 18, 2002 11:31 PM
Subject: Re: HTML parser pro Delphi


> Na www.torry.net je HTML parseru spousta. Jde o to co od toho
> ocekavas.
>
> --
> ing. Jan Fiala
> mailto:jan.fiala(zv)iol(tec)cz
>
> 18.7.2002 Brothanek Jiri:
> > Ahoj vsem,
>
> > nevi nekdo, kde ziskat HTML parser pro Delphi ? Mate s tim nekdo nejakou
> > zkusenost ?
> > Pouzivam XML parser, ale HTML jsem zatim nikde nevidel.
>
> > Diky Jirka.
>
>

Pouziti framu

[*] Da�a Petr <Petr.Dana(zv)pvt(tec)cz> - 19.7.2002 09:18:47

Zdravim,
kdysi jsem psal nejakou aplikaci, ktera mela na hlavnim formu tri casti rozdelene splitterama (treeview, pak kupu image, textove pole). Protoze to je ale vsechno na jednom formulari a k tem jednotlivym castem je spousta kodu, ve kterem se uz nevyznam, rozhodl jsem se to prepsat :)
Tak me napadlo, ze bych mohl jednotlive casti udelat jako TFrame, ktere pak priplacnu na hlavni form mezi splittery. Kod by byl hezky rozdelenej. Chci se ale zeptat, jestli se takovymto pouzitim framu (kdy vlastne kazdy bude pouzitej jednou), zbytecne nezvetsi naroky na prostredky atd.?

Petr

Fce na prevod diakritiky na bez diaktritiky

[*] Petr Brant <brant(zv)dcomm(tec)cz> - 19.7.2002 09:24:08

Pouzivam program "Zobacek", ktery ma jeste mnoho dalsich funkci, byl na
http://members.nbci.com/rvasicek Doufam, ze jsem to pochopil spravne a ze
nehledas funkci, ktera v retezci zlikviduje diakritiku.

RNDr. Petr Brant [brant(zv)dcomm(tec)cz]
http://web.redbox(tec)cz/petr.brant
ICQ #68652380

D&COMM s.r.o.
Korunova�n� 6
170 00 Praha 7


> Subject: Fce na prevod diakritiky na bez diaktritiky
>
> Nemate nekdo %subj% potrebuji se zbavit diakritiky pro zadani Name v
polozce
> MenuItem.

Ado a pozicia chyby

[*] Peter <peter(zv)baris.sk> - 19.7.2002 09:31:25

Robim jednoduchu aplikaciu v ktorej uzivatel zada sql prikaz a on sa mu
vykona.
Vedel by mi niekto poradit ci sa da cez ADO po vykonani SQL prikazu zistit
na ktorom mieste sa uzivatel pomylil?


Peter

HTML parser pro Delphi

[*] Ales Radikovsky <radik(zv)allstar(tec)cz> - 19.7.2002 10:59:13

Bez ohledu na konkretni typ textoveho souboru na tohle se podle me hodi
nejlepe regularni vyrazy.... vyseparujes co potrebujes a jeste si muzes
treba zkontrolovat format tech dat..... Od te doby co jsem objevil
jejich kouzlo na ne nedam dopustit. Je to sice obcas dost kryptografie
se v nich vyznat, ale je to mocny nastroj. Navic pokud si je ulozis do
nejakeho ini souboru, nemusis vetsinou ani menit exe pri zmene struktury
dat.

Ales

> -----Original Message-----
> From: Brothanek Jiri [mailto:jiri.brothanek(zv)seznam(tec)cz]
> Sent: Friday, July 19, 2002 9:11 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: HTML parser pro Delphi
>
>
> > Jde o to co od toho
> > ocekavas.
> > ing. Jan Fiala
>
> Potrebuji pravidelne nacitat obsah stranky a hodnoty ukladat
> do sve tabulky.
> Stranka ma stale stejnou strukturu, ale meni se hodnoty.
> Jirka
>
> ----- Original Message -----
> From: "ing. Jan Fiala" <jan.fiala(zv)iol(tec)cz>
> To: <delphi-l(zv)clexpert(tec)cz>
> Sent: Thursday, July 18, 2002 11:31 PM
> Subject: Re: HTML parser pro Delphi
>
>
> > Na www.torry.net je HTML parseru spousta. Jde o to co od toho
> > ocekavas.
> >
> > --
> > ing. Jan Fiala
> > mailto:jan.fiala(zv)iol(tec)cz
> >
> > 18.7.2002 Brothanek Jiri:
> > > Ahoj vsem,
> >
> > > nevi nekdo, kde ziskat HTML parser pro Delphi ? Mate s
> tim nekdo nejakou
> > > zkusenost ?
> > > Pouzivam XML parser, ale HTML jsem zatim nikde nevidel.
> >
> > > Diky Jirka.
> >
> >
>
>

Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 11:54:34

http://dusek.webz(tec)cz/tips/stripdia.php

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Tuesday, July 2, 2002, 10:13:06 PM, you wrote:

AP> Nemate nekdo %subj% potrebuji se zbavit diakritiky pro zadani Name v polozce
AP> MenuItem.

AP> Ales Pavel
AP> D6 Ent WXP
AP> laik v profesionalnim kolotoci

Fce na prevod diakritiky na bez diaktritiky

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.7.2002 12:14:31

VG8gamUgem5h6G7sIG5lZWZla3Rpdm7tIGFsZ29yaXRtdXMuDQoNCi0tIA0KaW5nLiBKYW4gRmlh
bGENCm1haWx0bzpqYW4uZmlhbGFAaW9sLmN6DQoNCjE5LjcuMjAwMiBKYWt1YiBEdXNlazoNCj4g
aHR0cDovL2R1c2VrLndlYnouY3ovdGlwcy9zdHJpcGRpYS5waHANCg0KPiBKYWt1YiBEdXNlaw0K
DQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gSG9tZXBh
Z2UgIDogaHR0cDovL2R1c2VrLnpkZS5jeg0KPiBQaG9uZSAgICAgOiArNDIwNjA0NjE1Nzk1DQo+
IFNtcyBlbWFpbCA6IGpha3ViLmR1c2VrQGNsaWNrLmN6DQo+IEljcSAgICAgICA6IDg2MDYzMjMy
DQo+IEFwcHMgICAgICA6IEFkZC9SZW1vdmUgTWFuYWdlciwgQ2hhcm1hcGVyLCANCj4gICAgICAg
ICAgICAgU21zIEdhdGVLZWVwZXINCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQ0KDQo+IFR1ZXNkYXksIEp1bHkgMiwgMjAwMiwgMTA6MTM6MDYgUE0sIHlvdSB3
cm90ZToNCg0KQVA+PiBOZW1hdGUgbmVrZG8gJXN1YmolIHBvdHJlYnVqaSBzZSB6YmF2aXQgZGlh
a3JpdGlreSBwcm8gemFkYW5pIE5hbWUgdiBwb2xvemNlDQpBUD4+IE1lbnVJdGVtLg0KDQpBUD4+
IEFsZXMgUGF2ZWwNCkFQPj4gRDYgRW50IFdYUA0KQVA+PiBsYWlrIHYgcHJvZmVzaW9uYWxuaW0g
a29sb3RvY2kNCiA=

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 12:20:15

V cem konkretne?

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Friday, July 19, 2002, 12:14:31 PM, you wrote:

iJF> To je zna�n� neefektivn� algoritmus.

Yaffil vs Interbase (performance TPC-R)

[*] Sula Milos <milos.sula(zv)oku-su(tec)cz> - 19.7.2002 12:28:44

Mozna genialni ale jen pro windows :((

Milos

-----Original Message-----
From: Roman Konecny [mailto:rkonecny(zv)datis(tec)cz]
Sent: Friday, July 19, 2002 8:25 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: Yaffil vs Interbase (performance TPC-R)


Zdravim,

Yaffil je zrejme skutecne genialni produkt a hlavne obsahlost projektu a
obsahlost webu o IB/FB/Yaffil me tesi. Skoda ze se nejde prepnout na
English. Nevite o necem podobnem v Cesku?

Roman

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Jan Krizek <krizek(zv)vitasw(tec)cz> - 19.7.2002 12:42:13

Ve volani Pos, zaprve ho volas vicekrat, misto abys sis pamatoval jednou
ziskanou hodnotu. A jeste volas neustale dokola AnsiUpperCase (porad se
stejnym vstupem).

A za druhe na prekodovani textu takove narocne funkce vubec
nepotrebujes. Staci jedna prevodni tabulka:

cnvTabs : array [char] of char

kterou naplnis, tak ze na #A-te pozici bude znak, kterym ma byt znak A
nahrazen a pak staci jeden cyklus

for i := 1 to Length( S ) do
S[i] := cnvTabs[S[i]];

a je to.

Honza +

> -----Original Message-----
> From: Jakub Dusek [mailto:jdev(zv)seznam(tec)cz]
> Sent: Friday, July 19, 2002 12:20 PM
> To: ing. Jan Fiala
> Subject: Re[2]: Fce na prevod diakritiky na bez diaktritiky
>
>
> V cem konkretne?
>
> Jakub Dusek
>
> -------------------------------------------
> Homepage : http://dusek.zde(tec)cz
> Phone : +420604615795
> Sms email : jakub.dusek(zv)click(tec)cz
> Icq : 86063232
> Apps : Add/Remove Manager, Charmaper,
> Sms GateKeeper
> -------------------------------------------
>
> Friday, July 19, 2002, 12:14:31 PM, you wrote:
>
> iJF> To je zna�n� neefektivn� algoritmus.
>
>

Re[4]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 12:46:28

Friday, July 19, 2002, 12:42:13 PM, you wrote:

JK> Ve volani Pos, zaprve ho volas vicekrat, misto abys sis pamatoval jednou
JK> ziskanou hodnotu. A jeste volas neustale dokola AnsiUpperCase (porad se
JK> stejnym vstupem).

Souhlas, ta funkce na webu je stara.

JK> A za druhe na prekodovani textu takove narocne funkce vubec
JK> nepotrebujes. Staci jedna prevodni tabulka:

JK> cnvTabs : array [char] of char

JK> kterou naplnis, tak ze na #A-te pozici bude znak, kterym ma byt znak A
JK> nahrazen a pak staci jeden cyklus

JK> for i := 1 to Length( S ) do
JK> S[i] := cnvTabs[S[i]];

1) to v te tabulce budes mit i znaky co se nemeni?
2) musis tam mit velkou i malou variantu pismene.

JK> a je to.

JK> Honza +

>> -----Original Message-----
>> From: Jakub Dusek [mailto:jdev(zv)seznam(tec)cz]
>> Sent: Friday, July 19, 2002 12:20 PM
>> To: ing. Jan Fiala
>> Subject: Re[2]: Fce na prevod diakritiky na bez diaktritiky
>>
>>
>> V cem konkretne?
>>
>> Jakub Dusek
>>
>> -------------------------------------------
>> Homepage : http://dusek.zde(tec)cz
>> Phone : +420604615795
>> Sms email : jakub.dusek(zv)click(tec)cz
>> Icq : 86063232
>> Apps : Add/Remove Manager, Charmaper,
>> Sms GateKeeper
>> -------------------------------------------
>>
>> Friday, July 19, 2002, 12:14:31 PM, you wrote:
>>
>> iJF> To je zna�n� neefektivn� algoritmus.
>>
>>

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Fce na prevod diakritiky na bez diaktritiky

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.7.2002 12:48:27

UHJvYyBqc291IHRhbSBqZW4gbWFsYSBwaXNtZW5hIGEgdiBjeWtsdSBzZSB0byBwcmV2YWRpID8N
Ck5hIG1hbGEsIHBhayBuYSB2ZWxrYSwgcGFrIHphc2UgbmEgbWFsYS4NClBva3VkIGJ5IHRhbSBi
eWxhIGkgdmVsa2EgcGlzbWVuYSwgcHJldm9keSBieSBvZHBhZGx5Lg0KVXBsbmUgaWRlbGFuaSBw
cmlwYWQgYnkgYnlsLCBrZHkgYnkgdGFtIGJ5bGEgY2VsYSByYWRhIHBpc21lbiBvZCAxMjgNCnZ5
cy4gUGFrIGJ5IHNlIHRvIG5lbXVzZWxvIGhsZWRhdCBmdW5rY2kgUG9zKCksIGFsZSBzbG8gYnkg
c2UgcHJpbW8gbmENCmtvbmtyZXRuaSBwaXNtZW5vOg0KDQpmdW5jdGlvbiBTdHJpcERpYWNyaXRp
YyAoczogc3RyaW5nKTogc3RyaW5nOw0KY29uc3QNCiAgTmV3Q2hhcnMgPSAndGFkeSBidWRvdSB2
c2VoY255IHpuYWt5IG9kICMxMjggZG8gIzI1NSc7DQpiZWdpbg0KICBSZXN1bHQgOj0gczsNCiAg
Zm9yIGkgOj0gMSB0byBMZW5ndGggKHMpIGRvDQogICAgaWYgT3JkKHNbaV0pID4gMTI3IHRoZW4N
CiAgICAgIFJlc3VsdFtpXSA6PSBOZXdDaGFyc1tPcmQoc1tpXSkgLSAxMjddOw0KZW5kOw0KDQot
LSANCmluZy4gSmFuIEZpYWxhDQptYWlsdG86amFuLmZpYWxhQGlvbC5jeg0KDQoxOS43LjIwMDIg
SmFrdWIgRHVzZWs6DQo+IFYgY2VtIGtvbmtyZXRuZT8NCg0KPiBKYWt1YiBEdXNlaw0KDQo+IC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gSG9tZXBhZ2UgIDog
aHR0cDovL2R1c2VrLnpkZS5jeg0KPiBQaG9uZSAgICAgOiArNDIwNjA0NjE1Nzk1DQo+IFNtcyBl
bWFpbCA6IGpha3ViLmR1c2VrQGNsaWNrLmN6DQo+IEljcSAgICAgICA6IDg2MDYzMjMyDQo+IEFw
cHMgICAgICA6IEFkZC9SZW1vdmUgTWFuYWdlciwgQ2hhcm1hcGVyLCANCj4gICAgICAgICAgICAg
U21zIEdhdGVLZWVwZXINCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQ0KDQo+IEZyaWRheSwgSnVseSAxOSwgMjAwMiwgMTI6MTQ6MzEgUE0sIHlvdSB3cm90ZToN
Cg0KaUpGPj4gVG8gamUgem5h6G7sIG5lZWZla3Rpdm7tIGFsZ29yaXRtdXMuDQog

Fce na prevod diakritiky na bez diaktritiky

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.7.2002 12:51:16

19.7.2002 Jakub Dusek:
> Friday, July 19, 2002, 12:42:13 PM, you wrote:

JK>> Ve volani Pos, zaprve ho volas vicekrat, misto abys sis pamatoval jednou
JK>> ziskanou hodnotu. A jeste volas neustale dokola AnsiUpperCase (porad se
JK>> stejnym vstupem).

> Souhlas, ta funkce na webu je stara.

JK>> A za druhe na prekodovani textu takove narocne funkce vubec
JK>> nepotrebujes. Staci jedna prevodni tabulka:

JK>> cnvTabs : array [char] of char

JK>> kterou naplnis, tak ze na #A-te pozici bude znak, kterym ma byt znak A
JK>> nahrazen a pak staci jeden cyklus

JK>> for i := 1 to Length( S ) do
JK>> S[i] := cnvTabs[S[i]];

> 1) to v te tabulce budes mit i znaky co se nemeni?
> 2) musis tam mit velkou i malou variantu pismene.

A neni lepsi jedna tabulka, ktera ma max. 256 bytu nez ty silene
oprace, co s tim delas ty ?

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Re[4]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 12:55:14

Tahle uz je primo aktualni z moji knihovny:

function ReplaceTable (s: string; t1, t2: string): string;
var i : Integer;
p : Integer;
t : string;
c : Char;
begin
Result := '';
t := AnsiUpperCase (t1);
for i := 1 to Length (s) do
begin
c := s [i];
p := Pos (c, t1);
if p > 0 then
begin
Result := Result + t2 [p];
end
else
begin
p := Pos (c, t);
if p > 0 then
begin
Result := Result + UpperCase (t2 [p]);
end
else
Result := Result + c;
end;
end;
end;

const
DiaChars = '�����������������������������������';
NewChars = 'sstzzraaaalccceeeeiiddnnooooruuuuyt';

function StripDiacritic (s: string): string;
begin
Result := ReplaceTable (s, DiaChars, NewChars);
end;

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Friday, July 19, 2002, 12:42:13 PM, you wrote:

JK> Ve volani Pos, zaprve ho volas vicekrat, misto abys sis pamatoval jednou
JK> ziskanou hodnotu. A jeste volas neustale dokola AnsiUpperCase (porad se
JK> stejnym vstupem).

JK> A za druhe na prekodovani textu takove narocne funkce vubec
JK> nepotrebujes. Staci jedna prevodni tabulka:

JK> cnvTabs : array [char] of char

JK> kterou naplnis, tak ze na #A-te pozici bude znak, kterym ma byt znak A
JK> nahrazen a pak staci jeden cyklus

JK> for i := 1 to Length( S ) do
JK> S[i] := cnvTabs[S[i]];

JK> a je to.

JK> Honza +

>> -----Original Message-----
>> From: Jakub Dusek [mailto:jdev(zv)seznam(tec)cz]
>> Sent: Friday, July 19, 2002 12:20 PM
>> To: ing. Jan Fiala
>> Subject: Re[2]: Fce na prevod diakritiky na bez diaktritiky
>>
>>
>> V cem konkretne?
>>
>> Jakub Dusek
>>
>> -------------------------------------------
>> Homepage : http://dusek.zde(tec)cz
>> Phone : +420604615795
>> Sms email : jakub.dusek(zv)click(tec)cz
>> Icq : 86063232
>> Apps : Add/Remove Manager, Charmaper,
>> Sms GateKeeper
>> -------------------------------------------
>>
>> Friday, July 19, 2002, 12:14:31 PM, you wrote:
>>
>> iJF> To je zna�n� neefektivn� algoritmus.
>>
>>

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 12:57:24

Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Friday, July 19, 2002, 12:48:27 PM, you wrote:

iJF> Proc jsou tam jen mala pismena a v cyklu se to prevadi ?
iJF> Na mala, pak na velka, pak zase na mala.
iJF> Pokud by tam byla i velka pismena, prevody by odpadly.
iJF> Uplne idelani pripad by byl, kdy by tam byla cela rada pismen od 128
iJF> vys. Pak by se to nemuselo hledat funkci Pos(), ale slo by se primo na
iJF> konkretni pismeno:

iJF> function StripDiacritic (s: string): string;
iJF> const
iJF> NewChars = 'tady budou vsehcny znaky od #128 do #255';
iJF> begin
iJF> Result := s;
iJF> for i := 1 to Length (s) do
iJF> if Ord(s[i]) > 127 then
iJF> Result[i] := NewChars[Ord(s[i]) - 127];
iJF> end;

Temporely Files

[*] <M.Babik(zv)mus(tec)cz> - 19.7.2002 12:59:22

Zdravim vespolek!
Aplikace mi pri spousteni vytvari v adresari, kde je APLIKACE.EXE, docasne soubory Del1.MB pri otevirani datasetu. Nevite jak tyto soubory umistovat do jineho adresare (temp)? Diky


M&B

Fce na prevod diakritiky na bez diaktritiky

[*] Peter Vlkovic <vlkovic(zv)minv.sk> - 19.7.2002 13:39:28

Jakub Dusek wrote:
>
> Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
> AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?
>
> Jakub Dusek

Kvoli rychlosti.
Rezia spojena s volanim AnsiUpperCase
algoritmus zbytocne spomaluje.
Vyskusaj si aplikovat tvoju funkciu
na rozsiahly subor a uvidis.

Vlkovic

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 19.7.2002 13:42:05

> Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
> AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?

je dobre psat tyto typy funkci tak, aby byly pokud mozno co
nejrychlejsi. Tvuj pristup
je odhadem o rad az 2 pomalejsi nez optimalne napsana konverze.
Je rozhodne lepsi pouzit delsi tabulku - vysledny kod bude mnohem
rychlejsi a srozumitelnejsi

Operace se stringy patri obecne k tem pomalejsim (zpracovavaji vzdy
vetsi mnozstvi dat nebo
realokuji pamet).>function ReplaceTable (s: string; t1, t2: string): string;
>var i : Integer;
> p : Integer;
> t : string;
> c : Char;
>begin
> Result := '';
> t := AnsiUpperCase (t1);
zbytecna konverze - spotrebuje spoustu casu navic

> for i := 1 to Length (s) do
> begin
> c := s [i];
> p := Pos (c, t1);
prohledavani retezcu vzdy stoji take nejaky ten cas

> if p > 0 then
> begin
> Result := Result + t2 [p];
scitani retezcu - silene pomala operace (realokace a presuny pameti
jsou pomale)

> end
> else
> begin
> p := Pos (c, t);
zase hledani

> if p > 0 then
> begin
> Result := Result + UpperCase (t2 [p]);

zase scitani retezcu a uppercase

..
...

D. Toman

SimpleMAPI - hromadna korespondence

[*] PeJaSoft <pejasoft(zv)volny(tec)cz> - 19.7.2002 13:46:06

Zdravim,

mam aplikaci, ktera mj. rozesila mail na nekolik adres. Problem je v tom, ze
kdyz si zvolim cestu pres SimpleMAPI a mam Outlook Express, tak se mi do BCC
nebo i do KOMU do stane "pomrseny" seznam adres. Presneji urcita adresa se
rozkopiruje nahodne-krat a prepise jine adresy.

Stava se to pouze v kombinaci SimpleMAPI - OE na libovolne verzi Windows s
libovolnou verzi OE.
Problem je ten, ze pokud aplikaci spustim z Delphi, vse se provede v poradku
a vysledny seznam adres je OK. :-/

Napada vas, cim by to mohlo byt?

Ukazka:
Zadany seznam: a(zv)a(tec)cz, b(zv)b(tec)cz, c(zv)c(tec)cz, d(zv)d(tec)cz
Do OE se dostane: d(zv)d(tec)cz, d(zv)d(tec)cz, d(zv)d(tec)cz, d(zv)d(tec)cz
nekdy se stane napr.: a(zv)a(tec)cz, d(zv)d(tec)cz, c(zv)c(tec)cz, d(zv)d(tec)cz ...apod.


Predem dekuji.

S pozdravem

Petr Jarkovsky
pjarkovsky(zv)databox(tec)cz

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 13:47:31

Silene operace? Myslis AnsiUpperCase?

Jakub Dusek

Friday, July 19, 2002, 12:51:16 PM, you wrote:

iJF> 19.7.2002 Jakub Dusek:
>> Friday, July 19, 2002, 12:42:13 PM, you wrote:

JK>>> Ve volani Pos, zaprve ho volas vicekrat, misto abys sis pamatoval jednou
JK>>> ziskanou hodnotu. A jeste volas neustale dokola AnsiUpperCase (porad se
JK>>> stejnym vstupem).

>> Souhlas, ta funkce na webu je stara.

JK>>> A za druhe na prekodovani textu takove narocne funkce vubec
JK>>> nepotrebujes. Staci jedna prevodni tabulka:

JK>>> cnvTabs : array [char] of char

JK>>> kterou naplnis, tak ze na #A-te pozici bude znak, kterym ma byt znak A
JK>>> nahrazen a pak staci jeden cyklus

JK>>> for i := 1 to Length( S ) do
JK>>> S[i] := cnvTabs[S[i]];

>> 1) to v te tabulce budes mit i znaky co se nemeni?
>> 2) musis tam mit velkou i malou variantu pismene.

iJF> A neni lepsi jedna tabulka, ktera ma max. 256 bytu nez ty silene
iJF> oprace, co s tim delas ty ?

IB + Client dataset + Ziva editace gridu

[*] Daniel Frantik <frantik(zv)telpro(tec)cz> - 19.7.2002 12:56:50

Dobry den,
Mam DBGrid navazany na ClientDataset (pres midas na obycejnou TQuery). Pokud
chci rozchodit zivou editaci, chce to po me nejaky klic.
OK -> pouzil jsem RDB$DB_KEY. Az potud v pohode.
Nicmene select mi vrati field DB_KEY a ClientDataSet posklada update prikaz
... where DB_Key=..., coz samozrejme vyhuci, jelikoy tento field neni ...

Potrebuji tedy poradit (staci jedno z toho)
a) jak rozchodit editaci v gridu nad obecnou tabulkou (neznam PK)
b) jak zaridit, aby se vracel field RDB$...
c) jak otebrenemu datasetu prejmenovat field z DB_Key -> RDB$DB_Key
d) Jak zmenit UpdateSql tesne pred vykonanim prikazu (nebo jak donutit
ClientDataset aby do toho where napsal RDB$DB_Key)
e) ... neco jineho ...

Napadlo me:
a) seskladat Update SQL sam - problem s uvozovkovanim, null apod ...
b) Otevrit ClientDataset bez RDB$DB_KEY, zapamatovat si fieldy, zavrit ho,
vyrobit definici fieldu + dalsi field RDB$DB_Key jako calculated, nastavit
ho jako klic a prelit do nej data z DB_Key - cele je to trochu tezkopadne


Diky
Danik
WNt, D5 Ent, BDE, IB6

Fce na prevod diakritiky na bez diaktritiky

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.7.2002 13:59:04

Jo. Presne. Mam na mysli volani porad dokola funkci Pos(),
AnsiUpperCase, AnsiLowerCase.

Nechtel jsem rict, ze funkce AnsiLowerCase je "silena", ale mel jsem
na mysli jeji pouziti.

Zkus si pustit svuj algoritmus a treba algoritmus, ktery jsem posilal
na nekolikaset kB souboru.
Pak uvidis rozdil.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

19.7.2002 Jakub Dusek:
> Silene operace? Myslis AnsiUpperCase?

> Jakub Dusek

> Friday, July 19, 2002, 12:51:16 PM, you wrote:

iJF>> 19.7.2002 Jakub Dusek:
JK>>>> A za druhe na prekodovani textu takove narocne funkce vubec
JK>>>> nepotrebujes. Staci jedna prevodni tabulka:

JK>>>> cnvTabs : array [char] of char

JK>>>> kterou naplnis, tak ze na #A-te pozici bude znak, kterym ma byt znak A
JK>>>> nahrazen a pak staci jeden cyklus

JK>>>> for i := 1 to Length( S ) do
JK>>>> S[i] := cnvTabs[S[i]];

>>> 1) to v te tabulce budes mit i znaky co se nemeni?
>>> 2) musis tam mit velkou i malou variantu pismene.

iJF>> A neni lepsi jedna tabulka, ktera ma max. 256 bytu nez ty silene
iJF>> oprace, co s tim delas ty ?

Re[4]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 14:00:47


Friday, July 19, 2002, 1:42:05 PM, you wrote:

>> Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
>> AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?

DT> je dobre psat tyto typy funkci tak, aby byly pokud mozno co
DT> nejrychlejsi. Tvuj pristup
DT> je odhadem o rad az 2 pomalejsi nez optimalne napsana konverze.
DT> Je rozhodne lepsi pouzit delsi tabulku - vysledny kod bude mnohem
DT> rychlejsi a srozumitelnejsi

V cem bude srozumitelnejsi? Jen budes muset pro kazdy pripad kdy
pouzijes ReplaceTable vyjmenovat male i velke varianty => vetsi
moznost chyby. A to nemluvime jen o konverzi diakritiky. Rychlejsi asi
bude. Ktere "typy funkci" mas na mysli? Smysl by to asi melo u typu funkci
ktere se pousti 10000x.

DT> Operace se stringy patri obecne k tem pomalejsim (zpracovavaji vzdy
DT> vetsi mnozstvi dat nebo
DT> realokuji pamet).
>>function ReplaceTable (s: string; t1, t2: string): string;
>>var i : Integer;
>> p : Integer;
>> t : string;
>> c : Char;
>>begin
>> Result := '';
>> t := AnsiUpperCase (t1);
DT> zbytecna konverze - spotrebuje spoustu casu navic

>> for i := 1 to Length (s) do
>> begin
>> c := s [i];
>> p := Pos (c, t1);
DT> prohledavani retezcu vzdy stoji take nejaky ten cas

>> if p > 0 then
>> begin
>> Result := Result + t2 [p];
DT> scitani retezcu - silene pomala operace (realokace a presuny pameti
DT> jsou pomale)

>> end
>> else
>> begin
>> p := Pos (c, t);
DT> zase hledani

>> if p > 0 then
>> begin
>> Result := Result + UpperCase (t2 [p]);

DT> zase scitani retezcu a uppercase

DT> ..
DT> ...

DT> D. Toman

Jiste, optimalizace je mozna temer donekonecna, treba vubec nepouzivat
ty nemozne pomale operace pascalu a psat si vse v assembleru. A na vse
delat zvlastni funkci protoze ta jina ktera to muze taky udelat neni
pro ten dany pripad dostatecne zoptimalizovana...

Jakub Dusek

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 14:02:38

Rozsahly soubor rozhodne nebudu rvat pres string. Zde jde o
jednoduchou konverzi, napriklad jak chtel puvodni tazatel Caption
TMenuItem na Name.

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Friday, July 19, 2002, 1:39:28 PM, you wrote:

PV> Jakub Dusek wrote:
>>
>> Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
>> AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?
>>
>> Jakub Dusek

PV> Kvoli rychlosti.
PV> Rezia spojena s volanim AnsiUpperCase
PV> algoritmus zbytocne spomaluje.
PV> Vyskusaj si aplikovat tvoju funkciu
PV> na rozsiahly subor a uvidis.

PV> Vlkovic

Temporely Files

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 19.7.2002 14:05:44

> Zdravim vespolek!
> Aplikace mi pri spousteni vytvari v adresari, kde je APLIKACE.EXE,
> docasne soubory Del1.MB pri otevirani datasetu. Nevite jak tyto
> soubory umistovat do jineho adresare (temp)? Diky
>

Pokud si dobre pamatuji, tyto soubory vytvari BDE pri pouzivani CachedUpdates.
Dela Tvoje aplikace neco takoveho?

Zkusil bych zmenit nastaveni PrivateDir, jestli to nepomuze. Jinak nevim. Rady
nepouzivat BDE nebo vyhnout se cachovanym updatum Ti asi moc nepomuzou.

David Lebeda

Re[4]: Fce na prevod diakritiky na bez diaktritiky

[*] Jan Krizek <krizek(zv)vitasw(tec)cz> - 19.7.2002 14:17:17

>
> Jiste, optimalizace je mozna temer donekonecna, treba vubec nepouzivat
> ty nemozne pomale operace pascalu a psat si vse v assembleru. A na vse
> delat zvlastni funkci protoze ta jina ktera to muze taky udelat neni
> pro ten dany pripad dostatecne zoptimalizovana...
>
> Jakub Dusek
>
>

Tady ale nejde o optimalizaci na urovni prostredku, ale algoritmu.
Jestli mas algoritmus, ktery jednou projde vstup a pri kazde iteraci
udela jedno prirazeni do bytu, tak je to uplne jinde, nez kdyz pri kazde
iteraci provedes vyhledani v retezci (to muze trvat az delku te tabulky
- a vetsinou trva, kdyz se nic nenajde), pak jeste tu tabulku prevedes
na AnsiString, tedy znova ji musi nekdo celou projet a pak jeste jednou
volat Pos.

Jestli se bojis chyb pri psani konverzni tabulky, tak neni problem si
treba pomoci tve funkce nechat vygenerovat tabulku a tu pak pouzit v
rychlejsim algoritmu.

Jen tak mimochodem, jak myslis je napsana funkce AnsiUpperString?

Honza +

Fce na prevod diakritiky na bez diaktritiky

[*] Roman <sw.maurice(zv)seznam(tec)cz> - 19.7.2002 14:21:47

> V cem bude srozumitelnejsi? Jen budes muset pro kazdy pripad kdy
> pouzijes ReplaceTable vyjmenovat male i velke varianty => vetsi
> moznost chyby. A to nemluvime jen o konverzi diakritiky. Rychlejsi asi
> bude. Ktere "typy funkci" mas na mysli? Smysl by to asi melo u typu funkci
> ktere se pousti 10000x.

:-))))) Tak tos mel u te sve funkce napsat, ze je vhodna max pro 10 konverzi
:-))))

No comment...

Roman

Fce na prevod diakritiky na bez diaktritiky

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.7.2002 14:34:28

19.7.2002 Jakub Dusek:
> Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
> AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?

Protoze to bude mnohem rychlejsi nez postupne hledani prevodem na mala
pismena pouzitim Pos()

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Re[4]: Fce na prevod diakritiky na bez diaktritiky

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 19.7.2002 14:36:27

> V cem bude srozumitelnejsi?

bude obsahovat asi 5 radku

>Jen budes muset pro kazdy pripad kdy
> pouzijes ReplaceTable vyjmenovat male i velke varianty => vetsi
> moznost chyby.

konverznich tabulek se vali po internetu tuny - nemusim nic psat jen
ji najit

> A to nemluvime jen o konverzi diakritiky. Rychlejsi asi
> bude.

>Ktere "typy funkci" mas na mysli? Smysl by to asi melo u typu funkci
> ktere se pousti 10000x.

>presne tyhle funkce mam na mysli.
> Jiste, optimalizace je mozna temer donekonecna,
u takhle jednoduchych funkci jiste ne

> treba vubec nepouzivat
> ty nemozne pomale operace pascalu a psat si vse v assembleru.

Borland Pascal optimalizuje docela solidne ne vzdy je prosty prepis do
ASM vyrazne rychlejsi.

>A na vse
> delat zvlastni funkci protoze ta jina ktera to muze taky udelat neni
> pro ten dany pripad dostatecne zoptimalizovana...

Myslim, ze tady se zcela zbytecne ozyva urazena programatorova pycha.

Krome optimalizace - kod by mel byt i oku lahodici a mit smrnc. Tvoje
funkce tohle
bohuzel postrada.

Neni treba se rozcilovat - staci jen vzit na vedomi, ze to jde napsat
lepe
a priste se tim ridit. Clovek se uci...

D. Toman

Re[2]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 14:44:02

No, uzavrel bych tuhle debatu tim ze vzdycky radsi napisu funkci ktera
je o neco pomalejsi ale o to univerzalnejsi. Na ReplaceTable se nelze
divat jako na algoritmus na prevod diakritiky. Pri zavolani s 40
znakovym retezcem (coz je pripad puvodniho tazatele, pochybuji ze menu
item caption ma vic) funkce trva 70
mikro sekund, optimalizaci takovychto funkci se muzou zabyvat mozna
akademici ale ja k tomu nemam zadnou motivaci ani cas :) Takhle ji muzu pouzit
kdekoliv jinde, tam kde treba jako parametry neposilam konstanty ale cokoliv
jineho.

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Friday, July 19, 2002, 2:34:28 PM, you wrote:

iJF> 19.7.2002 Jakub Dusek:
>> Proc bych mel davat do seznamu i velka pismena kdyz ty mi vrati
>> AnsiUpperCase? Proc tam davat pismena ktera se nezmeni?

iJF> Protoze to bude mnohem rychlejsi nez postupne hledani prevodem na mala
iJF> pismena pouzitim Pos()

Re[4]: Fce na prevod diakritiky na bez diaktritiky

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 19.7.2002 14:46:12

> > Jiste, optimalizace je mozna temer donekonecna, treba vubec
> > nepouzivat ty nemozne pomale operace pascalu a psat si vse v
> > assembleru. A na vse delat zvlastni funkci protoze ta jina ktera to
> > muze taky udelat neni pro ten dany pripad dostatecne
> > zoptimalizovana...


Ahoj,

taky si dovolim jeden vstup do teto diskuse.

Vidim to takhle: nikdo nezpochybnuje, ze Tve reseni je funkcni, jen se poukazuje na
to, ze je obecne pomale. Na kratkych retezcich je to asi neznatelne, ale... (ted posun
k obecnemu):

Videl jsem dost aplikaci, ktere chodily hodne pomalu a byly vsestranne line. Autori
pritom tvrdili, ze rychleji to nejde, ze to proste vazne na vykonu Windows, databaze
a ja nevim ceho jeste. Po pohledu do zdrojaku se zjistilo, ze pomalost je dana proto,
ze se pouzil nevhodny zpusob reseni. Tady je jedine reseni: poucit programatora
(resp. on se treba pouci sam) o tom, ze existuje i jine reseni, ktere je rychlejsi a
efektivnejsi.

To podstatne v teto diskusi myslim neni rozbor jedne funkce, ale fakt, ze
kdyby se podobne neefektivne psaly cele aplikace, tak budeme zahlceni velmi linymi
programy, ale jako chyba se bude uvadet vykonc pocitace, Win apod.

Pred casem byl tusim v Chipu zajimavy clanek. Bylo to o serazeni pole ruznymi
metodami. Zamerme se na dve: bublinkove razeni a razeni haldou.

Pro mala pole suverene vitezilo bublinkove razeni. To je takova vec, kterou by
intuitivne dokazal vymyslet snad kazdy programator. Pak se to zkusilo na poli s
nekolika miliony zaznamu. Bublinkovy algoritmus bezel pul dne a pak to autori
prerusili. Razeni haldou trvalo tusim nekolik sekund nebo minut. Jenze programator,
zejmena samouk, nemusi vubec tusit, ze takovy algoritmus existuje a bude tvrdit, ze
velke pole rychle seradit proste nejde.

Cili muj zaver je takovyto: napsal jsi algoritmus, ktery funguje, a kolegove dodali
konkretni rady, jak ho vylepsit, aby byl obecne pouzitelny i v narocnych pripadech.

Ty se tim neco naucis, ja se tim neco naucim, spousta lidi v teto konfere se tim
leccos nauci. Nebral bych to jako osobni utok (netvrdim, ze to tak beres). Protoze v
mnoha programech se casto jednoduche veci delaji slozite jen proto, ze se
programator zatim nedozvedel, ze to jde i jednoduse.

David Lebeda

Temporely Files

[*] <M.Babik(zv)mus(tec)cz> - 19.7.2002 14:47:28

Tohle delal kolega, furt mu to rikam aby nedelal na zivejch datech, ale je jak natvrdly.:-( U NT to nedela, nebo je pry na NT nenajde, ale problem je u uzivatele, ten ma stejne jak ja, W2000 a navic zakazany zapis do adresare s aplikacemi (podnikova politika, vsechny temporely do jednoho TEMP).:-( BDE nepouzivat nejde. Pouzivame ho tu hojne pro napojeni na Informix.
Jak zmenit PrivateDir, kdyz TSession nepouzivame? Pouze TDatabaze, TSQL, TTable, TStorProc atd. Diky

> Aplikace mi pri spousteni vytvari v adresari, kde je APLIKACE.EXE, docasne soubory Del1.MB pri otevirani datasetu. Nevite jak tyto
> soubory umistovat do jineho adresare (temp)? Diky

>Pokud si dobre pamatuji, tyto soubory vytvari BDE pri pouzivani CachedUpdates.
>Dela Tvoje aplikace neco takoveho?
>Zkusil bych zmenit nastaveni PrivateDir, jestli to nepomuze. Jinak nevim. Rady
>nepouzivat BDE nebo vyhnout se cachovanym updatum Ti asi moc nepomuzou.
M&B

Re[6]: Fce na prevod diakritiky na bez diaktritiky

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 19.7.2002 14:51:27

Nevim jestli lepe, ale rozhodne rychleji a oku lahodneji, s tim
souhlasim, ovsem to nema nic spolecneho s univerzalnosti funkce jako
je ReplaceTable.
Clovek se uci porad, z jednoho pohledu je lepsi moje reseni, z jineho
Vas ostatnich. S pychou to nema nic spolecneho, ostra debata s
vyjasnenim vlastnich nazoru je nutna a lepsi nez nekomunikovat a
nevysvetlit duvody pro svoje reseni. Neexistuje optimalni reseni ktere
bude vyhovovat vsem, proto vznikaji takoveto dialogy. A je to dobre,
aspon je o cem psat :)

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

Friday, July 19, 2002, 2:36:27 PM, you wrote:

>> V cem bude srozumitelnejsi?

DT> bude obsahovat asi 5 radku

>>Jen budes muset pro kazdy pripad kdy
>> pouzijes ReplaceTable vyjmenovat male i velke varianty => vetsi
>> moznost chyby.

DT> konverznich tabulek se vali po internetu tuny - nemusim nic psat jen
DT> ji najit

>> A to nemluvime jen o konverzi diakritiky. Rychlejsi asi
>> bude.

>>Ktere "typy funkci" mas na mysli? Smysl by to asi melo u typu funkci
>> ktere se pousti 10000x.

>>presne tyhle funkce mam na mysli.
>> Jiste, optimalizace je mozna temer donekonecna,
DT> u takhle jednoduchych funkci jiste ne

>> treba vubec nepouzivat
>> ty nemozne pomale operace pascalu a psat si vse v assembleru.

DT> Borland Pascal optimalizuje docela solidne ne vzdy je prosty prepis do
DT> ASM vyrazne rychlejsi.

>>A na vse
>> delat zvlastni funkci protoze ta jina ktera to muze taky udelat neni
>> pro ten dany pripad dostatecne zoptimalizovana...

DT> Myslim, ze tady se zcela zbytecne ozyva urazena programatorova pycha.

DT> Krome optimalizace - kod by mel byt i oku lahodici a mit smrnc. Tvoje
DT> funkce tohle
DT> bohuzel postrada.

DT> Neni treba se rozcilovat - staci jen vzit na vedomi, ze to jde napsat
DT> lepe
DT> a priste se tim ridit. Clovek se uci...

DT> D. Toman

Temporely Files

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.7.2002 14:54:19

19.7.2002 M.Babik(zv)mus(tec)cz:
> Tohle delal kolega, furt mu to rikam aby nedelal na zivejch datech, ale je jak natvrdly.:-( U NT to nedela, nebo je pry na NT nenajde, ale problem je u uzivatele, ten ma stejne jak ja, W2000 a
> navic zakazany zapis do adresare s aplikacemi (podnikova politika, vsechny temporely do jednoho TEMP).:-( BDE nepouzivat nejde. Pouzivame ho tu hojne pro napojeni na Informix.
> Jak zmenit PrivateDir, kdyz TSession nepouzivame? Pouze TDatabaze, TSQL, TTable, TStorProc atd. Diky

Pokud se nepouzije primo komponenta TSession, je vytvorena defaultni
(proste session exisutje vzdy).
Zkus na to jit pres Database.Session...
Pred otevrenim Databaze nastavit cesty v session.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Yaffil vs Interbase (performance TPC-R)

[*] Alex Cherednichenko <cherednichenko(zv)wo(tec)cz> - 19.7.2002 15:47:05

Hello, Roman!
You wrote:

RK> Yaffil je zrejme skutecne genialni produkt a hlavne obsahlost
RK> projektu a obsahlost webu o IB/FB/Yaffil me tesi. Skoda ze se nejde
RK> prepnout na English.

Pracuje se na tom.
Mozna to bude uz pristij tyden.


With best regards, Alex Cherednichenko.

Yaffil vs Interbase (performance TPC-R)

[*] Alex Cherednichenko <cherednichenko(zv)wo(tec)cz> - 19.7.2002 15:52:08

Hello, Petr!
You wrote:

[Sorry, skipped]
PP> chtel jsem se tedy zeptat, jestli tu nekdo nevi o yaffilu
PP> trochu vic a mohl by postnout par informaci.

PP> predevsim, jak se na yaffila pripojit. jake komponenty. jak moc je
PP> kompatibilni s IB/FB co se tyce SQL DDL/DML jazyku.

Zativ Yaffil je 100% kompatibilni s IB/FB.
Vsechny komponenty pro IB/FB se da pouzyt i pro Yaffil.

PP> jde mi o to, jak je mozne aplikaci psanou pro FB prevest na yaffil.
PP> pripadne jak by bylo narocne udrzovat moznost pripojeni jak k FB
PP> tak k Yaffilu?

Jedinyj rozdil pro klijentsku aplikaci - knihovna gds32.dll
Ta musi byt od Yaffilu.
With best regards, Alex Cherednichenko.

Pouzivani PChar jako navratovych hodnot z DLL funk

[*] "Jon� Mari�n, Ing." - 19.7.2002 16:03:21

Pro volani funkci v DLL knihovnach pouzivam tuhle strukturu :

type
TNChyba = record
KodChyby: integer;
TextChyby: PChar;
end;

v aplikaci mam zhruba tento kod:

var
NChyba: TNChyba
Funkce: TNFunkce;
DLL: HModule;
begin
DLL:=LoadLibrary ...
(zv)Funkce:=GetProcAddress ....
Funkce(NChyba)
FreeLibrary...
end;

v DLL knihovne mam pak kod :

function Funkce(AChyba: TNChyba): integer; stdcall;
begin
AChyba.KodChyby:=100;
AChyba.TextChyby:=PChar('blabla bla');
result:=1;
end;

Tato konstrukce funguje ok. Chtel bych se ale pritomnych guru zeptat
je tato konstrukce korektni, co se tyka alokace a dealokace promenne
TextChyby ? Neni treba nejprve v aplikaci alokovat pamet pro TextChyby ?

Dekuji Marian

Pouzivani PChar jako navratovych hodnot z DLL funk

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 19.7.2002 16:17:22


>var
> NChyba: TNChyba
> Funkce: TNFunkce;
> DLL: HModule;
>begin
> DLL:=LoadLibrary ...
> (zv)Funkce:=GetProcAddress ....
> Funkce(NChyba)
> FreeLibrary...
>end;
>
>v DLL knihovne mam pak kod :
>
>function Funkce(AChyba: TNChyba): integer; stdcall;
>begin
> AChyba.KodChyby:=100;
> AChyba.TextChyby:=PChar('blabla bla');
> result:=1;
>end;
>
>Tato konstrukce funguje ok. Chtel bych se ale pritomnych guru zeptat
>je tato konstrukce korektni, co se tyka alokace a dealokace promenne
>TextChyby ?

podle me je to nekorektne napsano. Toleroval bych tenhle zpusob,
pokud by FreeLibrary nasledovalo v bezpecnem odstupu za zpracovanim
vysledku funkce. Je me jasne, ze je to zjednoduseny priklad a ve
skutecnosti
se FreeLibrary vola nejspis az pri ukonceni aplikace (je nesmyslne
loadovat
knihovnu stale dokola), ale je treba na to upozornit.

Pokud misto konstant bude DLLko prirazovat PCharu obsahy lokalnich
promennych, pak je to cele spatne. Vzdy je nutne predavat pointr na
pamet
o ktere s jistotou vime, ze i po ukonceni funkce bude existovat...

>Neni treba nejprve v aplikaci alokovat pamet pro TextChyby ?

ano to jedno ze spravnych reseni.

D. Toman

Fce na prevod diakritiky na bez diaktritiky

[*] Peter Vlkovic <vlkovic(zv)minv.sk> - 19.7.2002 17:30:25

> No, uzavrel bych tuhle debatu...
> ...optimalizaci takovychto funkci se muzou zabyvat mozna
> akademici ale ja k tomu nemam zadnou motivaci ani cas :)

Myslim, ze programator by sa mal snazit pracovat
efektivne aj pri pisani zdanlivo bezvyznamych
algoritmov. Ked si takyto sposob prace neosvoji
pri programovani aj malych alebo malo exponovanych
funkcii, tazko bude potom dosahovat dobre vysledky
u vacsich alebo narocnejsich pasazi programu.

> Takhle ji muzu pouzit kdekoliv jinde, tam kde treba
> jako parametry neposilam konstanty ale cokoliv
> jineho.

Tomuto prilis nerozumiem. Ake konstanty?
V pripade KAZDEHO pouzitia tebou propagovanej
funkcie (t.j. ktora z hladiska rychlosti nie je
celkom optimalna), vzdy musim mat na zreteli,
ze nou nebudem prehanat velke objemy dat.

Vlkovic

SQL - ruzne hodnoti poli do jinych poli

[*] bleak <bleak(zv)atlas(tec)cz> - 19.7.2002 18:23:52

zdravim,
subj. je asi trochu nesrozumitelny. mam tabulku, kde jsou pole ID_KLIENT a
ID_MESIC. Kazde pole ID_KLIENT ma zaznamy s ID_MESIC v rozmezi 1-12.
Potreboval bych udelat SELECT tak, aby ve vysledku byl od kazdeho ID_KLIENT
jeden zaznam a ID_MESIC by bylo ulozeno v polich M1 - M12.
Nejak se mi nedari vytvorit vhodny SQL dotaz. Poradi nekdo, jak jej
vytvorit?

bleak

tabulka:
ID_KLIENT=100; ID_MESIC=1
ID_KLIENT=100; ID_MESIC=2

pozadovany vysledek:
ID_KLIENT=100;M1=1;M2=2;M3=Null
(M3=null, protoze neni zaznam ID_KLIENT=100;ID_MESIC=3)
atd...

Pouziti framu

[*] Martin Chaloupka <Martin.Chaloupka(zv)gmx(tec)net> - 19.7.2002 18:26:56

> Zdravim,
> kdysi jsem psal nejakou aplikaci, ktera mela na hlavnim formu tri casti
> rozdelene splitterama (treeview, pak kupu image, textove pole). Protoze
> to je ale vsechno na jednom formulari a k tem jednotlivym castem je
> spousta kodu, ve kterem se uz nevyznam, rozhodl jsem se to prepsat :)
> Tak me napadlo, ze bych mohl jednotlive casti udelat jako TFrame, ktere
> pak priplacnu na hlavni form mezi splittery. Kod by byl hezky
> rozdelenej. Chci se ale zeptat, jestli se takovymto pouzitim framu (kdy
> vlastne kazdy bude pouzitej jednou), zbytecne nezvetsi naroky na
> prostredky atd.?
>
> Petr
>
Ja jsem takhle neco vyvijel (jednotlive frames) a nemuzu rici, ze bych
zaznamenal nejake problemy s nabubrenim kodu.
S pozdravem Martin Chaloupka

--
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net

Fce na prevod diakritiky na bez diaktritiky

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 19.7.2002 22:13:36

From: "Jan Krizek" <krizek(zv)vitasw(tec)cz>
> nahrazen a pak staci jeden cyklus

> for i := 1 to Length( S ) do
> S[i] := cnvTabs[S[i]];

Operace string[index] := Char neni prilis efektivni, protoze kompilator po
teto opearaci vzdy vola _UniqueString kvuli reference countingu stringu. Pokud
znas velikost ciloveho retezce tak je lepsi jej predem alokovat a pak pouzit
pointer (PChar).

Petr Vones

Svisly text na Canvas

[*] Zdenek Stepanek <zstepanek(zv)atlas(tec)cz> - 20.7.2002 00:28:25

Zdravim

Treba takhle. Je to z dema k RX.

with PopupMenu.Canvas.Font do begin
Name := 'Courier New';
Style := [fsBold];
Size := 20;
Color := clWhite;
Handle := CreateRotatedFont(PopupMenu.Canvas.Font, 90);
end;

Zdenek

----- Original Message -----

mozna uz mi nekdo odpovidal, ale byl jsem jednim z tech, komu nechodily
prispevky, takze se ptam znovu: Poradite mi, jak nakreslit svisly text (tzn.
otoceny o 90 nebo 270 stupnu) na Canvas?

ADMIN: Nova funkce listserveru

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 20.7.2002 04:14:13

Ahoj,

jestli chce nekdo posilat zpravy do konference, ale nechce je dostavat
(napr. je v praci 10 kolegu, kteri posilaji prispevky, ale prijimat
chteji na jeden e-mail, protoze jim to jejich postovni server sam
rozesle), tak novejsi software listserveru by to uz mel umet, obratte se
na muj mail. NE DO KONFERENCE.

S pozdravem
Petr Zahradnik, pocitacovy expert

============================================================
Petr Zahradnik, Computer Laboratory
Obvodova 740/14, P.O. Box 15, 400 07 Usti nad Labem
Telefony: 047-5500610, 047-5501627, 0602-409601
Fax: 047-5511338
WWW: http://www.clexpert(tec)cz, http://www.zahradnik(tec)cz
E-Mail: clexpert(zv)clexpert(tec)cz, petr(zv)zahradnik(tec)cz
ICQ: 21215917
============================================================

Optimalizace procedury

[*] Obermaier Petr Ing. <Obermaier(zv)mail.sdas(tec)cz> - 20.7.2002 08:20:59

> Od: Vymazal Milan [SMTP:vymazal.milan(zv)seznam(tec)cz]
> Mam nasledujici problem. Napsal jsem COM+ componentu ktera je podle me
> perfektni :). Provider vsak tvrdi ze pry vytezuje server na 100% .
> Komponenta slouzi k resize jpegu. POuzivam unity a procedury z jpeg a
> gifimage. Podle me to zadne zasadni chyby nema. Co vy na to ?
> myslite ze je ten kod tak hrozny ? Dal by se nejak optimalizovat.
> Vubec si v tomto ohledu nevim rady a ja vlastne programuju jak umim.
>
>
Doporucil bych pouzit pro resize-cast nejakou komponentu na to specialne
urcenou. Sam jsem vyzkousel par z teto stranky:
http://www.torry.net/graphics_eff.htm a mohu potvrdit, ze zpracovani je
mnohonasobne rychlejsi, nez projizdeni bod po bodu s rozdelenymi RGB
slozkami.


Ober

SQL - ruzne hodnoti poli do jinych poli

[*] Alex Cherednichenko <cherednichenko(zv)wo(tec)cz> - 20.7.2002 10:28:01

Hello, bleak!
You wrote:

[Sorry, skipped]
b> tabulka:
b> ID_KLIENT=100; ID_MESIC=1
b> ID_KLIENT=100; ID_MESIC=2

b> pozadovany vysledek:
b> ID_KLIENT=100;M1=1;M2=2;M3=Null
b> (M3=null, protoze neni zaznam ID_KLIENT=100;ID_MESIC=3)
b> atd...

Neco na tom ukolu mi se nelibi, ale pokud to je opravdu nutny...

SELECT DISTINCT TT.ID_KLIENT,
TT1.ID_MESIC AS M1,
TT2.ID_MESIC AS M2,
TT3.ID_MESIC AS M3,
TT4.ID_MESIC AS M4,
TT5.ID_MESIC AS M5,
TT6.ID_MESIC AS M6,
TT7.ID_MESIC AS M7,
TT8.ID_MESIC AS M8,
TT9.ID_MESIC AS M9,
TT10.ID_MESIC AS M10,
TT11.ID_MESIC AS M11,
TT12.ID_MESIC AS M12
FROM One_Table TT
LEFT JOIN One_Table TT1 ON (TT1.ID_KLIENT=TT.ID_KLIENT) AND
(TT1.ID_MESIC=1)
LEFT JOIN One_Table TT2 ON (TT2.ID_KLIENT=TT.ID_KLIENT) AND
(TT2.ID_MESIC=2)
LEFT JOIN One_Table TT3 ON (TT3.ID_KLIENT=TT.ID_KLIENT) AND
(TT3.ID_MESIC=3)
LEFT JOIN One_Table TT4 ON (TT4.ID_KLIENT=TT.ID_KLIENT) AND
(TT4.ID_MESIC=4)
LEFT JOIN One_Table TT5 ON (TT5.ID_KLIENT=TT.ID_KLIENT) AND
(TT5.ID_MESIC=5)
LEFT JOIN One_Table TT6 ON (TT6.ID_KLIENT=TT.ID_KLIENT) AND
(TT6.ID_MESIC=6)
LEFT JOIN One_Table TT7 ON (TT7.ID_KLIENT=TT.ID_KLIENT) AND
(TT7.ID_MESIC=7)
LEFT JOIN One_Table TT8 ON (TT8.ID_KLIENT=TT.ID_KLIENT) AND
(TT8.ID_MESIC=8)
LEFT JOIN One_Table TT9 ON (TT9.ID_KLIENT=TT.ID_KLIENT) AND
(TT9.ID_MESIC=9)
LEFT JOIN One_Table TT10 ON (TT10.ID_KLIENT=TT.ID_KLIENT) AND
(TT10.ID_MESIC=10)
LEFT JOIN One_Table TT11 ON (TT11.ID_KLIENT=TT.ID_KLIENT) AND
(TT11.ID_MESIC=11)
LEFT JOIN One_Table TT12 ON (TT12.ID_KLIENT=TT.ID_KLIENT) AND
(TT11.ID_MESIC=12);


With best regards, Alex Cherednichenko.

Unit Math - chyby pri vykonavani funkcii

[*] Martin Kasman <martinkasman(zv)pobox.sk> - 20.7.2002 11:23:23

Ako sa odchytavaju chyby v unite Math pri matematickych operaciach?
Priklad: funkcia Power (n na x-tu) vracia hodnotu typu Extened. Ale pokial
budu vstupovat cisla, kde n na x-tu bude mat vacsiu hodnotu ako extended,
tak sa zobrazi sprava Floating point overflow. Presne to chcem odchytit.


Vdaka za kazdu radu.

SimpleMAPI - hromadna korespondence

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 20.7.2002 13:39:33

From: "PeJaSoft" <pejasoft(zv)volny(tec)cz>
> kdyz si zvolim cestu pres SimpleMAPI a mam Outlook Express, tak se mi do
> BCC nebo i do KOMU do stane "pomrseny" seznam adres. Presneji urcita adresa

Patrne mas nekde chybu. Priklad nize funguje bez problemu (OE 5.5). Unit
JclMapi pochazi z JCL: http://delphi-jedi.org/Jedi:CODELIBJCL

uses
JclMapi;

procedure TForm1.Button1Click(Sender: TObject);
var
Mail: TJclEmail;
begin
Mail := TJclEmail.Create;
try
Mail.Recipients.Add('a.(zv)a(tec)cz', '', rkTO);
Mail.Recipients.Add('b.(zv)b(tec)cz', '', rkTO);
Mail.Recipients.Add('c.(zv)c(tec)cz', '', rkTO);
Mail.Recipients.Add('d.(zv)d(tec)cz', '', rkTO);
Mail.Recipients.Add('e.(zv)e(tec)cz', '', rkTO);
Mail.Subject := 'Subject';
Mail.Body := 'Text';
Mail.Send;
finally
Mail.Free;
end;
end;

Petr Vones

SimpleMAPI - hromadna korespondence

[*] Erik Salaj <winsoft(zv)stonline.sk> - 20.7.2002 16:48:45

> Napada vas, cim by to mohlo byt?
>
> Ukazka:
> Zadany seznam: a(zv)a(tec)cz, b(zv)b(tec)cz, c(zv)c(tec)cz, d(zv)d(tec)cz
> Do OE se dostane: d(zv)d(tec)cz, d(zv)d(tec)cz, d(zv)d(tec)cz, d(zv)d(tec)cz
> nekdy se stane napr.: a(zv)a(tec)cz, d(zv)d(tec)cz, c(zv)c(tec)cz, d(zv)d(tec)cz ...apod.

ak konvertujes String na PChar, tak pozor na to, aby String sa nemenil
(PChar nema na rozdiel od Stringu pocitadlo referencii).
Pripravujem SimpleMAPI komponenty (shareware), ktore
tieto zalezitosti riesia. Mail sa posle jednoducho:

SendMail.SendTo := 'a(zv)a(tec)cz ; b(zv)b(tec)cz ; c(zv)c(tec)cz';
SendMail.Subject := 'subject';
SendMail.Body.Text := 'text';
SendMail.Send;

Erik

IdSNTP

[*] Lukas Marek <lukas.marek(zv)seznam(tec)cz> - 20.7.2002 18:16:25

Ahoj

Chtel bych pouzit Indy komponentu IdSNTP. Nemenil jsem zadne vlastnosti
pouze jako Host jsem se pokousel zadat:
cas.atlas(tec)cz
tik.cesnet(tec)cz
tak.cesnet(tec)cz
time.epstudio(tec)cz
a TimeOut jsem nastavil na 5000.
Po zavolani funkce IdSNTP.SyncTime se mi nikdy nepovedlo cas synchronizovat.

Za kazdou radu predem dekuji.

Lukas Marek

SQL - ruzne hodnoti poli do jinych poli

[*] bleak <bleak(zv)atlas(tec)cz> - 20.7.2002 19:20:01

dekuji, souhlasim s tim, ze je to nespravne reseni problemu, jde o to, ze
potrebuji prohledat cca 70000 zaznamu a zjistit u nich zaplacene poplatky,
dle planu plateb. nic lepsiho jsem zatim nevymyslel. mozna by bylo lepsi
projit vsechny ty zaznamy, misto krkolomnych SELECTU... patrne to bude trvat
stejne dlouho, jako vami navrzeny SELECT...
bleak

----- Original Message -----
From: "Alex Cherednichenko" <cherednichenko(zv)wo(tec)cz>

> Neco na tom ukolu mi se nelibi, ale pokud to je opravdu nutny...
>
> SELECT DISTINCT TT.ID_KLIENT,
>
> With best regards, Alex Cherednichenko.
>
>

Sklad.pohyby,uzavreni uctu a commity

[*] Ludek Paral <ludek.paral(zv)quick(tec)cz> - 21.7.2002 01:40:01

Ahoj,

resim obecne uzavirani uctu se sklad.pohyby na SQL servru.

Ukol zni :
- zkontrolovat formalni platnost dat, spojeni s cenikem, dostatecne zasoby
- zakazat editaci uctu ostatnim uzivatelum

pro kazdou polozku uctu :
- zakazat editaci polozky ceniku (aby se neprovedlo v jednom okamziku na dvou mistech sql s updatem sklad.cen, jelikoz by pak se jedna zmena nezaznamenala
- provest snizeni nebo zvyseni skladu, sklad pohyby
- oznacit polozky uctu statusem uzavrene
---------------------------------
- povolit prohlizeni uctu ostatnim uzivatelum.

Jake by mohlo byt nejlepsi reseni:
1. V pripade problemu na nektere polozce uctu (neexistujici veta v ceniku, chyba pri zapisu do skl.polozek...) provedu rollback zmen na polozce uctu, ta zustava otevrena pro opravy a status uctu zustane - nevyrizen (je ovsem zakazana moznost editovat uzavrene polozky)
2. V pripade problemu se pokusit o navrat zmen na vsech polozkach (jenze zde nemohu asi provest jen rollback - napr. po zmene skl.ceny v ceniku musim provest commit, aby i dalsi klienti videli zmenu skladu a mohli provest spravne zmenu skladu, pred editaci ceniku musim provest commit statusu, aby mi dalsi klienti nelezli do zeli ...

- nebo jina jednoducha myslenka

Ludek

Pouzivani PChar jako navratovych hodnot z DLL funk

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.7.2002 01:55:27

From: "Jon� Mari�n, Ing." <Jonas(zv)komercpoj(tec)cz>
> Pro volani funkci v DLL knihovnach pouzivam tuhle strukturu :
> type
> TNChyba = record
> KodChyby: integer;
> TextChyby: PChar;
> end;

Pokud ta DLL slouzi jen jako zdroj chybovych zprav na zaklade ID tak by bylo
asi lepsi to ulozit do resource jako String table nebo Message table a pouzit
standardni API funkce.

Petr Vones

Systemove prostredky

[*] Pavel Lavicka <plavicka(zv)mbox.vol(tec)cz> - 21.7.2002 11:29:55

Vazeni kolegove,
potreboval bych poradit s nasledujicim problemem:
1. mohu nejak v D6 zjistit volnou zbyvajici kapacitu systemovych prostredku
ve WIN9x.
2. mohu pred vytvorenim formulare nejak zjistit, kolik systemovych
prostredku pro svoje vytvoreni potrebuje? Snizeni kapacity systemovych
prostredku ve Win9x pod cca 10 % prinasi zname nestabilni chovani Windows,
proto by mne zajimalo, zda mohu teto situaci nejak ucinne predejit. Za
odpovedi predem dekuji.

Pavel

vyjimka pri UDP vysilani do vypnute site

[*] Zdenek Stepanek <zstepanek(zv)atlas(tec)cz> - 21.7.2002 14:16:00

Zdravim

Pouzivam komponentu UDPPort a ihned po zapnuti proogramu vysilam broadcast.
Slouzi k reinicializaci ostatnich klientu. Pokud je sit (hub) zapnuta,
vsechno chodi jak ma, ale kdyz je vypnuta, nedari se mi zakryt chybu.

try
UDPSocket1.BroadcastData('reload_ip');
except
end;

Zkousel jsem to takhle. Na WinXP to pri spusteni programu funguje, ale pri
spusteni pres button se aplikace i delphi zaseknou a musim je oba odstrelit.
Na Win95 se aplikace zasekne splou s explorerem hned pri startu.

Nevite nekdo jak zaridit, abych bud nejak otestoval provoz site a potom
vysilal nebo osetril a zakryl tu vyjimku.

Diky
Zdenek

padani Delphi5 - WinXP

[*] Zdenek Stepanek <zstepanek(zv)atlas(tec)cz> - 21.7.2002 14:21:16

Zdravim

Mam D5 a WinXP. Vyvijim jistou aplikaci, ktera se rada zasekava a nelze
jinak, nez ji natvrdo odstrelit pres Ctrl-Alt-Del. Jenze delphi to jaksi
nezaregistruji a podle nich je program stale spusteny. Jakekoliv pokusy o
zastaveni vedou na hlasku "Unable to terminate process: P��stup byl
odep�en", n�kdy taky k tot�ln�mu p�du Delph. Jedin� �e�en� je je natvrdo
odst�elit taky.

Nevite nekdo jak se toho zbavit?
Diky
Zdenek

padani Delphi5 - WinXP

[*] Obermaier Petr Ing. <Obermaier(zv)mail.sdas(tec)cz> - 21.7.2002 14:53:56

> Od: Zdenek Stepanek [SMTP:zstepanek(zv)atlas(tec)cz]
> Mam D5 a WinXP. Vyvijim jistou aplikaci, ktera se rada zasekava a nelze
> jinak, nez ji natvrdo odstrelit pres Ctrl-Alt-Del. Jenze delphi to jaksi
> nezaregistruji a podle nich je program stale spusteny. Jakekoliv pokusy o
> zastaveni vedou na hlasku "Unable to terminate process: P��stup byl
> odep�en", n�kdy taky k tot�ln�mu p�du Delph. Jedin� �e�en� je je natvrdo
> odst�elit taky.
>
>
Tak presne tohle se mi pod wXP i w2k stava taky, pod w98 vsak ne.
Proto jsem tu kdysi psal, ze z _meho_pohledu_ je spojeni delphi+w98
"stabilnejsi".


Ober

padani Delphi5 - WinXP

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.7.2002 15:12:24

From: "Zdenek Stepanek" <zstepanek(zv)atlas(tec)cz>
> Mam D5 a WinXP.

1. Jen pro kontrolu, s Update Packem #1, predpokladam
2. Delphi 5 nebylo testovano s Windows XP, takze muze a nemusi fungovat. Na
Windows 2000 SP2 s tim nejsou zadne problemy.

> Vyvijim jistou aplikaci, ktera se rada zasekava a nelze
> jinak, nez ji natvrdo odstrelit pres Ctrl-Alt-Del. Jenze delphi to jaksi
> nezaregistruji a podle nich je program stale spusteny. Jakekoliv pokusy o
> zastaveni vedou na hlasku "Unable to terminate process: P��stup byl
> odep�en", n�kdy taky k tot�ln�mu p�du Delph. Jedin� �e�en� je je natvrdo
> odst�elit taky.

Pokud je proces v debug rezimu tak jej nekdy nemuzes odstrelit z Task
Manageru, protoze to muze jen debugger. Takze musis ukoncit Delphi.
Zajimavejsi je spis to, proc se zasekava, protoze to by se normalne dit
nemelo. V cem je ta aplikace specificka ?

Petr Vones

vyjimka pri UDP vysilani do vypnute site

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.7.2002 15:15:29

From: "Zdenek Stepanek" <zstepanek(zv)atlas(tec)cz>
> Pouzivam komponentu UDPPort a ihned po zapnuti proogramu vysilam broadcast.

Co je to presne za komponentu ?

> Zkousel jsem to takhle. Na WinXP to pri spusteni programu funguje, ale pri
> spusteni pres button se aplikace i delphi zaseknou a musim je oba
> odstrelit.
> Na Win95 se aplikace zasekne splou s explorerem hned pri startu.

Pekne, co se v tom presne deje kdyz krokujes zdrojak ?

Petr Vones

Systemove prostredky

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.7.2002 15:23:02

From: "Pavel Lavicka" <plavicka(zv)mbox.vol(tec)cz>
> 1. mohu nejak v D6 zjistit volnou zbyvajici kapacitu systemovych prostredku
> ve WIN9x.

Musi byt nainstalovan 'Meric systemovych prostredku', je soucasti instalace
Windows, je to nekde v kategorii Prislusenstvi. Potom muzes pouzit funkce
GetFreeSystemResources a IsSystemResourcesMeterPresent v unitu JclSysInfo z
JCL: http://delphi-jedi.org/Jedi:CODELIBJCL

> 2. mohu pred vytvorenim formulare nejak zjistit, kolik systemovych
> prostredku pro svoje vytvoreni potrebuje? Snizeni kapacity systemovych

Ne.

> prostredku ve Win9x pod cca 10 % prinasi zname nestabilni chovani Windows,
> proto by mne zajimalo, zda mohu teto situaci nejak ucinne predejit. Za
> odpovedi predem dekuji.

Viz vyse. Jedine tak, ze ten meric bude automaticky spusten po startu systemu,
ma v sobe funkci kdy v pripade poklesu pod 10% zobrazi dialog s upozornenim,
ze uz se to blizi ke krachu a je treba nejakou aplikaci zavrit.

Funkci toho merice muzes samozrejme snadno udelat i ve sve aplikaci pouzitim
te vyse uvedene funkce a periodickym ctenim.

Co se tyce zateze na GDI prostredky tak v Delphi 6 je opravena chyba v metode
TBitmap.Dormant, ktera zpusobovala jiste problemy, takze by to melo byt lepsi
nez v predchozich verzich Delphi.

Petr Vones

Hlavicka a polozky kontra FB

[*] Ales Pavel <Aldik(zv)quick(tec)cz> - 21.7.2002 15:48:52


Ahoj potreboval bych vedet jak resite propojeni hlavicka a polozky pred
ulozenim.
Jde mi o to ze pokud vyplnim hlavicku a pak zacnu vyplnovat polozky tak
nemam vlastne jeste ID na hlavicku protoze neni ulozena.Kdyz budu ale pri
pokusu o vytvoreni prvni polozky volat GEN_ID,tak sice budu generovat
idealne cislo ale pri stornu budu muset polozky smazat a GEN_ID se zvedne o
1 nadarmo. Jak tohle resite vy? Mate nekdo nejaky trik?

Ales Pavel
D6 Ent WXP
laik v profesionalnim kolotoci

TreeView

[*] Petr Klusek <klusek(zv)volny(tec)cz> - 21.7.2002 16:38:56

Zdravim vsechny

Mel bych nekolik dotazu ohledne TreeView ktere se tykaji jeho vizazi
1: Potreboval bych kdyz je polozka aktivni aby se zvedcil jeji font Kdyz
to provadim v udalosti OnCustomDravItems tak se nevleze dochlivku a
je tam treba videt jen pulka napisu. At jsem delal co sem delal
neprisel jsem jak tomu zabranit a take bych potreboval aby mi
dovolil napsat popisek na vice radku.
2: Jak docilit aby polozka nebyla zviraznena ctvercem ale treba elipsou
nebo tak nejak

Predem dekuji

---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.368 / Virov� b�ze: 204 - datum vyd�n�: 29.5.2002

TreeView

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.7.2002 16:51:34

From: "Petr Klusek" <klusek(zv)volny(tec)cz>
> Mel bych nekolik dotazu ohledne TreeView ktere se tykaji jeho vizazi
> 1: Potreboval bych kdyz je polozka aktivni aby se zvedcil jeji font Kdyz
> to provadim v udalosti OnCustomDravItems tak se nevleze dochlivku a
> je tam treba videt jen pulka napisu. At jsem delal co sem delal
> neprisel jsem jak tomu zabranit a take bych potreboval aby mi
> dovolil napsat popisek na vice radku.

TTreeView neumoznuje mit rozdilnou vysku pole pro node pro kazdou polozku.
Musel by si tedy zvetsit font pro vsechny polozky a text pak vykreslovat
mensim fontem. Zkus se spis podivat na Virtual TreeView, mozna to umi:
http://www.delphi-gems.com/VirtualTreeview/VT.html

> 2: Jak docilit aby polozka nebyla zviraznena ctvercem ale treba elipsou
> nebo tak nejak

Patrne tak, ze v udalosti OnCustomDrawItem potlacis puvodni vykreslovani
prirazenim DefaultDraw := False a pak si budes vse kreslit sam. Uprime receno
s tim budou spise jen potize, predevsim pak na Windows XP.

Petr Vones

kde v programu dojde k chybe (D6P)?

[*] bleak <bleak(zv)atlas(tec)cz> - 21.7.2002 17:34:24

zdravim,
jsem ponekud zmateny. Nejaky prikaz v mem programu zpusobuje vyjimku
EConvertError. Program se proste zastavi a objevi se hlaseni o vyjimce a
neni zvyrazneny radek, kde doslo k chybe. Pokud zvolim Use Debug DCUs,
program se zastavi v unitu SysUtils v procedure ConvertErrorFmt.
Nemuzu se dokrokovat k mistu v mem programu, kde k chybe dochazi. Pokud mam
takovyto radek:
x:=StrToInt(s);
potrebuju, aby se program zastavil na tomto radku v pripade, ze promenna 's'
obsahuje napr. 'aaa'. V D4S to takhle fungovalo. Jak donutit D6P, aby se
chovalo stejne?

bleak

vyjimka pri UDP vysilani do vypnute site

[*] Zdenek Stepanek <zstepanek(zv)atlas(tec)cz> - 21.7.2002 20:25:41

Zdravim

> > Pouzivam komponentu UDPPort a ihned po zapnuti proogramu vysilam
broadcast.
> Co je to presne za komponentu ?
Popletl jsem nazev, je to UDPSocket, v posledni dobe tudy nekolikrat prosla.

> > Zkousel jsem to takhle. Na WinXP to pri spusteni programu funguje, ale
pri
> > spusteni pres button se aplikace i delphi zaseknou a musim je oba
> > odstrelit.
> > Na Win95 se aplikace zasekne splou s explorerem hned pri startu.
>
> Pekne, co se v tom presne deje kdyz krokujes zdrojak ?

Kajicne se omlouvam, problem byl samozrejme mezi klavesnici a zidli. Ja jsem
mel ten form StayOnTop a kdyz jsme buttonem spustil kod, ktery vyvolal
vyjimku, aplikace byla stale OnTop a tudiz jsem nevidel hlaseni o vyjimce,
kterou pro me prichystaly delphi. Tentyz kod se spoustel pri startu
programu, ale v Form.OnCreate, takze jeste zadny form nebyl a ja jsem
hlaseni o vyjimce videl. Aplikace se samozrejme tvarila zasekle, jelikoz
byla pauznuta. Uz to vsechno funguje jak ma. Problem je stale v tom, ze na
WinXP muzu vysilani do vypnute site osetrit pomoci try...except, ale jednak
to podle me neni moc dobre reseni a na 9x to nefunguje.

Tudiz otazka zni: Jak zjistim, ze je sit funkcni?

Diky
Zdenek

vyjimka pri UDP vysilani do vypnute site

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.7.2002 20:32:56

From: "Zdenek Stepanek" <zstepanek(zv)atlas(tec)cz>
> byla pauznuta. Uz to vsechno funguje jak ma. Problem je stale v tom, ze na
> WinXP muzu vysilani do vypnute site osetrit pomoci try...except, ale jednak
> to podle me neni moc dobre reseni a na 9x to nefunguje.

Takze znovu:

1. Co je to za komponentu
2. Co presne na Win9x nefunguje ?

Petr Vones

Komunikace pres modem

[*] J�n Harman <harman(zv)atlas(tec)cz> - 21.7.2002 21:40:52

Ahoj poradte prosim jak mam zacit. Potrebuji komunikovat pres modemy (vymena
dat). Co delat abych se spojil se vzdalenym PC (vytocit cislo...) a jak
komunikovat? Diky moc. Honza.

D6 Personal

[*] Petr K. <xdelphi(zv)seznam(tec)cz> - 21.7.2002 23:12:13

Zdrav�m,

Rad bych pouzival Delphi6 personal - nevite nekdo zda se nevali nekde na
internetu komponenty pro Interbase?
Staci mi pripojeni k IB serveru, IBQuery, IBTable + naky komponenty jako
jsou Datasource a DBGrid.
nechce se mi kupovat D6 professional, ale pokud to jinak nepujde tak budu
muset :(

Dik PEtr

TIBTransaction,ApplyUpdate URGENTNIIII

[*] Ales Pavel <Aldik(zv)quick(tec)cz> - 22.7.2002 00:36:48



Ahoj kluci muzete mi nekdo popsat jak ridit IBTransaction a jak updateovat
datasety...Nejak tomu nerozumim,
Kdyz zavolam starttransaction a commit transaction u jedne transakce a
otevru a zavru jiny dataset co ma jinou transakci tak se tam zmeny neobjevi.
Muzete mi nekdo strucne popsat jak mam optimalne ridit transakce a jak je
potvrzovat a jak pracovat s transakcema v PREHLED/DETAIL a jak idealne
potvrzovat jednotlive akce.... NEBO MI POSLAT NEJAKOU UKAZKU....MOC BY MI TO
POMOHLOOO...DEKUJI...

dotedka jsem to vse delal tak ze jsem mel na vse jednu transakci a tu jsem
furt potvrzoval...
jak ty zatroleny transakce fungujii...PLEASEEEE....

Ales Pavel
D6 Ent WXP
laik v profesionalnim kolotoci

CreateThread a predavani argumentu funkci

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.7.2002 01:58:09

From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>
> 2. ThreadWrapper je v implementation system.pas. Jaky to je rozdil kdyz tam
> je a nebo neni ?

Ze se z neho volaji nejake dalsi rutiny ke kterym nemas pristup. Uprime receno
nechapu o co ti presne jde. Jde jen o to "v zadnem pripade nepouzit to co je v
RTL" ?

Ted jeste k tem rozdilum v pouziti CreateThread, BeginThread a TThread.
Na konci je pripojen maly priklad ruzneho chovani aplikace pri vzniku
neosetrene vyjimky v threadu (Delphi 6.02):

1. CreateThreadBtnClick - CreateThread

V tomto pripade bude aplikace po vyjimce ihned ukoncena. To asi neni presne to
chovani, ktere by bylo zadouci.

2. BeginThreadBtnClick - BeginThread

V tomto pripade se zavola Exception Handler (System._ExceptionHandler) ktery
tuto vyjimku obslouzi pomoci procedury v System.ExceptProc. Standartni obsluha
vola SysUtils.ExceptHandler ktery zobrazi dialog s vyjimkou a po te aplikaci
ukonci. Tuto obsluhu lze samozrejme upravit.

3. TThreadBtnClick - TThread

V tomto pripade nebude zobrazeno zadne chybove hlaseni, beh threadu se ukonci
a neosetrenou vyjimku je mozne ziskat v TThread.FatalException. Aplikace
pobezi dal.

//--------------------------------------------------------------------------

type
TMyThread = class(TThread)
protected
procedure Execute; override;
public
constructor Create;
end;

{ TMyThread }

constructor TMyThread.Create;
begin
inherited Create(True);
FreeOnTerminate := True;
Resume;
end;

procedure TMyThread.Execute;
begin
raise Exception.Create('Error');
end;

//--------------------------------------------------------------------------

procedure ThreadRoutine(Param: Integer); stdcall;
begin
raise Exception.Create('Error');
end;

//--------------------------------------------------------------------------

procedure TForm1.CreateThreadBtnClick(Sender: TObject);
var
ThreadID: DWORD;
begin
if CreateThread(nil, 0, (zv)ThreadRoutine, nil, 0, ThreadID) = 0 then
RaiseLastOSError;
end;

procedure TForm1.BeginThreadBtnClick(Sender: TObject);
var
ThreadID: DWORD;
begin
if BeginThread(nil, 0, (zv)ThreadRoutine, nil, 0, ThreadID) = 0 then
RaiseLastOSError;
end;

procedure TForm1.TThreadBtnClick(Sender: TObject);
begin
TMyThread.Create;
end;

Petr Vones

© Delphi.cz, program netcode.cz, 2008-9.