Archív konference Delphi

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

Nabidka prace - ale v C

[*] Petr Brant <brant(zv)dcomm(tec)cz> - 23.8.2004 09:37:58

Ahoj vsem, i kdyz se jedna o konferenci o Delphi, snad se najde nekdo, kdo
by umel nasledujici:

Potrebujeme naprogramovat jednocipovy miropocitac, rada INFINEON/SIEMENS
C167 v C resp. assembleru, kompilator AC166. Veskere nabidky prosim na mail
auzky(zv)dcomm(tec)cz.

Diky

RNDr. Petr Brant [brant(zv)dcomm(tec)cz]
http://brant.wz(tec)cz
D&COMM s.r.o.
Korunovacni 6
Praha 7

ANN: Synapse release 33

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 23.8.2004 09:21:56

I pres to, ze Synapse oproti Indy pry neprinasi nic noveho, mame tu
dalsi verzi. ;-)

Nejdulezitejsi novinky jsou:

- Kompatibilita s FreePascal 1.9.4

- Experimentalni kompatibilita s Delphi 8

- Nova implementace SNMP protokolu, ktera podporuje verze v1, v2c a
v3!

- Synachar umi volitelne vyuzivat sluzeb ICONV knihovny. Diky tomu
Synachar, potazmo cela Synapse zvlada jiz 125 ruznych kodovani.

- Zcela novy parsing adresarovych vypisu u FTP.

- Mnoho a mnoho drobnych vylepseni.

- A pochopitelne i opravychyb se najdou.

Dekuji za pozornost. ;-)


--
Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Ararat Synapse - TCP/IP Lib.

Screen Resolution

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 23.8.2004 08:01:51

> Mam program D6/W2000/XP prelozeny pod 1024x768 s malymi fonty,
> velikost formulare pres celou obrazovku. Pokud je spusten pod jinym
> rozlisenim a jinymi fonty, typicky na notebooku, je zobrazen se
> scrollbary (vsechna okna a dialogy) Da se tomu nejak zabranit
> nastavenim parametru formularu?

Ahoj,

problem s malymi/velkymi fonty je tyrosku obecnejsi, dle zkusenosti dochazi nekdy k
daleko vetsimu pomrseni vzhledu formulare nez jen vznik scrollbaru.

Pokud v tvem pripade form vypada dobre a ma jen scrollbar, zkusil bych vypnout
property formu AutoScroll. Pokud neco opravdu leze za roh, pak asi nezbyde, nez si
zkusit pohrat s OnResize apod., pripadne pouzivat panely s vhodnymi Align...

Dalsi moznosti je na formech vypinat property Scaled - to muzes zkusit a rozhodnout,
zda vznikly efekt je akceptovatelny.

Rovnez upozornuji, ze zatimco na W98 se nastavuje velikost pisma ve Windows jednim
udajem (Velka/mala pisma), na XP existuji dva udaje - jednak velikost pisma a jednak i
DPI obrazovky, na coz program nereaguje stejne.

David Lebeda

Screen Resolution

[*] Honza <blue22(zv)quick(tec)cz> - 23.8.2004 07:45:50

Mam program D6/W2000/XP prelozeny pod 1024x768 s malymi fonty, velikost formulare pres celou obrazovku.
Pokud je spusten pod jinym rozlisenim a jinymi fonty, typicky na notebooku, je zobrazen se scrollbary (vsechna okna a dialogy)
Da se tomu nejak zabranit nastavenim parametru formularu?

Jak se da za behu programu zjistit rozliseni a velikost fontu, ze bych nasledne testoval je-li scrollbar zobrazen
a menil velikost okna tak, aby nepresahla velikost obrazovky danou rozlisenim ?

Pepa

HTML filter pro FreeReport

[*] Vlko II. <vlko(zv)zilina(tec)net> - 22.8.2004 21:49:00

On Sun, 22 Aug 2004 21:30:59 +0200, MAd <mad(zv)worldmail(tec)cz> wrote:

> Hezky den,
> existuje kvalitnejsi filter pro export do HTML z FreeReport. Originalni
> mi
> pripada hodne nekvalitni.

pre freereport asi nie, ale pre fastreport od verzie 2.4 existuju
profesialne
exportne filtre, fastreport, ako aj tieto filtre stoja nejake peniaze, nie
je
to ale moc. Viac priamo na http://fast-report.com. A exportne filtre:
http://www.pragnaan.com/fr/index.html. Bohuzial som ale neskusal:)

vlko


--


--------------
mail: vlko_(zv)pobox.sk
web: http://vlko.zilina.net

HTML filter pro FreeReport

[*] MAd <mad(zv)worldmail(tec)cz> - 22.8.2004 21:30:59

Hezky den,

existuje kvalitnejsi filter pro export do HTML z FreeReport. Originalni mi
pripada hodne nekvalitni.

Diky

S pozdravem Michal Adamek


ComboBox_Items - nacteni z Fieldu tabulky..

[*] Dalibor <dalibor(zv)torola(tec)cz> - 22.8.2004 20:46:56

Nevim jestli jsem to spravne pochopil.Myslis, neco takoveho?

while not dtsDatum.eof do begin
cbDatum.Items.Add(dtsDatum.FindField('DATUM').AsString);
dtsDatum.Next;
end;

From: "Lada" <lada.xt(zv)volny(tec)cz>
> Jakym zpusobem dostanu do Items ComboBoxu vsechny polozky konkretniho
> Fieldu tabulky DB...?
>
> D6, FB1.5

ComboBox_Items - nacteni z Fieldu tabulky..

[*] Lada <lada.xt(zv)volny(tec)cz> - 22.8.2004 19:34:50

Zdravim vsechny,

po dlouhem badani, ktere zatim k nicemu nevede prosim o pomoc..
Jakym zpusobem dostanu do Items ComboBoxu vsechny polozky konkretniho
Fieldu tabulky DB...?

D6, FB1.5


Za kazdou radu moc dekuju a preju peknej vecer,

Lada

Existuje hypoteticka moznost spustenia inej aplika

[*] Vlko II. <vlko(zv)zilina(tec)net> - 22.8.2004 16:42:39

Existuje nejaka hypoteticka moznost ako spustit lubovolnu exe aplikaciu
trevars
v mdi, popripade v nejakom paneli?

Trosku som pogooglil a nasiel som len moznost prepojit cez std in a out pre
konzolovu aplikaciu.
Dalej som edukacne skusal pomocou existujucich zaregistrovanych class
(z uz beziacich aplikacii) vytvorit pomocov CreateWindow, ale ani tadialto
cesta asi nevedie, vytvaralo to prazdne okna bez obsluhovacej funkcie.

nieco taketo:
(kde po je pointer na handle a classname: ClassName: array[0..127] of
Char;) GetClassName(HWND(po), Classname, SizeOf(ClassName));
results.Items.Add(Classname);
pomInstance := GetWindowLong(HWND(po), GWL_HINSTANCE );
GHWND := CreateWindowEx(
WS_EX_TOOLWINDOW ,
Classname,
'Generic Application',
WS_EX_TOOLWINDOW or WS_HSCROLL or WS_VSCROLL,
0,
0,
integer(CW_USEDEFAULT),
integer(CW_USEDEFAULT),
form1.Handle,
0,
pomInstance,
nil
);
if GHWND<>0 then
results.Items.Add('!!!OK!!!');
ShowWindow(GHWND,SW_SHOW )

nuz a posielam mu postupne vsetky handle na beziace aplikacie, nuz
a vytvori to uz zname prazdne okna

Nuz dalej len cisto teoreticky uvazujem, ze mozu existovat 2 cesty
1. existuje nejaky nedokumentovany parameter pre CreateProcess, ktory
urobi pozadovane vytvorenie child okna
alebo
2. nejakym sposobom premapovat WndProc funkciu na vlastny panel.

Nuz teda neviem, stretol sa niekto s aplikaciou, ktora nieco taketo
dokaze? Popripade videl niekto nejaky shell replacer, ktory by take
nieco dokazal? Alebo je to boj s veternymi mlynmi a taketo nieco nie
je mozne?

Vdaka za kazdu odpoved

Vlko

BTW: Keby niekoho zaujimalo naco to uz len tomu cloveku moze byt?
Nuz chcel by som si spravit take zaobalenie gvimka, nejaky ten tabbed
browsing, adresarovu strukturu nalavo, ftp a tak:) Alebo chcem moc?:)
Mozno nakoniec by som mal opat sa mrknut do cecka a dorobit to priamo:)
ale toto riesenie sa mi zda univerzalnejsie a menej pracnejsie.

--


--------------
mail: vlko_(zv)pobox.sk
web: http://vlko.zilina.net

Synapse

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 22.8.2004 12:40:23

> > A o co je lepsi nez (mnou zatim pouzivane) Indy?
> IMHO o nic :-) :-) :-)

Vtipalku!

Co Indy neumi, opisuje ze Synapse, a to jeste blbe! ;-)

Krom toho, ukaz mi v Indy takove veci, jako poradnou podporu pro IPv6? A
co treba uz jen nejaka poradna podpora pro ruzne znakove sady pri praci s
e-mailama? No, a kdyz zatouzis po protokolech jako je LDAP nebo poradna
podpora SNMP (vcetne treba verze 3 s autorizaci), s Indy pohoris.

A to uz ani nemusim mluvit o malickostech, jako podpora UDP pres SOCKS,
kterou Synapse ma uz leta, zatimco Indy se o to pokousi az v poslednich
batevarzich? A mohu te seznamit hned s nekolika lidmi, kteri utekli od
Indy k Synapsi a jsou radi, protoze ted jejich servery jsou schopny
obsluhovat vyrazne vyssi pocet klientu najednou. ;-)

Jasne, Indy umi hromady protokolu, ktere Synapse nema... ale jsou nam k
necemu ty ruzne pitomosti jako Finger?

Synapse zvlada tutez praci casto velmi lepe a pruzneji nez Indy, a to se
znatelne mensim mnozstvim kodu! A Synapsi muzes pouzit i treba v Delphi3,
nebo i ve Freepascalu, kde s Indy ostrouhas.

Jiste, Synapse nejsou komponenty, takze neni pro milovniky sazecu
komponent, kteri si vsechno naklikaji v Object-Inspectoru. Takovi lide
skutecne neuvidi na Synapsi nic uchvatneho. Nicmene i pro ty Synapse muze
byt uzitecna. Existuje project VisualSynapse, ktery obaluje Synapsi do
plnokrevnych komponent.


--
Lukas Gebauer.

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

Komponenta na vypalovani CD

[*] Vaclav Krmela <krmela(zv)ustinadorlici(tec)cz> - 22.8.2004 10:16:14

>
> Sinea VCL by se mne libila, ale bohuzel pouzivam D5 a
> jestli tomu dobre rozumim, tak je jen pro D3,4 a 6.

Komponenty SineaVCL jsou k dispozici vcetne kompletnich zdrojovych textu
a jsou prelozitelne ve vsech verzich Delphi, s vyjimkou Delphi 8.

Vaclav Krmela

generovani JPG nahledu

[*] Pavol Stugel, NETGraphics <palo(zv)netgraphics.sk> - 22.8.2004 09:38:11

...skus sa pohrat s PixelFormat a doplnit to niekam za .Create,
ale skor tam bude nejaka komplikovanost v tom kode ...
(resp. ak tam mas NT 3.5,4 alebo zly ovladac na grafarne,tak
v moze byt aj chybna imp. stretchdraw funkcie ..)..a daj jpg, bmp2, bmp do lokalnych premennych a
nemusis to komplikovat cez tie try finally ...

bmp2.Height:=100;
bmp2.Width:=100*bmp.Width div bmp.Height;
-> bmp2.PixelFormat := pf32bit;
bmp2.Canvas.Stretch

Synapse

[*] tomsir1.edu(zv)mail.cez(tec)cz - 22.8.2004 05:59:57


mno, ja ted resim vicevlaknovou aplikaci (konkretne prohledavac DC hubu) a
IMHO je pro toto vhodnejsi pouzit Synapsi nez nejakou komponentu ...ale jak
bylo popsano v mnoha prispevcich drive, je to spis na posouzeni konkretniho
pripadu, co pouzit, nez na nejake absolutni rozhodnuti ...
Jako velke plus povazuju otevrenost kodu, protoze se krome jineho muzu i
neco priucit ...

Radek

Odpovezte prosim - delphi-l(zv)clexpert(tec)cz

Kde a za kolik se da stahnout Synapse, kterou tady tolik vychvalujete?
A o co je lepsi nez (mnou zatim pouzivane) Indy?

generovani JPG nahledu

[*] Tomas Bradle <t.bradle(zv)sanet(tec)cz> - 22.8.2004 04:17:50

No to by bylo, kdybych to chtel zobrazovat, ale ja nic nezobrazuju. Pouze
presampluju a zase ulozim. Proc do toho taha rozliseni obrazovky to nevim.
Melo by se resamplovat i na serveru, kde nemusi byt zrovna Hi-tech grafika.
Na zobrazovani je tech 256 samozrejme malo.

Tomas Bradle
t.bradle(zv)worldonline(tec)cz



----- Original Message -----
From: "Pavol Stugel, NETGraphics" <palo(zv)netgraphics.sk>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Saturday, August 21, 2004 2:30 PM
Subject: Re: generovani JPG nahledu


> ... no to bude tym ze kazdy ten obrazok chce zmodifikovat tych 236
> farieb co ma system
> k dispoziicii "k obrazu svojmu" a vysledkom je cierno cierna tma ...
> proste 256 je malo
> na obrazky a s tym musis ratat ... mozes napr. v pripade 256 farebneho
> modu zobrazovat
> grayscale obrazky co je lepsi efekt ako pokus o farbu ...
>
> >Nevi nekdo proc, kdyz na pocitaci mam nastavene rozliseni
> >obrazovky 16-bit barva, tak je vsechno OK, ale kdyz nastavim
> >256 barev, tak ty nahledy jsou cerny a misto tech 5-6kB maji
> >jen cca 1kB ?
> >
>

Synapse

[*] Cermi <cermiforum(zv)centrum(tec)cz> - 21.8.2004 22:49:29

Kde a za kolik se da stahnout Synapse, kterou tady tolik vychvalujete?
A o co je lepsi nez (mnou zatim pouzivane) Indy?

Cermi
ja.cermi(zv)centrum(tec)cz
ICQ 159971304
http://cermi.wz(tec)cz

Synapse

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 21.8.2004 23:03:30

Puvodni zprava ze dne 21.8.2004:

> Kde a za kolik se da stahnout Synapse, kterou tady tolik
> vychvalujete?

No jeji autor, Lukas Gebauer, ti pokazde posila odkaz v podpisu. A ty
to nevidis??? Tak bud tak hodny a aspon neposilej duplicitni prispevky
do konference...

> A o co je lepsi nez (mnou zatim pouzivane) Indy?

IMHO o nic :-) :-) :-)

Petr Zahradnik, pocitacovy expert

==========================================================
Petr Zahradnik, Computer Laboratory


web: http://www.clexpert(tec)cz, e-mail: clexpert(zv)clexpert(tec)cz

==========================================================

Synapse

[*] Cermi <cermiforum(zv)centrum(tec)cz> - 21.8.2004 22:49:28

Kde a za kolik se da stahnout Synapse, kterou tady tolik vychvalujete?
A o co je lepsi nez (mnou zatim pouzivane) Indy?

Cermi
ja.cermi(zv)centrum(tec)cz
ICQ 159971304
http://cermi.wz(tec)cz

IntraWeb

[*] Petr Vones <konference(zv)petrvones(tec)net> - 21.8.2004 14:46:57

From: "Dalibor" <dalibor(zv)torola(tec)cz>
> Ahoj, zkouseli jste nekdo Intraweb? Ma cenu se touhle technologii zabyvat?

Podle meho nazoru dnes jiz ne. Na web se v Delphi pro male veci jeste tak hodi
WebBroker (nic moc to neumi ale je to jednoduche a rychle), jinak bych se ale
rozhodne vydal cestou ASP.NET.

Petr Vones


IntraWeb

[*] Dalibor <dalibor(zv)torola(tec)cz> - 21.8.2004 14:40:56

Ahoj, zkouseli jste nekdo Intraweb? Ma cenu se touhle technologii zabyvat?

generovani JPG nahledu

[*] Pavol Stugel, NETGraphics <palo(zv)netgraphics.sk> - 21.8.2004 14:30:55

... no to bude tym ze kazdy ten obrazok chce zmodifikovat tych 236
farieb co ma system
k dispoziicii "k obrazu svojmu" a vysledkom je cierno cierna tma ...
proste 256 je malo
na obrazky a s tym musis ratat ... mozes napr. v pripade 256 farebneho
modu zobrazovat
grayscale obrazky co je lepsi efekt ako pokus o farbu ...>Nevi nekdo proc, kdyz na pocitaci mam nastavene rozliseni
>obrazovky 16-bit barva, tak je vsechno OK, ale kdyz nastavim
>256 barev, tak ty nahledy jsou cerny a misto tech 5-6kB maji
>jen cca 1kB ?
>

Komponenta na vypalovani CD

[*] David Klodner <d.klodner(zv)sofico(tec)cz> - 21.8.2004 14:16:54

Diky za odpoved, Sinea VCL by se mne libila, ale bohuzel pouzivam D5 a
jestli tomu dobre rozumim, tak je jen pro D3,4 a 6.
Stravil jsem spoustu casu hledanim neceho jineho, ale vsechno stoji
kolem 200 USD, coz je moc.

Nevite nekdo o nejake komponente pro D5, do 1000 Kc, ktera by umela
vypalit CD i DVD?
NERO vyuzivat nemuzu.

David Klodner

> From: David Klodner
>
> potreboval bych ze sve aplikace vypalovat CD.
> Nevite nekdo o nejake komponente na vypalovani?

V prostredi Windows XP lze pouzit rozhrani ICDBurn:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc
/platform/shell/reference/ifaces/icdburn/icdburn.asp
Pokud chces toto rozhrani zapouzdrene do komponenty, najdes v balicku
komponent SineaVCL komponentu TCDBurnerSinea. Je to v souboru SiVcl6.zip
na strance http://www.sinea(tec)cz/default.asp?page=50


Obecne ASPI rozhrani na vsech verzich Windows pouziva komponenta Magic
CD Burner firmy Binary Magics, ta je ale placena.
http://www.binarymagics.com/site/magic_cddvd_burner_vcl.html

Pokud je nainstalovane NERO, lze pouzit jeho Nero API nebo commandline
verzi.

Vaclav Krmela


generovani JPG nahledu

[*] Tomas Bradle <t.bradle(zv)sanet(tec)cz> - 21.8.2004 11:54:45

Zdravim vsechny,

mam nasledujici proceduru, ktera generuje JPG nahledy,
zdroj je v ms: TMemoryStream (vytazeno z blobu),
vysledek je prev: TJPEGImage.

procedure GenPreview;
begin
jpg:=TJPEGImage.create;
try
ms.Position:=0;
jpg.LoadFromStream(ms);
bmp:=TBitmap.Create;
try
bmp.Assign(jpg);
bmp2:=TBitmap.Create;
try
bmp2.Height:=100;
bmp2.Width:=100*bmp.Width div bmp.Height;
bmp2.Canvas.StretchDraw(bmp2.canvas.ClipRect, bmp);
prev.Assign(bmp2);
finally
bmp2.free;
end; {try}
finally
bmp.free;
end; {try}
finally
jpg.free;
end; {try}
end;

Nevi nekdo proc, kdyz na pocitaci mam nastavene rozliseni
obrazovky 16-bit barva, tak je vsechno OK, ale kdyz nastavim
256 barev, tak ty nahledy jsou cerny a misto tech 5-6kB maji
jen cca 1kB ?

diky

Tomas Bradle
t.bradle(zv)worldonline(tec)cz

Pripojeni k MS SQL 2000. Jak na to?

[*] Ing. Miroslav Vopalecky <m.vopalecky(zv)tiscali(tec)cz> - 21.8.2004 11:40:44

