mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.delphi
Titolo: Problema trasparenza

Ciao
ho una statusbar sulla quale vado a scrivere del testo:
procedure TMainForm.sb1DrawPanel(StatusBar: TStatusBar; Panel: TStatusPanel; 
const Rect: TRect);
 var
    lbl: TLabel;
    lbllength: integer;
  const
    FontName: string = 'Thaoma';
    FontSize: integer = 8;
begin
  if Panel = StatusBar.Panels[0] then begin
    //creo label d'appoggio per trovare lunghezza stringa per centrarla nel 
panel
    lbl:= TLabel.Create(self);
    lbl.Caption := copyr;
 
lbl.Font.Name
 := FontName;
    lbl.Font.Size := FontSize;
    lbllength:= lbl.Width ;
    lbl.Free;
    with  statusbar.Canvas do begin
      font.Name := FontName;
      font.Size := FontSize;
      Font.Color := clpurple; //settato trasparente tramite form
      TextOut((((Rect.Right - rect.Left) - lbllength) div 2) + rect.Left, 
Rect.Top, copyr);
    end;
......
......
Con D6 sotto winXP, settando trasparentcolor a true e impostando clpurple 
come trasparentcolorvalue della form, il mio testo sul panel della statusbar 
risulta trasparente ed è proprio ciò che volevo.
Tutto ok finché non vado a provare il mio prog su un altro pc: sempre sotto 
winXP non ho più la trasparenza ma il mio testo appare viola. Cos'è che mi 
sfugge? Devo forse con l'installer aggiungere qualche libreria?
Grazie mille
Andrea 

     lbl.Free;
Non so aiutarti per il problema della trasparenza, ma per sapere quanto
spazio occupa un testo puoi usare le proprietà TextHeight e TextWidth del
Canvas:
spazioX := Self.Canvas.TextWidth;
spazioY := Self.Canvas.TextHeight;
-- 
Lis                 
www.alessandroghezzi.it
O'Telma Formula1:   
http://snipurl.com/otelma
Se un po' di sincerità è pericolosa, molta sincerità è addirittura fatale
(Oscar Wilde)

Newsgroup: it.comp.lang.delphi
Titolo: uso del TDataModule

Ho il seguente problema nell'interrogazione di una query fra la richiesta di apertura all'effettiva disponibilita' dei dati passano alcuni secondi.
In un vecchio progetto il dataset era contenuto dalla form chiamante ed avevo risolto attivando un messaggio prima del comando open e disattivandolo all'evento afteropen e funzionava correttamente.
Ora in un progetto piu complesso i dataset sono contenuti in TDataModule e non riesco  ad ottenere lo stesso risultato se non indicando nello stesso l'Uses fileChiamante e nell'evento afteropen FormChiamante.Messaggio.Visible := false;
Visto che lo stesso dataset viene utilizzato da altre form come posso gestire il tutto in maniera piu' elegante, grazie Brunello

 come posso gestire il tutto in maniera piu' elegante
 
con una form simil-modale che indichi il caricamento in corso dei dati
e impedisca l'utilizzo della form sottostante (ancora non pronta,
chiaramente, visto che non ci sono i dati).
 
-- 
Alessandra
Newsgroup: it.comp.lang.delphi
Titolo: telecamera IP

ciao a tutti,
qualcuno sa se esiste già qualche componente che mi permetta di acquisire
immagini da una telecamera IP?
grazie e ciao
Pier

 immagini da una telecamera IP?
gia visto sui soliti siti? Li trovi nelle faq.
-- 
Alberto Salvati
A NEAPOLITAN Delphi Developer who is studying c# and .net
"Dicette 'o pappece 'nfaccia 'a noce dammi 'o tiempo che pure te spertoso"
Newsgroup: it.comp.lang.delphi
Titolo: Copia griglia

Salve, ho un problema.
Nella Form1 ho creato a design-time una TDBGrid con aggancianto un
TDataSource e una TQuery. L'utente dopo aver selezionato alcune righe
della griglia preme un tasto che crea la Form2, in cui dovrebbe essere
ricreata la TDBGrid della Form1 con le relative righe selezionate e il
programma continuasse a funzionare anche dopo che ho chiuso la Form1.
Per effettuare la copia della griglia nella Form2 ho fatto cosě:
GrigliaForm2:=GrigliaForm1;
Perň, funziona soltanto fino a quando non chiudo la Form1.
Invece facendo cosě:
GrigliaForm2:=TDBGrid.Create(Self);
GrigliaForm2.Assign(GrigliaForm1);
Non funziona mai.
Ho provato a ricreare anche la TQuery perň viene sollevata l'eccezione
"Cannot assign TQuery to TQuery";
Grazie in anticipo.
Alessandro


Mars University: «Knowledge brings Fear»

 leggermente l'ottica con cui hai implementato la soluzione attuale.
Purtroppo non credo che esistano alternative al metodo di scorrersi le
proprietà ed assegnarle manualmente al nuovo oggetto dello stesso tipo.
In teoria andrebbe effettuato l'override del metodo Assign ed
effettuare lì le operazioni, eventualmente sfruttando l'RTTI per le
proprietà published.
L'errore che Alessandro riceve con l'Assign è dovuto, proprio come
dicevi, al fatto che l'Assign non è implementato in tutte le classi.
Alternativamente si può implementare anche il metodo AssignTo; questo
metodo viene chiamato dall'Assign qualora l'Assign stesso non fosse in
grado di gestire la clonazione delle proprietà. AssignTo esegue
l'assegnazione in ordine inverso cioè è la se la prima classe non
riesce a gestire correttamente l'assegnazione allora forse la seconda
può riuscire a gestirlo. Questo è un pò il giro anche se forse non sono
stato proprio chiarissimo.
Ciao
Antonio

 quante istanze si desiderano.
Non posso usare i frame, perché comporterebbe una modifica al
programma che farebbe diventare più conveniente modificarlo per
evitare la copia delle griglie.
Ho provato anche a fare un cast della griglia da TtsDBGrid a TtsGrid
(nel frattempo ho sostiutito le griglie standard con quelle della
TopSupport ma il problema rimane uguale) visto che nella nuova griglia
non ho bisogno di agganciarmi alla query, però non funziona perché
viene visualizzata una violazione di accesso; riporto sotto il codice:
GrigliaForm2:=TtsGrid.Create(Self);
GrigliaForm2.Assign(TtsGrid(GrigliaForm1));
L'errore viene visualizzato sull'assign e non sul cast (in altre parti
del programma ho fatto cast da TtsDBGrid a TtsGrid senza problemi).

 del programma ho fatto cast da TtsDBGrid a TtsGrid senza problemi).
Ho risolto il problema effettuando una copia manuale delle proprietà e
dei dati che mi interessavano.
Grazie.
Saluti.
Alessandro
Newsgroup: it.comp.lang.delphi
Titolo: migrazione da BDE a ZeosLib

