Archív konference Delphi

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

Pristup k Paradox tbl

[*] Foldyna Ji�� <jiri.f(zv)avizo(tec)cz> - 29.12.1999 13:25:58

> > mam problem - potreboval bych se dostat na tabulku Paradox,
> staci pro
> > cteni a nechci pouzit BDE. Tabulka je chranena heslem, obsahuje i
> > BLOBy. Zkousel jsem pristup pres ADONIS komponenty, ale
> dostavam chybu
> > 10498 - chyba externiho driveru. Heslo samozrejme znam, pres DB
> > Desktop se tabulka da otevrit. Nevite nekdo, jak na to ?
>
> Patrne mas v hlavicce Pdx tabulky jazykovy driver.

No jo, ale co s tim ?
Kdyz pouziju tento connection string
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Temp\TesData;Extended
Properties="Paradox 7.X;"
(property DatabaseConnect) a tabulka neni zaheslovana, vse je O.K.
(langdriver nelangdriver). Kdyz je tataz tabulka zaheslovana, tak to zacne
hlasit
Unexpected error from external database driver (10498).

Chybu ohlasi pri pokusu o nastaveni vlastnosti Active na true u navazujici
tabulky (ADOTable). Tentyz postup u nezaheslovane tabulky projde bez
problemu, data z tabulky se pak daji v pohode zobrazit treba DBGridem.

Ing. Jiri Foldyna
mailto:jiri.f(zv)avizo(tec)cz

kalendar (D3)

[*] Vladimir Ponechal <Vladimir_Ponechal(zv)tesco-europe(tec)com> - 29.12.1999 13:29:35

Mel bych otazecku...
Mam standardni komponentu z D3 kalendar. Tento kalendar by mel slouzit jak
pro zobrazovani informaci tak pro vkladani informaci. Polozka (den) kde se
jiz nachazi nejaka informace by mela zmenit barvu. Jak muzu v standardnim
kalendari v D3 zmenit barvu jedine polozky-dne? je to mozne?
Diky.
Vlada Ponechal.

Ciara ako v Corel Draw

[*] Petr.Motlicek(zv)bcbrno(tec)cz - 29.12.1999 14:07:34

> viete mi poradit, ako urobit program v Delphi (C++ Builder), s ktorym budem
> kreslit ciary, ktore po nakresleni budem moct premiestnovat a natahovat
> pomocou mysi? Nieco podobne ako v Corel Draw.

Ahoj,

(psano pro D3, D2)

no asi bude nejlepsi, kdyz se podivas do
UserGuide-u nebo v knizce Teach yourself
Delphi in 21 days (dodavane s D2 standard).
Pokud si dobre pamatuji, jsou tam priklady
"kreslicich" aplikaci.

Ale alespon strucne:

Zkus zacit kreslit na TPaintBox (zalozka
System).
Aby sis "zapamtoval" nakreslene objekty budes
si nejspis muset vytvorit objekty, neco jako (ber
to spis jako slang)

TMyShape = class
procedure Paint(Kam :
TCanvas);virtual;abstract;
procedure Highlight(Kam :
TCanvas);virtual;abstract;

function GetCoordinate(I : integer) :
TPoint;abstract;virtual;
property Points[I : integer] : TPoint : GetPoint
write SetPoint;

function PointCount : integer;abstact;virtual;
property PointCount : integer read
GetPointCount;
end;

TMyRectangle = class(TMyShape)
Rect : TRect;

function GetPointCount;override; (vzdy 4);

function GetPoint(I : integer);override;
begin
Move((zv)Rect+I*SizeOf(Rect.X),
Result,SizeOf(Rect.X))
end;

end;

atd...atd...atd.

Je toho hodne co by se dalo napsat. Kdyz tak
si privatne mailni. Kdysi jsem delal nejaky
kreslici program z nejakeho duvodu. Je sice
"prasackej" co se tyce koncepce a
komentovani a obsahuje chyby, nicmene
nejake implementacni "figle", vyuziti regionu,
zvyrazneni objektu, SendToBack, posouvani
objeku, vypis souradnic, vznik noveho objektu
(shapu), kombinace s bitmapou, ulozeni do
suboru, vykreslovani bez flashe ... atd by si
mohl vypozorovat

Petr Motlicek

konec windows a spustenej program

[*] Martin Pe�ek <pesek.martin(zv)mymail(tec)cz> - 29.12.1999 18:06:17

Zdravim !!!
Takze to co mam v udalosti onClick mam dat do procedury WMKoniecWindows ? A ten kus zdrojaku, co je v procedure WMKoniecWindows tam musi bejt ? Pokud ano, muj kus zdrojaku z onClick tam mam dat za to nebo pred to ? Predem dik a cau Martin.

E-Mail:
pesek.martin(zv)telecom(tec)cz

----- Original Message -----
From: Pavol Kaka�ka
To: delphi-l(zv)fwd(tec)cz
Sent: Tuesday, December 28, 1999 1:11 PM
Subject: Re: konec windows a spustenej program


To ako Tvoj program ukoncia Wokna mas v rukach Ty. Wokna pri poziadavku na ukoncenie posielaju vsetkym aplikaciam message WM QUERYENDSESSION (+ WM ENDSESSION - vysielana pri ukonceni Windows). Podla toho aky vysledok vrati app sa Windows zachovaju (bud sa vypnu, alebo nie). Napisat to mozes do objektu napr. takto:
private
procedure WMKoniecWindows(var Msg: TMessage); message WM ENDSESSION;
procedure WMKoniecWin(var Msg: TMessage); message WM QUERYENDSESSION; {dotaz}
...

a pootom tam nieco urobit: (napriklad zavolat udalosti co robis rucne pri ukoncovani aplikacie)

procedure TKStowageF.WMKoniecWin(var Msg: TMessage);
begin
Msg.Result := 1; // Moze sa vypnut
end;

procedure TfrmKWatch.WMKoniecWindows(var Msg: TMessage); // Toto sa vykona pri ukonci Windows
var
D: TKsGuardian;
begin
if anDetektiv then
begin
D := TKsGuardian.Create;
D.Udalost(udEndSession);
D.Free;
end;
...
end;

Ak urobis toto nemalo by dochadzat k nejaky poskodeniam. (Ale v oblasti PC clovek nikdy nevie ;-D} Ale ani ak to neurobis, len si musis uvedomit, ze sa Ti nemusi vykonat vssetko co chces!

Pavol Kaka�ka
paka(zv)aktis(tec)cz


Jak tedy lepe s SQL ?

[*] Pavel Medek <Pavel.Medek(zv)talema(tec)cz> - 29.12.1999 18:33:10

----- Original Message -----
From: Zbysek Hlinka <zhlinka(zv)login(tec)cz>
> Jedna vec je prohlizeni, druha vec je editovani. Rozhodne povazuji
> za bezpecnejsi editovat mimo ostra data. Tedy budto v TEditech na
> klientovi, nebo, je-li to v dane situaci vyhodnejsi, nad temporary
> daty.