Vyreseno.

Je nutno zkontrolovat dynamickou knihovnu MSDART.DLL. Verze teto knihovny
musi byt stejna, pripadne novejsi nez pod kterou se delal vyvoj v Delphi. Po
zmene knihovny u zakaznika je server MS SQL Server jiz viditelny a data
dostupna. Nelibi se mi vsak navaznost na konkretni verzi dll od MS. Dalsi
upgrade MS mi muze knihovnu prepsat jinou, prepracovanou tak, ze se bude
muset upravit projekt. Je mozne to elegantne obejit?

S pozdravem Mirek Vopalecky, D7 W2000

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Ing. Miroslav Vopalecky
Sent: Sunday, August 15, 2004 7:29 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Pripojeni k MS SQL 2000. Jak na to?


Ahoj vsichni.

Potreboval bych pomoci. Musel jsem predelat projekt s napojenim na databazi
Firebird (nepracuje pod IPX/SPX) na projekt s napojenim na databazi
Microsoft SQL. Muj problem spociva v tom, ze se nedokazi na MSSQL z Delphi
pripojit. Z instalovaneho pocitace WXP jsem se k me databazi pripojil z
Excelu a videl jsem data.

Vytvoril jsem si i soubor DNS, ktery je nasledujici:
[ODBC]
DRIVER=SQL Server
UID=jmeno
Regional=Yes
Trusted_Connection=Yes
Address=JmenoServeru,Port
Network=DBMSSOCN
Language=cestina
DATABAZE=EXPERTIZY
WSID=JmenoPrihlaseneho_WXP
APP=Microsoft Open Database Connectivity
SERVER=JmenoServeru

Z Delphi se na databazi nedostanu, nevim kam vrazit odkaz na DNS. Pokud jsem
obsah DNS dal do ADOConnection.ConnectionString, dostal jsem chybove
hlaseni: "Vstupni procedury GetIUMS se nepodarilo v dynamicky propojene
knihovne MSDART.DLL nalezt".

Problem je v tom, ze k zakaznikovi je daleko a nemam moc casu na zkouseni.
Pri vyvoji jsem mel nainstalovanu MSDBE 2000 a s tim to funguje dobre

S pozdravem Mirek Vopalecky, D7 W2000

FB a vnorene selecty

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

Haj hou!

On 20 Aug 2004 at 18:39, Martin Burle wrote:

> Dovolim si vznest take dotaz, a to zda se podobne neuvazuje o
> docasnych tabulkach?

Ano, ale ne v nejblizsi nove verzi.

s pozdravem
Pavel Cisar (ICQ: 89017288)
Mobil: 724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

FB a vnorene selecty

[*] Martin Burle <mburle2(zv)volny(tec)cz> - 20.8.2004 18:39:39

> > Mohu se zeptat zda se uvazuje o zavedeni datoveho typu Boolean tak jak
> > ma jiz IB7
>
> Uvazuje, ale zatim bez konkretniho upresneni zda skutecne a kdy bude

Dovolim si vznest take dotaz, a to zda se podobne neuvazuje o docasnych
tabulkach?

Martin Burle


FB a vnorene selecty

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 20.8.2004 16:25:30

Haj hou!

On 20 Aug 2004 at 13:51, info(zv)gastrocentrum(tec)cz wrote:

> Mohu se zeptat zda se uvazuje o zavedeni datoveho typu Boolean tak jak
> ma jiz IB7

Uvazuje, ale zatim bez konkretniho upresneni zda skutecne a kdy bude
k dispozici. Zas tak velky tlak na to neni, protoze se to da resit i
jinak.

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

FB a vnorene selecty

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 20.8.2004 16:23:30

On 20 Aug 2004 at 13:33, Jan Rizek wrote:

> ano - vzpomnel jsem si na to, az kdyz jsem odeslal dotaz. je to trochu
> nesikovne - musi se dystribuovat i uloozena procedura - pripadne zmeny se
> musi udelat i v DB uzivatele... Bude to verze 2.0? A kdy asi tak bude ke
> stazeni?

http://firebird.sourceforge.net/index.php?op=devel&sub=engine

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

FB a vnorene selecty

[*] Slavomir Skopalik <skopalik(zv)elektlabs(tec)cz> - 20.8.2004 13:57:20

>
> je mozne nejak pouzivat vnorene selcty ve FB - select typu :
>
> select X.X from (select X from TABULKA) X

Tohle se da vetsinou obejit bud pres JOIN, nebo pres GROUP BY.

Slavek


FB a vnorene selecty

[*] info(zv)gastrocentrum(tec)cz - 20.8.2004 13:51:19

P. Cisar wrote
> Tohle zatim FB neumoznuje. Bude to ale v nove verzi (implementace je
> AFAIK uz hotova). Zatim se to da obejit pres ulozenou proceduru a
> EXECUTE STATEMENT.


Mohu se zeptat zda se uvazuje o zavedeni datoveho typu Boolean tak jak ma
jiz IB7

Diky Heinisch Jiri


FB a vnorene selecty

[*] Jan Rizek <jan_rizek(zv)centrum(tec)cz> - 20.8.2004 13:33:18

ano - vzpomnel jsem si na to, az kdyz jsem odeslal dotaz. je to trochu
nesikovne - musi se dystribuovat i uloozena procedura - pripadne zmeny se
musi udelat i v DB uzivatele... Bude to verze 2.0? A kdy asi tak bude ke
stazeni?> Tohle zatim FB neumoznuje. Bude to ale v nove verzi (implementace je
> AFAIK uz hotova). Zatim se to da obejit pres ulozenou proceduru a
> EXECUTE STATEMENT.
>

FB a vnorene selecty

[*] Jan Rizek <jan_rizek(zv)centrum(tec)cz> - 20.8.2004 13:31:18

pokud mate vice tabulek v M-D vazbe - vazba jeden k mnoha a napriklad ve
treti tabulce od zacatku mate nejaky sloupecek, ktery chcete zahrnout do
podminky, ale jako vysledek chcete mit napr. pocet zaznamu v prvni tabulce,
tak pomuzou dve veci - vnorene selcty nebo, jak jsem jiz zjistil :-) vnorene
ulozene procedury

nebot vnoreny select se da nahradit vnorenou ulozenou procedurou, ktera muze
vytvaret select (ten ktery melk byt vnoreny) dynamicky..

pokud mate vetsi system s vice tabulkami a chcete vydolovat nejaka
specificka data - musite to delat takto... pokud to nechcete delat vlastnim
prochazenim zaznamu ve vasi aplikaci (tahani celych datasetu..)...

----- Original Message -----
From: "David Fajfr" <davidfajfr(zv)seznam(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, August 20, 2004 1:19 PM
Subject: Re: FB a vnorene selecty


> > je mozne nejak pouzivat vnorene selcty ve FB - select typu :
> >
> > select X.X from (select X from TABULKA) X
> >
> > pokud potrebuji mit nejakou podminku ve vnorenenm selectu -
> >
> > select X.X from (select X from TABULKA where X>5) X tak mi view moc
> nepomuze - musel bych ho pokazde tvorit znovu a
> > to je trochu nesikovne -
> > pokud nejdou vnorene selcty - co s tim?
>
> K cemu je to dobre? :-)
>
>
>
>

FB a vnorene selecty

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 20.8.2004 13:23:17

Haj hou!

On 20 Aug 2004 at 12:47, Jan Rizek wrote:

> je mozne nejak pouzivat vnorene selcty ve FB - select typu :
>
> select X.X from (select X from TABULKA) X
>
> pokud potrebuji mit nejakou podminku ve vnorenenm selectu -
>
> select X.X from (select X from TABULKA where X>5) X tak mi view moc nepomuze - musel bych ho pokazde tvorit znovu a
> to je trochu nesikovne -
> pokud nejdou vnorene selcty - co s tim?

Tohle zatim FB neumoznuje. Bude to ale v nove verzi (implementace je
AFAIK uz hotova). Zatim se to da obejit pres ulozenou proceduru a
EXECUTE STATEMENT.

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

FB a vnorene selecty

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 20.8.2004 13:19:17

> je mozne nejak pouzivat vnorene selcty ve FB - select typu :
>
> select X.X from (select X from TABULKA) X
>
> pokud potrebuji mit nejakou podminku ve vnorenenm selectu -
>
> select X.X from (select X from TABULKA where X>5) X tak mi view moc
nepomuze - musel bych ho pokazde tvorit znovu a
> to je trochu nesikovne -
> pokud nejdou vnorene selcty - co s tim?

K cemu je to dobre? :-)

FB a vnorene selecty

[*] Jan Rizek <jan_rizek(zv)centrum(tec)cz> - 20.8.2004 12:47:15

je mozne nejak pouzivat vnorene selcty ve FB - select typu :

select X.X from (select X from TABULKA) X

pokud potrebuji mit nejakou podminku ve vnorenenm selectu -

select X.X from (select X from TABULKA where X>5) X tak mi view moc nepomuze - musel bych ho pokazde tvorit znovu a
to je trochu nesikovne -
pokud nejdou vnorene selcty - co s tim?

nesmysly v dfm - silene znaky misto hodnoty proper

[*] Jan Rizek <jan_rizek(zv)centrum(tec)cz> - 20.8.2004 12:41:14

Vytvoril jsem, si komponentu, kterou mam umistenou na framech v programu, obcas se stane, ze se mi v dfm nektereho framu objevi misto Direction = vertical (coz je nastaveni jedne vlastnosti komponenty) objevi

Direction = widcgxuygwdchgwdcgwuecc ... spousta nesmyslnych znaku

nevite, cim by to mohlo byt zpusobeno?

TStream spatne zapisuje string

[*] Miso <delphinpp(zv)atlas(tec)cz> - 20.8.2004 12:37:14

----- Original Message -----
From: "Pavel Hauptman" <phauptman(zv)bilbo(tec)cz>
> rad bych se zeptal, jak spravne zapisovat string pomoci TStream. Pouzivam
> nasledujici kod a do souboru se mi zapisuji uplne nesmyslne stringy.
>

..ak chces zapisat string do suboru cez stream, tak sa inspiruj napr. tymto
:

function TXXX.WriteData(const Data: WideString): Integer;
var f : TFileStream;
ss : TStringStream;
begin
result := -1;

try
try
if Append then
begin
if FileExists(FullPath) then
f := TFileStream.Create(FullPath, fmOpenReadWrite or
fmShareDenyWrite)
else
f := TFileStream.Create(FullPath, fmCreate or fmShareDenyWrite);
f.Seek(0, soFromEnd);
end
else
f := TFileStream.Create(FullPath, fmCreate or fmShareDenyWrite);

ss := TStringStream.Create(Data);
try
f.CopyFrom(ss, ss.Size);
finally
FreeAndNil(ss);
end;
finally
FreeAndNil(f);
end;
except on e:Exception do
begin
ShowMessage('Error : '+ e.Message);
exit;
end;
end;

result := 0;
end;

Miso


Kopirovanie XML

[*] Petr Vones <konference(zv)petrvones(tec)net> - 20.8.2004 12:23:15

From: "Tomas Blazek" <tomas.blazek(zv)pse.sk>
> Mohol by mi niekto poradit s tym, ako skopirovat urcity XML
> element aj so vsetkymi podriadenymi elementmi (detmi) a atributmi?

Patrne neco ve smyslu:

DestNode.ChildNodes.Add(SourceNode.CloneNode(True));

Petr Vones

TStream spatne zapisuje string