ho un' applicazione in cui utilizzo il BDE per accedere ai dati.
tale applicazione la svillupai in maniera abbastanza sporca nel senso che
l'oggetto TDatabase lo inserii sulla MainForm
ora vorrei utilizzare le ZeosLib per l'accesso ai dati e mi trovo con il
seguente problema : sostituendo l'oggetto TDatabase con l' oggetto
TZConnection sulla
MainForm  i vari DataModule non sono più in grado di vedere l'oggetto
TZConnection.
Affinchè questo avvenga è necessario che io aggiunga a mano nelle sezioni
implementation uses la unit della mainform (esiste un tools che mi permetta
di
aggiungere questa unit in automatico ?)
1) perchè solo con il BDE accadeva questa cosa ?!?! (la stessa cosa avviene
anche con altri oggetti
    per l'accesso ai dati) (non che a questo punto sia fondamentale visto
che era meglio se
ci avessi pensato prima ma ora sono curioso di capire perchè il BDE
funzionasse così diversamente
dalle altre tipologie di accesso)
2) visto che sono in ballo con le modifiche mi chiedevo se fosse più pulita
una soluzione del tipo :
    - creo una mainform
    - la mainform crea un datamodulo globale che contiene l'oggetto database
    - tutti le unità avranno nella sezione implementation uses la unit del
database globale
   (affinchè io  possa utilizzare l'oggetto database a design-time)
3) esiste una soluzione migliore di quella esposta al punto 2 che mi
consenta
    sempre di lavorare a design time ?!?!
nella speranza di essere stato abbastanza chiaro
ringrazio anticipatamente per i Vostri preziosi suggerimenti
Grazie,
Stefano

     sempre di lavorare a design time ?!?!
a dire il vero non ci ho mai pensato.... ;)
A
Newsgroup: it.comp.lang.delphi
Titolo: Re: AFDES encryption e Decription ?

 Funziona per cifrare ma per decifrare non so come fare. Help !!!
Se ti servono algoritmi di Encripting e Decripting su Torry ce ne sono un 
sacco! uno di quelli lo sto usando attualmente ma anche io sto cercando 
qlc di meglio!
bye! 
Diego
--- posted by geoForum on 
http://www.delphiedintorni.it

Ciao a tutti,
qualcuno ha già usato AFDES componente per cifrare stringhe ?
Funziona per cifrare ma per decifrare non so come fare. Help !!!
Omega

 Diego
Andrea

> bye! 
Ho trovato lockbox (
http://sourceforge.net/projects/tplockbox/
) che 
incorpora i piů diffusi algoritmi di cifratura con pochi semplici passi. 
Basta prendere spunto da uno degli esempi (praticamente un copia 
incolla) per avere tutto pronto. Ottimo !!
Per le versioni trial dei propri programmi poi consiglio AvLock Gold 5 
anch'esso free (per usi non commerciali)(
http://www.avsoft.sitio.net/
).
Omega

Newsgroup: it.comp.lang.delphi
Titolo: Come scrivere in un controllo DBLookUpComboBox

Ciao a tutto il NG!
Com'e' possibile digitare del testo in fase di run-time, all'interno in una
DBLookUpComboBox?
Inoltre, come si puo' immettere il valore del campo di un record di una
tabella? ad esempio:
DBLookUpComboBox1.Text:=table1.FieldByName ('Cognome').AsString;
Restituisce l'errore: 655 - Cannot assign to a read-only property!!!!!
Come si puo' procedere?
Grazie in anticipo a chiunque mi aiutera', ciao... Federico

"Federico Favretto"
| Com'e' possibile digitare del testo in fase di run-time, all'interno in
una
| DBLookUpComboBox?
in che senso, puoi gia' digitare sul controllo...
| Inoltre, come si puo' immettere il valore del campo di un record di una
| tabella? ad esempio:
|
| DBLookUpComboBox1.Text:=table1.FieldByName ('Cognome').AsString;
Assegna il valore al campo del TTabel a cui il dblookupcombobox e' associato
Ciao!
Alan Solo
Newsgroup: it.comp.lang.delphi
Titolo: PDF

Sapete indicarmi dei componenti free per documenti pdf da usare in D7

 Sapete indicarmi dei componenti free per documenti pdf da usare in D7
PowerPDF del buon Takeshi Kanno: cerca su Torry.
Saluti
        Marco Bortolani
 
infoN...@marcobortolani.it

 Saluti
Thanks vado subito.
Newsgroup: it.comp.lang.delphi
Titolo: da numero a stringa

domanda banale (ma non per me...)
come posso ottenere da un integer la rappresentazione di una stringa a
lungheza fissa con gli zeri davanti (3 caratteri)?
1 ---> 001
10 ---> 010
100 ---> 100
GRAZIE!!!

mi spiego meglio: devo abilitare un edit ad accettare solo dati numerici e
mi serve come valore di ritorno una rappresentazone del tipo 000..
grazie...

Hello fon
On 05-Set-00, you wrote:

Dovrebbe esserci un comando Format, oppure puoi usare un ciclo, trasformando
l'integer in stringa vedere la lunghezza con Lenght e aggiungere n. 0 a
seconda della lunghezza che vuoi ottenere.
-- 
Ciao da Giuseppe Fraddosio
    // FidoNET 2:335/727.2    
 \X/  
fradd...@libero.it
 
fradd...@tin.it
 
Membro AGI Puglia Sez. Bari 
Powered By Amiga2000T/060@50Mhz/CV3D 4Mb/AmigaOS 3.5

puoi farlo in molti modi, ad es.
miastringa:=inttostr(mionumero); for i:=1 to 3-length(miastringa) do
miastringa:='0'+miastringa;
Ciao, Sandro

, 
a.fon...@xxxatesina.it
 says...

function IntToStrEx(I : integer;
			  minLength : cardinal;
			  PadChar : char = '0') : string;
begin
  Result := IntToStr(I);
  if length(Result) < minLength then
    Result := StringOfChar(PadChar,minLength - length(Result)) + Result;
end;
-- 
Roberto Lupi

 mi serve come valore di ritorno una rappresentazone del tipo 000..
Ciao,
         questo credo che potrebbe andarti bene,
 Label1.Caption := FormatFloat( '000', StrToInt( Edit1.Text ) );
Occhio perň che funziona cosě:
1 --> 001
10 --> 010
100 --> 100
1501 --> 1501
Ok?
--
Andrea Magni
E-Mail: 
ama...@interac.it
Newsgroup: it.comp.lang.delphi
Titolo: Diventare programmatore professionista

Vorrei chiedere ai più esperti qualche consiglio:
Ho finalmente imparato diverse cosette su Delphi a livello di hobby, ma mi
stavo chiedendo come si può raggiungere una preparazione professionale in
modo da proporsi seriamente sul mercato del lavoro.
Infatti, quello che ho imparato l'ho imparato leggendo un paio di libri ed
usando la versione Standard di Delphi 4.
Dubito fortemente però che ciò sia sufficiente per spacciarsi come
programmatore. E allora vi domando:
1) C'è un percorso da autodidatta che può formare un professionista?
2) Se questo è possibile potete indicarmene almeno uno (libri, corsi, ecc.)?
3) Potrebbe essere un metodo valido provare a scrivere un proprio programma
abbastanza complesso sul tipo di quelli di solito sviluppati in ambito
professionale? In tal caso il problema è SAPERE di che tipo di programmi si
tratta, dato che non ho la più pallida idea di che tipo di programmi si
tratti.
4) C'è eventualmente una fonte su internet da cui attingere per avere
qualche esempio, in modo da studiare il codice o almeno capire a grandi
linee come funzionano questi programmi?
Ciao

 ha scritto nel messaggio