Jaky je pro toto doporuceni hlavni duvod ?
Pokud edituji v IB tak blokuji jen ten jeden zaznam a pokud klient spadne
tak se snad nic nedeje, server si s tim snad poradi, nemely by snad byt ani
obavy o zachovani integrity. Takze jde hlavne o tu flexibilitu ohlednete
typu ?

Jinak pokud jsem psal o Table (resp. TTable) mel jsem spis na mysli
TIBTable,
ktera je stejne vnitrne implementovana pomoci prikazu SQL, takze je to
trosku
neco jineho nez klasicka TTable. I u teto TIBTable plati zasadne odmitave
stanovisko ?
Jestli ano proc ? Protoze nevim jak VCL implementuje moje potreby, bud me to
az
tak nezajima nebo se mohu podivat do VCL a uvidim, ze treba EmptyTable
stejne
udela klasicky delete from table pres dynamicky vytvoreny SQL Nebo je v tom
taky neco jineho ?

Doufam, ze tato debata (chapu, ze pro nektere trosku primitivni) je prinosna
i pro
dalsi ucastniky konference, nebot by mohla trosku osvetlit rozdilnost
pristupu
v programovani C/S SQL na strane klienta (delphi) oproti souborovym
databazim.
Pavel M.

Kopie zaznamu a zaznamu podrizenych tabulek

[*] Pavel Medek <Pavel.Medek(zv)talema(tec)cz> - 29.12.1999 19:16:12

Ja to delam (pro trosku jiny ucel) tak, ze to nactu do pole a pak
to ulozim.

var
polozka : array[1..200] of String ;
pocet : array[1..200] of Double ;
i,j : SmallInt;*** nacteni ***

tbFaktura2.First;
i := 0;
while not tbFaktura2.EOF do
begin
i := i + 1;
polozka[i] := tbFaktura2Popis.Value;
pocet[i] := tbFaktura2Pocet.Value;
tbFaktura2.Next;
end;

*** ulozeni ****

for j := 1 to i do
begin
XX.tbFak k2.Append; *** mozna by bylo lepsi InsertRecord ******
XX.tbFak k2Popis.Value := polozka[j];
XX.tbFak k2Pocet.Value := pocet[j] ;
XX.tbFak k2.Post;
end;


Pavel M.

p.s. nerekl jsi pro jakou databazi to chces. Tohle pouzivam pro Paradox.

----- Original Message -----
From: Ji�� Fait Jak co nejcisteji naprogramovat nasledujici akci:

Mam ridici tabulku npr. Hlavicka faktury a jeji podrizenou (nebo vice podrizenych) tabulek napr. Polozky faktury.

Jak zkopirvat aktualni zaznam i s podrizenymy tabulkami.

Ja to urcity zpusobem resim, ale zajimalo by mne jak by to udelal nekdo jiny.

Diky


Zoznam kompatibility premennych Win32

[*] Roland Tur�an - RoTurSoft <rotursoft(zv)nextra.sk> - 29.12.1999 21:48:08

Kde najdem zoznam kompatibility premennych Win32 s klasickymi Delphi var.

Best regards.

Hi. Roland Turcan


FontDialog

[*] Straka Josef <kshb(zv)seznam(tec)cz> - 29.12.1999 22:13:08

D4 standard W95 OSR2
omlouvam se za predchozi mail, poslal jsem to jako html a to jsem asi
neudelal dobre.

mam jeden dotaz ohledne FontDialogu. V ObjectInspectoru je mnoho Option, ale
ja bych potreboval neco specialniho.

Potreboval bych schovat CheckButtony na podtrzene pismo a preskrtnute pismo.
Ale tak, aby tam zustala moznost zmenit barvu pisma, nejde tedy pouzit
FontDialog.Option.

Pote druha vec, jeste bych potreboval schovat "Rez pisma" (tucne,
kurziva...), ale aby tam vse ostatni zustalo (velikost).

Idealni by bylo, kdyby slo tyto polozky znepristupnit Enabled.False. Aby tam
ta polozky byly, ale nedalo se na ne klepnout.

Vim, ze by slo udelat si vlastni FontDialog, ale ze dvou duvodu bych se
priklanel, ke stavajicimu:
1) nastavit/upravit stavajici je rychlejsi
2) uzivatel je zvykly na standardni vizaz FontDialogu

Zacinajici amatersky programator dekuje za kazdou pomoc.
Straka Josef
email: strakaj(zv)hba(tec)czn(tec)cz
www: http://mujweb(tec)cz/www/strakaj/

Nahrada TDBCheckBx.

[*] Roland Tur�an - RoTurSoft <rotursoft(zv)nextra.sk> - 29.12.1999 23:03:05

Chcel by som nahradi� klasicky TDBCheckbox na komponentu z radu TDBComboBox,
aby reagovala na stav boolean field v databaze, tak je ak je True nech je
zvolene Ano, a ked False tak Nie.

Ak viete kde mozem takuto komponentu zohnat, alebo ako upravim TDBComboBox,
tak vam vopred dakujem.

Best regards.

Hi. Roland Turcan

Jak zjistit zda internet explorer docetl stranku?

[*] Paja <delphi4(zv)seznam(tec)cz> - 29.12.1999 23:27:09

Nazdar kolegove,

Narazil jsem na pro me zatim neresitelny problem <Jak zjistit zda internet
explorer docetl stranku?>

To znamena ze ja pomoci Delph chci zjistit zda je ta ktera stranka jiz zcela
nactena(Tozn. ze internet explorer napise ve status line "Hotovo")
Snad to pro vas nebude tak tezke

Dikec Paja


Desetinna carka

[*] Jan Fiala <jan.fiala(zv)iol(tec)cz> - 30.12.1999 06:25:40


----- Original Message -----
From: Petr Reichl <reichl(zv)atlas(tec)cz>> Muzete mi poradi jak mam pocitat s cislem s desetinnou carkou?
>
> Mam nasledujici problem. V ListView dostanu jako text cislo s desetinnou
> carkou a ja potrebuji toto cislo vynasobit celym cislem a vysledek opet
> zobrazit jako text v Edit.
>
> var rSazba, rVysledek : Real48;
> intPocet, intCode : Integer;
> begin
> try
> intPocet := StrToInt(txtPocetMJ.Text);
> Val(txtSazba.Text, rSazba, intCode);
>
> rVysledek := intPocet * rSazba;
>
> txtCastka.Text := FloatToStr(rVysledek);
> except
> on EConvertError do txtCastka.Text := '0';
> end;
> end;
>

Misto zobrazeni FloatToStr(rVysledek) zkus pouzit funkci
Format('%12.2f', [rVysledek]). Tam si muzes urcit vysledne
zobrazeni - pocet mist, pocet deset.mist atd.

Jan Fiala


Jak tedy lepe s SQL ?

[*] Jaro <jaro(zv)sinea(tec)cz> - 29.12.1999 22:23:11 -0800