[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 20.8.2004 12:19:14

> rad bych se zeptal, jak spravne zapisovat string pomoci
> TStream. Pouzivam
> nasledujici kod a do souboru se mi zapisuji uplne nesmyslne stringy.
>
> FillChar(veta1, SizeOf(veta1), #0);
> veta1.lngh := cdsPTEX.Fields[0].AsInteger;
> veta1.walo := cdsPTEX.Fields[1].AsInteger;
> veta1.tnum := cdsPTEX.Fields[2].AsInteger;
> veta1.text := cdsPTEX.Fields[3].AsString;
> // tady koukam do debuggeru a hodnota veta1.text je v poradku.
> fout.Write(veta1.lngh, 2);
> fout.Write(veta1.walo, 2);
> fout.Write(veta1.tnum, 4);
> fout.Write(veta1.text, Length(veta1.text));
> //tady koukam do debuggeru a hodnota veta1.text je opet v
> poradku, ale
> do souboru se zapise nesmysl.
>
> Kde delam chybu?

Ahoj,

zapisujes do souboru pointer na string. Ja to delam takto:

Zapis:

function WriteToStream(Value : integer; fs : TFileStream) : boolean;
// write integer
begin
Result := fs.write(Value, SizeOf(Value)) = SizeOf(Value);
end;

function WriteToStream(Value : string; fs : TFileStream) : boolean;
// write string
begin
Result := WriteToStream(Length(Value), fs);
if Result then
begin
Result := fs.write(Value[1], Length(Value)) = Length(Value);
end;
end;

Cteni:

function ReadFromStream(var Value : integer; fs : TFileStream) : boolean;
// read integer
begin
Result := fs.read(Value, SizeOf(Value)) = SizeOf(Value);
end;

function ReadFromStream(var Value : string; fs : TFileStream) : boolean;
// read string
var
i : integer;
begin
Result := ReadFromStream(i, fs);
if Result then
begin
SetLength(Value, i);
Result := fs.read(Value[1], i) = i;
end;
end;

Zdravim

Jiri Foldyna


TStream spatne zapisuje string

[*] Ales Vasicek <vasicek(zv)ecommerce(tec)cz> - 20.8.2004 12:07:01

Ahoj,

Musis pouzit tuto konstrukci:

fout.Write(Pointer(veta1.text)^, Length(veta1.text));

Ales

> -----Original Message-----
> From: Pavel Hauptman [mailto:phauptman(zv)bilbo(tec)cz]
>
> rad bych se zeptal, jak spravne zapisovat string pomoci
> TStream. Pouzivam
> nasledujici kod a do souboru se mi zapisuji uplne nesmyslne stringy.
>
> FillChar(veta1, SizeOf(veta1), #0);
> veta1.lngh := cdsPTEX.Fields[0].AsInteger;
> veta1.walo := cdsPTEX.Fields[1].AsInteger;
> veta1.tnum := cdsPTEX.Fields[2].AsInteger;
> veta1.text := cdsPTEX.Fields[3].AsString;
> // tady koukam do debuggeru a hodnota veta1.text je v poradku.
> fout.Write(veta1.lngh, 2);
> fout.Write(veta1.walo, 2);
> fout.Write(veta1.tnum, 4);
> fout.Write(veta1.text, Length(veta1.text));

TStream spatne zapisuje string

[*] Pavel Hauptman <phauptman(zv)bilbo(tec)cz> - 20.8.2004 11:58:56

Zdravim vsechny,

rad bych se zeptal, jak spravne zapisovat string pomoci TStream. Pouzivam
nasledujici kod a do souboru se mi zapisuji uplne nesmyslne stringy.

FillChar(veta1, SizeOf(veta1), #0);
veta1.lngh := cdsPTEX.Fields[0].AsInteger;
veta1.walo := cdsPTEX.Fields[1].AsInteger;
veta1.tnum := cdsPTEX.Fields[2].AsInteger;
veta1.text := cdsPTEX.Fields[3].AsString;
// tady koukam do debuggeru a hodnota veta1.text je v poradku.
fout.Write(veta1.lngh, 2);
fout.Write(veta1.walo, 2);
fout.Write(veta1.tnum, 4);
fout.Write(veta1.text, Length(veta1.text));
//tady koukam do debuggeru a hodnota veta1.text je opet v poradku, ale
do souboru se zapise nesmysl.

Kde delam chybu?

Diky a s pozdravem

Pavel Hauptman

plugin do exchange

[*] david.kopecek(zv)hacktrack(tec)com - 20.8.2004 11:56:55

Zdravim

nezajimal ste se nekdo o tvorbu ruznych zasuvnych modulu do MS exchange
?...


--
S pozdravem,
david
david.kopecek(zv)hacktrack.com

Jsou opravdu DB komponenty tak spatne?

[*] Petr Vones <konference(zv)petrvones(tec)net> - 20.8.2004 11:13:49

From: "Zbysek Hlinka" <konference(zv)hlinka(tec)cz>
> Myslim typove datasety, a myslim take to, ze VS k takovemu navrhu umi
> vygenerovat i zdrojovy kod novych trid, ktere prekryvaji DataSet, DataTable
> a DataRow, pomoci ktereho mohu vyrazne pohodlneji pristupovat k datum ve
> strukture. V D8 jsem nic takoveho nenasel, a ani me nikdo nevyvedl z omylu,
> kdyz jsem to zminoval v recenzi.

D8 IDE to asi opravdu neumi, nicmene pokud mas XSD schema tak by to slo tou
cestou pres xsd.exe a codedom providera. Tim nechci rict, ze by snad nekdo
normalni mel neco takoveho v praxi delat :-)

Petr Vones


Jsou opravdu DB komponenty tak spatne?

[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 20.8.2004 11:05:49

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Petr Vones
> Sent: Friday, August 20, 2004 10:50 AM
>
> > MS VS (pozor, nikoliv D8!!!) ma udelatka, ktera vytvareji k
> navrzenemu
> > datasetu kod, takze pak k jednotlivym polim mohu
> pristupovat "nativne"
> > (tedy
>
> Pokud tim myslis typed datasety tak si je muzes vygenerovat i
> v Delphi.NET, v nejhorsim pomoci xsd.exe a predanim
> prislusneho CodeDom providera.

Myslim typove datasety, a myslim take to, ze VS k takovemu navrhu umi
vygenerovat i zdrojovy kod novych trid, ktere prekryvaji DataSet, DataTable
a DataRow, pomoci ktereho mohu vyrazne pohodlneji pristupovat k datum ve
strukture. V D8 jsem nic takoveho nenasel, a ani me nikdo nevyvedl z omylu,
kdyz jsem to zminoval v recenzi.

S pozdravem

Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz

Jsou opravdu DB komponenty tak spatne?

[*] Petr Vones <konference(zv)petrvones(tec)net> - 20.8.2004 10:49:44

From: "Zbysek Hlinka" <konference(zv)hlinka(tec)cz>
> Pro ilustraci uvedu, jak to lze resit v .NET (myslim, ze to bude dost poucne
> pro ty, kteri to jeste nevedi). Tam je dataset ZASADNE odpojeny od zdroje
> dat. To mi uz z principu umoznuje mit nad tokem dat naprosty dohled a pouzit
> zpusob ulozeni takovy, ktery je pro danou situaci nejvhodnejsi.

Coz je shodne s pouzitim TClientDataSetu v Delphi.

> MS VS (pozor, nikoliv D8!!!) ma udelatka, ktera vytvareji k navrzenemu
> datasetu kod, takze pak k jednotlivym polim mohu pristupovat "nativne" (tedy

Pokud tim myslis typed datasety tak si je muzes vygenerovat i v Delphi.NET, v
nejhorsim pomoci xsd.exe a predanim prislusneho CodeDom providera.

Petr Vones


Jsou opravdu DB komponenty tak spatne?

[*] Lstiburek Pavel <lstiburek(zv)ceb(tec)cz> - 20.8.2004 10:33:43

Ahoj,

add) rezervace
Reseni problemu "rezervace" dat na DB serveru obecne je dosti iluzorni.
Zalezi na typu ulohy, pro dostatecne slozite systemy (vzjemne zavislost
mezi datovymi elementy) to prakicky nelze a je nutno vyuzivat nastroju
DB serveru.

add) vyuziti DB komponent
Je tam jeden problem, vlastni "rezervace" zaznamu neni dostacujici,
pred editaci je nutno provest refresh editovaneho zaznamu
a vsech pouzitych ciselniku a to tyto komponenty nedelaji.
Pokud netrvame na "rezervaci", ale staci, ze nelze opravit zaznam,
ktery opravil nekdo jiny, je na MSSQL nejlepsim reseni sloupec
typu "timestamp".

add) pristupova prava
GRANT pristupovych prav pro uzivatele primo na data neni
prilis doporuceni hodnym zpusobem reseni bezpecnosti.
Znamena to, ze pokud uzivatel zna jmeno uzivatele a heslo,
tak muze pristoupit k datum primo mimo aplikci (zkus si pohrat s
EXCELem nebo MSQUERY). To, ale znamena, ze veskera
business logika musi byt ulozena v datovych elementech
databaze a to je pomerne slozite.

Zaver je urcite spravny, na jednoduche veci jsou DB komponenty
naprosto idealni (zejmena pokud nepozadujeme bezpecnost).

Na druhou stranu vytvorit si pro tridu uloh, kterou programuji
vhodny framework, ktery umozni tuto praci automatizovat je
pomerne jednoduche a potom se rozdily v pracnosti do znacne miry stiraji.

Ja pouzivam DB komponenty jako editacni elementy (neni nutno
programovat prenost do editacnich komponent), ale vlastni
update a insert provadim ulozenou procedurou. Proceduru generuji
jednoduchou SP na strane serveru, tak, ze nazvy parametru SP
odpovidaji nazvum DataField editovaneho DataSetu (vzdy view
a to se da naprogramovat v komponente jednoduse jednim cyklem),
tuto hrubou formu SP uz jen rucne upravim o business logiku.
Vsechny kroky ridi velmi jednoducha vizualni komponenta s tlacitky
(ty by tam stejne musely byt) a par udalosti typu befor a after.
Podobnym zpusobem je vytvorena komponenta pro editaci child
zaznamu (blahorecim Borlandum D5 a MS za podporu XML - sice
bidnou, ale dostacujici).

Primo DB komponenty vyuzivam pouze pro editaci ciselniku,
to v nasi aplikaci delaji pouze uzivatele s IQ, kteri si jsou vedomi
co zpusobi. A hlavnim duvodem je lenost psat pro kazdy z cca 100
ciselniku ulozenou proceduru a view.> From: Karel Kral [mailto:kralkonf(zv)purus(tec)cz]
> Sent: Friday, August 20, 2004 9:38 AM
> MS SQL 2000/ADO/D7 Pro, DB komponenty DevExpress
>
> Pokud se k tomu chcete nekdo vyjadrit, budu rad:
>
> Potrebuji editovat jednoduchy ciselnik, spise velke mnozstvi ruznych
> ciselniku. Protoze ctu tuhle konferenci uz leta, vzdy jsem provadel
> editaci zaznamu pomoci ADO tak, ze jsem si natahl data z aktualniho
> zaznamu gridu - datasetu do zvlastniho formulare - normalnich (ne DB)
> komponent. Pak jsem delal update dat pomoci TADOCommand a SP.
> Je s tim
> neuveritelne mnoho prace a psani - pretahnout data do editacnich
> komponent, pak je zase transformovat zpet atd.
>
> Pak jsem se poradne podival pomoci SQL profileru na to, co
> vlastne ADO
> posila za SQL prikazy pri pouziti DB komponent. A zjistil jsem, ze se
> chova _velmi_ rozumne, pokud ma tabulka PK. Takze jsem
> vyzkousel pouzit
> na editacnim formulari primo DB komponenty a na konci editace udelat
> DataSet.Post nebo DataSet.Cancel podle toho, jak skonci editace.
> Naprosto bez problemu a bez prace.
>
> V takovem pripade nechapu, v cem by mohlo byt na zavadu
> editovat zaznam
> takto. Jediny problem vidim v tom, kdyz dva uzivatele zmeni zaroven
> stejne _pole_ ve stejnem zaznamu. To pak ADO neni schopno zaznam
> aktualizovat a kdo ulozil prvni, ten vyhral. To se ale da resit
> rezervaci zaznamu pred editaci tak, aby nemohli stejny zaznam
> editovat
> dva uzivatele. Konecne - rezervaci zaznamu potrebuju i pri editaci v
> normalnich komponentach.
>
> jeste shrnuti:
>
> DB komponenty:
> + mnohem mensi pracnost (3x az 4x)
> - potrebuji prava update primo editovane tabulky
>
> Ne-DB komponenty
> + stored procedura pro ulozeni dat neni zavisla na pravach
> uzivatele k
> tabulce
> + mam vetsi volnost k tomu, co zobrazit na formulari a jak
> validovat data
> - desne pracne
>
> Talze muj dojem: NEpouzit pro jednoduche veci DB komponenty
> je zbytecne
> a velmi velmi pracne, pro slozite veci je to uz na zvazenou.

Jsou opravdu DB komponenty tak spatne?

[*] info(zv)gastrocentrum(tec)cz - 20.8.2004 10:07:40

> Talze muj dojem: NEpouzit pro jednoduche veci DB komponenty je zbytecne
> a velmi velmi pracne, pro slozite veci je to uz na zvazenou.


Ahoj

Mam podobny pocit o pracnosti, presto jsem novy projekt zacal s koncepci
NON-DB

Protoze ciselniku je take dost (restauracni system) tak si snazim
"zjednodusit " tim ze mam vytvorenu tridu zakladniho ciselniku , jednoh
univerzalniho formu a vytvarim objekty konkretnich cisleniku dedenych z
toho zakladniho a prirazuji je na ten form.

S pozdravem Heinisch Jiri

www.gastrocentrum(tec)cz

www.drnholec(tec)cz

Jsou opravdu DB komponenty tak spatne?

[*] Slavomir Skopalik <skopalik(zv)elektlabs(tec)cz> - 20.8.2004 10:07:40

Ja to takto delam na IB/FB jiz mnoho let.
Na ib/fb neni pri vkladani SP nutna, jelikoz lze vkladat do view (pomoci
trigru si delat poradek),
pripadne mam k dispozici before update triger, kde mam vsechny potrebne
validace.

Slavek

> V takovem pripade nechapu, v cem by mohlo byt na zavadu
> editovat zaznam
> takto. Jediny problem vidim v tom, kdyz dva uzivatele zmeni zaroven
> stejne _pole_ ve stejnem zaznamu. To pak ADO neni schopno zaznam
> aktualizovat a kdo ulozil prvni, ten vyhral. To se ale da resit
> rezervaci zaznamu pred editaci tak, aby nemohli stejny zaznam
> editovat
> dva uzivatele. Konecne - rezervaci zaznamu potrebuju i pri editaci v
> normalnich komponentach.
>
> jeste shrnuti:
>
> DB komponenty:
> + mnohem mensi pracnost (3x az 4x)
> - potrebuji prava update primo editovane tabulky
>
> Ne-DB komponenty
> + stored procedura pro ulozeni dat neni zavisla na pravach uzivatele k
> tabulce
> + mam vetsi volnost k tomu, co zobrazit na formulari a jak validovat
> + data
> - desne pracne
>
> Talze muj dojem: NEpouzit pro jednoduche veci DB komponenty
> je zbytecne
> a velmi velmi pracne, pro slozite veci je to uz na zvazenou.

OT: Nabidka zamestnani (Vych. Cechy - Zamberk)

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 20.8.2004 10:09:41

Firma TH SOFT prijme programatora Delphi + Firebird.
Jedna se o vyvoj ekonomickych a dopravne-spedicnich databazovych systemu.

Zajemci piste pouze na obchod(zv)thsoft(tec)cz

David Liska, TH SOFT
www.thsoft(tec)cz


Jsou opravdu DB komponenty tak spatne?

[*] Zbysek Hlinka <konference(zv)hlinka(tec)cz> - 20.8.2004 10:15:41

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Karel Kral
>
> Potrebuji editovat jednoduchy ciselnik, spise velke mnozstvi
> ruznych ciselniku. Protoze ctu tuhle konferenci uz leta, vzdy
> jsem provadel editaci zaznamu pomoci ADO tak, ze jsem si
> natahl data z aktualniho zaznamu gridu - datasetu do
> zvlastniho formulare - normalnich (ne DB) komponent. Pak jsem
> delal update dat pomoci TADOCommand a SP. Je s tim
> neuveritelne mnoho prace a psani - pretahnout data do
> editacnich komponent, pak je zase transformovat zpet atd.
>
> DB komponenty:
> + mnohem mensi pracnost (3x az 4x)
> - potrebuji prava update primo editovane tabulky
>
> Ne-DB komponenty
> + stored procedura pro ulozeni dat neni zavisla na pravach uzivatele k
> tabulce
> + mam vetsi volnost k tomu, co zobrazit na formulari a jak validovat
> + data
> - desne pracne

Muj nazor a zkusenosti (delal jsem obema zpusoby) jsou takoveto. DBaware
komponenty nejsou spatne z principu, ale za zcela spatny povazuju takovy
zpusob pouziti, kdy jsou komponenty pouzity na propojeni s "zivym" zaznamem.
Ostatne se to odrazi na souctu tvych plusu a minusu. Pak jen zalezi na tom,
jake pridelis vahy jednotlivym bodum. Pokud pridelis nejvetsi vahu
pracnosti, pak zvitezi bod 1. Jen upozornuju, ze se jedna o pracnost na
zacatku, ale neni tam videt pracnost nasledne udrzby. Tak, jak je to reseno
v Delphi, to IMHO neni dobre.

Pro ilustraci uvedu, jak to lze resit v .NET (myslim, ze to bude dost poucne
pro ty, kteri to jeste nevedi). Tam je dataset ZASADNE odpojeny od zdroje
dat. To mi uz z principu umoznuje mit nad tokem dat naprosty dohled a pouzit
zpusob ulozeni takovy, ktery je pro danou situaci nejvhodnejsi.

V .NET nejsou zadne specialni DBaware komponenty. Kazda komponenta ma vsak
pristup k vlastnosti DataBindings, ke ktere mohu pripojit nejake pole z
datasetu. Takze navrh muze vypadat napriklad takto. Navrhnu si dataset,
naplnim ho daty (napriklad z databaze), priradim si k nejake vhodne
vlastnosti komponenty pole z datasetu a edituju. Kdyz je hotovo, mohu se
rozhodnout co dal. Muzu vratit puvodni stav (dataset si udrzuje puvodni
hodnoty), muzu to poslat pres jednu komponentu do databaze (obdobne jako v
Delphi, s tim rozdilem, ze zde mohu zautomatizovat i ukladani pres SP), nebo
tabulku z datasetu poslu rucne do SP (vyctu pole a dosadim je do parametru
SP).

MS VS (pozor, nikoliv D8!!!) ma udelatka, ktera vytvareji k navrzenemu
datasetu kod, takze pak k jednotlivym polim mohu pristupovat "nativne" (tedy
bez indexovani, to se deje uvnitr). To do znacne miry usnadnuje praci, pri
zachovani dohledu nad tim, co se s daty deje. .NET pritom umoznuje
dostatecne kvalitni validaci i v pripade, ze spojim pole s komponentou.

Asi tak nejak. Tim jsem v podstate i vysvetlil jeden z hlavnich duvodu, proc
uz s Win32 Delphi nechci delat. ;-)

S pozdravem

Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz

Jsou opravdu DB komponenty tak spatne?

[*] Karel Kral <kralkonf(zv)purus(tec)cz> - 20.8.2004 09:37:38

Ahoj,
MS SQL 2000/ADO/D7 Pro, DB komponenty DevExpress

Pokud se k tomu chcete nekdo vyjadrit, budu rad:

Potrebuji editovat jednoduchy ciselnik, spise velke mnozstvi ruznych
ciselniku. Protoze ctu tuhle konferenci uz leta, vzdy jsem provadel
editaci zaznamu pomoci ADO tak, ze jsem si natahl data z aktualniho
zaznamu gridu - datasetu do zvlastniho formulare - normalnich (ne DB)
komponent. Pak jsem delal update dat pomoci TADOCommand a SP. Je s tim
neuveritelne mnoho prace a psani - pretahnout data do editacnich
komponent, pak je zase transformovat zpet atd.

Pak jsem se poradne podival pomoci SQL profileru na to, co vlastne ADO
posila za SQL prikazy pri pouziti DB komponent. A zjistil jsem, ze se
chova _velmi_ rozumne, pokud ma tabulka PK. Takze jsem vyzkousel pouzit
na editacnim formulari primo DB komponenty a na konci editace udelat
DataSet.Post nebo DataSet.Cancel podle toho, jak skonci editace.
Naprosto bez problemu a bez prace.

V takovem pripade nechapu, v cem by mohlo byt na zavadu editovat zaznam
takto. Jediny problem vidim v tom, kdyz dva uzivatele zmeni zaroven
stejne _pole_ ve stejnem zaznamu. To pak ADO neni schopno zaznam
aktualizovat a kdo ulozil prvni, ten vyhral. To se ale da resit
rezervaci zaznamu pred editaci tak, aby nemohli stejny zaznam editovat
dva uzivatele. Konecne - rezervaci zaznamu potrebuju i pri editaci v
normalnich komponentach.

jeste shrnuti:

DB komponenty:
+ mnohem mensi pracnost (3x az 4x)
- potrebuji prava update primo editovane tabulky

Ne-DB komponenty
+ stored procedura pro ulozeni dat neni zavisla na pravach uzivatele k
tabulce
+ mam vetsi volnost k tomu, co zobrazit na formulari a jak validovat data
- desne pracne

Talze muj dojem: NEpouzit pro jednoduche veci DB komponenty je zbytecne
a velmi velmi pracne, pro slozite veci je to uz na zvazenou.

--
______________________________________________________
Karel Kral, vedouci odd. IT / IT manager
Purus, s.r.o., Cezavy 627, 664 56 Blucina, CZ
Tel: 547 235 000, 602 552 432, Fax: 547 231 203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________


refresh zaznamov nad IBQuery

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 20.8.2004 09:15:36

> inak dik, ak toto vyriesim tak mi to pomohlo.
> ale ten moj sposob pri update sa miz zda jednoduchsi.
> takze inserty a delety by som robil podla teba.

Nevim jak mas postavenou aplikaci, zda treba nevolas editacni formy
modalne... Ale ja mam vsechny formy nezavisle na sobe a proto muze nastat
situace, kdy uzivatel otevre ciselnik, otevre zaznam pro editaci, vrati se
na ciselnik, odjede s kurzorem na jiny radek, pak se vrati do editace a
zapise... co se ti refreshne? Proto ten slozitejsi zpusob i na update.> Je mi to jasne, ten post zapisuje rovno aj
> do databazovej tabulky a preto ta hlaska.
> Ty si to tam pisal, ze "nepromitat nahledove operace
> do databaze". Ako si to myslel?
> Napada ma osetrit to cez try except
> alebo na tibquery nastavit cachedupdates na true.
> Ako to robis aby post zapisal len do gridu a nie do
> databazovej tabulky?

Nepouzivam IBQuery + IBUpdate, ale IBDataSet... ale bude to stejne.
Komponenty se chovaji ReadOnly, dokud do InsertSQL, UpdateSQL nebo DeleteSQL
nedas nejaky korektni SQL prikaz. Proto jsem tam hodil jen neco, co ti
stejne zmeny v DB delat nebude.
Napr. "Update table set ID=ID where ID = -1"
Taky si dej pozor, abys nemel Fieldy nastavene na ReadOnly.
CachedUpdates := True je taky dobre a nedelat ApplyUpdates + Commit

Hodne zdaru :)


David Liska, TH SOFT

refresh zaznamov nad IBQuery

[*] hlas <hlas(zv)inmail.sk> - 20.8.2004 08:03:31

Je mi to jasne, ten post zapisuje rovno aj
do databazovej tabulky a preto ta hlaska.
Ty si to tam pisal, ze "nepromitat nahledove operace
do databaze". Ako si to myslel?
Napada ma osetrit to cez try except
alebo na tibquery nastavit cachedupdates na true.
Ako to robis aby post zapisal len do gridu a nie do
databazovej tabulky?


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

> Tak som to vyskusal ale mam tam nejaky problem.
> pri IBquery1.post mi to hlasi chybu primarneho kluca.
> ako keby si to checklo, ze v databaze uz tento PK
> existuje a ohlasi mi chybu, ale potom mi pekne
> zobrazi grid tak ako som chcel.
> Tak neviem preco ta hlaska. Hrozne mi uz
> vadia tie appendy a posty. nikdy pri tom clovek
> nevie co sa tam v skutocnosti deje.
>
> inak dik, ak toto vyriesim tak mi to pomohlo.
> ale ten moj sposob pri update sa miz zda jednoduchsi.
> takze inserty a delety by som robil podla teba.
>
> a tiez som musel zmenit transakciu na tom prvom query.
> ta transakcia bola read, lebo som nepredpokladal, ze tam
> budem zapisovat.
>

refresh zaznamov nad IBQuery

[*] hlas <hlas(zv)inmail.sk> - 20.8.2004 07:33:29

Tak som to vyskusal ale mam tam nejaky problem.
pri IBquery1.post mi to hlasi chybu primarneho kluca.
ako keby si to checklo, ze v databaze uz tento PK
existuje a ohlasi mi chybu, ale potom mi pekne
zobrazi grid tak ako som chcel.
Tak neviem preco ta hlaska. Hrozne mi uz
vadia tie appendy a posty. nikdy pri tom clovek
nevie co sa tam v skutocnosti deje.

inak dik, ak toto vyriesim tak mi to pomohlo.
ale ten moj sposob pri update sa miz zda jednoduchsi.
takze inserty a delety by som robil podla teba.

a tiez som musel zmenit transakciu na tom prvom query.
ta transakcia bola read, lebo som nepredpokladal, ze tam
budem zapisovat.
----- Original Message -----
From: "David Fajfr"
> Ne ne, uplne jinak..
>
> 1) mas form, ktery ma IBQuery1 a grid, ktery obsahuje nejaka data
> 2) form prijme zpravu, ze se zmenil/pridal zaznam s ID = 999
> 3) v IBQuery2 si udelas Select * from tabulka where ID = 999
>
> Takze v IBQuery2 mas cerstve hodnoty zaznamu a ted uz je jen vhodnym
> zpusobem nacpes do IBQuery1, ktery je napojeny na grid.
>
> 4a) - pokud se provedl Insert - vis ze zpravy
> IBQuery1.Append;
> Predat hodnoty(IBQuery2, IBQuery1);
> IBQuery1.Post;
>
> 4b) - pokud se provedl Update
> if IBQuery1.Locate('ID', 999, []) then begin
> IBQuery1.Edit;
> Predat hodnoty(IBQuery2, IBQuery1);
> IBQuery1.Post;
> end;
>
> 4c) - pokud se provedl Delete
> if IBQuery1.Locate('ID', 999, []) then
> IBQuery1.Delete;
>
> procedure PredatHodnoty(Data2, Data1: TDataSet);
> var
> i: integer;
> FieldName: string;
> begin
> for i := 0 to Data1.FieldCount - 1 do begin
> FieldName := Data1.Fields[i].FieldName;
> if Data2.FindField(FieldName) <> nil then
> Data1.Fields[i].AsVariant :=
> Data2.FieldByName(FieldName).AsVariant;
> end;
> end;
>
> Snad jsem to napsal pochopitelne :)
> Treba existuje i lepsi zpusob, ale vymyslel jsem pouze tento, ale musim
> rict, ze je to celkem rychle a spolehlive...
>
> David
>

IBExpert

[*] Jiri Fait <develop(zv)lmss(tec)cz> - 20.8.2004 02:11:05

IB Expert pouzivame uz pres rok a mame jen kladne zkusenosti.

Vice takovych programu s takovou podporou.

Cteni pole bytu z ActiveX componenty VYRESENO

[*] j.binder(zv)albacon(tec)cz - 19.8.2004 23:56:56

Problem je vyresen diky nezistne pomoci Erika Salaje.

Pripominam, ze slo o ActiveX komponentu, ktera mela vracet blok 77 bytu. V importovanem rozhrani je tato metoda deklarovana jako XXX(var ReceivedData: OleVariant)
Standardni zpusob predani dat je podle me pres variant VarArrayCreate([0,76], varByte) a metode se preda ten variant nebo odkaz na data variantu pres pomoci VarArrayRef. To vedlo k chybam pri praci s pameti.