news:7ohda.69516$pG1.1...@news1.tin.it...


 tratti.
Se non hai esperienza, prima di sviluppare in proprio (e rischiare di far
danni) conviene ti fai seguire da qualcuno piu esperto di te. Soprattutto
per quanto riguarda la fase di progettazione. Attenzione: non dal cliente
finale, che ha  bene in testa dove vuole arrivare ma non ha minimamente idea
delle problematiche tecniche. Semplicemente da un altro professionista che
magari, con qualche anno alle spalle di esperienza, può darti delle dritte
su come progettare e poi sviluppare la tua applicazione, può seguirti
durante tutto lo sviluppo, può aiutarti nella delicata fase di testing.
Anche perchè, senza esperienza, la cosa piu difficile è inventarsi delle
specifiche da esigenze che non conosci.
Ciao.
Gianluca.

> non dal cliente finale, che ha  bene in testa dove vuole arrivare
fosse vero :)
Ciao, Sandro

 fosse vero :)
Ehehe... forse ho esagerato ;-)
Ciao.
Gianluca.

tratti.
Tipicamente su questo ng si parla di delphi->gestionali, delphi->comunicazioni tra
programmi via web (LAN,intranet,ftp,http,ecc...)
Ciao e auguri:)

Ringrazio tutti per il links e le risposte.
A questo punto non mi rimane che continuare a studiare e soprattutto TROVARE
qualche azienda o maestro disposto a seguirmi.
Proprio a questo proposito io sinceramente non saprei da dove cominciare.
COME FACCIO a trovarli? cercando su Google aziende ecc. e/o programmatori e
contattandoli personalmente spiegandogli la faccenda? Oppure voi siete a
conoscenza di qualche riferimento in tal senso? Considerate che sono della
zona di LIVORNO-PISA, ma ovviamente non rifiuto altre zone anche al di fuori
della Toscana.
Ciao
Newsgroup: it.comp.lang.delphi
Titolo: [?] Muovere e ridimensionare e runtime ?

Ciao a tutti,
sto cercando di modificare a runtime dimensioni e posizione dei controlli su
una form.
Ho trovato vari articoli e qualche esempio, interessante, ma mi piacerebbe
fare apparire quei "quadratini" che ci sono sull'IDE a "design time".
Lo scopo è ovviamente quello di evitare, una volta fatto il programma, di
rimetterci le mani perchè il cliente vuole il campo più a destra, prima il
nome e poi il cognome, l'etichetta in rosso, il codice in grassetto ecc.
ecc.
Qualcuno sa come fare o dove trovare le informazioni necessarie ?
Grazie.
Moreno

 Grazie.
prego  Pung@

 prego  Pung@
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio
news:c48ucg$our$1...@news.newsland.it...

Per quanto riguarda il movimento degli oggetti puoi guardarti questo link su
Google :
http://groups.google.com/groups?q=%22muovere%22%2B%22Di+Tullio%22+group:it.c
omp.lang.delphi&hl=en&lr=&ie=UTF-8&group=it.comp.lang.delphi&selm=lCAeb.2040
15%24R32.6561692%
40news2.tin.it
&rnum=2
Per quanto riguarda le maniglie (ciò che tu chiami i quadratini neri) devo
aver letto qualcosa da qualche parte, ma non ricordo dove. Se lo trovo ti
faccio sapere.
Ciao.
Donato Di Tullio

quoting ... plz
	Ciao
	MassimoB
 

Ciao Donato,
grazie, ho trovato anch'io del codice molto simile al tuo per spostate gli
oggetti a runtime.
Ieri ho scaricato un componente freeware con sorgente che fa proprio al
caso mio ( nostro ? ).
Si chiama TStretchHandle, lo trovi su 
www.torry.net
, è stato scritto per
Delphi 1 (!!!!) e a parte il resource file da "rigenerare" con l'Image
Editor funziona alla grande anche su Delphi 6.
Ti permette a runtime di associare l'oggetto ad uno o più controlli e fa
apparire i "sizing handles" attorno al controllo !!
Per ora ho notato delle anomalie solo agendo sulle stringgrid, ma non mi
preoccupa più di tanto.
CIAO e grazie a tutti.
Donato Di Tullio ha scritto:


moreno wrote:
<cut di un centinaio di righe>
Per favore: 
http://www.marco5x.net/usenet/quoting-3.php
Ciao.
--
ACSH
[D4]
---------------------------
Chi fa da se'
fatica il doppio
Newsgroup: it.comp.lang.delphi
Titolo: Protezione cartella

Ciao a tutti,
volevo sapere se c'è un modo in Delphi per prottegere una determinata 
cartela, o a limite impedirne l'eliminazione se no con qualche password.
Grazie a tutti quelli che vorranno rispondere.
Ciao.
--- posted by geoForum on 
http://www.delphiedintorni.it

Non spetta a Delphi.
Quella è di competenza del sistema operativo.
A.

cartela, o a limite impedirne l'eliminazione se no con qualche password.
Nota che:
1) Funziona solo con NTFS.
2) Il tuo programma deve girare con un utente con privilegi sufficienti 
a cambiare i permessi su quella cartella.


Quella =E8 di competenza del sistema operativo.
Il sistema operativo deve garantire iil rispetto die permessi impostati -
 un'applicazione può settarli, se hai i privilegi per farlo.


  un'applicazione può settarli, se hai i privilegi per farlo.
ovvio
Quello che intendevo dire è che non spetta a delphi esporti qualcosa
del genere, ma devi usare le api esposte, documentate nell'sdk.
A.

Newsgroup: it.comp.lang.delphi
Titolo: RadioGroup

Ho due RadioGroup e voglio che selezionando un bottone in un rg nell'altro
se ne disabilitino alcuni cosě da non poterli selezionare
Mi servirebbe una cosa tipo:
procedure TForm1.rg1Click(Sender: TObject);
begin
if rg1.ItemIndex=1 then rg2.Item[2]....:= "disabilitato"
end;

 ha scritto nel messaggio
news:EZdH7.61894$sq5.3...@news.infostrada.it...

Prova cosě:
procedure TForm1.rg1Click(Sender: TObject);
begin
if rg1.ItemIndex=1 then
rg2.Item[2].Enabled := False;
end;
Ciao, Marco.

Purtroppo non funziona, Delphi non compila nemmeno e da errore
--
__________________________________
http://digilander.iol.it/snarchio
 
snar...@tin.it



procedure TForm1.rg1Click(Sender: TObject);
begin
 if (rg1.ItemIndex = 1) then
   (rg2.Controls[2] as TRadioButton).Enabled := false;
end;
-- 
The Follet