> Jinak pokud jsem psal o Table (resp. TTable) mel jsem spis na mysli
> TIBTable,
> ktera je stejne vnitrne implementovana pomoci prikazu SQL, takze je to
> trosku
> neco jineho nez klasicka TTable. I u teto TIBTable plati zasadne odmitave
> stanovisko ?

V necem je to stejne a v necem je to jine. Stejne je to v tom, ze
nemuzes osetrit podminku pomoci klauzule WHERE a nastavit si libovolny
zpusob trideni pomoci ORDER BY. Proto se to nehodi tam, kde je vyzadovana
segregace dat (SLOUPCU i RADKU) jiz na serveru. Pokud neni segregace provedana,
pak muze dochazet k nadmernemu posilani i nezadoucich dat na klienta.
Z tohoto hlediska je pak pouziti TIBTable stejne tak nevhodne, jako TTable.
TTable take prevadi komunikaci se serverem na SQL. Pouziva k tomu vsak BDE,
zatimco TIB objekty nikoliv.
Asi nejvetsi rozdil v pristupu pomoci TIB objektu je v pouziti transakci.
Pro editaci zaznamu je vhodne vytvorit novy objekt (nejspise asi TIBDataset)
s vlastni TIBTransaction. Tim se zamkne jen editovany zaznam.
Transakce automaticky vytvareji zamky. Jinak je pouziti TIB objektu
obdobne.

Jaro

>
>
> Pavel M.

Pristup k Paradox tbl