Reseni se da shrnout takto:

Komponenta ponekud nestandardne k predani dat pouziva nikoliv pole bytu ale pole variantu a navic jako parametr ocekava nikoliv toto pole, ale prvni element pole.

Volani pak muze vypadat takto:

var
V: array [0..6] of OleVariant;
i: Integer;

begin
for i := 0 to 6 do
V[i] := SmallInt(0);
xxx.(v);


Dekuji vsem, kteri mi s tim pomohli a zejmena Erikovi, ktery tomu venoval svuj cas a zachranil me.

Zdravi Jiri Binder


Synapse

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 19.8.2004 18:08:33

> 1. pro stazeni souboru z internetu pouzivam
> THTTPSend.HTTPMethod('GET', URL) - jde pomoci tohoto prikazu i
> uploadovat soubor z pocitace na internet? Staci vymenit slovo 'GET' za
> neco jineho? Nebo musim pouzit jiny prikaz, treba FtpPutFile?

Pokud ti jde o posilani soubor na WEBovy server, pak se dneska
vetsinou pouziva metoda, ktera simuluje upload souboru pomoci HTML
formulare. Podivej se na funkci HttpPostFile, jak je to udelano.

> 2. kdyz se pripojuji k internetu pomoci modemu a nejsem momentalne
> pripojen, jde pred stahovanim souboru z internetu nejak vyvolat dialog
> pro telefonicke pripojeni k internetu? Jde po ukonceni stahovani
> pripojeni k internetu ukoncit?

To by mela byt vec nastaveni konkretniho pocitace, respektive DialUp
Networking API (DUN), pomoci ktereho to muzez ovladat. Tato oblast
cinnosti stoji zcela mimo pusobnost Synapse, a na internetu najdes
hromady kodu, ktere se timto zabyva... viz. treba www.torry.net

> 3. jde pomoci Synapse (nebo jinych knihoven Indy, atd...) zjistit
> jestli jsem pripojen k Internetu nebo ne? a jestli pomoci modemu nebo
> site?

Obecne to nejde, protoze se o pravdu obtizne specifikuje, co to v
tomto pripade je internet, natoz jakou technologii jsi pripojen.
Napriklad takova sit CZfree, coz je velka sit s hromadou pocitacu a
serveru, ktera je v par bodech pripojena do internetu. Jak chces ze
sveho pocitace zjistovat pripojeni k internetu? Tvuj pocitac ma
vsechny sve linky nahozene, presto nema konektivitu, kdyz nekde v
hloubi site je neco chciple.

Muzes treba zkouset dostupnost nejakeho konkretniho serveru na
internetu. Pokud ale ten konretni stroj z nejakeho duvodu chcipne,
tak to ale neznamena, ze names konektivitu do internetu. Ty ji mas,
jen ne na ten konretni testovany stroj.

Tady, chces-li obecne vedet, jstli jsi na internetu nebo ne, tak to
proste udelat nejde. muzes testovat konektivitu na nejaky konkretni
internetovy stroj, nebo muzes hlidat konektivitu nejake konkretni
datove linky, ale obecne to fakt nikdy nepujde!


--
Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Ararat Synapse - TCP/IP Lib.

OT: Nabidka prace (brigadka)

[*] Milan Schembera <four(zv)4squares(tec)net> - 19.8.2004 17:16:28

Zdravim,

znamy shani nekoho, kdo umi programovat veci pro Linux (treba v Kylixu, ze ;-). Potrebuje vyrobit takovou malou, relativne jednoduchou, utiliku. Zaplati.

Kdo mate pripadne zajem, obracejte se primo na nej: p. Petr Sedlacek, tel. 608 822 020 nebo e-mail pesu(zv)obsidian(tec)cz

Dekuji za docteni e-mailu az sem.

Milan


Synapse

[*] Martin Pavera <martin.pavera(zv)cmail(tec)cz> - 19.8.2004 13:26:13

Zdravim,

mam nekolik dotazu na Synapsi:
(na Synapsi jsem zacatecnik....)

1. pro stazeni souboru z internetu pouzivam THTTPSend.HTTPMethod('GET',
URL) - jde pomoci tohoto prikazu i uploadovat soubor z pocitace na internet?
Staci vymenit slovo 'GET' za neco jineho? Nebo musim pouzit jiny prikaz,
treba FtpPutFile?

2. kdyz se pripojuji k internetu pomoci modemu a nejsem momentalne pripojen,
jde pred stahovanim souboru z internetu nejak vyvolat dialog pro telefonicke
pripojeni k internetu? Jde po ukonceni stahovani pripojeni k internetu
ukoncit?

3. jde pomoci Synapse (nebo jinych knihoven Indy, atd...) zjistit jestli
jsem pripojen k Internetu nebo ne? a jestli pomoci modemu nebo site?

Diky Martin Pavera


Unity pro rovnomerne a zrychlene odpisovani

[*] Rene Kohut <rene.kohut(zv)ataco(tec)cz> - 19.8.2004 13:20:12

Dobry den,
chtel jsem se zeptat, jestli existuji nejake free procedury(unity) pro
vypocet odpisu jak zrychlenych tak rovnomernych.
S pozdravem Rene Kohut


INDY - prakt. zkusenosti

[*] Milan Schembera <four(zv)4squares(tec)net> - 19.8.2004 12:28:08

Zdravim,

ceka mne jeden vetsi projekt, kde volim vhodny zpusob komunikace mezi serverem (ktery bude na paterni siti inetu) a klienty - bude se jednat o predavani nejakych kratkych retezcu, pripadne packet records. Jako nejvhodnejsi reseni se mi zda pouzit TCPServer a TCP klienta od Indy. Moje otazka ovsem zni: Mate nekdo prakticke zkusenosti s tim, jak se treba ten TCP server chova, pokud dojde radove ke stovkam paralelnich konexi ze strany klientu ? Podotykam, ze se nejedna o nejake prenosy dat v radech desitek kilobajtu, pouze o data v radech desitek bajtu (priklad: klient se pripoji, zasle svoji identifikaci, pocka na odezvu serveru, zasle 1kB dat, pocka na potvrzeni serverem a odpoji se).

Dekuji za kazdy nazor.

M.Sch.

FireBird - jak zjistit zavislosti mezi tabulkami

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 19.8.2004 10:29:59

Haj hou!

On 19 Aug 2004 at 9:31, Karel Rys wrote:

> poradite prosim nekdo, jak se daji programove zjistit zavislosti mezi
> tabulkami databaze (FireBird 1.5)? Propojeni pres foreign key.
> Potrebuji neco podobneho, jako umi IBPump - odkudsi nacte zavislosti a
> pri vytvareni kopie databaze postupuje ve spravnem poradi. Krom
> zavislosti samotnych bych potreboval

Tato informace je ulozena v tabulce RDB$DEPENDENCIES pro vsechny db
objekty. Typ objektu je hodnota z tabulky RDB$TYPES.

Nasledujici prikazy / procedury jsou pro QLI, a vypisi zavislosti
objektu nebo na objektu (hodnota parametru je vyzadana interaktivne).
Jsou v GDML, ale urcite si je snadno prevedete na SQL :-)

QLI procedura show_dependant

print distinct rdb$depended_on_name of rdb$dependencies

report rdb$dependencies cross t in rdb$types with
rdb$dependent_type=t.rdb$type and t.rdb$field_name='RDB$OBJECT_TYPE'
and rdb$depended_on_name=*.'object name' sorted by
rdb$dependent_name

set columns = 100
at top of rdb$dependent_name print t.rdb$type_name using xxxxxxxxxx,
rdb$dependent_name

print rdb$dependencies.rdb$field_name
end_report


QLI procedura show_dependencies

print distinct rdb$dependent_name of rdb$dependencies

report rdb$dependencies cross t in rdb$types with
rdb$depended_on_type=t.rdb$type and
t.rdb$field_name='RDB$OBJECT_TYPE' and rdb$dependent_name=*.'object
name' sorted by rdb$depended_on_name

set columns = 100
at top of rdb$depended_on_name print t.rdb$type_name using
xxxxxxxxxx, rdb$depended_on_name

print rdb$dependencies.rdb$field_name
end_report


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

Podmineny preklad - {$DEFINE jmeno}, {$IFDEF jmeno

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 19.8.2004 10:03:57

> Mam problem s podminenym prekladem. Myslel jsem si, ze kdyz dam do
> ruznych unit projektu directivu {$IFDEF jmeno}, tak potom mi staci dat
> treba do *.dpr directivu {$DEFINE jmeno} a vsechny unity se prelozi
> jak potrebuju. Jenomze jako by nastaveni v tom *.dpr platilo jen pro
> *.dpr. Muzete mi nekdo rict co delam spatne popr. mi to trochu
> vysvetlit?

Narvi ten define do 'project options', a bude ti to platit pro cely
projekt.

--
Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Ararat Synapse - TCP/IP Lib.

Combo - sirka roletky pri OwnerDraw

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 19.8.2004 10:25:59

> > K nastavovani sirky pouzivam toto:
> > combo.Perform(CB_SETDROPPEDWIDTH, 80, 0);
> >
> > Coz funguje pekne, ale jean na stylech bez uzivatelskeho
> > vykreslovani.
>
> Ahoj.
> Ja jsem si tusim taky delal OwnerDraw a pouzival jsem ruzne sirky
> roletky, ale posilal jsem to na ni jako klasickou zpravu a ne pres
> Perform... Zkus to poslat jako klasickou message. Jirka

Ahoj,

presna trefa. Zil jsem v domneni, ze Perform a PostMessage v tomto pripade funguji
stejne, a ono ne. Takze PostMessage mi tu roletku opravdu roztahne.

Akorat se zas objevil jiny problem. Zda se mi, ze se prestal vyvolavat OnChange na tom
combu, kdyz je v OwnerDraw rezimu. Mam combo a vedle nej checkbox, pri zmene v
combu ten checkbox zaskrtnu. No a po zmene stylu z csDropDown na
csOwnerDrawFixed se uz checkbox nezaskrtava. Pokud nekdo vite o pricine, prosim o
info - ja jdu jinak rovnez badat.

David Lebeda

FireBird - jak zjistit zavislosti mezi tabulkami

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 19.8.2004 10:03:57

> poradite prosim nekdo, jak se daji programove zjistit zavislosti mezi
tabulkami databaze (FireBird
> 1.5)? Propojeni pres foreign key.

1) Objekty, na kterych tabulka zavisi (nejdriv musis prevest ty objekty a
pak tu tabulku):

select
A.RDB$RELATION_NAME as TABLE_NAME,
C.RDB$RELATION_NAME as FK_TABLE_NAME
from
RDB$RELATION_CONSTRAINTS A,
RDB$REF_CONSTRAINTS B,
RDB$RELATION_CONSTRAINTS C,
RDB$INDEX_SEGMENTS D,
RDB$INDEX_SEGMENTS E
where
(A.RDB$CONSTRAINT_TYPE = 'FOREIGN KEY') and
(A.RDB$RELATION_NAME = :TABLE_NAME) and
(A.RDB$CONSTRAINT_NAME = B.RDB$CONSTRAINT_NAME) and
(B.RDB$CONST_NAME_UQ=C.RDB$CONSTRAINT_NAME) and
(C.RDB$INDEX_NAME=D.RDB$INDEX_NAME) and
(A.RDB$INDEX_NAME=E.RDB$INDEX_NAME)


2) Opacne. Objekty, ktere zavisi na tabulce:

select
A.RDB$RELATION_NAME as DEPENDED_TABLE
from
RDB$REF_CONSTRAINTS B,
RDB$RELATION_CONSTRAINTS A,
RDB$RELATION_CONSTRAINTS C,
RDB$INDEX_SEGMENTS D,
RDB$INDEX_SEGMENTS E
where
(A.RDB$CONSTRAINT_TYPE = 'FOREIGN KEY') and
(A.RDB$CONSTRAINT_NAME = B.RDB$CONSTRAINT_NAME) and
(B.RDB$CONST_NAME_UQ=C.RDB$CONSTRAINT_NAME) and
(C.RDB$INDEX_NAME=D.RDB$INDEX_NAME) and
(A.RDB$INDEX_NAME=E.RDB$INDEX_NAME) and
(C.RDB$RELATION_NAME = :TABLE_NAME)
group by
A.RDB$RELATION_NAME


David