> Purtroppo non funziona, Delphi non compila nemmeno e da errore
Scusami tanto, hai ragione il codice giusto è:
procedure TForm1.rg1Click(Sender: TObject);
begin
if rg1.ItemIndex=1 then
rg2.Controls[2].Enabled := False;
end;
Ciao, Marco.

Mo funziona
Grazie


end;
Perchè usi  as ? Non serve...
--
Rhymes
rhy...@myself.com
http://www.foxhound-games.it

Perchè usi  as ? Non serve...
Hai ragione, residuo della prova precedente.
-- 
The Follet

Newsgroup: it.comp.lang.delphi
Titolo: lazarus e toolbat

sto testando lazarus e ho notato una cosa.....
sapete se è possibile e come si fa ( se possibile ) configurare la 
toolbar di lazarus ( per mettere le icone dei comandi che uso più di 
frequente?
grazie
-- 
-------------------------------
per scrivere in privato
togliere "1975nosp"
to reply remove "1975nosp"

 grazie
Scusa, ma intendi la barra su cui ci sono i componenti da "portare" sul 
form? Se ï¿œ quella, non so se ï¿œ confihurabile, ma cliccando col tasto 
destro su un componente, ti permette di cercare quel componente 
all'interno di tutte le categorie.
P.S. c'ï¿œ anche un NG dedicato: it-alt.comp.lang.lazarus solo che c'ï¿œ 
pochissimo traffico ...
Ciao, Mario

 pochissimo traffico ...
provo a vedere li.
grazie.

Newsgroup: it.comp.lang.delphi
Titolo: code completition

Ciao. Qualcuno è a conoscenza di componenti che permettono di creare degli
editor di codice con funzioni di completamento del codice? (praticamente
come fa Delphi quando si preme Ctrl+Spazio).
Se non dovesse esistere un componente delphi (o anche java...) già pronto,
qualcuno sa' consigliarmi su come potrei realizzare una cosa del genere?
Grazie mille.
Ciao,
Luca.

qualcuno sa' consigliarmi su come potrei realizzare una cosa del genere?
Quanto ai componenti non saprei, ho trovato su usenet questo thread moooolto
interessante! :)
Leggi qui :
http://groups.google.it/groups?&threadm=01-11-043%40comp.compilers&rnum=6&prev=/&frame=on
-- 
Morde. 
morde[at]programmer[.]net

 Luca.
Io ho affrontato il problema durante lo sviluppo di un wp dedicato
all'ambiente medico usando le wptool  (
wptools.com
) che permettono di
risolvere il problema MOLTO semplicemente.
Ciao
Marco
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


http://groups.google.it/groups?&threadm=01-11-043%40comp.compilers&rnum=6&pr
ev=/&frame=on
Grazie mille. Ho iniziato a leggere l'articolo ed è molto interessante...
ora torno a leggere, grazie ancora :) Luca.

 risolvere il problema MOLTO semplicemente.
Grazie mille del consiglio. Ciao, Luca.

 come fa Delphi quando si preme Ctrl+Spazio).
Prova qui:
http://synedit.sourceforge.net
Ciao.
--
ACSH
[D4]
---------------------------
Chi fa da se'
fatica il doppio
Newsgroup: it.comp.lang.delphi
Titolo: coordinate icon tray

ciao come faccio a sapere le coordinate su schermo della icon tray relativa
alla mia applicazione ??? devo farci apparire delle form-messaggio
particolari tipo "fumetti" proprio sopra.....
grazie
--
Salutoni

 particolari tipo "fumetti" proprio sopra.....
Scommetto che ti piacciono le MicroMachines ;)
Non so se può esserti utile, su torry c'era un componente TrayIcon che ti permetteva (tra
le altre cose) appunto di sapere le coordinate del mouse quando ti ci muovevi sopra:
occhio che però sono quelle *assolute*, cioè, quelle su schermo, non quelle relative alla
sola icona.
A me serviva giusto il contrario e non ho mai trovato nessun componente che lo facesse; ma
a te forse serve un'altra cosa, va beh, io ci ho provato :)
--
Jax

Newsgroup: it.comp.lang.delphi
Titolo: [OT] Buon DELPHI DAY !!!

Buon Delphi Day a tutti quelli che sono potuti andare.....
Stefano


    Via De Gasperi, 14 - 42019
    Scandiano (Reggio Emilia)

 Buon Delphi Day a tutti quelli che sono potuti andare.....
io non ci posso andare per diversi motivi, ma spero che stasera o domani
qualcuno abbia voglia di fare un recoconto della giornata
un saluto a tutti!
roberto

 Buon Delphi Day a tutti quelli che sono potuti andare.....