[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 30.12.1999 08:22:52

Foldyna Ji�� wrote:

> > Patrne mas v hlavicce Pdx tabulky jazykovy driver.
>
> No jo, ale co s tim ?
> Kdyz pouziju tento connection string
> Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Temp\TesData;Extended
> Properties="Paradox 7.X;"
> (property DatabaseConnect) a tabulka neni zaheslovana, vse je O.K.
> (langdriver nelangdriver). Kdyz je tataz tabulka zaheslovana, tak to zacne
> hlasit
> Unexpected error from external database driver (10498).
>
> Chybu ohlasi pri pokusu o nastaveni vlastnosti Active na true u navazujici
> tabulky (ADOTable). Tentyz postup u nezaheslovane tabulky projde bez
> problemu, data z tabulky se pak daji v pohode zobrazit treba DBGridem.

Aha, takze problem s heslem. Pak tedy Pdx tabulku nehesluj,
stejne je to k nicemu, protoze existuje alespon jedno univerzalni
heslo, pres ktere se pripadny "lupic" do tabulky stejne dostane.


S pozdravem

Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ


konec windows a spustenej program

[*] Pavol Kaka�ka <paka(zv)aktis(tec)cz> - 30.12.1999 08:22:03

Ahoj!

Takze: to co je v WMKoniecWindows tam samozrjeme byt nemusi, to bol len priklad z mojho programu. Daj tam co chces aby sa Ti urobilo ked Windows ukoncuju Tvoju aplikaciu. Odhadujem, ze Ti staci dat:

procedure TForm1.WMKonecWindows(var Msg: TMessage);
begin
TvojButton1.Click;
end;
...

Pavol Kaka�ka
paka(zv)aktis(tec)cz
Zdravim !!!
Takze to co mam v udalosti onClick mam dat do procedury WMKoniecWindows ? A ten kus zdrojaku, co je v procedure WMKoniecWindows tam musi bejt ? Pokud ano, muj kus zdrojaku z onClick tam mam dat za to nebo pred to ? Predem dik a cau Martin.
To ako Tvoj program ukoncia Wokna mas v rukach Ty. Wokna pri poziadavku na ukoncenie posielaju vsetkym aplikaciam message WM QUERYENDSESSION (+ WM ENDSESSION - vysielana pri ukonceni Windows). Podla toho aky vysledok vrati app sa Windows zachovaju (bud sa vypnu, alebo nie). Napisat to mozes do objektu napr. takto:
private
procedure WMKoniecWindows(var Msg: TMessage); message WM ENDSESSION;
procedure WMKoniecWin(var Msg: TMessage); message WM QUERYENDSESSION; {dotaz}
...

a pootom tam nieco urobit: (napriklad zavolat udalosti co robis rucne pri ukoncovani aplikacie)

procedure TKStowageF.WMKoniecWin(var Msg: TMessage);
begin
Msg.Result := 1; // Moze sa vypnut
end;

procedure TfrmKWatch.WMKoniecWindows(var Msg: TMessage); // Toto sa vykona pri ukonci Windows
var
D: TKsGuardian;
begin
if anDetektiv then
begin
D := TKsGuardian.Create;
D.Udalost(udEndSession);
D.Free;
end;
...
end;

Ak urobis toto nemalo by dochadzat k nejaky poskodeniam. (Ale v oblasti PC clovek nikdy nevie ;-D} Ale ani ak to neurobis, len si musis uvedomit, ze sa Ti nemusi vykonat vssetko co chces!

Pavol Kaka�ka
paka(zv)aktis(tec)cz


Jak tedy lepe s SQL ?

[*] Lu�ek Tenkr�t - 30.12.1999 08:45:52

> Jedna vec je prohlizeni, druha vec je editovani. Rozhodne povazuji
> za bezpecnejsi editovat mimo ostra data. Tedy budto v TEditech na
> klientovi, nebo, je-li to v dane situaci vyhodnejsi, nad temporary
> daty.


Treba TIBDataSet tak pracuje. O editaci zaznamu server nevi a az pri Post se
vygeneruje SQL prikaz, ktery se posle serveru.

S pozdravem
Jan Seifert

Kooedinatz mysi mimo aplikaci

[*] Jmisek <jmisekdelphi(zv)seznam(tec)cz> - 30.12.1999 10:19:14

Cauves vsichni

Uvodem chci vsem poprat skvele proziti silvestra a vse nejlepsi do noveho roku

Mam otazku ohledne koordinatu mysi: Jak muzu jzistit pozici mysi i mimo
aplikaci, jeji X a Y na obrazovce.

Dikes a cau.

Desetinna carka

[*] Jan Fiala <jan.fiala(zv)iol(tec)cz> - 30.12.1999 10:22:16


>
> ----- Original Message -----
> From: Petr Reichl <reichl(zv)atlas(tec)cz>
>
>
> > Muzete mi poradi jak mam pocitat s cislem s desetinnou carkou?
> >
> > Mam nasledujici problem. V ListView dostanu jako text cislo s desetinnou
> > carkou a ja potrebuji toto cislo vynasobit celym cislem a vysledek opet
> > zobrazit jako text v Edit.
> >
> > var rSazba, rVysledek : Real48;
> > intPocet, intCode : Integer;
> > begin
> > try
> > intPocet := StrToInt(txtPocetMJ.Text);
> > Val(txtSazba.Text, rSazba, intCode);
> >
> > rVysledek := intPocet * rSazba;
> >
> > txtCastka.Text := FloatToStr(rVysledek);
> > except
> > on EConvertError do txtCastka.Text := '0';
> > end;
> > end;
> >

Omlouvam se za prvni prispevek, spatne jsem to pochopil.
V retezci si musis zmenit carku za tecku, pak to prevest na
cislo.

Jan Fiala

ARP tabulka z routeru (2).

[*] Gebauer Lukas <gebylist(zv)mlp(tec)cz> - 30.12.1999 10:34:39


> OK, Eexistuje nejaka komponenta pro SNMP??? Radeji dam prednost SNMP.
> Neznate nekdo nejakej link? My tady mame CISCO a IBM routery...

pristi verze Synapse (viz. link dole) bude umet SNMP protokol. Uz
je to napsane, chybu uz jen dodelat zakladni dokumentaci.
predpokladam tedy ze bude k dispozici nekdy pristi tyden...

Louci se Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
WEB: http://www.mlp(tec)cz/space/gebauerl/synapse - Synapse Delphi TCP/IP Library


Desetinna carka

[*] CHMEL Karel, Mgr. <kchmel(zv)csob(tec)cz> - 30.12.1999 10:54:55

A nebo m�sto funkce Val pou�ij StrToFloat.

Karel Chmel

-----P�vodn� zpr�va-----
Od: Jan Fiala [mailto:jan.fiala(zv)iol(tec)cz]
Odesl�no: 30. prosince 1999 6:26
Komu: delphi-l(zv)fwd(tec)cz
P�edm�t: Re: Desetinna carka



----- Original Message -----
From: Petr Reichl <reichl(zv)atlas(tec)cz>> Muzete mi poradi jak mam pocitat s cislem s desetinnou carkou?
>
> Mam nasledujici problem. V ListView dostanu jako text cislo s desetinnou
> carkou a ja potrebuji toto cislo vynasobit celym cislem a vysledek opet
> zobrazit jako text v Edit.
>
> var rSazba, rVysledek : Real48;
> intPocet, intCode : Integer;
> begin
> try
> intPocet := StrToInt(txtPocetMJ.Text);
> Val(txtSazba.Text, rSazba, intCode);
>
> rVysledek := intPocet * rSazba;
>
> txtCastka.Text := FloatToStr(rVysledek);
> except
> on EConvertError do txtCastka.Text := '0';
> end;
> end;
>

Misto zobrazeni FloatToStr(rVysledek) zkus pouzit funkci
Format('%12.2f', [rVysledek]). Tam si muzes urcit vysledne
zobrazeni - pocet mist, pocet deset.mist atd.

Jan Fiala


Pristup k Paradox tbl

[*] Foldyna Ji�� <jiri.f(zv)avizo(tec)cz> - 30.12.1999 11:52:53

> > Kdyz pouziju tento connection string
> > Provider=Microsoft.Jet.OLEDB.4.0;Data
> Source=E:\Temp\TesData;Extended
> > Properties="Paradox 7.X;"
> > (property DatabaseConnect) a tabulka neni zaheslovana, vse je O.K.
> > (langdriver nelangdriver). Kdyz je tataz tabulka
> zaheslovana, tak to zacne
> > hlasit
> > Unexpected error from external database driver (10498).
> >
> > Chybu ohlasi pri pokusu o nastaveni vlastnosti Active na
> true u navazujici
> > tabulky (ADOTable). Tentyz postup u nezaheslovane tabulky projde bez
> > problemu, data z tabulky se pak daji v pohode zobrazit
> treba DBGridem.
>
> Aha, takze problem s heslem. Pak tedy Pdx tabulku nehesluj,
> stejne je to k nicemu, protoze existuje alespon jedno univerzalni
> heslo, pres ktere se pripadny "lupic" do tabulky stejne dostane.

To bohuzel nemohu ovlivnit, delam browser na tabulku produkovanou jiz
existujicim systemem. Samozrejme to neni principialni problem, vyresil jsem
to pres BDE, ale trochu me sere, ze mi to nejde pres ADO.

Ing. Jiri Foldyna
mailto:jiri.f(zv)avizo(tec)cz


Jak tedy lepe s SQL ?

[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 30.12.1999 12:06:45

Pavel Medek wrote:

> > Jedna vec je prohlizeni, druha vec je editovani. Rozhodne povazuji
> > za bezpecnejsi editovat mimo ostra data. Tedy budto v TEditech na
> > klientovi, nebo, je-li to v dane situaci vyhodnejsi, nad temporary
> > daty.
>
> Jaky je pro toto doporuceni hlavni duvod ?
> Pokud edituji v IB tak blokuji jen ten jeden zaznam a pokud klient
> spadne tak se snad nic nedeje, server si s tim snad poradi, nemely by
> snad byt ani obavy o zachovani integrity. Takze jde hlavne o tu
> flexibilitu ohlednete typu ?

Transakce by mela byt co nejkratsi, blokovat nejaky zaznam delsi
dobu nez potrebnou pro provedeni zmeny by melo byt jen v dobre
oduvodnenych pripadech. Flexibilita typu nesouvisi s TTable, nebo
TQuery, ale s TDataSet a TXxxxFieldy, ktere (pokud vim) neumeji
pracovat vuci databazi s jinym typem.

> Jinak pokud jsem psal o Table (resp. TTable) mel jsem spis na mysli
> TIBTable, ktera je stejne vnitrne implementovana pomoci prikazu SQL,
> takze je to trosku neco jineho nez klasicka TTable. I u teto TIBTable
> plati zasadne odmitave stanovisko ? Jestli ano proc ? Protoze nevim
> jak VCL implementuje moje potreby, bud me to az tak nezajima nebo se
> mohu podivat do VCL a uvidim, ze treba EmptyTable stejne udela
> klasicky delete from table pres dynamicky vytvoreny SQL Nebo je v tom
> taky neco jineho ?

TTable spolupracuje s BDE, ktere vuci SQL databazi take
transformuje akce na SQL prikazy. Vysledek je stejny, jenom se
vlastni transformace provadi jinde. A protoze SQL dtabaze
komunikuje s okolim prostrednictvim SQL prikazu, je rozumnejsi
(rychlejsi, bezpecnejsi, ...) mluvit s databazi primo jejim jazykem.
Table sype vsechno, takze pouzit ji proti SQL databazi lze jen v
pripade, ze tabulka je mala a tak jako tak z ni chci vytahnout
vsechno. Je to ale pomalejsi, nez kdyz zavolas primo "select *
from tabulka" pres Query.

> Doufam, ze tato debata (chapu, ze pro nektere trosku primitivni) je
> prinosna i pro dalsi ucastniky konference, nebot by mohla trosku
> osvetlit rozdilnost pristupu v programovani C/S SQL na strane klienta
> (delphi) oproti souborovym databazim.

Doufejme. :-)


S pozdravem

Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ


ARP tabulka z routeru (2).

[*] Martin Palas <PalasM(zv)kaucuk(tec)cz> - 30.12.1999 13:07:19

Super komponenty jsou na www.torry.ru
primo jako komponent baliky konkretne
od Fran�ois PIETTE (ma tam super balik pro internet)

Cau ..... JA


Jak zjistit zda internet explorer docetl stranku?

[*] Martin Palas <PalasM(zv)kaucuk(tec)cz> - 30.12.1999 13:31:23

Podle toho co chces zjistovat:

>To znamena ze ja pomoci Delph chci zjistit zda je ta ktera stranka jiz zcela
>nactena(Tozn. ze internet explorer napise ve status line "Hotovo")
>Snad to pro vas nebude tak tezke

dival jsem se na tvoji metodu a ta by potrebovala
do aplikace dat timer a stale testovat text.
Musel by sis napred zjistit hlavni okno prohlizece IE
(zase zalezi na verzi - ja to testoval na 5.0), jehoz
classname "IEFrame", ale beda jestli budes mit
spustenejch vic exploreru, tak se v tom potom
nevyznas. No, ale dale pak si musis zjistit dalsi
okno, ktere je child k IEFrame a jehoz classname
je "msctls_statusbar32". Pak uz by to mela byt sranda
a za pomoci message SB_GETTEXT by se to melo
dat zjistit. Pro upresneni wParam=cast stat. baru
lParam=pointer na buffer vysledku.
(Za pripadne nepresnosti se omlouvam, jsem jenom clovek.);


Mozna by to slo napsat i jinak, efektivneji za pouziti DDE
od IE nebo jineho mechanismu, ktery by se nalepil primo
na komunikacni kanal IE. To jsem zatim nezkoumal.

Cau ................. JA


Kooedinatz mysi mimo aplikaci

[*] Petr.Motlicek(zv)bcbrno(tec)cz - 30.12.1999 14:43:01

> Mam otazku ohledne koordinatu mysi: Jak muzu jzistit pozici mysi i mimo
> aplikaci, jeji X a Y na obrazovce.

Ahoj,

je to z WIN32.hlp

The GetCursorPos function retrieves the
cursor's position, in screen coordinates.

BOOL GetCursorPos(
LPPOINT lpPoint // address of structure
for cursor position
);

Spravne zavreni aplikace

[*] Va�ek N�vrat���zx"��뢖�z?� - 30.12.1999 15:26:35

Ahoj,
uz jsem to vyresil sam trivialnim figlem. Jo, mimochodem nemel jsem na mysli TrayIcon, ale TaskBar !! Resenim je to, ze jsem do procedury Form1.Close dal radek
ShowWindow (Application.Handle, SW HIDE);

Jak jednoduche... :-))