Podmineny preklad - {$DEFINE jmeno}, {$IFDEF jmeno

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 19.8.2004 10:07:57

> >directivu {$DEFINE jmeno} a vsechny unity se prelozi jak potrebuju.
> > Jenomze jako by nastaveni v tom *.dpr platilo jen pro *.dpr.
>
> Do kazde unity, kde to chces pouzit, pridej radek napr. {$I
> MojeDirektivy.inc} //include
> Vytvor si soubor MojeDirektivy.inc, ve kterem si nadefinujes potrebne
> prepinace.


Nebo ti staci jit na menu
Project/Options
zalozka Directories/Conditionals
Do pole Conditionals defines napises vsechny direktivy oddelene strednikem.
Nemusis pak nic psat do unit a nic vytvaret. Jen pri zmene direktiv musis
udelat Project/Build

David

Podmineny preklad - {$DEFINE jmeno}, {$IFDEF jmeno

[*] Martin Burle <mburle2(zv)volny(tec)cz> - 19.8.2004 10:01:56

>directivu {$DEFINE jmeno} a vsechny unity se prelozi jak potrebuju.
> Jenomze jako by nastaveni v tom *.dpr platilo jen pro *.dpr.

Do kazde unity, kde to chces pouzit, pridej radek napr. {$I
MojeDirektivy.inc} //include
Vytvor si soubor MojeDirektivy.inc, ve kterem si nadefinujes potrebne
prepinace.

HTH,

MB


Combo - sirka roletky pri OwnerDraw

[*] Ing. Jiri Sokol <js-delphi(zv)email(tec)cz> - 19.8.2004 09:55:56

> Od: Lebeda David <david.lebeda(zv)comarr(tec)cz>

> K nastavovani sirky pouzivam toto:
> combo.Perform(CB_SETDROPPEDWIDTH, 80, 0);
>
> Coz funguje pekne, ale jean na stylech bez uzivatelskeho vykreslovani.

Ahoj.
Ja jsem si tusim taky delal OwnerDraw a pouzival jsem ruzne sirky roletky, ale posilal jsem to na ni jako klasickou zpravu a ne pres Perform... Zkus to poslat jako klasickou message.
Jirka
--------------------------------------------------
Ing. Jiri Sokol; jiri.sokol(zv)seznam(tec)cz; 972 231 187
D6Prof+SP3; WinXPProf+SP1; FB 1.5.0
programator amater


Podmineny preklad - {$DEFINE jmeno}, {$IFDEF jmeno

[*] Ing. Jiri Sokol <js-delphi(zv)email(tec)cz> - 19.8.2004 09:53:55

Ahoj
Mam problem s podminenym prekladem. Myslel jsem si, ze kdyz dam do ruznych unit projektu directivu {$IFDEF jmeno}, tak potom mi staci dat treba do *.dpr directivu {$DEFINE jmeno} a vsechny unity se prelozi jak potrebuju.
Jenomze jako by nastaveni v tom *.dpr platilo jen pro *.dpr.
Muzete mi nekdo rict co delam spatne popr. mi to trochu vysvetlit?
Predem diky
Jirka
--------------------------------------------------
Ing. Jiri Sokol; jiri.sokol(zv)seznam(tec)cz; 972 231 187
D6Prof+SP3; WinXPProf+SP1; FB 1.5.0
programator amater

FireBird - jak zjistit zavislosti mezi tabulkami

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 19.8.2004 09:31:54

Dobry den,

poradite prosim nekdo, jak se daji programove zjistit zavislosti mezi tabulkami databaze (FireBird
1.5)? Propojeni pres foreign key. Potrebuji neco podobneho, jako umi IBPump - odkudsi nacte
zavislosti a pri vytvareni kopie databaze postupuje ve spravnem poradi. Krom zavislosti samotnych
bych potreboval

Mimochodem: je to jen muj dojem, ze IBConsole spatne zobrazuje cas, ktery zabralo zpracovani
dotazu? Alespon pri testech proti FireBirdu se mi to tak jevi, ze misto napr. 1.8270 sekundy
zobrazi 1.0827 sekundy...

Diky za kazdy namet,

Karel Rys


Synapse - ImapSend

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 19.8.2004 08:45:51

> pouzivam synapsi na praci s IMAPem, potreboval bych ale vedet, kolik
> dat bylo stazeno (methoda FetchMess), je nekde na to nejakej dostupnej
> ukazatel?

Jde ti o nejaky ukazatel stahovani podivej se na
TImapSend.Sock.OnStatus event.

--
Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Ararat Synapse - TCP/IP Lib.

Rtf To Pdf

[*] delphikonf(zv)proxima-soft.sk - 19.8.2004 08:25:49

Dobry den,
potreboval by som poradit, ci nevite o nejakych
komponentach pre prevod dokumentu z RTF do PDF,
popripade ak nejake pouzivate, ake mate s nima
skusenosti.
Dakujem
Peter


Synapse - ImapSend

[*] Bronislav Klucka <bronislav.klucka(zv)pro2-soft(tec)com> - 18.8.2004 23:23:15

Zdar,
pouzivam synapsi na praci s IMAPem, potreboval bych ale vedet, kolik dat
bylo stazeno (methoda FetchMess), je nekde na to nejakej dostupnej ukazatel?

Brona

Kopirovanie XML

[*] Tomas Blazek <tomas.blazek(zv)pse.sk> - 18.8.2004 22:43:12

Zdravim!

Mohol by mi niekto poradit s tym, ako skopirovat urcity XML
element aj so vsetkymi podriadenymi elementmi (detmi) a atributmi?

Dakujem za rady.

FireBird: Generator v ulozene procedure

[*] Fedor 'fi0dor' Tirsel <fi0dor(zv)fi0dor.info> - 18.8.2004 16:26:44

: Ahoj,

Zdravim,

: lze nejak realizovat neco jako toto:
:
: CREATE PROCEDURE NEW_PROCEDURE (
: GENNAME VARCHAR(30))
: RETURNS (
: RESULT INTEGER)
: AS
: begin
: SELECT GEN_ID(:GENNAME, 1) FROM rdb$database INTO :RESULT;
: suspend;
: end
:
: Tzn, vygenerovat ID z generatoru, jehoz jmeno mi prijde
: jako parametr procedury?

ide to cez EXECUTE STATEMENT. Vynatok z dokumentacie hovori:

EXECUTE STATEMENT <string> INTO :var1, ., :varn;

Description

Executes <string> as SQL operation, returning single data row. Only
singleton SELECT operators may be executed with this form of EXECUTE
STATEMENT.

Sample:

CREATE PROCEDURE DynamicSampleTwo (TableName VARCHAR(100))
AS
DECLARE VARIABLE Par INT;

BEGIN
EXECUTE STATEMENT 'SELECT MAX(CheckField) FROM ' || TableName INTO :Par;
IF (Par > 100) THEN
EXCEPTION Ex_Overflow 'Overflow in ' || TableName;
END

S pozdravom...
--
Fedor 'fi0dor' Tirsel
www.fi0dor.info

FireBird: Generator v ulozene procedure

[*] Pavel Poles <delphi(zv)noni(tec)cz> - 18.8.2004 16:18:41

Ahoj,

lze nejak realizovat neco jako toto:

CREATE PROCEDURE NEW_PROCEDURE (
GENNAME VARCHAR(30))
RETURNS (
RESULT INTEGER)
AS
begin
SELECT GEN_ID(:GENNAME, 1) FROM rdb$database INTO :RESULT;
suspend;
end

Tzn, vygenerovat ID z generatoru, jehoz jmeno mi prijde
jako parametr procedury?

Predem dik za odpovedi

Pavel Poles

DAO komponenty - Export obsahu tabulky z MS Access

[*] mstevlik(zv)gamo.sk - 18.8.2004 12:16:25

Hi all
Potreboval by som poradit ako urcit znakovu sadu pri exporte z MS
Accessesu do dBase3 pomocou DAO komponent
pricom pouzivam nieco taketo:
SELECT * INTO TabDbf IN "C:\Cesta\" "dBase III;" FROM TabAcc

Stevlik Marian
ISYS programator

GAMO a.s.
Kyjevske nam. 6
974 04 Banska Bystrica
mail: mstevlik(zv)gamo.sk
tel: +421 48 4137935, 4372111
ip-tel: 421 48 4372098
mobil: +412 905 462010
icq: 38493645

Jak distribuovat data pro MS SQL?

[*] Erik Salaj, Winsoft <winsoft(zv)netkosice.sk> - 18.8.2004 12:08:24

> nemuze vzniknout problem s odlisnou instalaci serveru ? Mel jsem potiz pri
> attach v pripade, ze se lisilo nastavene trideni (u MS SQL 7, delalo mi to
i
> restore). Nastesti slo o obnovu instalace, takze jsem jen preinstaloval
> server s potrebnym nastavenim a bylo.
> Ja bych to resil spis exportem dat do MDB, a pri instalaci importovat...
> Urcite to ale bude pomalejsi.

na MS SQL 2000 je mozne nastavovat triedenia zvlast
pre kazdu databazu. V pripade nejakych problemov potom
je stale este mozne bud nainstalovat rovnaky MSDE (moze ich
byt nainstalovanych viac na pocitaci) a vyhnut sa tak
problemom s moznou nekompatibilitou, alebo nerobit
attach/detach ale vygenerovat SQL skript alebo pouzit
backup/restore. Ja pouzivam najcastejsie attach/detach
lebo je to najjednoduchsie riesenie a problemy som s tym
zatial nemal.

Erik

Prekryti PaintBox

[*] Petr Fiser <petr.fiser(zv)3jservis(tec)cz> - 18.8.2004 12:06:23

Nejlepsi bude kdyz tu cast ktera se stara o vykresleni poslete. Ja pouzivam
jednoduchy zpusob vykreslovani na TPaintBox.Canvas. Na jeho udalost OnPaint
navesim toto:

procedure TMainForm.PaintBoxPaint(Sender: TObject);
begin
with PaintBox do
Canvas.CopyRect(Canvas.ClipRect, TmpBmp.Canvas, Canvas.ClipRect);
end;

V te bitmape mam samozrejmne ulozeny pozadovany obraz. Muzete ji vytvorit
pokazde pri volani teto procedury, nebo ji mit vytvorenou po dobu trvani
formulare kde probiha vykreslovani (je to rychlejsi). V tomto prikladu se
vzdy namapuje presny vyrez na pozadovanem miste Canvasu. Bitmapa se musi
shodovat velikosti s velikosti PaintBoxu. Ve vasem pripade kdy potrebujete
mnenit velikost, je ale nutne vytvaret novy obrazek pri zmnene velikosti
formulare nebo komponenty na ktere je umisten PaintBox napr.:
Panel.OnResize.

procedure TMainForm.PanelResize(Sender: TObject);
begin
//... pri kazde zmene velikosti komponenty zrusi TmpBitmap a vytvori novou
if Assigned(TmpBmp) then
FreeAndNil(TmpBmp);
TmpBmp := TBitmap.Create;
TmpBmp.Width := PainBox.Width;
TmpBmp.Height := PaintBox.Height;
... a muzete kreslit
end;

Pokud budete tahat za velikost formulare jak za tahaci harmoniku, neni to
uplne optimalni reseni. V takovem pripade pouzivam casovac ktery zareaguje
az na posledni zmnenu velikosti formulare po definovanem case.

----- Original Message -----
From: "Ing. Jan Dvorak" <dvorak(zv)szu(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Wednesday, August 18, 2004 11:19 AM
Subject: Re: Prekryti PaintBox


> Asi jsem to popsal dosti nesrozumitelne. Pri obnoveni prekryte oblasti je
> prekryty obsah nahrezen z jinych zdroju, nez je vykreslovani z meho
> programu. Pokusim se popsat jak: Do obnovene casti se prekopiruje obsah
> Canvas tak, ze jeho levy horni roh se objevi znovu v levem hornim rohu
> zakryte oblasti. Proste jako kdyz se tam nakopiruje s offsetem. Je to asi
> zalezitost Windows. Jde mi o to, jakou udalost nebo zpravu odchytit v mem
> programu a vyvolat vlastni Repaint, ktery to vzdy provede spravne.
> Diky predem za namety.
> Jan Dvorak
>
> Nepisete jakym zpusobem provadite vykreslovani, ale mozna to bude spatnym
> vypoctem vykreslovane oblasti. Pro detekci pozadovane oblasti prekresleni
je
> funkce "Canvas.ClipRect" ktera vrati TRect. Pokud budete pri vypoctech
> vykresleni grafu pouzivat tento "Offset" od pocatecniho bodu, musi to
sedet
> presne do vyrezu.
>
> Petr Fiser.
>
> > Prostredi: WXP prof., D6 SP2 prof.
> > Na formu mam umisteny PaintBox a nastavene Anchors na vsechny 4 strany.
Na
> > PaintBox se vykresluji jednoduche carove grafy. Prekreslovani s
> > respektovanim skalovani na rozmer Canvas je provadeno pres udalost
> onPaint.
>
>

Jak distribuovat data pro MS SQL?

[*] Erik Salaj, Winsoft <winsoft(zv)netkosice.sk> - 18.8.2004 11:19:57

> Jakym zpusobem pri instalaci aplikace dostat na cilovy pocitac data? Asi
je
> nutne brat ohled na to, ze pujde o vetsi rozsah dat (odhaduji asi 500 MB
> databazi). Jedna se take o to, jestli se daji nakopirovat z CD primo
soubory
> MDF a LDF a aplikace psi pri spusteni skontroluje strukturu databaze a
> pojede dal. Nebo se musi databaze vyexportovat do SQL skriptu a pak pri
> prvnim spusteni aplikace spustit skript, ktery zalozi databazi a tabulky a
> naplni je daty.

mozes skopirovat priamo databazu (t.j. MDF a LDF subor), ale najprv urob
na SQL serveri detach tejto databazy, skopiruj ju a potom naspet attach.
U zakaznika len attach skopirovanej databazy. Attach/detach mozes
robit programom (aj z Delphi aplikacie) pomocou SQL DMO rozhrania.

Erik

Prekryti PaintBox

[*] Ing. Jan Dvorak <dvorak(zv)szu(tec)cz> - 18.8.2004 11:19:57

Asi jsem to popsal dosti nesrozumitelne. Pri obnoveni prekryte oblasti je
prekryty obsah nahrezen z jinych zdroju, nez je vykreslovani z meho
programu. Pokusim se popsat jak: Do obnovene casti se prekopiruje obsah
Canvas tak, ze jeho levy horni roh se objevi znovu v levem hornim rohu
zakryte oblasti. Proste jako kdyz se tam nakopiruje s offsetem. Je to asi
zalezitost Windows. Jde mi o to, jakou udalost nebo zpravu odchytit v mem
programu a vyvolat vlastni Repaint, ktery to vzdy provede spravne.
Diky predem za namety.
Jan Dvorak

Nepisete jakym zpusobem provadite vykreslovani, ale mozna to bude spatnym
vypoctem vykreslovane oblasti. Pro detekci pozadovane oblasti prekresleni je
funkce "Canvas.ClipRect" ktera vrati TRect. Pokud budete pri vypoctech
vykresleni grafu pouzivat tento "Offset" od pocatecniho bodu, musi to sedet
presne do vyrezu.

Petr Fiser.

> Prostredi: WXP prof., D6 SP2 prof.
> Na formu mam umisteny PaintBox a nastavene Anchors na vsechny 4 strany. Na
> PaintBox se vykresluji jednoduche carove grafy. Prekreslovani s
> respektovanim skalovani na rozmer Canvas je provadeno pres udalost
onPaint.

Jak distribuovat data pro MS SQL?

[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 18.8.2004 11:36:02

> mozes skopirovat priamo databazu (t.j. MDF a LDF subor), ale
> najprv urob
> na SQL serveri detach tejto databazy, skopiruj ju a potom
> naspet attach.
> U zakaznika len attach skopirovanej databazy. Attach/detach mozes
> robit programom (aj z Delphi aplikacie) pomocou SQL DMO rozhrania.
>
> Erik

Ahoj,

nemuze vzniknout problem s odlisnou instalaci serveru ? Mel jsem potiz pri
attach v pripade, ze se lisilo nastavene trideni (u MS SQL 7, delalo mi to i
restore). Nastesti slo o obnovu instalace, takze jsem jen preinstaloval
server s potrebnym nastavenim a bylo.
Ja bych to resil spis exportem dat do MDB, a pri instalaci importovat...
Urcite to ale bude pomalejsi.

Zdravim

Jiri Foldyna

Jak distribuovat data pro MS SQL?

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 18.8.2004 11:17:57

Puvodni zprava ze dne 18.8.2004:

> Jakym zpusobem pri instalaci aplikace dostat na cilovy pocitac data?
> Asi je nutne brat ohled na to, ze pujde o vetsi rozsah dat (odhaduji
> asi 500 MB databazi). Jedna se take o to, jestli se daji nakopirovat
> z CD primo soubory MDF a LDF a aplikace psi pri spusteni skontroluje
> strukturu databaze a pojede dal. Nebo se musi databaze vyexportovat
> do SQL skriptu a pak pri prvnim spusteni aplikace spustit skript,
> ktery zalozi databazi a tabulky a naplni je daty.

No nejjednodussi je nakopirovat primo ty datove soubory MS SQL a
pomoci systemove ulozene procedury tu databazi pripojit.

Petr Zahradnik, pocitacovy expert

==========================================================
Petr Zahradnik, Computer Laboratory


web: http://www.clexpert(tec)cz, e-mail: clexpert(zv)clexpert(tec)cz

==========================================================

Jak distribuovat data pro MS SQL?

[*] Ing. Igor Vodicka <vodicka(zv)sagit(tec)cz> - 18.8.2004 11:11:56

Zdravim vsechny priznivce prace v techto horkych letnich dnech.

Potreboval bych poradit viz %sub%.

Popis situace:
Mame komercni aplikaci, ktera obsahu radove stovky MB (momentalne 300 MB)
textovych dat (jsou ulozeny v adresarich ve velkem mnozstvi malych souboru).
Chystame se data preves do SQL databaze (MS SQL 2000) a samozrejme takovou
aplikaci vcetne dat distribuovat uzivatelum na CD odkud se bude instalovat
vse potrebne. Tj. samotny program, databazovy stroj MSDE 2000 a samotne
data.

Zde je muj dotaz:
Jakym zpusobem pri instalaci aplikace dostat na cilovy pocitac data? Asi je
nutne brat ohled na to, ze pujde o vetsi rozsah dat (odhaduji asi 500 MB
databazi). Jedna se take o to, jestli se daji nakopirovat z CD primo soubory
MDF a LDF a aplikace psi pri spusteni skontroluje strukturu databaze a
pojede dal. Nebo se musi databaze vyexportovat do SQL skriptu a pak pri
prvnim spusteni aplikace spustit skript, ktery zalozi databazi a tabulky a
naplni je daty.

Jake s tim mate kdo zkusenosti? Nevite o nejakem zdroji informaci na webu,
kde jsou podobne zalezitosti resene?

Predem vsem diky

Ing. Igor Vodicka
informacni systemy
Nakladatelstvi Sagit
Tel.: 59 6786 001
HTTP://www.sagit(tec)cz/

refresh zaznamov nad IBQuery

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 18.8.2004 11:03:56



> Ak som to spravne pochopil tak po tom inserte z
> druheho formulara mam ten grid na prvom formulari
> napojit na iny datasource a iny ibquery. Na tomto
> ibquery urobit append a priradit hodnoty a post?
> a potom zasa pripojit grid na povodny datasource
> a povodny ibquery? Takto?


Ne ne, uplne jinak..

1) mas form, ktery ma IBQuery1 a grid, ktery obsahuje nejaka data
2) form prijme zpravu, ze se zmenil/pridal zaznam s ID = 999
3) v IBQuery2 si udelas Select * from tabulka where ID = 999

Takze v IBQuery2 mas cerstve hodnoty zaznamu a ted uz je jen vhodnym
zpusobem nacpes do IBQuery1, ktery je napojeny na grid.

4a) - pokud se provedl Insert - vis ze zpravy
IBQuery1.Append;
Predat hodnoty(IBQuery2, IBQuery1);
IBQuery1.Post;

4b) - pokud se provedl Update
if IBQuery1.Locate('ID', 999, []) then begin
IBQuery1.Edit;
Predat hodnoty(IBQuery2, IBQuery1);
IBQuery1.Post;
end;

4c) - pokud se provedl Delete
if IBQuery1.Locate('ID', 999, []) then
IBQuery1.Delete;

procedure PredatHodnoty(Data2, Data1: TDataSet);
var
i: integer;
FieldName: string;
begin
for i := 0 to Data1.FieldCount - 1 do begin
FieldName := Data1.Fields[i].FieldName;
if Data2.FindField(FieldName) <> nil then
Data1.Fields[i].AsVariant :=
Data2.FieldByName(FieldName).AsVariant;
end;
end;

Snad jsem to napsal pochopitelne :)
Treba existuje i lepsi zpusob, ale vymyslel jsem pouze tento, ale musim
rict, ze je to celkem rychle a spolehlive...

David

Prekryti PaintBox

[*] Petr Fiser <petr.fiser(zv)3jservis(tec)cz> - 18.8.2004 10:43:53

Nepisete jakym zpusobem provadite vykreslovani, ale mozna to bude spatnym
vypoctem vykreslovane oblasti. Pro detekci pozadovane oblasti prekresleni je
funkce "Canvas.ClipRect" ktera vrati TRect. Pokud budete pri vypoctech
vykresleni grafu pouzivat tento "Offset" od pocatecniho bodu, musi to sedet
presne do vyrezu.

Petr Fiser.