Io non ce l'ho fatta, sono a BG per un intervento "drastico", di quelli
senza pausa pranzo che iniziano alle 9 e finiscono verso le 20... :-(

Io sono il secondo... sigh :-(((((
        Marco Bortolani
 
infoN...@marcobortolani.it


Mi spiace che non siate venuti al Delphi Day 2003
Vi abbiamo cercato, ed è stato un peccato non trovarvi.
La giornata è stata interessante anche se per quanto mi riguarda ha contato
molto di più incontrare di persona chi mi ha dato preziose dritte che mi
hanno aiutato parecchio nel mio lavoro.
E' un dispiacere non aver potuto conoscere di persona i due Marco (Bortolani
e Breveglieri abbiamo saputo tramite Marco Cantù dell'incidente in
autostrada che vi ha bloccato ), così come Gabriele, Stefano ed il nick
a2rg14 (Roberto).
Mancavano anche Alberto Salvati e Andrea Laforgia (dove sei finito).
Comunque presto troverete foto e notizie delle giornata.
Un saluto ancora ai simpaticissimi Morde, Jax, Alessandro Storniolo (Pix
Expert) , Andrea (Magni e Raimondi) e Paolo Arosio.
Ciao
Marco alias MaoSw alias Supporto - Reporter Professional srl
--
Don't touch my email
Newsgroup: it.comp.lang.delphi
Titolo: Come visualizzo l'ip?

Sto' creando una chat e mi serve di visualizzare nel computer server l'ip
dello stesso... mi sapete dare qualche consiglio?
ho provato con ServerSocket1.Socket.LocalAddress ma mi viene dato un 0.0.0.0
(ovviamente mentre sono connesso e cmq il prog comunica con il client!)
grazie a tutti :)

vi prego č piuttosto urgente :(  mi serve per preparare un esame di
programmazione.
grazie :)

dello stesso... mi sapete dare qualche consiglio?
Per poter utilizzare la funzione aggiungi la unit Winsock.
Function OttieniIP : String;
var
  WSAData: TWSAData;
  HostName : String;
  HostEnt: PHostEnt;
begin
  try
    WSAStartup(2,WSAData);
    SetLength(HostName,255);
    GetHostName(PChar(HostName),255);
    SetLength(HostName,StrLen(PChar(HostName)));
    HostEnt:=GetHostByName(PChar(HostName));
    with HostEnt^ do
       Result:=Format('%d.%d.%d.%d',
                     [Byte(h_addr^[0]),
                      Byte(h_addr^[1]),
                      Byte(h_addr^[2]),
                      Byte(h_addr^[3])]);
    WSACleanup;
  except
  MessageDlg('Impossibile rilevare indirizzo IP', mtError, [mbOK], 0);
  end;
end;
Ciao!
--
- Carlo -

 wrote in message 8qcken$2k...@small.edisons.net...


 ha scritto nel messaggio
news:psny5.8279$4v4.2...@news.infostrada.it...

Newsgroup: it.comp.lang.delphi
Titolo: accesso database access

Non riesco ad accedere al database access del programma (Genio2000) di un
cliente
Se provo ad aprire il file con Access mi viene dato questo messaggio:
"L'account utente corrente non dispone delle autorizzazioni per convertire o
abilitare il database"
Se invece provo via ADO la connessione viene effettuata ma se provo ad
accedere alle tabelle se la prende a male
Che posso fare? Come risolvere?
-- 
_________________________________________________
Edmondo Di Tucci icq: 228646758 
www.powernetsi.it/edmondo

I punti sono due:
Hai usato un utente o una password sbagliati oppure stai cercando 
di accedere ai dati mentre il programma è attivo, se i dati non sono
share
può accedere solo un programma per volta.
Gianluca
www.klemy.it
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 può accedere solo un programma per volta.
Il programma non è attivo anche perché io mi sono copiato solo il file del
db mentre il resto del programma è a casa del cliente
E ora? Che fò?

Non è detto che ti dia errore con un utente sbagliato, comunque tu usa
comunque Admin senza password
che stringa di connessione usi? prova JetEngine 4.0...


 che stringa di connessione usi? prova JetEngine 4.0...
Faccio già entrambe le cose
Il motore Jet è aggiornato e poi dal cliente fnziona con Access97 o giù di
lì

A questo punto se vuoi mi puoi mandare il db (se non è troppo grosso
così provo direttamente.
Gianluca


Stiamo sui 50MB se proprio vuoi lo metto sul web domattina e poi provi

Ok, quando l'hai messo su web dammi l'indirizzo


Ho uppato il file
Per fortuna zippato è sugli 8Mb
L'indirizzo è: 
http://www.powernetsi.it/edmondo/geaz2000.zip
Fammi sapere e grazie comunque dell'interessamento

L'indirizzo è: 
http://www.powernetsi.it/edmondo/geaz2000.zip
Scusa, ma ti rendi conto di quello che fai?
Se ho capito bene hai uppato l'archivio di un cliente a tutto il mondo....
togli e sepdisci in privato se non vuoi guai.... ;)
-- 
Morde. 
(morde at programmer dot net)

Capperi, č vero!
Correggo subbito!

Beh, comunque tanto tanto rincoglionito non sono ancora
Il programma ha una decina di file mdb piů o meno della stessa dimensione e
questo č solo uno quindi di dati non ce ne saranno poi tanti e tanto
sensibili
Resta comunque la mia leggerezza

Resta comunque la mia leggerezza
Edmondo, ah Edmondo,
hai molto rischiato 
la figura dell'utonto
meno male che ti ho avvisato.
:D


Mordace la battuta!

Mordace la battuta!
LOLLISSIMA QUESTA!!!!!!

Newsgroup: it.comp.lang.delphi
Titolo: XE5 e Android

Scusate se la domanda è stupida ma ho cercato parecchio ma non ne sono 
venuto a capo.
 
Dunque, sto' provando XE5 ed android... ho creato una semplice form con 
un TEdit ed un TMemo e l'utilizzo di un oggetto veramente stupido 
dichiarato cosi'
TbtParser = Class
l'oggetto non ha il costruttore create (non mi serve) e non fa altro che 
scansionare la stringa passata alla ricerca di parole chiavi (l'ho detto 
è stupido)
Detto questo compilando per windows sia 32 che 64 bit tutto ok ma su 
android alla chiamata MioParser := TbtParser.create l'applicazione si 
chiude senza nessun messaggio
 
ovviamente gli esempi a corredo funzionano regolarmente e MioParser è 
una variabile interna di tipo TbtParser
 
altra cosa nella unit dell'oggettino le uses sono:
 
Uses
   System.IOUtils, System.SysUtils, Math;
 
e ho ridefinito il tipo AnsiChar includendo
 
Type
   {$IFDEF ANDROID}
    AnsiChar    = Char;
   {$ENDIF}
 
Qualche idea del perchè si "spranga" l'applicazione? Ripeto il 
costruttore create non l'ho ridefinito e quindi uso quello della classe 
di base (TObject)

    {$ENDIF}
 
Onestamente, non ho capito il significato della definizione che hai inserito sopra: perché hai introdotto quella equivalenza? a che ti serve?
 
-- 
MARCO BREVEGLIERI (Software and Web Developer)
#Home: 
http://bit.ly/marcobreveglieri
 
#Blog: 
http://bit.ly/compilaquindiva
 

Ora come ora a niente ma come scritto qui 
http://docwiki.embarcadero.com/RADStudio/XE5/en/Migrating_Delphi_Code_to_Mobile_from_Desktop
 
mi sono portato un po avanti casomai serva


 [...]
 
Da nessuna parte c'è scritto che devi dichiarare un tipo standard e ridefinirlo con un altro tipo, anche perché non ne vedrei il motivo né l'utilità, oltre al fatto che darà sicuramente più di un grattacapo (visto che le funzioni standard continuano a utilizzare il tipo "giusto"). :|


Newsgroup: it.comp.lang.delphi
Titolo: Compressione di stringhe

Ciao,
sto cercando qualche suggerimento su quale metodo adottare per comprimere
una stringa.
Ho provato la funzione di conversione in formato BCD ma l'ho trovata poco
pratica.
Grazie per l'aiuto.
Antonio

zlib, RLE, bzip, squeeze
Bye,
Raktzo

 una stringa.
Puoi provare il Run Length Encoding, che è un algoritmo molto 
semplice per stringhe in cui vi siano molte ripetizioni di 
caratteri, oppure il classico Lempel-Ziv-Welch, anch'esso ottimo 
per pattern ricorrenti.

 ha scritto nel messaggio
news:Fe_df.77$Ke6...@tornado.fastwebnet.it...

Newsgroup: it.comp.lang.delphi
Titolo: Compattare MDB

Ciao ragazzi, ho il seguente problema:
ho un database di access con una sola tabella all'interno, la tabella ha una
sua struttura e anche dei dati. Vorrei cancellare il contenuto della tabella
e tenermi solo la struttura, in teoria è facile, ma il problema è che non mi
basta cancellare, ma devo anche compattare la tabella.
Come fare?
Ciao e grazie a tutti
PS:
Per connettermi al file MDB uso ADO.

Ciao
Importa la type library Microsoft Jet and Replication Object
e poi usa una funzione tipo questa che ho fatto io che fa parte
di una classe per connettermi ad ADO senza usare tutta quella
schifezza made in Borland
function TNWADO.CompattaRipara(VecchioNome,NuovoNome:AnsiString):Boolean;
 const Provider='Provider=Microsoft.Jet.OLEDB.4.0;';
 var Motore:IJetEngine;
begin
 VecchioNome:=Provider+'Data Source='+VecchioNome;
 NuovoNome:=Provider+'Data Source='+NuovoNome;
  try
   Motore:=CoJetEngine.Create;
   Motore.CompactDatabase(VecchioNome,NuovoNome);
   Motore:=nil;
   Result:=True;
  except
   Motore:=nil;
   Result:=False;
  end;
end;

 ha scritto nel messaggio
news:3C5D01DB...@libero.it...


 Object" ?
Dal menu Project di Delphi scegli la voce Import Type Library... cerchi nella
lista
la libreria che ti interessa e poi clicchi su Create Unit
Ciao
Mirko

 ha scritto nel messaggio
news:3C5F14BC...@libero.it...


Newsgroup: it.comp.lang.delphi
Titolo: Delphi - Componente VCL Free DBGridTreeView

 Salve ragazzi, sto cercando un componente free, che abbia le funzialità 
di una classica DBGrid, tuttavia che sia impostabile in forma di TreeView.
Cla F.
--- posted by geoForum on 
http://www.delphiedintorni.it

 di una classica DBGrid, tuttavia che sia impostabile in forma di TreeView.
Dai un'occhiata a questo componente:
http://www.soft-gems.net/VirtualTreeview/VT.php
tra i NG di supporto ce n'č uno che si chiama proprio VirtualDbGrid, quindi
penso che possa esserti utile
-- 
Lis
Mercatino: 
http://snurl.com/sito_lis
FAQ di it.comp.lang.delphi: 
http://snipurl.com/faq_icld

Newsgroup: it.comp.lang.delphi
Titolo: Allineamento a destra..

Salve a tutti,
volevo sapere se esiste un modo di scrivere in un Tedit da destra verso
sinistra (mi serve per digitare i numeri), e allineare cosi il testo di
input a destra..
Grazie

input a destra..
Non puoi farlo.
Utilizza un campo TMemo, riducilo ad una linea sola, imposta
WantsReturn a "false" ed imposta la proprieta' di allineamento.
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
---------------------------------------------

Newsgroup: it.comp.lang.delphi
Titolo: Grande Problema!

Come faccio ha capire se un programma è stato mandato in esecuzione?
Grazie!

 ha scritto nel messaggio
news:fk7x5.34853$XZ4.4...@news.infostrada.it...

Newsgroup: it.comp.lang.delphi
Titolo: Hint dei TToolButton

 Con D5 Ent. ho creato sulla main form una TToolBar con i relativi 
TToolButton, adesso io vorrei mostrare gli Hint dei Button, ho seguito 
l'Help in linea, settando le proprietà Hint con il testo, ShowHint=true e 
ParentShowHint=true, ma non mi mostra niente. Ho settato anche la 
ShowHint=true della toolbar e della main form, ma niente ancora.
Suggerimenti?
--- posted by geoForum on 
http://www.delphiedintorni.it

 Suggerimenti?
Attento che impostando a True la proprietà /ParentShowHint/ di fatto 
assegni alla proprietà /ShowHint/ del pulsante l'impostazione attuale 
della proprietà /ShowHint/ del controllo Parent, che potrebbe essere 
False oppure essere legato a sua volta alla proprietà /ShowHint/ del 
Parent che, in ultimo, è l'applicazione.
Prova ad impostare semplicemente la proprietà /ShowHint/ a True per il 
form e a lanciare il progetto.
Ciao! :-)
-- 
MARCO «Alka» BREVEGLIERI
   (
http://www.marco.breveglieri.name
)
Leggi le FAQ di ICLD: 
http://icld.altervista.org

Newsgroup: it.comp.lang.delphi
Titolo: Zoom Immagine

Ciao a tutti, io ho creato una form, ed al suo interno ho messo un oggetto 
timage, a cui ho ativato la proprietà autosize ed inoltre ho inserito del 
codice sia sull'onmousedown che sull'onmouseup che ovviamente non vorrei 
perdere.....
Sull'oncreate della stessa form ho inserito il dovuto codice per fare in 
modo che l'imagine venga caricata.
Siccome l'immagine è moooooolto grande avrei l'esigenza che venga aperta 
diciamo 4 volte più piccola poi cliccando su un pulsante "zoom +" venga 
ingrandita a 3 volte poi ricliccando a 2 ecc.ecc. fino ad avere l'immagine 
nella sua dimensione normale dopo 4 click, ovviamente il contrario si dovrà 
fare cliccando su "zoom -" ; spero di essermi spiegato attendo info ciao 
ciao
-- 
Lorenzo Mendini Iz2FOS
http://www.polopositivo.org
 (Home Page) 

 Ciao a tutti, io ho creato una form, [...]
Se fai una ricerca, se ne è già parlato in passato, e se non ricordo 
male avevo postato io stesso codice esemplificativo - anche se parecchio 
rudimentale - per dare un primo abbozzo di risoluzione al problema "zoom 
immagini".
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

 ha scritto nel messaggio 
news:4495a826$0$3121$4faf...@reader1.news.tin.it...

Guarda l'help della proprieta' TImage.Stretch
Basta stabilire le dimensioni del componente con la proprieta' a true.
Giorgio 

Ciao, ho attivato la funziona stretch come dicevi tu, ora credo basti 
inserire i valori di height e width manualmente giusto? Io ho provato con 
questo codice sulla oncreate della form ma putroppo non ha alcun effetto... 
dove sbaglio?
image1.Width:=640;
  image1.Height:='480';
  image1.Picture.LoadFromFile(extractfilepath(application.ExeName)+'/Immagini/'+'mapdxcc.jpg');
bye bye
Newsgroup: it.comp.lang.delphi
Titolo: StrMove

Buongiorno a tutti.Sto utilizzando un comando StrMove per copiare un certo
numero di caratteri da una stringa all'altra scrivendo come da help :
StrMove(Pchar(newstring),Pchar(Oldstring),num_car);
dove numcar lo prendo con una strLen.
Mi imbatto però in questo errore:
Access violation at address...write of address 00404d81.
Qualcuno sa da cosa dipende?
Grazie anticipatamente. Ciao a tutti!
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Qualcuno sa da cosa dipende?
Il buffer in cui viene riposta la stringa di nome /newstring/ è stato 
allocato in qualche modo per poterla effettivamente contenere in tutta 
la sua lunghezza?
Ciao!
-- 
Marco «Alka» Breveglieri
  ABLS Team S.n.c. - Software & Web
  Via De Gasperi, 14
  42019 Scandiano (Reggio Emilia)
 
http://www.abls.it

 Grazie anticipatamente. Ciao a tutti!
-- 
Ciao, Anto', [37, 143, AQ] 
MB C SC 220 CDI Magma Rot
"Di sempre cio' che senti e fai cio' che pensi."
    G.G. Màrquez

Grazie anticipatamente. Ciao a tutti!
Lavorare coi PChar, puntatori a tutti gli effetti, richiede un attimo
di attenzione in più, inoltre, secondo me, l'help è un attimo criptico
riguardo a queste funzioni.
Sempre IMHO non è consentito fare PChar(NewString) in quanto il primo
parametro è l'indirizzo del buffer.
un metodo corretto è:
var
  OrgStr, string;
  DestPChar, ResPChar: PChar;
begin
  OrgStr := 'Ciao belli';
  GetMem(DestPChar, Length(OrgStr)+1);
  ResPChar := StrMove(DestPChar, PChar(OrgStr), Length(OrgStr)+1);
  // ------------- varie amenità
  FreeMem(DestPChar, Length(OrgStr)+1);
Però...
Visto che fai il typecasting su due stringhe per farli diventare 2
Pchar presumo tu stia lavorando con delle stringhe... perché non usi
Copy?
Ciao.
-- 
Ore 18.30: premo invio.

 Ciao!
oops..thanks!


Newsgroup: it.comp.lang.delphi
Titolo: Connettere MDB ad ADO senza file UDL

Io per connettere il mio componente ADO ad un database Access *.MDB,
uso i file UDL e DSN.
C'è un modo per connettersi senza usare questi due file UDL e DSN? 

 C'č un modo per connettersi senza usare questi due file UDL e DSN?
of course, tramite la proprieta' ConnectionString della AdoConnection.
Basta impostarla a runtime e attivare la connessione.
cerca connectionstring in questo ng tramite google groups.
Ciao
-- 
Morde. 
M-List di icld: 
http://it.groups.yahoo.com/group/icld/

 Ciao
A tal proposito, vorrei proporre questo sito:
http://www.connectionstrings.com/
Ciao,
Gianluca

 
http://www.connectionstrings.com/
Sarebbe da aggiugnere nelle faq, vedo che non c'e'.


Ok grazie a tutti, molto gentili.
Newsgroup: it.comp.lang.delphi
Titolo: il tmemo non mi basta

>>>>>> 
fred...@libero.it
 <<<<<<<<

 5900(credo sia il massimo)?
Tralasciando il fatto che a me si fermava a 4460 (su per giu')....il limite
in KB del Memo in Win9x è di 32KB e non può essere aumentato (se ci fai caso
anche il Blocco Note ti si incazza se vuoi aprire file troppo grandi)....per
estendere il limite usa il TRichEdit....ok? ;-)
Ciao :-)
--
DeViL!
=====================================
Togliere ILDISTURBO per rispondere :-)
=====================================
--------------------------------------------------------
"in tutti i tipi di unione, ciascuno dovrebbe comportarsi
secondo la sua naturale inclinazione" (Vatsayana)
--------------------------------------------------------

 DeViL!
il numero di righe massime non è uguale per tutti, dipende da quanti
caratteri ci sono per ogni riga...
Cmq il limite massimo non era 65.535 caratteri?

Cmq il limite massimo non era 65.535 caratteri?
Il limite massimo per il TMemo e' di 32 Kb, quindi non puo' essere di
65535 caratteri (perche' poi 65535 ? semmai 65536 che equivalgono a
64Kb).
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
--------------------------------------------------------------
"Partire e' un po' morire e morire e' partire un po' troppo !"
--------------------------------------------------------------

 Cmq il limite massimo non era 65.535 caratteri?
Come già detto è 32KB non 64 [che poi, come ha detto anche Andrea, sarebbe
65536...dalle tue parti numerate 0-based?? :)]
Ciao!!