Vasek Navrat
...
Aka to je komponenta (ta TrayIcona) Mozno Rx... No ak je to ona (ale nemusi) tak by malo stacoit ak ju pred ukoncenim aplikacie schovas TrayIcon.Active := False;

Pavol Kaka�ka
paka(zv)aktis(tec)cz


Skryti TaskBaru

[*] Va�ek N�vrat���zx"��뢖�z?� - 30.12.1999 15:50:47

Ahoj,
moje aplikace musi(!!) vyuzivat celou obrazovku, ale kdyz ma nekdo u TaskBaru nastavenou vlastnost "Vzdy na vrchu", tak se tam ten TaskBar vzdy vecpe :-(. Zkusil jsem pouzit tyhle procedury:

PROCEDURE TForm1.Create (Sender: TObject);
VAR
WindowHandle: hWnd;
BEGIN
{Hide the Windows 95 Taskbar}
WindowHandle := FindWindow('Shell TrayWnd', '');
IF WindowHandle <> 0
THEN ShowWindow(WindowHandle, SW HIDE)
END {HideWin95TaskBar};

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
VAR
WindowHandle: hWnd;
BEGIN
{Allow the Windows 95 Taskbar to appear}
WindowHandle := FindWindow('Shell TrayWnd', '');
IF WindowHandle <> 0
THEN ShowWindow(WindowHandle, SW RESTORE)
END {ShowWin95TaskBar};

TaskBar sice po spusteni aplikace zmizel a bylo videt pozadi Windows, ale vsechny aplikace se chovaly jakoby tam furt byl. Dokazal by si s tim nekdo poradit? Je mi jedno jakym zpusobem, hlavne aby se aplikace pri maximalizaci roztahla pres uplne celou obrazovku - resenim by treba mohlo byt vypnuti prave jen ten funkce "Vzdy na vrchu" nebo pouziti DirectX, ale jak?

S pozdravem...
Vasek Navrat

P.S. Kazda rada dobra... :-))

Off Topic - for administrator

[*] Juraj.Talaba(zv)nup.sk - 30.12.1999 16:40:48



nazdar,
mam na teba jednu otazku. chcel by som uskutocnit zmenu e-mailu v ramci
konferencie. ako mam postupovat?
staci ti to takto nejako poslat alebo sa musim najskor odhlasit a znovu sa
prihlasit?
prosim ta posli mi tvoju adresu aby som to nemusel vybavovat na ukor
konferencie.

dakujem juro

Shadow database na druhy PC

[*] Miroslav Hostinsk� <abcsoft(zv)rychnov(tec)cz> - 30.12.1999 16:55:48

Ahoj,
je mozne mit stinovou databasi na druhem pocitaci v siti?
Aby se po docasnem odpojeni druheho PC a opetnem pripojeni automaticky
zaktualizovala?

predem dekuji Mira


Shadow database na druhy PC

[*] Miroslav Hostinsk� <abcsoft(zv)rychnov(tec)cz> - 31.12.1999 00:01:23

Nejde mi o replikaci, ale pouze o st�novou datab�zi.
zda ji lze vytvorit i na jinem pocitaci v siti.
CREATE SHADOW 1 AUTO "DB.shd"
Mira
----- Original Message -----
From: Jaro <jaro(zv)sinea(tec)cz>
To: <delphi-l(zv)fwd(tec)cz>
Sent: Friday, December 31, 1999 3:08 AM
Subject: RE: Shadow database na druhy PC


>
> Samozrejme. Toto je predmetem replikaci.
> Replikace ovsem musi byt vzajemne, protoze je nutno pocitat
> s tim, ze i v druhe databazi mohly probehnout zmeny.
> Jaro
> >
> >
> > Ahoj,
> > je mozne mit stinovou databasi na druhem pocitaci v siti?
> > Aby se po docasnem odpojeni druheho PC a opetnem pripojeni automaticky
> > zaktualizovala?
> >
> > predem dekuji Mira
> >

ListView

[*] Pavol Stolc <pstolc(zv)sc.sknet.sk> - 31.12.1999 00:54:28

Prosim poradte, D3

Pridavam do ListView polozky. Ked je ich pocet vacsi ako vyska ListView, pridavane polozky miznu pod horizontom. U komponenty Listbox stacilo nastavit vlastnost ItemIndex na polozku ktoru som chcel mat viditelnu a bolo to. Neviem prist na sposob ako tomuto prinutit ListView.

Navyse zapis

ListView.FocusedItem.Data := nil;

vyvola Internal Exception $0000000D. Je tam nejaka evidentna chyba?