----- Original Message -----
From: "Ing. Jan Dvorak" <dvorak(zv)szu(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Tuesday, August 17, 2004 11:09 AM
Subject: Prekryti PaintBox


> Prostredi: WXP prof., D6 SP2 prof.
> Na formu mam umisteny PaintBox a nastavene Anchors na vsechny 4 strany. Na
> PaintBox se vykresluji jednoduche carove grafy. Prekreslovani s
> respektovanim skalovani na rozmer Canvas je provadeno pres udalost
onPaint.
> Pri zmene velikosti formu se grafy prekresluji spravne. Pokud je form
> prekryt jinym oknem cely, pak pri jeho obnoveni je obsah PaintBox zobrazen
> spravne. Pokud dojde k prekryti jen casti PaintBox jinym oknem, je po
> obnoveni obsah PaintBox rekonstruovan nespravne. Pouzije se jiny vyrez
> puvodniho obsahu. Pri obnoveni zobrazeni meho formu neni evokovana udalost
> onPaint.
> Zamenim-li PaintBox komponentou Image, obnovovani probiha ve vsech
pripadech
> korektne; bohuzel u Image nefunguje zmena velikosti jeho Canvas soubezne
se
> zmenou velicin width a height komponenty Image pri vypnutem autosize. Po
> zapnuti vlastnosti autosize dochazi k prekreslovani obsahu s pouzitim
> interpolace a vysledne zobrazeni je nepouzitelne.
> Setkal se jiz nekdo s timto nebo podobnym chovanim a ma namet na ostraneni
> popsanych nezadoucich jevu?
> Jan Dvorak
>
>
>

Import XML souboru do datasetu

[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 18.8.2004 10:29:52

> Hm, potom tam asi neni. Stejne tak neni v D5 zadna rozumna
> podpora pro praci
> s XML, takze si budes muset naimportoval MSXML parser a
> napsat transformaci z
> XML do TDataSetu (ne DATAPACKET formatu) rucne.
>
> Petr Vones

Jo, uz to delam.

Diky

Jiri Foldyna


refresh zaznamov nad IBQuery

[*] hlas <hlas(zv)inmail.sk> - 18.8.2004 10:27:52

Ak som to spravne pochopil tak po tom inserte z
druheho formulara mam ten grid na prvom formulari
napojit na iny datasource a iny ibquery. Na tomto
ibquery urobit append a priradit hodnoty a post?
a potom zasa pripojit grid na povodny datasource
a povodny ibquery? Takto?
----- Original Message -----
From: "David Fajfr"
> Ja to delam jednoduse tak, ze po zapisu poslu ciselniku, ktery mi ten
> editacni form vyvolal, zpravu ze nastala zmena dat. Delam to pres
> PostMessage, kde v parametru poslu typ zapisu (Insert, Update) a ID
zaznamu
> ktery se zmenil nebo pridal. Ten ciselnik, ktery dostane tuto zpravu si
onen
> zaznam otevre v jinem Query a provede pozadovanou akci ve svem datasetu -
> Pri update se provede Locate a prirazeni hodnot; Pri insertu se provede
> Append a pak prirazeni hodnot. S vymazanim zaznamu je to podobne. Jen je
> potreba nemit dataset v ciselniku ReadOnly a provadene "nahledove" operace
> nepromitat do databaze.
>
> Poslani zpravy ma i tu vyhodu, ze vsechny okna v aplikaci jsou na sobe
> nezavisle... Treba muze nastat situace, ze uzivatel otevre ciselnik, z
> ciselniku editacni form a ciselnik zavre... potom, kdyz editaci zapisuje,
> jen se posle message s handle jiz neexistujiciho okna a vse je OK.
>
> David

Firebird: StoredProc nebo View

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 18.8.2004 10:03:50

> gyganticke vyhody View a StoredProc, ja osobne vlastne uzivatele
> nepoustim k tabulkam jinak nez pres View a StoredProc. Kdyz je nechaz
> zapisovat na primo udelaji ti v datech brutalni maglajz. Taky nerad

Puvodni dotaz byl o cteni dat. Pri zapisu s tebou souhlasim, ze bude lepsi a
bezpecnejsi procedura.> primo v aplikaci pozivam spojovani vice tabulek, pak chces to same
> spojeni volat z vice ruznych mist, a kopirujes spojeni na trikrat.

Muzes ho mit v nejake konstante.

> Nakonec provedes zmenu a uz nedohledas, kde vsude to spojeni mas a musis
> ho predelat.

A kdyz provedes zmenu View, tak nemusis hledat, kde vsude v aplikaci ho mas
pouzite, abys zkontroloval spravnost dat?

David

refresh zaznamov nad IBQuery

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 18.8.2004 09:45:49

> Myslim ze robit TIBQuery.close a TIBQuery.open po kazdom novom zazname
> moze dost zdrzovat.
> Ako vykonat refresh TIBQuery po inserte - po pridani noveho zaznamu,
> tak aby som refreshoval iba jeden - ten novy zaznam a nie celu tabulku?
> A co urobit po delete, aby zmizol z gridu jeden zaznam a nebolo
> treba robit close a open?

Ahoj,

Ja to delam jednoduse tak, ze po zapisu poslu ciselniku, ktery mi ten
editacni form vyvolal, zpravu ze nastala zmena dat. Delam to pres
PostMessage, kde v parametru poslu typ zapisu (Insert, Update) a ID zaznamu
ktery se zmenil nebo pridal. Ten ciselnik, ktery dostane tuto zpravu si onen
zaznam otevre v jinem Query a provede pozadovanou akci ve svem datasetu -
Pri update se provede Locate a prirazeni hodnot; Pri insertu se provede
Append a pak prirazeni hodnot. S vymazanim zaznamu je to podobne. Jen je
potreba nemit dataset v ciselniku ReadOnly a provadene "nahledove" operace
nepromitat do databaze.

Poslani zpravy ma i tu vyhodu, ze vsechny okna v aplikaci jsou na sobe
nezavisle... Treba muze nastat situace, ze uzivatel otevre ciselnik, z
ciselniku editacni form a ciselnik zavre... potom, kdyz editaci zapisuje,
jen se posle message s handle jiz neexistujiciho okna a vse je OK.

David

Combo - sirka roletky pri OwnerDraw

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 18.8.2004 09:35:48

Ahoj,

zkousim pouzit combobox se stylem csOwnerDrawFixed. To by bylo OK. Jenze nevim,
jak u tohoto stylu docilit zvetseni sirky roletky, tak, aby roletka byla sirsi nez je sirka
Comboboxu.

K nastavovani sirky pouzivam toto:
combo.Perform(CB_SETDROPPEDWIDTH, 80, 0);

Coz funguje pekne, ale jean na stylech bez uzivatelskeho vykreslovani.

Da se tedy dosahnout obojiho?

Diky

David Lebeda

Tisk obsahu souboru hlp

[*] Marek Dostal <konf(zv)agnis(tec)cz> - 18.8.2004 09:27:47

Mam help soubor *.hlp a potreboval bych z nej vytisknout urcita temata, ale ne tak, ze si tema otevru a dam tisk, ale z programu, neco jako TiskHelp(hpCHelp) Marek Dostal
D7Prof, WinXP Home, FireBird 1.0.2


Firebird: StoredProc nebo View

[*] Richard Kejval <kejval.delphi(zv)centrum(tec)cz> - 18.8.2004 09:01:45

> Ohledne View a StoredProc se tyce, tak vsude tam kde to jde a vyhovuje
> tak davat pohledy, protoze narozdil od procedur se nevytvareji pri
> kazdem dotazu. Pohledy jsou takove "docasne" tabulky, kdezdo procedura
> se spousti pokazde znova od nuly.

Rekl bych, ze View i SP u FB neni nic jineho nez kus prekompilovaneho kodu,
ktery pak stejne musi vybirat data, takze bych dost pochyboval o terminu
"docasna tabulka". Vyhoda SP je, ze muzu zadat vstupni parametry podle,
kterych muzu omezovat. Prace s 100 tis tabulkami je pro view dost
nepouzitelne,
protoze prvne spojuje a pak teprve omezuje a bohuzel, bez pouziti indexu :-(
Podle mne jedina vyhoda View je, ze se na nej daji navesit triggery a pri
aktualizaci dat, je pak rozhodit do vice tabulek, ale to se da zvladnout i
ve
framworku, takze u nas View vubec nepouzivame a nijak nam nechybi. Mluvim
pouze o FB ! Jestli se mylim, tak doufam, ze mi to objasni fundovanejsi
odbornici.

spousteni aplikace pres mail

[*] Vaclav Riha - Soft Consult <vaclav_riha(zv)softconsult(tec)cz> - 18.8.2004 08:43:44

pokud se zna cesta k programu, tak na to staci davka, problem by mohl
nastat u zapnuteho zabezpeceni Outlooku (nepristupne jakekoliv spustitelne
prilohy), jak to vypnout pro ruzne Outlooky je ruzne a nekdy dost
krkolomne.

S pozdravem Vaclav Riha
> ahoj,
>
> >uzivatel ma na disku ulozenou aplikaci a ja ji potrebuji spustit s
> >parametrem.
> >da se nejak poslat v mailu link s parametrem?

spousteni aplikace pres mail

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 18.8.2004 08:21:42

> ahoj,
>
> uzivatel ma na disku ulozenou aplikaci a ja ji potrebuji spustit s
> parametrem.
> da se nejak poslat v mailu link s parametrem?
>
> diky
>
>
> Marek
>
>
>

To neviem, ale ak mozes, vyrob si u pouzivatela .bat a spustaj ten.
Samozrejme by to bolo vhodne, iba ak kombinacii parametrov nie je prilis
vela.

peter


spousteni aplikace pres mail

[*] Karol Chupek <chupek(zv)apollo.sk> - 18.8.2004 08:11:41

ahoj
neviem ci by ti nebolo jednoduchsie napisat maly program ktory tu aplikaciu
spusti aj sparametrom.
ked vies kde je umiestneny ten program tak by to nemal byt problem a hned
mas vyrieseny problem aj s linkom
karol

ahoj,
>
> >uzivatel ma na disku ulozenou aplikaci a ja ji potrebuji spustit s
> >parametrem.
> >da se nejak poslat v mailu link s parametrem?

refresh zaznamov nad IBQuery

[*] hlas <hlas(zv)inmail.sk> - 18.8.2004 07:29:39

Na jednom formulari mam grid a komponenty
TIBQuery a TIBUpdatesql. Tieto pouzivam iba na zobrazenie
FB tabulky.
Na druhom formulari robim pomozou edit boxov a TIBSQL
zapisy do tabulky.

Po update uz existujuceho zaznamu na druhom formulari dokazem pekne refreshnut
zaznam v gride na prvom formulari. Robim to tak, ze do komponenty TIBUpdateSQL
vlozim RefreshSQL: 'select * from tabulka where pole=:old_pole. (pole je prim.key)
a zavolam TIBQuery. refresh. Toto mi pekne obnovi-refreshne prave editovany
zaznam v gride.

Avsak problem mam ak chcem refreshnut grid po INSERTE alebo DELETE.
Ak na druhom formulari urobim insert tak do komponenty
TIBUpdateSQL vlozim vlastnost refresql: 'select * from tabulka
where pole=novyprimkluc'. a zavolam TIBQuery.refresh.
Toto mi sice obnovi zaznam v gride ale tak ze novy zaznam prekryje ten, ktory bol
predtym aktualny. Teda v gride mi nepribudne o jeden zaznam viac, ako by malo,
ale ten ktory bol pred INSERTOM aktualny sa ako keby
prepise tym novym. Je to len vec zobrazenia gridu, lebo ked dam close a open
tak je vsetko ok.

Myslim ze robit TIBQuery.close a TIBQuery.open po kazdom novom zazname
moze dost zdrzovat.
Ako vykonat refresh TIBQuery po inserte - po pridani noveho zaznamu,
tak aby som refreshoval iba jeden - ten novy zaznam a nie celu tabulku?
A co urobit po delete, aby zmizol z gridu jeden zaznam a nebolo
treba robit close a open?

Import XML souboru do datasetu

[*] Petr Vones <konference(zv)petrvones(tec)net> - 18.8.2004 00:01:10

From: "Jiri Foldyna" <jiri.f(zv)avizo(tec)cz>
> Diky, ale je to v D5 Ent ? Nejak nemuzu najit ani XML Mapper ani
> TXMLTrasform ... Jedina komponenta, co ma v nazvu XML je TXMLBroker.

Hm, potom tam asi neni. Stejne tak neni v D5 zadna rozumna podpora pro praci
s XML, takze si budes muset naimportoval MSXML parser a napsat transformaci z
XML do TDataSetu (ne DATAPACKET formatu) rucne.

Petr Vones

TXMLDocument

[*] Petr Vones <konference(zv)petrvones(tec)net> - 18.8.2004 00:03:10

From: "Cermi" <cermiforum(zv)centrum(tec)cz>
> Jde pomoci TXMLDocument nejakym zpusobem zmenit DOCTYPE?

Pokud je mi znamo tak to nejde.

Petr Vones

Firebird: StoredProc nebo View

[*] Benda Lukas <bendal(zv)volny(tec)cz> - 17.8.2004 18:00:36


>me se jevi nejlepsi view nepouzivat vubec a SP jen tam, kde potrebujes
>nejake specialni funkce, ktere nedokazes udelat obycejnym dotazem do
>tabulek.
>
>View ma velkou nevyhodu v tom, ze kdyz potrebujes delat zmeny tabulky, musis
>view zrusit a pak opet vytvorit, coz je pri intenzivnim vyvoji nekdy docela
>pakarna.
>
>Procedura zase neni moc idealni, pokud nedelas vyber zaznamu primo v ni, ale
>v aplikaci. Takze kdyz predem nevis podle ceho uzivatel bude chtit vybirat
>data, budes muset udelat proceduru, ktera v sobe nema zadna vyberova
>kriteria a ta bude hodne pomala - bude srotit vzdycky vsechny zaznamy ikdyz
>uzivatel chce jen par.
>
>FB 1.5 uz ma EXECUTE STATEMENT, pomoci ceho by jsi mohl i v procedure delat
>dynamicke selecty, ale tam jsem se jeste nedostal :-)
>
Ahoj uznavam, ze mas pravdu v onech nevyhodach, ale existuji i
gyganticke vyhody View a StoredProc, ja osobne vlastne uzivatele
nepoustim k tabulkam jinak nez pres View a StoredProc. Kdyz je nechaz
zapisovat na primo udelaji ti v datech brutalni maglajz. Taky nerad
primo v aplikaci pozivam spojovani vice tabulek, pak chces to same
spojeni volat z vice ruznych mist, a kopirujes spojeni na trikrat.
Nakonec provedes zmenu a uz nedohledas, kde vsude to spojeni mas a musis
ho predelat.

Idealni je trivrstva architektura, pokud to ale nejde, pak jsem
zastanvem tohoo, aby se co nejvice prace s daty odehravala na servru.

Ohledne View a StoredProc se tyce, tak vsude tam kde to jde a vyhovuje
tak davat pohledy, protoze narozdil od procedur se nevytvareji pri
kazdem dotazu. Pohledy jsou takove "docasne" tabulky, kdezdo procedura
se spousti pokazde znova od nuly.

spousteni aplikace pres mail

[*] Benda Lukas <bendal(zv)volny(tec)cz> - 17.8.2004 18:00:37

> ahoj,

>uzivatel ma na disku ulozenou aplikaci a ja ji potrebuji spustit s
>parametrem.
>da se nejak poslat v mailu link s parametrem?
>
>diky
>
>
>Marek
>
Obavam se, ze to jinak nez nejakym hekovanim nepujde. Jako link s
parametrm bys to mohl poslat jenom v pripade, ze by mel u sebe
nainstalovany http server a na nem podporu cgi scriptu a tvuj program
byl jako jedne cgi script, jinak budes muset bud udelat programek, ktery
spusti co potrebujes, nebo to uzivateli poradne popsat a doufat ze to
zvladne.

Lukas Benda

IBClientDataSet - ApplyUpdate

[*] Benda Lukas <bendal(zv)volny(tec)cz> - 17.8.2004 18:00:36


>Psal jsi, ze je pocet chyb nulovy, ale kdyz se ti vyvolava onError (TIBCDS
>ma vice chybovych eventu, nevim, ktery mas na mysli), tak to asi tak uplne
>bez chyb nebude, ne?
>
>MB
>
Uznavam ze je to schizofrenicke chovani. Po ApplyUpdate() vraci pocet
chyb, ktere pri updatovani probehly. To je rovno nule, ale OnError event
mi chybu vrati. To je dost divne, ale nezkoumal bych to, kdyby mi to ten
Update provedlo.

Ustredny

[*] Jiri Matejka <matejka(zv)stemmark(tec)cz> - 17.8.2004 18:18:39

Mam PDFko Microsoft Windows - Telephony Programmers's Guide, je to docela
hutny - pres 700 stran vcetne priloh, anglicky; pak mam jakous takous
dokumentaci k ustredne Nortel, taktez anglicky, 57 stran; a jeste TAPI Quick
Reference (asi 4 stranky, prehled funkci , taky anglicky). Muzu poskytnout.

Jirka Matejka

==>Tuesday, August 17, 2004 12:01 PM davidfajfr(zv)seznam(tec)cz wrote:

>> spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu shaneji.
>> Ale jak jsem jiz rekl, kazdy vyrobce jiz tohle umi a budes zbytecne
>> vyvijet jiz hotove. Ty to taky asi nebudes chtit zadara a je na
>> uzivateli, jestli si vezme nejakou "univerzalni nahrazku" nebo
>> "perfektni" reseni primo od vyrobce. Zase tolik to nestoji.
>
> Myslim, ze to vubec neni zbytecne... Vyrobce sice doda nejake
> reseni na vytaceni, prepojovani a posilani SMS, ale kdyz vyvyjis
> informacni system, ktery tohle musi umet take, musis si to
> naprogramovat sam. Take me to ceka, proto bych se take priklonil k
> otazce, kde najit nejake informace o TAPI a zpusobu prace s nim.
>
> Predem diky za odpovedi.
>
> David


Ustredny

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 17.8.2004 18:18:39

> spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu shaneji. Ale
jak
> jsem jiz rekl, kazdy vyrobce jiz tohle umi a budes zbytecne vyvijet jiz
> hotove. Ty to taky asi nebudes chtit zadara a je na uzivateli, jestli si
> vezme nejakou "univerzalni nahrazku" nebo "perfektni" reseni primo od
> vyrobce. Zase tolik to nestoji. Myslim, ze to vubec neni zbytecne... Vyrobce sice doda nejake reseni na
vytaceni, prepojovani a posilani SMS, ale kdyz vyvyjis informacni system,
ktery tohle musi umet take, musis si to naprogramovat sam.
Take me to ceka, proto bych se take priklonil k otazce, kde najit nejake
informace o TAPI a zpusobu prace s nim.

Predem diky za odpovedi.

David


Ustredny

[*] Zapletal Martin <zapletal(zv)inoma(tec)cz> - 17.8.2004 18:18:38

TAPI sice par ustreden umi, ale spolecne reseni tezko najdes. V kazdem
pripade narazis u Siemense Ti nereknou nic. A ostatni ? Kazdej pes jina ves,
ona totiz lidova tvorivost nezna mezi. Kdyby to slo tak jednoduse, uz bych
to udelal sam. V tomto oboru delam jiz 15 a let krome TAPI nenajdes nic
spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu shaneji. Ale jak
jsem jiz rekl, kazdy vyrobce jiz tohle umi a budes zbytecne vyvijet jiz
hotove. Ty to taky asi nebudes chtit zadara a je na uzivateli, jestli si
vezme nejakou "univerzalni nahrazku" nebo "perfektni" reseni primo od
vyrobce. Zase tolik to nestoji. Zapletal Martin
Vyvoj software, technik

INOMA - Brno s.r.o.
Skacelova 18, 613 00, Brno
e-mail: zapletal(zv)inoma(tec)cz
http://www.inoma(tec)cz
tel: +420 541 240 721
fax: +420 541 211 337
mobil: +420 605 246 750


> Vzhledem k tomu, ze se nam ozyvaji zakaznici s ruznymi ustradnami, tak
bych
> rad vymyslel nejake univerzalni reseni. Napr. ovladat vsechny ustredny
> stejnym zpusobem pres TAPI, nebo vyuzit nejakou prostredni vrstvu (od
treti
> strany), ktera bude podporovat co nejvetsi pocet typu a znacek ustreden.
>

Zjisteni pripojenych uzivatelu na vzdalenem pocita

[*] Benda Lukas <bendal(zv)volny(tec)cz> - 17.8.2004 18:40:40

No ja nepotrebuji primo finger, nekdo tu rikal ze to zjistit nejak de.

>Na Woknous je jen klient Finger, jinak sluzba nebo daemon server ob
>Microsoftu neni
>viz help ...
>
>A.K.
>
>
>Benda Lukas wrote:
>
>
>>>Je nejaky zpusob jak zjisti uzivatele prihlasene ke
>>>
>>>
>>vzdalenem pocitaci?
>>
>>
>>>Na vzdalenem pocitaci bezi WinXP. Je na win taky neco jako finger na
>>>Linuxu?
>>>
>>>Btw. vysilaji pocitace nejakou message do site, kdyz se uzivatel
>>>prihlasi? To je asi nepravdepodobne co?
>>>
>>>Lukas Benda
>>>
>>>
>>Na WinXP/2000 je prekvapive Finger take.
>>
>>

Ustredny

[*] Suvarina, Vladimir <vladimir.suvarina(zv)siemens(tec)com> - 17.8.2004 18:18:38

> TAPI sice par ustreden umi, ale spolecne reseni tezko najdes. V kazdem
> pripade narazis u Siemense Ti nereknou nic. A ostatni ?
> Kazdej pes jina ves,
> ona totiz lidova tvorivost nezna mezi. Kdyby to slo tak
> jednoduse, uz bych
> to udelal sam. V tomto oboru delam jiz 15 a let krome TAPI
> nenajdes nic
> spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu

Zdravim,

ta zminka o Siemensu me preci jenom donutila zareagovat. Shodou
okolnosti delam prave u ustreden, i kdyz pro ne diky bohu prakticky
neprogramuji. A vzhledem k tomu, ze tuto konferu ctu uz nejaky ten patek,
tak jsem ochoten neco "pustit". Jde o to, co konkretne je potreba. TAPI je
tak siroky pojem ...

Hezky den

--------------------------------------------------
Vladimir Suvarina, Siemens ICN

Import XML souboru do datasetu

[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 17.8.2004 18:20:39

Ahoj,

potreboval bych importovat XML soubor do ClientDataSet (nebo nejakeho jineho
datasetu). Pri pokusu o prime nacteni (LoadFromFile) hlasi chybu "Mismatch
in datapacket". IE jej bez problemu nacte a zobrazi. Soubor pochazi z
portalu MPSV (volna mista), krome vlastniho XML je k tomu i DTD a XSL. D5
Ent, W2K SP4. Muzete mne prosim nekdo nakopnout kudy vede cesta ? Potrebuji
jen nacist data pro dalsi zpracovani.

Diky

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


Ustredny

[*] Petr Jarkovsky <pejasoft(zv)volny(tec)cz> - 17.8.2004 18:12:38

Odpovidam na oba maily soucasne (Vladimir Suvarina, Martin Zapletal):

Uz vim, ze nas software bude muset komunikovat s ustrednama Panasonic,
Siemens a Omega (s tou uz komunikujeme pres jejich XAPI). Vzhledem k tomu,
ze je potreba odchytit cislo volajiciho (a nasledne vyhledat kontakt v
programu), vytocit cislo, prijmout hovor, prepojit hovor, prijmout a odeslat
FAX (tedy i rozeznat hovor od faxu), myslim, ze tohle vsechno by se dalo
pres TAPI vyresit (nepotrebujeme -zatim- zadne unikatni funkce jednotlivych
typu ustreden). Jde o to, jak s TAPI spolupracuji jednotlive ustredny.

Napr. ted jsem narazil na

Petr Jarkovsky

To Jiri Matejka: Pokud by's mohl tyto dokumenty nekam docasne vystavit, byl
bych ti vdecny. Diky


PS: Ted jsem narazil na produkt Intel NetMerge Call Processing Software
(http://www.intel.com/design/network/products/telecom/software/index.htm#cps
). Mozna by bylo zajimave se vydat i takovouhle cestou.

Cteni pole bytu z ActiveX componenty

[*] j.binder(zv)albacon(tec)cz - 17.8.2004 14:45:12

Ahoj,
nemuzu se %subj pohnout, tak to jeste jednou a naposled zkousim.
Kdyby byl nekdo ochoten se na to podivat, rad mu vynalozenou namahu ZAPLATIM
- komponentu mohu zaslat, vlastni kod se tyka temer doslova par radku (v takovem pripade se mi ozvete na soukromy email, pripadny vysledek bych sem pak sdelil).

Dotaz byl:

Mam ActiveX komponentu, ktera mi vraci pole bytu. V importovanem rozhrani je v prislusna metoda deklarovana jako XXX(var ReceivedData: OleVariant)

Zkousel jsem zhruba toto
var v: OleVariant;
v := VarArrayCreate([0,76], varByte), resp.
v := VarArrayRef( VarArrayCreate([0,76], varByte))
....
XXX(v)

Zcela zjevne vsak metoda dostane neco jineho nez ceka, protoze misto dat se mi vraci chyby jako Acces violation, external exception, privilegid instruction, safe array locked ....

V chodicim prikladu HTML/VBScriptu je toto volani
dim ReceiveData(76)
ActiveXCtrl.XXX(ReceiveData(0))

v dokumentaci je uvedena hlavicka
XXX(VARIANT* ReceiveData)

Uz na tom visim dlouho a nevim co s tim. Chyba asi bude u mne, ale nemuze byt tez nejaka nekompatibilita mezi COM objekty vytvorenymi ve VC++ a kodem generovanym Delphi? Za kazdou pomoc predem moc dekuji.

Zdravi Jiri Binder

Import XML souboru do datasetu

[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 17.8.2004 14:39:11

> > potreboval bych importovat XML soubor do ClientDataSet
> (nebo nejakeho jineho
> > datasetu). Pri pokusu o prime nacteni (LoadFromFile) hlasi
> chybu "Mismatch
> > in datapacket". IE jej bez problemu nacte a zobrazi. Soubor
> pochazi z
> > portalu MPSV (volna mista), krome vlastniho XML je k tomu i
> DTD a XSL. D5
> > Ent, W2K SP4. Muzete mne prosim nekdo nakopnout kudy vede
> cesta ? Potrebuji
> > jen nacist data pro dalsi zpracovani.
>
> ClientDataSet umi zpracovat XML pouze ve svem DATAPACKET
> formatu. Musis
> nejdrive vytvorit transformaci z toho XML souboru pomoci
> nastroje XML Mapper.
> V aplikaci potom pouzijes komponentu TXMLTransform s
> vytvorenym .xtr souborem.

Diky, ale je to v D5 Ent ? Nejak nemuzu najit ani XML Mapper ani
TXMLTrasform ... Jedina komponenta, co ma v nazvu XML je TXMLBroker.

Jiri Foldyna

Import XML souboru do datasetu

[*] Petr Vones <konference(zv)petrvones(tec)net> - 17.8.2004 13:45:07

From: "Jiri Foldyna" <jiri.f(zv)avizo(tec)cz>
> potreboval bych importovat XML soubor do ClientDataSet (nebo nejakeho jineho
> datasetu). Pri pokusu o prime nacteni (LoadFromFile) hlasi chybu "Mismatch
> in datapacket". IE jej bez problemu nacte a zobrazi. Soubor pochazi z
> portalu MPSV (volna mista), krome vlastniho XML je k tomu i DTD a XSL. D5
> Ent, W2K SP4. Muzete mne prosim nekdo nakopnout kudy vede cesta ? Potrebuji
> jen nacist data pro dalsi zpracovani.

ClientDataSet umi zpracovat XML pouze ve svem DATAPACKET formatu. Musis
nejdrive vytvorit transformaci z toho XML souboru pomoci nastroje XML Mapper.
V aplikaci potom pouzijes komponentu TXMLTransform s vytvorenym .xtr souborem.

Petr Vones


Ustredny

[*] Jiri Matejka <matejka(zv)stemmark(tec)cz> - 17.8.2004 12:57:03

Avizovane dokumenty o TAPI jsem dal na
http://www.footballmanager(tec)cz/download/tapi.zip .

Jirka Matejka

==>Tuesday, August 17, 2004 12:49 PM pejasoft(zv)volny(tec)cz wrote:

> Odpovidam na oba maily soucasne (Vladimir Suvarina, Martin Zapletal):
>
> Uz vim, ze nas software bude muset komunikovat s ustrednama Panasonic,
> Siemens a Omega (s tou uz komunikujeme pres jejich XAPI). Vzhledem k
> tomu, ze je potreba odchytit cislo volajiciho (a nasledne vyhledat
> kontakt v programu), vytocit cislo, prijmout hovor, prepojit hovor,
> prijmout a odeslat FAX (tedy i rozeznat hovor od faxu), myslim, ze
> tohle vsechno by se dalo pres TAPI vyresit (nepotrebujeme -zatim-
> zadne unikatni funkce jednotlivych typu ustreden). Jde o to, jak s
> TAPI spolupracuji jednotlive ustredny.
>
> Napr. ted jsem narazil na
>
> Petr Jarkovsky
>
> To Jiri Matejka: Pokud by's mohl tyto dokumenty nekam docasne
> vystavit, byl bych ti vdecny. Diky
>
>
> PS: Ted jsem narazil na produkt Intel NetMerge Call Processing
> Software
>
(http://www.intel.com/design/network/products/telecom/software/index.htm#cps
> ). Mozna by bylo zajimave se vydat i takovouhle cestou.

Ustredny

[*] Petr Jarkovsky <pejasoft(zv)volny(tec)cz> - 17.8.2004 12:49:13

Odpovidam na oba maily soucasne (Vladimir Suvarina, Martin Zapletal):

Uz vim, ze nas software bude muset komunikovat s ustrednama Panasonic,
Siemens a Omega (s tou uz komunikujeme pres jejich XAPI). Vzhledem k tomu,
ze je potreba odchytit cislo volajiciho (a nasledne vyhledat kontakt v
programu), vytocit cislo, prijmout hovor, prepojit hovor, prijmout a odeslat
FAX (tedy i rozeznat hovor od faxu), myslim, ze tohle vsechno by se dalo
pres TAPI vyresit (nepotrebujeme -zatim- zadne unikatni funkce jednotlivych
typu ustreden). Jde o to, jak s TAPI spolupracuji jednotlive ustredny.

Napr. ted jsem narazil na

Petr Jarkovsky

To Jiri Matejka: Pokud by's mohl tyto dokumenty nekam docasne vystavit, byl
bych ti vdecny. Diky


PS: Ted jsem narazil na produkt Intel NetMerge Call Processing Software
(http://www.intel.com/design/network/products/telecom/software/index.htm#cps
). Mozna by bylo zajimave se vydat i takovouhle cestou.

Import XML souboru do datasetu

[*] Jiri Foldyna <jiri.f(zv)avizo(tec)cz> - 17.8.2004 12:45:13

Ahoj,

potreboval bych importovat XML soubor do ClientDataSet (nebo nejakeho jineho
datasetu). Pri pokusu o prime nacteni (LoadFromFile) hlasi chybu "Mismatch
in datapacket". IE jej bez problemu nacte a zobrazi. Soubor pochazi z
portalu MPSV (volna mista), krome vlastniho XML je k tomu i DTD a XSL. D5
Ent, W2K SP4. Muzete mne prosim nekdo nakopnout kudy vede cesta ? Potrebuji
jen nacist data pro dalsi zpracovani.

Diky

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

Ustredny

[*] Jiri Matejka <matejka(zv)stemmark(tec)cz> - 17.8.2004 12:13:11

Mam PDFko Microsoft Windows - Telephony Programmers's Guide, je to docela
hutny - pres 700 stran vcetne priloh, anglicky; pak mam jakous takous
dokumentaci k ustredne Nortel, taktez anglicky, 57 stran; a jeste TAPI Quick
Reference (asi 4 stranky, prehled funkci , taky anglicky). Muzu poskytnout.

Jirka Matejka

==>Tuesday, August 17, 2004 12:01 PM davidfajfr(zv)seznam(tec)cz wrote:

>> spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu shaneji.
>> Ale jak jsem jiz rekl, kazdy vyrobce jiz tohle umi a budes zbytecne
>> vyvijet jiz hotove. Ty to taky asi nebudes chtit zadara a je na
>> uzivateli, jestli si vezme nejakou "univerzalni nahrazku" nebo
>> "perfektni" reseni primo od vyrobce. Zase tolik to nestoji.
>
> Myslim, ze to vubec neni zbytecne... Vyrobce sice doda nejake
> reseni na vytaceni, prepojovani a posilani SMS, ale kdyz vyvyjis
> informacni system, ktery tohle musi umet take, musis si to
> naprogramovat sam. Take me to ceka, proto bych se take priklonil k
> otazce, kde najit nejake informace o TAPI a zpusobu prace s nim.
>
> Predem diky za odpovedi.
>
> David

Ustredny

[*] Suvarina, Vladimir <vladimir.suvarina(zv)siemens(tec)com> - 17.8.2004 12:07:10

> TAPI sice par ustreden umi, ale spolecne reseni tezko najdes. V kazdem
> pripade narazis u Siemense Ti nereknou nic. A ostatni ?
> Kazdej pes jina ves,
> ona totiz lidova tvorivost nezna mezi. Kdyby to slo tak
> jednoduse, uz bych
> to udelal sam. V tomto oboru delam jiz 15 a let krome TAPI
> nenajdes nic
> spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu

Zdravim,

ta zminka o Siemensu me preci jenom donutila zareagovat. Shodou
okolnosti delam prave u ustreden, i kdyz pro ne diky bohu prakticky
neprogramuji. A vzhledem k tomu, ze tuto konferu ctu uz nejaky ten patek,
tak jsem ochoten neco "pustit". Jde o to, co konkretne je potreba. TAPI je
tak siroky pojem ...

Hezky den

--------------------------------------------------
Vladimir Suvarina, Siemens ICN

Ustredny

[*] David Fajfr <davidfajfr(zv)seznam(tec)cz> - 17.8.2004 12:01:09

> spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu shaneji. Ale
jak
> jsem jiz rekl, kazdy vyrobce jiz tohle umi a budes zbytecne vyvijet jiz
> hotove. Ty to taky asi nebudes chtit zadara a je na uzivateli, jestli si
> vezme nejakou "univerzalni nahrazku" nebo "perfektni" reseni primo od
> vyrobce. Zase tolik to nestoji. Myslim, ze to vubec neni zbytecne... Vyrobce sice doda nejake reseni na
vytaceni, prepojovani a posilani SMS, ale kdyz vyvyjis informacni system,
ktery tohle musi umet take, musis si to naprogramovat sam.
Take me to ceka, proto bych se take priklonil k otazce, kde najit nejake
informace o TAPI a zpusobu prace s nim.

Predem diky za odpovedi.

David

Ustredny

[*] Zapletal Martin <zapletal(zv)inoma(tec)cz> - 17.8.2004 11:49:08

TAPI sice par ustreden umi, ale spolecne reseni tezko najdes. V kazdem
pripade narazis u Siemense Ti nereknou nic. A ostatni ? Kazdej pes jina ves,
ona totiz lidova tvorivost nezna mezi. Kdyby to slo tak jednoduse, uz bych
to udelal sam. V tomto oboru delam jiz 15 a let krome TAPI nenajdes nic
spolecneho. Dokonce informace o TAPI+TU se tezko u vyrobcu shaneji. Ale jak
jsem jiz rekl, kazdy vyrobce jiz tohle umi a budes zbytecne vyvijet jiz
hotove. Ty to taky asi nebudes chtit zadara a je na uzivateli, jestli si
vezme nejakou "univerzalni nahrazku" nebo "perfektni" reseni primo od
vyrobce. Zase tolik to nestoji. Zapletal Martin
Vyvoj software, technik

INOMA - Brno s.r.o.
Skacelova 18, 613 00, Brno
e-mail: zapletal(zv)inoma(tec)cz
http://www.inoma(tec)cz
tel: +420 541 240 721
fax: +420 541 211 337
mobil: +420 605 246 750


> Vzhledem k tomu, ze se nam ozyvaji zakaznici s ruznymi ustradnami, tak
bych
> rad vymyslel nejake univerzalni reseni. Napr. ovladat vsechny ustredny
> stejnym zpusobem pres TAPI, nebo vyuzit nejakou prostredni vrstvu (od
treti
> strany), ktera bude podporovat co nejvetsi pocet typu a znacek ustreden.
>

Prekryti PaintBox

[*] Ing. Jan Dvorak <dvorak(zv)szu(tec)cz> - 17.8.2004 11:09:06

Prostredi: WXP prof., D6 SP2 prof.
Na formu mam umisteny PaintBox a nastavene Anchors na vsechny 4 strany. Na
PaintBox se vykresluji jednoduche carove grafy. Prekreslovani s
respektovanim skalovani na rozmer Canvas je provadeno pres udalost onPaint.
Pri zmene velikosti formu se grafy prekresluji spravne. Pokud je form
prekryt jinym oknem cely, pak pri jeho obnoveni je obsah PaintBox zobrazen
spravne. Pokud dojde k prekryti jen casti PaintBox jinym oknem, je po
obnoveni obsah PaintBox rekonstruovan nespravne. Pouzije se jiny vyrez
puvodniho obsahu. Pri obnoveni zobrazeni meho formu neni evokovana udalost
onPaint.
Zamenim-li PaintBox komponentou Image, obnovovani probiha ve vsech pripadech
korektne; bohuzel u Image nefunguje zmena velikosti jeho Canvas soubezne se
zmenou velicin width a height komponenty Image pri vypnutem autosize. Po
zapnuti vlastnosti autosize dochazi k prekreslovani obsahu s pouzitim
interpolace a vysledne zobrazeni je nepouzitelne.
Setkal se jiz nekdo s timto nebo podobnym chovanim a ma namet na ostraneni
popsanych nezadoucich jevu?
Jan Dvorak

Ustredny

[*] Petr Jarkovsky <pejasoft(zv)volny(tec)cz> - 17.8.2004 10:51:04

Vzhledem k tomu, ze se nam ozyvaji zakaznici s ruznymi ustradnami, tak bych
rad vymyslel nejake univerzalni reseni. Napr. ovladat vsechny ustredny
stejnym zpusobem pres TAPI, nebo vyuzit nejakou prostredni vrstvu (od treti
strany), ktera bude podporovat co nejvetsi pocet typu a znacek ustreden.

>proc vymyslet vymyslene
Potrebuji ustrednu ovladat nasim programem, ktery bude mit tuto funkci
zabudovanou.

Diky za odpoved.

Petr Jarkovsky

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Zapletal Martin

Pokud vim tak prijem, prepojeni hovoru na telefonnich ustrednach , tim
vlastne nashrazujes systemovy telefon (pracoviste spojovatelky) a neni to u
vsech ustreden stejne. Nekde to facha pomoci TAPI, jinde je zase jiny
protokol. Zalezi od vyrobce a oni Te vetsinou do systemu nepusti. A hlavne
proc vymyslet vymyslene, kdyz se to ke kazde ustredne da vetsinou objednat?
Mas konkretni typy ustreden? Pak by se dalo diskutovat.

IBClientDataSet - ApplyUpdate

[*] Jan Sebelik <honza(zv)haes(tec)cz> - 17.8.2004 10:05:01

> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of Martin Burle
> > Neboj se, nezapominam. Jenom kdyz reaguji na OnError tak mi to pise, ze
> > je ocekavan parametr name. Hmmm, tak to mi teda fakt hlava nebere.

Jsem tehoz nazoru - TClientDataSet je pekna komponenta.

Mozna se mylim, ale odhadoval bych, ze pouzivas Delphi 7 bez prislusneho update IBX.
V komponente TCustomClientDataSet je chyba v metode PSExecuteStatement.
Koukni, jak tam zazavorkovali radek
// FQuery.GenerateParamNames := True;
protoze to kompilator nevzal... :-)
Tedy pokud mluvime o stejne verzi.

Je treba nainstalovat update.

Mimochodem:
V D6 to bylo reseno prasacky, ale funkcne.
V metode TClientDataSet.PSExecuteStatement se vytvari instance odvozene tridy TIBQuery, ktera je navic v jine unit.
Hruza!!!

V D7 to udelali trochu "lepe" (neni potreba krizova reference od unit IBQuery), ale ne o moc lepe a navic s chybama.
Pak to v update D6 opravili, ale v D7 to zustalo.
Resi to az prislusny update IBX.

Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
= tel. 493 792 569 (mobil 776 347 735)
====================================

IBClientDataSet - ApplyUpdate

[*] Viktor Doubek <viktordoubek(zv)centrum(tec)cz> - 17.8.2004 09:40:59

> Chci pouzivat ClientDataSet protoze ma celkem dost vyhod. Problem je v
> tom, ze pri pouzivani dohromady s IBX komponentama, samotny Provaider +
> TClientDataSet nefunguje (ani kdyz presne zopakuju postup, ktery popsal

Mel jsem stejny problem a po asi 2 dnech vyzkumu a rozcilovani prisel na to, ze to nefunguje pri transisolation repeatable read. Po nastaveni na ReadComitted to zaclo slapat a pouzivam dodnes bez problemu. VD

IBExpert

[*] Viktor Doubek <viktordoubek(zv)centrum(tec)cz> - 17.8.2004 09:36:59

> hezky den,
> mate nekdo nejake prakticke negativni zkusenosti s plnou
> verzi IB Expertu? Jedina, o
Jen ty nejlepsi, a to i s jejich supportem - na konkretni dotazy si muzes mailovat primo s programatory. VD.

IBClientDataSet - ApplyUpdate

[*] Martin Burle <mburle2(zv)volny(tec)cz> - 17.8.2004 09:12:57

> >>tom, ze po ApplyUpdates je pocet chyb nulovy, ale data se do DB
> >>
> >>
> >nedostanou.
> >
> >Nezapominas commitovat transakci?
> >
> >
> Neboj se, nezapominam. Jenom kdyz reaguji na OnError tak mi to pise, ze
> je ocekavan parametr name. Hmmm, tak to mi teda fakt hlava nebere.

Psal jsi, ze je pocet chyb nulovy, ale kdyz se ti vyvolava onError (TIBCDS
ma vice chybovych eventu, nevim, ktery mas na mysli), tak to asi tak uplne
bez chyb nebude, ne?

MB


Ustredny

[*] Zapletal Martin <zapletal(zv)inoma(tec)cz> - 17.8.2004 09:08:57

Pokud vim tak prijem, prepojeni hovoru na telefonnich ustrednach , tim
vlastne nashrazujes systemovy telefon (pracoviste spojovatelky) a neni to u
vsech ustreden stejne. Nekde to facha pomoci TAPI, jinde je zase jiny
protokol. Zalezi od vyrobce a oni Te vetsinou do systemu nepusti. A hlavne
proc vymyslet vymyslene, kdyz se to ke kazde ustredne da vetsinou objednat?
Mas konkretni typy ustreden? Pak by se dalo diskutovat.

Zapletal Martin
Vyvoj software, technik

INOMA - Brno s.r.o.
Skacelova 18, 613 00, Brno
e-mail: zapletal(zv)inoma(tec)cz
http://www.inoma(tec)cz
tel: +420 541 240 721
fax: +420 541 211 337
mobil: +420 605 246 750

> mate zkusenosti s nejakym univerzalnejsim resenim pro rizeni
> digitalnich ustreden? Potrebuji hlavne
> navazovat/prijimat/prepojovat hovory, zjistit cislo volajiciho a
> idealne i posilat SMS.
>

Jsou treba dalsi soubory pro komunikaci s MSSQL?

[*] Lstiburek Pavel <lstiburek(zv)ceb(tec)cz> - 17.8.2004 08:50:55

Ne nejsou,
pouze na cilovem pocitaci musi byt nainstalovan MDAC prislusne verze (dostupny na webu MS).
Nedoporucuji instalovat "automaticky" pres existujici verzi. Mezi verzemi jsou znacne rozdily co se tyka "drobnych" chyb a zakaznici by asi trochu rvali (=> je treba aplikaci vyzkouset s vice verzemi (aspon 2.5 a vyse), zda se chova korektne).
Pavel

> From: Ing. Miroslav Vopalecky
> Jsou treba dalsi soubory pro komunikaci s MSSQL? Je nutno
> jeste k vyslednemu
> exe souboru pro praci s MSSQL pripojit jeste nejake dalsi soubory
> (knihovny), pokud pouziji komponenty ADO? Pokud ano, tak jake?

Jsou treba dalsi soubory pro komunikaci s MSSQL?

[*] konference(zv)hlinka(tec)cz - 17.8.2004 08:50:55

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Ing.
> Miroslav Vopalecky
> Sent: Monday, August 16, 2004 11:26 PM
>
> Jsou treba dalsi soubory pro komunikaci s MSSQL? Je nutno
> jeste k vyslednemu exe souboru pro praci s MSSQL pripojit
> jeste nejake dalsi soubory (knihovny), pokud pouziji
> komponenty ADO? Pokud ano, tak jake?

Je treba nainstalovat MDAC.

S pozdravem

Zbysek Hlinka
E-mail: hlinka zavin. hlinka(tec)cz

Zamykani zaznamu pri editaci - zvlastni tabulka

[*] Karel Kral <kralkonf(zv)purus(tec)cz> - 17.8.2004 08:52:55

Ahoj,
prochazel jsem archiv konference a narazil jsem na diskusi o logickem
zamykani zaznamu.

Jde o to, ze kdyz chci pracovat se zaznamem, potrebuji si ho
zarezervovat - zamknu zaznam v pomocne tabulce, nikoliv ve skutecne.
Nekdo z konference nabizel, ze ma na toto hotovou knihovnu ale puvodni
autor uz neexistuje.

Pokud byste mekdo mel neco takovaho hotoveho a mohl to poskytnout nebo
alespon nejake info, budu rad. Nerad bych vymyslel uz vymyslene.

Potrebuji to pro MS SQL 2000/D7 Pro
______________________________________________________
Karel Kral, vedouci odd. IT / IT manager
Purus, s.r.o., Cezavy 627, 664 56 Blucina, CZ
Tel: 547 235 000, 602 552 432, Fax: 547 231 203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________

Jsou treba dalsi soubory pro komunikaci s MSSQL?

[*] Karel Kral <kralkonf(zv)purus(tec)cz> - 17.8.2004 08:42:54

Potrebujes nainstalovat MDAC - Microsoft Data Access Components. Ony
byvaji nainstalovane, pokud je instalovany MS Office atd ale spolehat na
to nemuzes. MDAC se musi instalovat ale s automatickou instalaci
zkusenosti nemam.

Ing. Miroslav Vopalecky napsal(a):
> Ahoj.
>
> Jsou treba dalsi soubory pro komunikaci s MSSQL? Je nutno jeste k vyslednemu
> exe souboru pro praci s MSSQL pripojit jeste nejake dalsi soubory
> (knihovny), pokud pouziji komponenty ADO? Pokud ano, tak jake?
>
> S pozdravem Mirek Vopalecky, D7 W2000
>
>
>
>
>
>

--
______________________________________________________
Karel Kral, vedouci odd. IT / IT manager
Purus, s.r.o., Cezavy 627, 664 56 Blucina, CZ
Tel: 547 235 000, 602 552 432, Fax: 547 231 203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________


IBClientDataSet - ApplyUpdate

[*] Benda Lukas <bendal(zv)volny(tec)cz> - 16.8.2004 23:44:26


>>data neulozi. CommandText je jednoduchy SELECT, ale to nic nemeni na
>>tom, ze po ApplyUpdates je pocet chyb nulovy, ale data se do DB
>>
>>
>nedostanou.
>
>Nezapominas commitovat transakci?
>
>
Neboj se, nezapominam. Jenom kdyz reaguji na OnError tak mi to pise, ze
je ocekavan parametr name. Hmmm, tak to mi teda fakt hlava nebere.

Jsou treba dalsi soubory pro komunikaci s MSSQL?

[*] Ing. Miroslav Vopalecky <m.vopalecky(zv)tiscali(tec)cz> - 16.8.2004 23:26:24

Ahoj.

Jsou treba dalsi soubory pro komunikaci s MSSQL? Je nutno jeste k vyslednemu
exe souboru pro praci s MSSQL pripojit jeste nejake dalsi soubory
(knihovny), pokud pouziji komponenty ADO? Pokud ano, tak jake?

S pozdravem Mirek Vopalecky, D7 W2000

Sprava po pripojeni k terminalovemu serveru

[*] Roland Turcan <konf(zv)rotursoft.sk> - 16.8.2004 18:40:06

Hello All!

Mam na terminaly spustenu aplikaciu, uzivatel sa odpoji od svojej
relacie, vrati sa po case (aj k inemu pocitacu) a pripoji sa do svojej
relacie.
Ja by som chcel vediet zistit, ze doslo k obnoveniu (znovupripojeniu)
relacie uzivatelom, aby som mohol vykonat TPrinter.Refresh, lebo je
velka pravdepodobnost, ze si uzivatel sadne za iny PC a zoznam
tlaciarni v terminalovom prostredi sa mi zmenilo.

Riesil niekto uz takyto problem?

--
Best regards, TRoland

http://exekutor.rotursoft.sk


Ustredny

[*] pejasoft(zv)volny(tec)cz - 16.8.2004 17:01:59

Zdravim vyvojare,

mate zkusenosti s nejakym univerzalnejsim resenim pro rizeni
digitalnich ustreden? Potrebuji hlavne
navazovat/prijimat/prepojovat hovory, zjistit cislo volajiciho a
idealne i posilat SMS.

Diky za kazde info.

S pozdravem

Petr Jarkovsky


--
Hrajte s nami o 1000 Kc kazdy den! Pripojte se pres VOLNY a
tipujte teplotu na vybranem miste v Ceske republice. Uzijte si
leto s VOLNY na strankach http://soutez.volny(tec)cz.

Problem s Jedi na WinXP

[*] j.binder(zv)albacon(tec)cz - 16.8.2004 16:11:55

Jeden z unitu pto praci s grafikou obsahoval kod, ktery zpusoboval okamzity pad na rychlych procesorech.
Pokud je to tato chyba staci pouzit posledni verze, je to jiz opraveno

Jiri Binder.

OT - SQL konference

[*] Otakar Tofel <kralkonf(zv)purus(tec)cz> - 16.8.2004 15:53:54

Vlastimil Zdenek napsal(a):

>Zdravim vsechny,
>omlouvam se za OT, ale nevite prosim nekdo, kde bezi konfera podobna teto o SQL?
>
>Diky
>
>Vlasta
>
>
>

Zkus tady:
http://list.emwac(tec)cz/archives/sql-l.html

Otakar Tofel


OT - SQL konference

[*] Vlastimil Zdenek <delphi(zv)gestore(tec)cz> - 16.8.2004 15:01:50

Zdravim vsechny,
omlouvam se za OT, ale nevite prosim nekdo, kde bezi konfera podobna teto o SQL?

Diky

Vlasta

Problem s Jedi na WinXP

[*] Dalibor <dalibor(zv)torola(tec)cz> - 16.8.2004 12:15:39

Ahoj, mam jednoduchej programek, ktery pouziva komponenu TJVDirectoryEdit.
Pri spusteni na jednom PC kde jsou nainstalovane WinXP, program okamzite spadne.
Pokud jsem tuto komponentu odstranil a z USES jsem unity odkazujici JEDI, tak program bezi jak ma.
Nevite nekdo kde muze byt problem?
Bohuzel, pocitac, na kterem ten programek nebezi, nemam k dispozici.

Verze Jedi 2.1
Delphi 7 Prof, WIn2000

IBExpert

[*] Milan Tomes <delphi(zv)haida(tec)cz> - 16.8.2004 11:33:37

Jenze tuto vlastnost musis nejprve explicitne zapnout (Options - Object
editors options - Domains editors - Enable direct modification of system
tables)

S pozdravem

Milan Tomes

> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of Ing. Marek Kocan
> Sent: Monday, August 16, 2004 11:24 AM
>
> mate nekdo nejake prakticke negativni zkusenosti s plnou
> verzi IB Expertu? Jedina, o
> ktere jsem slysel je, ze pry zasahuje do systemovych tabulek


IBExpert

[*] Ing. Marek Kocan <kocan(zv)ebchod(tec)cz> - 16.8.2004 11:23:36

hezky den,
mate nekdo nejake prakticke negativni zkusenosti s plnou
verzi IB Expertu? Jedina, o
ktere jsem slysel je, ze pry zasahuje do systemovych tabulek
a to ne vzdy je
korektni.

Diky, KER


Hledani v ListView WAS: Mnoho polozek v TListView

[*] Andreas Bednarek <bednarek(zv)digitus(tec)cz> - 16.8.2004 09:05:26

Mas-li virtualni mod tak mas urcite data ulozena v nejakych vice-mene
vlastnich strukturach (napr. TList).

1. Tady bych zacal a necetl property Item.Caption, ale prochazel sve pole,
to by melo byt rychlejsi, jinak se bude vyvolavat jeste OnData aby
Item.Caption mohlo neco vratit..

2. Vybrane polozky prochazej takto

next_item := Selected;
while next_item <> nil do begin
//zde zpracuj data ve vlastnim bufferu podle indexu polozky -
next_item.Index;
next_item := GetNextItem(next_item, sdBelow, [isSelected]);
end;

projdes tak opravdu jen vybrane polozky

vice najdes v helpu u GetNextItem
A.B.


----- Original Message -----
From: "Jiri Cincura" <diskuze(zv)cincura.net>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, August 13, 2004 4:23 PM
Subject: Hledani v ListView WAS: Mnoho polozek v TListView


> Ahoj,
> chtel bych jeste nevazat na predchozi dotaz. Potrebuji v LV po kliknuti
na
> TButton vybrat vsechny Caption vsech Selected polozek. LV mam ve
virtualnim
> modu. Problem je v tom, ze pri 40 tis. zaznamech to "chvili" trva (je to
> vlastne linearni prochazeni). Chtel jsem udelat pomocnou strukturu, kde
bych
> si drzel jen ty Selected, ale mam MultiSelect na True a kdyz jich vyberu
vic
> (pres Shift+klik) tak to jaksi nezachyti vsechny. Vedel by nekdo, jak z
teto
> prekerni situace?
>
> --
> Jiri Cincura
> e-mail: mailto:jiri(zv)cincura.net; mailto:xcincura(zv)informatics.muni(tec)cz
> ICQ#: 314711544
> web: http://www.cincura.net; http://photo.cincura.net
>
>
>

Problem s Database Desktop

[*] Milan Tomes <delphi(zv)haida(tec)cz> - 16.8.2004 09:29:28

Vzhledem k tomu, ze cely Database Desktop je pouze orezany Paradox 7 od
Borlandu a ten tuhle chybu produkuje bezne, tak se tomu opravdu nedivim...
:((( Pokud to neni zivotne dulezite, tak bych to vubec neresil...

S pozdravem

Milan Tomes

> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of Karel Halamasek
> Sent: Friday, August 13, 2004 5:32 PM
>
> >> Vyskytl se mi problem u Database Desktop, ktery je s Delphi 5
> >> Profesional.
> >> Po instalaci programu jde normalne spustit, vse pracuje OK, ale pri
> >> zavreni vyskoci okno se zpravou "Unexpected: General Protection
> >> Violation". Stalo se to na PC s instalaci Windows Milenium i s


Synaser a prace s nim

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 16.8.2004 09:27:28

> Me je jasne, jak to funguje - ja to pisu jako ukazku nevhodnosti
> blocking obsluhy protokolu tohoto typu - kdyz uz *musis* udelat event,
> tak to vsechno muzes obsluhovat v ni, ne? ;-)

Muzes... ale nemusis. Proc kvuli par 'OOB' dat ztracet tu zakladni
vyhodu blocking komunikace, zvlast kdyz v tomto konkretnim priapde
ona komuniacni knihovna za tebe odvede hromady prace, ktere bys jinak
musel delat vlastnimi silami ve zpracovani tech eventu?

--
Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Ararat Synapse - TCP/IP Lib.

Synaser a prace s nim

[*] Petr Fejfar <development(zv)callnet(tec)cz> - 16.8.2004 09:19:27

Lukas Gebauer wrote:

> Ano, na ty vnorena data je tam event. Zatimco bezna data protokolu
> jsou obsluhovana klasicky blokujicim zpusobem, ony 'out-of-band' data
> jsou obsluhovany eventem. Ale netreba tady dlouze popisovat jak to
> funguje, kdyz si to muzes okoukat z toho Telnetu v Synapsi, ne?

Me je jasne, jak to funguje - ja to pisu jako ukazku nevhodnosti
blocking obsluhy protokolu tohoto typu - kdyz uz *musis* udelat event,
tak to vsechno muzes obsluhovat v ni, ne? ;-)

pf


Chybejici staticky linkovane DLL a access violatio

[*] Ludek <delphi-konference(zv)bcpraha(tec)com> - 16.8.2004 09:15:26

Ahoj,

nasel jsem nasledujici problem v Delphi 6 - pokud volam externi funkci z programu
ulozenou ve staticky linkovanem externim DLL a knihovna neni dostupna, tak by se
mel objevit dialog, ze knihovna nebyla nalezena na te a te ceste a program by se
nemel spustit. Tak to fungovalo vzdy v Delphi. Lec v Delphi 6 VCL pri pokusu o
volani jakekoli jine externi funkce po zavolani te prvni nenaleze funkce selze s
chybou access violation. Progam se pote nesmyslne spusti a jedine chybove
hlaseni, ktere uzivatel vidi, je "Access violation", vubec zadna hlaska o tom, ze by
se nenalezla nejaka knihovna. Progam bohuzel pak ani nejde normalne ukoncit,
stale se objevuje chyba "Access violation", je potreba jej sestrelit.

Muzete vyzkouset nasledujici program, je nasprosto spolehlivy (nutno pustit v
debugeru):

program Project1;

procedure AAA; stdcall; external 'moje.dll';

begin
AAA;
end.

Deguger se zacykli nekde v okne CPU.


Netusite nekdo, jestli tento problem Borlandi resili nejakou specialni zaplatou?
Nepodarilo se mi nic najit. Oba Update packy mam nainstalovane.

Diky za info,

Ludek


Synaser a prace s nim

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 16.8.2004 09:03:25

> Ovsem v pripade blocking rezimu, i kdyz rozeznas v datech vnoreny
> packet uvnitr blokujici logiky operace receive, jak predas rizeni na
> rozhrani vrstvy k dalsimu zpracovani?
>
> Ocekaval bych, ze u blocking rezimu je standardni rozhrani tvoreno
> nejakou blokujici funkci RecvXXXX, ne? Takze dalsi rozhrani pro
> spousteni eventu?

Ano, na ty vnorena data je tam event. Zatimco bezna data protokolu
jsou obsluhovana klasicky blokujicim zpusobem, ony 'out-of-band' data
jsou obsluhovany eventem. Ale netreba tady dlouze popisovat jak to
funguje, kdyz si to muzes okoukat z toho Telnetu v Synapsi, ne?
--
Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Ararat Synapse - TCP/IP Lib.

FB a tabulka historie zmien

[*] hlas <hlas(zv)inmail.sk> - 16.8.2004 08:43:24

Zmyslom je vidiet ktore pole naposledy, kto editoval.
hodnoty tych poli zaznamenavat nepotrebujem


>
>
> Nie je mi jasne co by si tym chcel sledovat, ci len to ci bola zmena,
> ale bo ta zaujimaju aj data ktore sa zmenili.
>
> 1. Iba v ktorom stlpci
> Tak toto asi inak neobides, oby tak ako si popisal.
>
> 2. Aj data zmenene
> - zapisuj si ze bola zmena do tej tabulky HISTORY
> - vytvor k tabulke TABLE tabulku TABLE_BACKUP s rovnakou strukturou
> ale bez indexov, daj si iba PK.
> - daj do "after update" a "before delete"
> INSERT INTO TABLE_BACKUP SELECT * FROM TABLE; pisem z hlavy
>

Problem s Database Desktop

[*] Frantisek Bohac <bohacf_dkonf(zv)vnol(tec)cz> - 16.8.2004 07:25:18

A nepomohla by nova verze BDE?

http://www.bdesupport.com/deploy.htm

F.

----- Original Message -----
From: "Karel Halamasek" <compro(zv)vol(tec)cz>> Ja jinem PC se stejnou konfiguraci HW to nedela. Stalo se mi to jiz
> nekolikrat, ze to takto blbne.

farebny riadok v DBGrid

[*] Marek <marek.rakowski(zv)trz(tec)cz> - 16.8.2004 06:19:14


ahoj,

na DrawColumnCell zkus

na bunku
if Column.FieldName = 'WEIGHT' then
if DBGrid1.fields[2].Text='xxx' then begin
DBGrid1.Canvas.Brush.Color := clRed;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;

na radak
if DBGrid1.fields[2].Value=15 then begin
DBGrid1.Canvas.Brush.Color := clAqua;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);

Marek

zdravim,
zacinam a potrebujem usmernit.
existuje nieco aby som spravil v DBGride cely riadok farebny?
dakujem,

Marek Janosik

FB a tabulka historie zmien

[*] Roland Turcan <konf(zv)rotursoft.sk> - 16.8.2004 01:52:57

<<< 16.8.2004 1:44 - hlas "hlas(zv)inmail.sk" >>>
h> Chcem urobit tabulku, v ktorej budu zapisovane zaznamy
h> obsahujuce historiu zmien(inserty, updaty alebo delete) v
h> ostatnych tabulkach danej databazy.

h> Urobit to na klientovi asi viem. Skor ma zaujima ci sa to
h> da nejako jednoducho urobit aj na strane servera.

h> Moja predstava je ze by existovala tabulka HISTORY
h> s polami USER, DATUM, CAS, TABULKA, CISLO, DRUH ZMENY,POLE.

h> USER - cislo uzivatela
h> DATUM - datum zmeny akehokolvek zaznamu v akejkolvek tabulke
h> CAS - cas zmeny
h> TABULKA - nazov tabulky v ktorej sa zmena diala
h> CISLO - primarny kluc zaznamu, ktory sa menil alebo pridaval
h> DRUH ZMENY - ci sa jedna o insert alebo update alebo delete
h> POLE - ak sa jedna o update ake pole sa menilo

h> a teraz by som nad ostatnymi tabulkami napisal triggre.
h> afterinsert - ten by do tabulky history urobil zaznam o novom zazname v inej tabulke
h> afterdelete - podobne
h> afterupdate - to je uz horsie. viem si len predstavit dlhy trigger
h> kde bude
h> if new.pole1<>old.pole1 then insert into history ......
h> if new.pole2<>old.pole2 then insert into history ......
h> if new.pole3<>old.pole3 then insert into history ......
h> atd...
h> tie triggre after insert vyzeraju velmi pracne
h> neda sa tam napisat nejaky cyklus co by behal po poliach
h> tabulky? ako zistim v triggry napr. pocet poli danej tabulky?
h> da sa v triggry odvolavat na polia systemom fields[0], fields[1] atd
h> alebo nejako podobne?


Nie je mi jasne co by si tym chcel sledovat, ci len to ci bola zmena,
ale bo ta zaujimaju aj data ktore sa zmenili.

1. Iba v ktorom stlpci
Tak toto asi inak neobides, oby tak ako si popisal.

2. Aj data zmenene
- zapisuj si ze bola zmena do tej tabulky HISTORY
- vytvor k tabulke TABLE tabulku TABLE_BACKUP s rovnakou strukturou
ale bez indexov, daj si iba PK.
- daj do "after update" a "before delete"
INSERT INTO TABLE_BACKUP SELECT * FROM TABLE; pisem z hlavy

?

--
Best regards, TRoland

http://exekutor.rotursoft.sk


Zjisteni pripojenych uzivatelu na vzdalenem pocita

[*] sup(zv)publicis(tec)cz - 15.8.2004 21:42:41

Na Woknous je jen klient Finger, jinak sluzba nebo daemon server ob
Microsoftu neni
viz help ...

A.K.

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of Jiri Cincura
> Sent: Sunday, August 15, 2004 8:31 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Zjisteni pripojenych uzivatelu na vzdalenem pocitaci
>
>
> Benda Lukas wrote:
> > Je nejaky zpusob jak zjisti uzivatele prihlasene ke
> vzdalenem pocitaci?
> > Na vzdalenem pocitaci bezi WinXP. Je na win taky neco jako finger na
> > Linuxu?
> >
> > Btw. vysilaji pocitace nejakou message do site, kdyz se uzivatel
> > prihlasi? To je asi nepravdepodobne co?
> >
> > Lukas Benda
>
> Na WinXP/2000 je prekvapive Finger take.
>
> --
> Jiri Cincura
> e-mail: mailto:jiri(zv)cincura.net; mailto:xcincura(zv)informatics.muni(tec)cz
> ICQ#: 314711544
> web: http://www.cincura.net; http://photo.cincura.net
>
>
>

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