io anche avevo questo problema l'ho risolto con writeln e readln...
"DeViL" <de...@inwind.itILDISTURBO> ha scritto nel messaggio
news:8o9c76$id9$1...@lacerta.tiscalinet.it...


Newsgroup: it.comp.lang.delphi
Titolo: Express Web Framework: qualcuno lo usa?

Salve.
Ero curioso di conoscere le vostre impressioni riguardo EWF, purtroppo
Developer Express ha la pessima abitudine di non pubblicare delle trial,
quindi non saprei dire se č buono o no... qualcuno l'ha provato?
Saluti,
Andrea

Andrea Raimondi wrote:

L'ho installato e provato un po' quando lavoravo con IntraWeb.
Non sembra male, per molte cose č fatto meglio, ma io credo che per lo 
sviluppo di applicazioni Web bisogna orientarsi su altre strade.
Newsgroup: it.comp.lang.delphi
Titolo: Impostare la larghezza delle colonne nella StringGrid

Nella StringGrid sono presenti due colonne.
Sull'OnShow della form, imposto la larghezza delle colonne dal titolo:
    ColWidths[0] := Canvas.TextWidth(Cells[0, 0]) + 10;  // Titolo 1col
    ColWidths[1] := Canvas.TextWidth(Cells[1, 0]) + 10;  // Titolo 2col