So zelanim uspesneho noveho milenia zdravi,
Pavol Stolc
pstolc(zv)sc.sknet.sk


Jak tedy lepe s SQL ?

[*] Jaro <jaro(zv)sinea(tec)cz> - 30.12.1999 16:53:40 -0800


> > Jedna vec je prohlizeni, druha vec je editovani. Rozhodne povazuji
> > za bezpecnejsi editovat mimo ostra data. Tedy budto v TEditech na
> > klientovi, nebo, je-li to v dane situaci vyhodnejsi, nad temporary
> > daty.
>
> Treba TIBDataSet tak pracuje. O editaci zaznamu server nevi a az pri Post se
> vygeneruje SQL prikaz, ktery se posle serveru.

A to jeste jenom v pripade, ze neni aktivni vlastnost CachedUpdates.
Jinak se vsechny zmeny zaktulizuji najednou az po ApplyUpdates.
Do te doby pracuji stale jen na klientovi a server o nicem nevi.
Ale i v prpade, ze neni tato vlastnost aktivni, nebo i v pripade, ze uz byla
provedena metoda ApplyUpdates, mohu vsechny operace
zrusit prikazem RollBack pomoci pripojeneho TIBTransaction.
Rozdil je pouze v tom, ze v druhem pripade nedochazi k zadne komunikaci
se serverem dokud nezavolam metodu ApplyUpdates.
Otazka je, co jsou to ostra data. Na klientovi pracuji vzdy s kopii dat
i v pripade, ze je mam pripojeny na DB objekty. Pokud si tedy transakce,
ridim sam, pak se nemusim obavat nechtenych zapisu ani v pripade
pouziti DB objektu. Ja takto pracuji jiz delsi dobu a nemam zadne potize.
Osobne jsem presvedcen, ze tuto komunikaci Delphi (zejmena
v pripade TIB objektu) zvlada dobre a neni potreba vymyslet nejake klicky.
Jaro


> S pozdravem
> Jan Seifert
>

Shadow database na druhy PC

[*] Jaro <jaro(zv)sinea(tec)cz> - 30.12.1999 18:08:11 -0800


Samozrejme. Toto je predmetem replikaci.
Replikace ovsem musi byt vzajemne, protoze je nutno pocitat
s tim, ze i v druhe databazi mohly probehnout zmeny.
Jaro
>
>
> Ahoj,
> je mozne mit stinovou databasi na druhem pocitaci v siti?
> Aby se po docasnem odpojeni druheho PC a opetnem pripojeni automaticky
> zaktualizovala?
>
> predem dekuji Mira
>

Nahrada TDBCheckBx.

[*] Pavel Medek <Pavel.Medek(zv)talema(tec)cz> - 31.12.1999 08:49:23

Na to ti staci standardni TDBComboBox.
1. V tabulce u pole, ktere chces ovladat, nastav properties DisplayValue na
"Ano;Ne"
2. U TDBComboBox v properties Items nastav dva radky prvni Ano druhy Ne.

No a melo by to behat tak jak chces.

Pavel



----- Original Message -----
From: Roland Tur�an - RoTurSoft <rotursoft(zv)nextra.sk>> Chcel by som nahradi� klasicky TDBCheckbox na komponentu z radu
TDBComboBox,
> aby reagovala na stav boolean field v databaze, tak je ak je True nech je
> zvolene Ano, a ked False tak Nie.
>
> Ak viete kde mozem takuto komponentu zohnat, alebo ako upravim
TDBComboBox,
> tak vam vopred dakujem.
>
> Best regards.
>
> Hi. Roland Turcan
>

Jak tedy lepe s SQL ?