Come viene lanciato il programma, le due colonne sono leggermente
sottodimensionate (uso font Courier New). Come viene eseguita la prima
elaborazione/scrittura della griglia, le dimensioni sono corrette.
Quando si esegue un'altra elaborazione (senza uscire dal programma), la
griglia viene svuotata (rimangono quindi solo i titoli) e da qui in poi le
dimensioni rimangono sempre corrette. Perchè all'apertura del programma non
lo fa?
Grazie.

 ha scritto nel messaggio
news:8uqsg6$81q$1...@fe1.cs.interbusiness.it...

Prova a invalidare il controllo forzando il ridisegno:
StringGrid.Invalidate; oppure
StringGrid.Repaint;

Newsgroup: it.comp.lang.delphi
Titolo: FindExecutable

Salve, ho un problema con la FindExecutable.
Ho provato a fare cosě ma dopo l'end mi da' l'errore "write violation, read
of address...":
var
  FileName: PChar;
  Res: PChar;
    begin
    FileName:=PChar(Edit.Text);
    FindExecutable(FileName,Nil,Res);
    end;
Come posso risolvere il problema?
Infine č possibile se un file non ha un programma predefinito per l'apertura
far visualizzare la finestra "Apri con..." di Windows?
Grazie in anticipo.
Alessandro

 far visualizzare la finestra "Apri con..." di Windows?
Puoi usare la chiamata:
WinExec('rundll32.exe shell32.dll,OpenAs_RunDLL c:\config.sys', 
SW_SHOWNORMAL);

 SW_SHOWNORMAL);
Purtroppo non funziona con Windows 2000: esiste una procedura che
funzioni sia con Win9X che con Win2K?

 funzioni sia con Win9X che con Win2K?
Leggendo la documentazione risulta in effetti che WinExec non č piů 
supportato in Win2k: usa CreateProcess.

 supportato in Win2k: usa CreateProcess.
Non mi riferivo alla WinExec che ho verificato che funziona anche con
Win2K (anche se non è consigliata per applicazioni a 32 bit), ma
piuttosto alla riga di comando 'rundll32.exe shell32.dll,OpenAs_RunDLL
c:\config.sys' (non trova config.sys).
Esiste un comando unico da passare alla funzione valido sia per Win9X
sia per Win2K?

>>>SW_SHOWNORMAL);
Questo č perchč effettivamente sui sistemi NT il file config.sys non 
esiste: Il mio era un esempio!!!
Prova a mettere al suo posto un qualsiasi altro file il cui tipo non sia 
associato a nessun'altra applicazione in windows.

 associato a nessun'altra applicazione in windows.
Funziona, grazie.
Newsgroup: it.comp.lang.delphi
Titolo: Immagini e Paradox

Scusate la domanda banale,
ma non mi è mai capitato di creare una tabella del genere: come si inserisce
un'immagine all'interno di un campo "Grafic" di una tabella paradox?
Grazie Paolo

vedi la classe TGraphicField
Bye
A.

Newsgroup: it.comp.lang.delphi
Titolo: Errore in Update

Ho due tabelle, Utente master in Query3 e detail Dati in Query2. Sto 
preparando del codice che permetta di eliminare un record della master e 
tutti i corrispondenti nella detail, collegate da un campo ID_UTENTE.
Per il delete della Query2 uso la seguente:
Delete From Dati
Where
ID_UTENTE=ID_UTENTE_
procedure TForm1.IBQuery3UpdateRecord(DataSet: TDataSet;
  UpdateKind: TUpdateKind; var UpdateAction: TIBUpdateAction);
begin
With IBUpdateSQL2 do
      if UpdateKind=ukDelete then
      begin
      Query[UpdateKind].ParamByName('ID_UTENTE_').Value:=IBQuery3.FieldByName('ID_Utente').Value;
      ExecSQL(UpdateKind);
      end;
IBUpdateSQL3.Apply(UpdateKind);
UpdateAction:=uaApplied;
end;
Se nella detail ho un solo record con lo stesso ID_UTENTE della master va 
tutto OK, se ne ho due ottengo l'errore "Update Error"??
Non ne capisco il motivo.
Giorgio 

Giorgio Padoan ha scritto:

Perché non imposti nel database l'integrità referenziale ?
Massimo
Newsgroup: it.comp.lang.delphi
Titolo: BDE tabella dentro tabella.

Salve,
dovendo registrare delle fatture dovrei usare una tabella per ogni
fattura e una tabella dei prodotti venduti per ogni fattura quindi una
tabella dentro una tabella. Come si fa usando il BDE ?
GRAZIE 1000
faf...@tiscalinet.it

 
------------------------------------------------------------------------
Questo messaggio e' stato inviato tramite i Newsgroup di Punto
http://www.punto.it
------------------------------------------------------------------------

Il database e' cosi' fatto:
tabella: CARICO
	data
	fornitore
	numero fattura
	data fattura
tabella: FATTURE
	codice articolo
	quantita'
	prezzo
	iva
uso il data module
Io comunque ho risolto cosi': ho inserito in entrambe le tabelle un
codice fattura, e poi ho fatto una relazione master/detail. Il tutto
funziona, ma ho dovuto gestire il ripensamento dell'utente dopo che ha
inserito un po' campi.
Comunque fammi sapere come si usa il locate e quale dei due metodi è
il migliore.
GRAZIE 1000
faf...@tiscalinet.it



Master-Detail tutta la vita!
Meglio ancora, se possibile, usare delle SQL al posto di tabelle e
fare delle inner join.
Locate dovrebbe essere il primo comando da dimenticarsi quando si
inizia a scrivere sw per database.
Ciao,
Massimo.
-- 
"Ciao Rex, che cavolo di situazione eh? Due dentro, due fuori, puo' succedere di tutto!"

tabella dentro una tabella. Come si fa usando il BDE ?
la domanda e' mal posta:
volevi forse chiedere come *NON* si fa' usando BDE e qualsiasi altra
cosa??? :)
a parte gli scherzi una tabella in una tabella non ha senso:
usa delle relazioni con delle chiavi esterne, del tipo:
FATTURA(IDFATTURA, DATA, IMPORTO, ECC...)
PRODOTTI(IDPRODOTTO, DESCRIZIONE, PREZZO, ECC...)
DETTAGLIO_FATTURA(IDFattura, IDProdotto, Quantita);
indipendentemente dal DB / Middleware che stai usando...
Ciao,
Alan Solo

>tabella dentro una tabella. Come si fa usando il BDE ?
gasp, ti avevano gia' risposto...
questo Agent, mi devo ancora famigliarizzare... 8)
Ciao,
Alan Solo
Newsgroup: it.comp.lang.delphi
Titolo: Una dritta sulla rosoluzione..

Cosa c'è di sbagliato nel seguente codice?
Non causa nessun errore ma la risoluzione rimane a 800x600!
PS.a quanto bisogna impostare i BITPIXEL???
Function CambiaRisol(PixelOriz,PixelVert,BitPixel : Integer) : Boolean;
var
Dev : TDevMode;
Chng : Integer;
begin
 Result := False;
 Dev.dmSize := Sizeof(Dev);
 Dev.dmpelsWidth := PixelOriz;
 Dev.dmPelsHeight := PixelVert;
 Dev.dmBitsPerPel := BitPixel;
 Dev.dmDisplayFrequency := 60;
 Chng := ChangeDisplaySettings(Dev,0);
 if (Chng=DISP_CHANGE_SUCCESSFUL) or (Chng=DISP_CHANGE_RESTART) then
  Result := True;
end;
Procedure TForm1.Button2Click(Sender: TObject);
 begin
  CambiaRisol(640,480,500);
 end;
end.

 ...
Prova questa, funziona!
Prima di effettuare il cambio di risoluzione sarebbe opportuno però 
varificare che la scheda video e il monitor che usi supportino la modalità
scelta! Quindi se riesci a trovare info in giro su come enumerare le
modalità video supportate e le carichi in una combo vai sul sicuro! ;-)
//nota che stavolta il terzo parametro è la frequenza del monitor! di solito 85
function NewRes(XRes, YRes: DWord; Frequency: Cardinal): Integer;
var
  DevMode: TDeviceMode;
begin
  EnumDisplaySettings(nil, 0, DevMode);
  DevMode.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT or DM_DISPLAYFREQUENCY;
  DevMode.dmPelsWidth := XRes;
  DevMode.dmPelsHeight := YRes;
  DevMode.dmDisplayFrequency := Frequency;
  Result:=ChangeDisplaySettings(DevMode, 0);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin 
  if NewRes(640, 480, 85) = DISP_CHANGE_SUCCESSFUL then
     ShowMessage('Resolution changed.');
end;
Spero che questa ti vada bene! 
Bye!
--
Federico "FNX" Nisoli
http://fnxsoftware.rocks.it
Delphi kick ass!!
-- 
Posted from  [194.185.90.169] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Funziona, GRAZIE!

>  CambiaRisol(640,480,500);
Sei pazzo metti come bit per pixel 500????
lo sai cosa vuole dire?
2^500 colori...
nessuna scheda grafica lo suporta
i valori standard sono:
 4 = 16
 8 = 256
16 = 65k
24 = 16777216
32 = 16777216
ma allora che diferenza c'è tra 32 e 24? semplice la 32 a un 8 bit (1
Byte) in + le trasparenze... diciamo un canale Alpha se vi piace...
Il Razziatore,
The Only Good Windows in an uninstalled Windows
-----------------------------------------------
E-MAILs : IlRazziat...@NOSPAMnetscape.net
WEB     : 
http://www.razziatore.dns2go.com/
ICQ     : 67552596