[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 31.12.1999 11:47:27

Jaro wrote:

> > > Jedna vec je prohlizeni, druha vec je editovani. Rozhodne povazuji
> > > za bezpecnejsi editovat mimo ostra data. Tedy budto v TEditech na
> > > klientovi, nebo, je-li to v dane situaci vyhodnejsi, nad temporary
> > > daty.
> >
> > Treba TIBDataSet tak pracuje. O editaci zaznamu server nevi a az pri
> > Post se vygeneruje SQL prikaz, ktery se posle serveru.
>
> A to jeste jenom v pripade, ze neni aktivni vlastnost CachedUpdates.
> Jinak se vsechny zmeny zaktulizuji najednou az po ApplyUpdates. Do te
> doby pracuji stale jen na klientovi a server o nicem nevi. Ale i v
> prpade, ze neni tato vlastnost aktivni, nebo i v pripade, ze uz byla
> provedena metoda ApplyUpdates, mohu vsechny operace zrusit prikazem
> RollBack pomoci pripojeneho TIBTransaction. Rozdil je pouze v tom, ze
> v druhem pripade nedochazi k zadne komunikaci se serverem dokud
> nezavolam metodu ApplyUpdates. Otazka je, co jsou to ostra data. Na
> klientovi pracuji vzdy s kopii dat i v pripade, ze je mam pripojeny na
> DB objekty. Pokud si tedy transakce, ridim sam, pak se nemusim obavat
> nechtenych zapisu ani v pripade pouziti DB objektu. Ja takto pracuji
> jiz delsi dobu a nemam zadne potize. Osobne jsem presvedcen, ze tuto
> komunikaci Delphi (zejmena v pripade TIB objektu) zvlada dobre a neni
> potreba vymyslet nejake klicky. Jaro

Mno, v pripade SQL databazi se vlastne vzdy pracuje s kopii dat.
Takze terminem "pracuje nad ostrymi daty" muzeme chapat takove
chovani komponent, jako by nad nimi pracovaly. Sem patri
napriklad takoveto priznaky:
- pokud spadne spojeni s databazi, prijdeme o kopii dat;
- pokud chci ulozit data a nekdo me predbehne, komponenty vrati
chybu a nedovoli mi dalsi rozhodovani co s porizenymi daty (tato
vlastnost - znam ji z BDE - me obzvlaste irituje);
- v horsich pripadech zahajuje transakci uz v okamziku volani
metody Edit/Insert.


S pozdravem

Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ


Shadow database na druhy PC

[*] Zbysek Hlinka <zhlinka(zv)login(tec)cz> - 31.12.1999 11:47:27

Miroslav Hostinsk� wrote:

> je mozne mit stinovou databasi na druhem pocitaci v siti?
> Aby se po docasnem odpojeni druheho PC a opetnem pripojeni automaticky
> zaktualizovala?

Jiste. Nektere databaze (obvykle starsi verze) maji v nastaveni
vlastnost zrcadleni. Nyni je spise trend sverovat zrcadleni spise
zelezu a/nebo specialnimu softwaru, ktery se o zrcadleni umi
postarat.


S pozdravem

Zbysek Hlinka
E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
Phones: 02/795 29 56; GSM: 0603 551 282
Krystofova 1016, 149 00 Praha 4
CZ


Instalace pod Delphi 3 a BDE 5.01

[*] mbartone(zv)Synthesia(tec)cz - 31.12.1999 13:05:05



Ahoj,

Pokud jsem mel D 3 C/S a BDE 4.51 InstalShield delal instalace dobre.

Provedl jsem update BDE na verzi 5.01 a nove instalace mi prestaly chodit.
Pri instalovani napise

Chyba pri predani informace
Konfiguracni soubor C:\.......\BDE\IDAPI32.CNF

V cem mam chybu ?

Milan

DBGrid z zobrazeni boolean

[*] Karel Kral <kral(zv)purus(tec)cz> - 31.12.1999 13:52:39

Muzete me poradit, jak to udelat, aby DBGrid zobrazoval hodnoty boolean
jinak, nez True a False?
Jde o to, ze mam napr. v databazi pole boolean "Odeslano" a chci ho
zobrazit uzivateli v DBGrid. Misto zobrazovani True a False bych si
predstavoval zobrazit napr X a mezeru nebo lepe nejakou znacku a mezeru.
Zatim to resim tak, ze misto hodnoty boolean mam v databazi pole char a
do nej davam X nebo mezeru, ale to neni zrovna ono.
--
______________________________________________________
Karel Kral, informatik
Purus, s.r.o., Cezavy 627, 664 56 Blucina
Tel: 05/47235000, 0602/552432, Fax: 05/47231203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________


DBGrid z zobrazeni boolean

[*] Petr Vale� - 31.12.1999 15:25:49

Klikni si dvakrat na komponentu TQuery nebo TTable ve vyvojovem prostredi a
zobrazi se ti okno do ktereho pomoci praveho tlacitka mysi a funkce "Add all
fields" dostanes vsechny pole z dane tabulky. Pote si uz staci jenom
kliknout na to pole "Odeslano" Object Inspector -> Events a je to metoda
OnGetText

zbytek uz pochopis ...

S pozdarevem PETR

Stastnej a veselej ...

-----P�vodn� zpr�va-----
Od: Karel Kral <kral(zv)purus(tec)cz>
Komu: Konference Delphi <delphi-l(zv)fwd(tec)cz>
Datum: 31. prosince 1999 13:52
P�edm�t: DBGrid z zobrazeni boolean


>Muzete me poradit, jak to udelat, aby DBGrid zobrazoval hodnoty boolean
>jinak, nez True a False?
>Jde o to, ze mam napr. v databazi pole boolean "Odeslano" a chci ho
>zobrazit uzivateli v DBGrid. Misto zobrazovani True a False bych si
>predstavoval zobrazit napr X a mezeru nebo lepe nejakou znacku a mezeru.
>Zatim to resim tak, ze misto hodnoty boolean mam v databazi pole char a
>do nej davam X nebo mezeru, ale to neni zrovna ono.
>--
>______________________________________________________
>Karel Kral, informatik
>Purus, s.r.o., Cezavy 627, 664 56 Blucina
>Tel: 05/47235000, 0602/552432, Fax: 05/47231203
>E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
>______________________________________________________
>

DBGrid z zobrazeni boolean

[*] Pavel Medek <Pavel.Medek(zv)talema(tec)cz> - 31.12.1999 15:34:33

Staci si nastavit v tabulce u pole, ktere chces ovladat properties
DisplayValue na
"X;-" nebo jak jinak to potrebujes a bude to zobrazovat tak jak potrebujes
a to nejen v Gridu.


Pavel


p.s. Jinak zustat u pole char ma sve vyhody, nebot pri prechodu na SQL,
ktere
nema boolean (a to je tusim vetsina) to nebudes muset prepisovat.


----- Original Message -----
From: Karel Kral <kral(zv)purus(tec)cz>> Muzete me poradit, jak to udelat, aby DBGrid zobrazoval hodnoty boolean
> jinak, nez True a False?
> Jde o to, ze mam napr. v databazi pole boolean "Odeslano" a chci ho
> zobrazit uzivateli v DBGrid. Misto zobrazovani True a False bych si
> predstavoval zobrazit napr X a mezeru nebo lepe nejakou znacku a mezeru.
> Zatim to resim tak, ze misto hodnoty boolean mam v databazi pole char a
> do nej davam X nebo mezeru, ale to neni zrovna ono.

Shadow database na druhy PC

[*] Jaro <jaro(zv)sinea(tec)cz> - 31.12.1999 12:45:53 -0800

Se zalozenim na vzdalenem zarizeni nebude jiste problem.
Staci, kdyz do nazvu pridas cestu. Problem asi nastane,
pokud zarizeni nebude aktivni.
Jaro
>
> Nejde mi o replikaci, ale pouze o stinovou databazi.
> zda ji lze vytvorit i na jinem pocitaci v siti.
> CREATE SHADOW 1 AUTO "DB.shd"
> Mira
> ----- Original Message -----
> From: Jaro <jaro(zv)sinea(tec)cz>
> To: <delphi-l(zv)fwd(tec)cz>
> Sent: Friday, December 31, 1999 3:08 AM
> Subject: RE: Shadow database na druhy PC
>

Jak tedy lepe s SQL ?

[*] Jaro <jaro(zv)sinea(tec)cz> - 31.12.1999 13:14:02 -0800

> - pokud spadne spojeni s databazi, prijdeme o kopii dat;

To jeste neni tragedie. Kopii dat lze snadno poridit znovu.

> - pokud chci ulozit data a nekdo me predbehne, komponenty vrati
> chybu a nedovoli mi dalsi rozhodovani co s porizenymi daty (tato
> vlastnost - znam ji z BDE - me obzvlaste irituje);

To je jiste neprijemna vlastnost, ale da se zpravidla celkem
snadno osetrit.

> - v horsich pripadech zahajuje transakci uz v okamziku volani
> metody Edit/Insert.

Pokud zaroven nedochazi k vytvoreni zamku nebo blokovani
jinych transakci, tak ani zde neni problem. Zpravidla to neni vsak
potreba. TIB objekty prinaseji do tohoto sveta trochu jinou logiku.
Zde bez aktivniho objektu TIBTransaction neotevres ani tabulku
(TIBQuery, TIBTable, TIBDataSet nebo TIBStoredProc).
Nejpozdeji pri Open se zahaji transakce automaticky, pokud jsi tak
neucinil jiz drive sam. Zpocatku jsem z toho byl take prekvapen.
Zde je vsak (narozdil od TDatabase) mozne nastatovat vlastnosti
(urovne) takovych transakci a to dava nove zajimave moznosti.
V ramci otevrene transakce muzes napr. provadet Close a Open
DataSetu aniz by se obnovovala komunikace se serverem.
Diky mnohem efektivnejsimu zpusobu rizeni transakci lze
komunikaci se serverem lepe ovlivnovat a mit ji tak pod kontrolou.
V tomto pripade tedy uz neplati, ze otevreni transakce na zacatku
je tou horsi volbou. Transakce se zahajuje uz pri otevirani tabulky
nutne, ale to je tim, ze neni transakce jako transakce.
Jaro
>
>
> S pozdravem
>
> Zbysek Hlinka
> E-mail: zhlinka(zv)login(tec)cz, localizator(zv)localizator.com
> Phones: 02/795 29 56; GSM: 0603 551 282
> Krystofova 1016, 149 00 Praha 4
> CZ
>

DBGrid z zobrazeni boolean

[*] Jaro <jaro(zv)sinea(tec)cz> - 31.12.1999 15:36:03 -0800

Udelej si kalkulacni polozku typu string.

V udalosti OnCalcField pak muzes radit jak chces.
napr.

if FieldByName('Odeslano').AsBolean then
FieldByName('StrOdeslano').AsString := 'X'
else
FieldByName('StrOdeslano').AsString := ' ';

Jaro


>
> Muzete me poradit, jak to udelat, aby DBGrid zobrazoval hodnoty boolean
> jinak, nez True a False?
> Jde o to, ze mam napr. v databazi pole boolean "Odeslano" a chci ho
> zobrazit uzivateli v DBGrid. Misto zobrazovani True a False bych si
> predstavoval zobrazit napr X a mezeru nebo lepe nejakou znacku a mezeru.
> Zatim to resim tak, ze misto hodnoty boolean mam v databazi pole char a
> do nej davam X nebo mezeru, ale to neni zrovna ono.
> --
> ______________________________________________________
> Karel Kral, informatik
> Purus, s.r.o., Cezavy 627, 664 56 Blucina
> Tel: 05/47235000, 0602/552432, Fax: 05/47231203
> E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
> ______________________________________________________
>

Spravne zavreni aplikace

[*] Mirek Junek <mjunek(zv)uo.fairnet(tec)cz> - 29.1.2000 08:18:25

From: Va�ek N�vrat <engine(zv)ropacek(tec)cz>
> A ted k problemu: Rok pracuju na jednom programu a uz pekne dlouho mi to
vzdycky po
> ukonceni programu (Form1.Close) necha stale dole v taskbaru ikonku s tim
programem.
> Kdyz na ni klinu, tak zmizi a vse je v pohode. Dival jsem se do seznamu
uloh a hned
> Delphi 4 na Windows 98 Cz

>Tusim ze tohle je chyba Win98 (a Active Desktopu). Zkus to na jinych
Windows.

> Petr Vones, amatersky programator

Obavam se , ze Petr ma pravdu. Me v taskbaru zustava i prazdne tlacitko po
screensaver-u (pouzivam blank screen), dokonce se jich tam objevuje nekolik.
Takze to je asi opet nejaka skolacka chybicka od M$ ve W98.

Mirek


Insufficient disc space

[*] Mirek Junek <mjunek(zv)uo.fairnet(tec)cz> - 29.1.2000 16:14:00



| Mam problem pri pouziti paradox tabulek na CD. Aplikace samozrejme nic
nezapisuje do databaze, jen se snazi cist. Presto mi to haze hlasku
Insufficient disc space. Nevite co s tim ?
|

{
TI1333D.txt Accessing Paradox Tables on CD or Read-Only Drive
Category :Database Programming
Platform :All
Product :Delphi All
}

{
This Technical Information document will step through the concepts
regarding accessing Paradox tables which are located on a CD-ROM or
any read-only device.
}

{
The Paradox locking scheme requires the existence of a PDOXUSRS.LCK
file to handle its locking logic. This file is generally created at
run-time and resides in the directory which also contains the tables.
However, with a CD-ROM there is not a way to create this file at
run-time on the CD-ROM. The solution is simple, we create this file
and put it on the CD-ROM when the CD is pressed. The following steps
will give you a very simple utility program for creating the
PDOXUSRS.LCK file which you will then copy to the CD-ROM image.
}
{
1. Starting with a blank project add the following components: TEdit,
TButton and TDatabase.

2. In the OnClick event for the button use the following code:
}
procedure TForm1.Button1Click(Sender: TObject);
begin
if ChkPath then
Check(DbiAcqPersistTableLock(Database1.Handle,
'PARADOX.DRO','PARADOX'));
end;
{
3. The ChkPath function is a user defined method of the form. It will
simply check the path entered in the Edit box and make sure it exists.
Here is the function:
}

function TForm1.ChkPath : Boolean;
var
s : array[0..100] of char;
begin
If DirectoryExists(Edit1.Text) then begin
DataBase1.DatabaseName:= 'TempDB';
DataBase1.DriverName:= 'Standard';
DataBase1.LoginPrompt:= false;
DataBase1.Connected := False;
DataBase1.Params.Add('Path=' + Edit1.Text);
DataBase1.Connected := TRUE;
Result := TRUE;
end
else begin
StrPCopy(s,'Directory : ' + Edit1.text + ' Does Not Exist');
Application.MessageBox(s, 'Error!', MB_ICONSTOP);
Result := FALSE;
end;
end;

{ Note: Don't forget to put the function header in the public section
of the form.}{
4. There is one more thing you need to add before compiling, in the

Uses statement at the top of the unit add the following units:
Delphi 1.0: FileCtrl, DbiProcs, DbiTypes, DbiErrs.
Delphi 2.0: FileCtrl , BDE

When you have compiled and executed the utility program, it will
create two files in the directory you specified. The two files created
are: PDOXUSRS.LCK and PARADOX.LCK.

Note: The PARADOX.LCK file is only necessary when accessing Paradox for
DOS tables so you can delete it.

5. The only thing left for you to do is copy the remaining file
(PDOXUSRS.LCK) to the CD-ROM image. Of course your tables will be
Read-Only.

Note: If you want to clean up this utility for future use, you can
change the text property of the Edit box to be some default directory
and change the Caption property of the Button to be something more
meaningful.
}

{Here is the final version of the code:}

unit Unit1;

interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs, DB, StdCtrls, FileCtrl,
{$IFDEF WIN32}
BDE;
{$ELSE}
DbiProcs, DbiTypes, DbiErrs;
{$ENDIF }

type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Database1: TDatabase;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
function ChkPath : Boolean;
end;

var
Form1: TForm1;

implementation
{$R *.DFM}

function TForm1.ChkPath : Boolean;
var
s : array[0..100] of char;
begin
If DirectoryExists(Edit1.Text) then begin
DataBase1.DatabaseName:= 'TempDB';
DataBase1.DriverName:= 'Standard';
DataBase1.LoginPrompt:= false;
DataBase1.Connected := False;
DataBase1.Params.Add('Path=' + Edit1.Text);
DataBase1.Connected := TRUE;
Result := TRUE;
end
else begin
StrPCopy(s,'Directory : ' + Edit1.text + ' Does Not Exist');
Application.MessageBox(s, 'Error!', MB_ICONSTOP);
Result := FALSE;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if ChkPath then
Check(DbiAcqPersistTableLock(Database1.Handle,
'PARADOX.DRO','PARADOX'));
end;
end.


Hodne zdaru

Mirek Junek


Reindexace

[*] Bednar��k Dalibor - 10.12.2000 12:11:17

Da se nejak s Delphi dosahnout reindexace na typ tabulek FOXPRO?

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