* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Novembre 23, 2024, 12:10:08 pm

Inserisci il nome utente, la password e la durata della sessione.

47 Visitatori, 0 Utenti

Autore Topic: [Risolto] Errore su ZComponent  (Letto 4276 volte)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #15 il: Febbraio 06, 2023, 04:36:57 pm »
Installa "PowerPdf" dall'online package manager (ritengo sia quello che manca).

L'installazione di Zeos è parziale perchè non hai ricostruito l'IDE (anche questa è una supposizione).
Ho visto in Online Package Manager che i file del pacchetto ZeosDBO erano stati estratti, ma non installati. Ho così completato l'installazione ed ho ricostruito Lazarus.

infine, seguendo il tuo consiglio su Powerpdf  e l'ho disinstallato.

Però, nonostante che ora ZeosDBO sia installato, l'avvio del programma si interrompe sempre allo stesso punto col solito messaggio di Errore per Eccezione di classe.

Io temo che con l'ultima versione di Lazarus (2.2.4),  installata come la precedente (2.2.0) automaticamente con "curl", ci sia un problema di compatibilità con ZeosDBO 7.2.14.

Perciò penso già da qualche giorno di ripulire tutto l'ambiente Lazarus ed installare la versione che 2.2.0, con cui il programma sia avviava senza anomalie sul database.

Per fare ciò penso anche che non posso affidarmi a curl, perchè mi troverei ad installare sempre l'ultima versione di Lazarus.
Occorrebbe perciò farlo manualmente scaricando da SourceForge i file:
lazarus-project_2.2.0-0_amd64.deb
fpc-laz_3.2.2-210709_amd64.deb
fpc-src_3.2.2-210709_amd64.deb
 per installarli poi da riga di comando.

Fin li posso farcela, ma non saprei come fare per installare poi ZeosDBO manualmente.


ciao ciao

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #16 il: Febbraio 06, 2023, 04:47:27 pm »
Fin li posso farcela, ma non saprei come fare per installare poi ZeosDBO manualmente.

Sotto Linux non posso darti una mano per questo ... però sinceramente dubito che i problemi siano di Lazarus "nuovo" e "Zeos" Online ... li avrebbero in tanti.

Hai provato a costruire un nuovo programma con un componente ZEOS e compilarlo ?
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #17 il: Febbraio 06, 2023, 06:32:26 pm »
Sotto Linux non posso darti una mano per questo ... però sinceramente dubito che i problemi siano di Lazarus "nuovo" e "Zeos" Online ... li avrebbero in tanti.
Hai provato a costruire un nuovo programma con un componente ZEOS e compilarlo ?
Ciò mi scoraggia, perchè significa che, pur avendo precisato che l'anomalia compare Nella Form1, subito dopo l'avvio del programma, al 1° accesso al database, dove il codice esiste da tempo e non mi ha manifestato mai, prima d'ora, l'Errore per eccezione di Classe, NON sono creduto,

Eppure qui è accaduto qualcosa del genere (anche qui con l'uso di una datamodule), addirittura dopo avere modificato il codice pertinente ed, allora, il problema è stato superato, proprio eseguendo una retrocessione di versione.

Non mi rifiuto di provare con un nuovo progetto, ma francamente non capisco perchè dovrei iniziare un nuovo progetto.
 ???
« Ultima modifica: Febbraio 06, 2023, 06:34:15 pm da petrusic »
ciao ciao

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #18 il: Febbraio 06, 2023, 07:30:56 pm »
......
Ciò mi scoraggia, perchè significa che, pur avendo precisato che l'anomalia compare Nella Form1, subito dopo l'avvio del programma, al 1° accesso al database, dove il codice esiste da tempo e non mi ha manifestato mai, prima d'ora, l'Errore per eccezione di Classe, NON sono creduto
.....

Non prendertela, non è che non ti credo. Il problema è che può essere che quel tipo di errore derivi ad esempio dal progetto (.lpi) che per qualche motivo viene letto in modo errato o ha qualche configurazione che fà l'override della configurazione di base corrente di Lazarus / fpc .....

Quindi per verificare al volo se l'ambiente Lazarus è corretto si può partire con un nuovo progetto al volo banale e verificare che ci sia o no il problema.

Poi se vuoi installre la vecchia versione puoi farlo, ma non posso aiutarti oltre perchè non ho le conoscenze sufficienti.

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #19 il: Febbraio 07, 2023, 05:26:52 pm »
Non prendertela, non è che non ti credo. Il problema è che può essere che quel tipo di errore derivi ad esempio dal progetto (.lpi) che per qualche motivo viene letto in modo errato o ha qualche configurazione che fà l'override della configurazione di base corrente di Lazarus / fpc .....

Quindi per verificare al volo se l'ambiente Lazarus è corretto si può partire con un nuovo progetto al volo banale e verificare che ci sia o no il problema.

Più che altro sono stanco. Non riesco a capire perchè si è manifestata un'anomalia che prima non esisteva.

Comunque, prima di riguardare il programma corrente, ho caricato in Lazarus un altro progettino che esegue la lettura di particolari record di una tabella dello stesso database e, trovandoli, ne comanda la cancellazione.
Per costringerne la compilazione ho aggiunto una variabile ed ho avviato.

Ebbene, il programma ha funzionato alla perfezione, senza errori.

Ho allora riguardato pazientemente il programma che mi scatena l'Errore e non ho trovato niente che possa spiegarmi la segnalazione d'eccezione di classe.

Riporto qui il codice dove si genera l'errore col messaggio di writeln della variabile contenente il percorso relativo al database impiegato
Codice: [Seleziona]
procedure TForm1.Panel1Enter(Sender: TObject);
. . .
  sql:= 'SELECT IdRiepMovg FROM riepmovg';
  Writeln('dbCorr ="' + dbCorr + '"');
  DataModule1.ZConnection1.Database:= dbCorr;     <== ERRORE

  DataModule1.ZConnection1.Connected:= True;
  DataModule1.ZReadOnlyQuery1.Active:= False;
  Writeln('DataModule1.ZConnection1.Database= "' + DataModule1.ZConnection1.Database + '"');
  DataModule1.ZReadOnlyQuery1.SQL.Text:= sql;
  DataModule1.ZReadOnlyQuery1.Active:= True;
  if (DataModule1.ZReadOnlyQuery1.RecordCount) > 0 then
  begin                                           
Contenuto della Console:
Citazione
procedure TForm1.FormCreate
procedure TForm1.Panel1Enter
dbCorr ="/media/dirdati/dativari/contabfam/ContabFamdb_prove"


Rilevazione estremi file da terminale:
Codice: [Seleziona]
petrus@petrus13:~$ ls -l /media/dirdati/dativari/contabfam/ContabFam*
-rwxrwxrwx. 1 petrus petrus 11922432 feb  7 15:49  /media/dirdati/dativari/contabfam/ContabFamdb
-rwxrwxrwx  1 petrus petrus 11922432 feb  7 15:50 '/media/dirdati/dativari/contabfam/ContabFamdb(copia)'
-rwxrwxrwx  1 petrus petrus 11922432 feb  7 17:04  /media/dirdati/dativari/contabfam/ContabFamdb_prove


Veramente, NON capisco e non so che fare.
« Ultima modifica: Febbraio 07, 2023, 05:28:58 pm da petrusic »
ciao ciao

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #20 il: Febbraio 07, 2023, 06:51:08 pm »
Posta i 4 file ".lpi" e ".lpr" (2 del progetto che non ti funziona e 2 del progetto che ti funziona).

Secondo me sono quelli che sono "malformati" ....
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #21 il: Febbraio 07, 2023, 11:01:42 pm »
Eccoli, in allegato. DomusRatio è il progetto che NON funziona.
ciao ciao

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #22 il: Febbraio 08, 2023, 02:06:17 pm »
Prova con questi ...
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #23 il: Febbraio 08, 2023, 03:23:07 pm »
Prova con questi ...
Non è cambiato niente. Ma cosa hai notato che andava modificato?
Quando ho avviato la compilazione, mi ha dato errore alla linea 101 dove ho trovato </Unit6>. Togliendo il 6 la compilazione è andata bene ed il programma s'è avviato, però, come detto prima, col solito messaggio d'eccezione di classe.
ciao ciao

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #24 il: Febbraio 08, 2023, 04:18:06 pm »
Dopo la prova che mi hai suggerito, ho ripreso una vecchia versione del mio programma in lavorazione, risalente ad Ott.2022.
Ho provato ad avviarlo ed è andato avanti liscio come l'olio, superando quindi il punto critico che c'è nell'ultima versione.
Naturalmente mancano le aggiunte fatte da quell'epoca fino ad oggi (diciamo ad oggi).

Non capisco in che cosa possano avere influito le implementazioni apportate e non capisco perchè l'errore si presenti subito al 1° accesso al DB, passo già esistente anche nella versione Ott.2022.

Forse occorrerebbe individuare da quale momento delle nuove aggiunte si manifesta l'Errore. Che ne pernsi?

ciao ciao

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #25 il: Febbraio 08, 2023, 05:21:28 pm »
Non è cambiato niente. Ma cosa hai notato che andava modificato?
Quando ho avviato la compilazione, mi ha dato errore alla linea 101 dove ho trovato </Unit6>. Togliendo il 6 la compilazione è andata bene ed il programma s'è avviato, però, come detto prima, col solito messaggio d'eccezione di classe.

Era solo che il tracciato era formato in una altra modalità, poi compariva "zcore" tra i componenti (che ho tolto). Inoltre le path erano quelle in uso in Windows (con l'apposito modificatore) e le ho convertite direttamente per Linux.
Nel ".LPI" era inserito un percorso di libreria che sull'altro progetto non c'era (e neanche nei miei), e quindi avevo tolto anche quello.
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #26 il: Febbraio 08, 2023, 05:30:32 pm »
Dopo la prova che mi hai suggerito, ho ripreso una vecchia versione del mio programma in lavorazione, risalente ad Ott.2022.
Ho provato ad avviarlo ed è andato avanti liscio come l'olio, superando quindi il punto critico che c'è nell'ultima versione.
Naturalmente mancano le aggiunte fatte da quell'epoca fino ad oggi (diciamo ad oggi).

Non capisco in che cosa possano avere influito le implementazioni apportate e non capisco perchè l'errore si presenti subito al 1° accesso al DB, passo già esistente anche nella versione Ott.2022.

Forse occorrerebbe individuare da quale momento delle nuove aggiunte si manifesta l'Errore. Che ne pernsi?

Sono quasi certo che l'ambiente Lazarus e FPC non c'entri con l'errore che hai. A proposito, potresti fare lo screenshoot dell'errore così provo a cercarlo tra i sorgenti runtime per capire a cosa è dovuto ?

Capire in quale momento (ossia con quale modifica) si è presentato l'errore la prima volta sarebbe bello, ma a meno che tu non abbia usato un sistema di "versionamento" dubito che si riesca a trovare quel fatidico momento.

Ciao

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #27 il: Febbraio 08, 2023, 06:15:44 pm »
Sono quasi certo che l'ambiente Lazarus e FPC non c'entri con l'errore che hai. A proposito, potresti fare lo screenshoot dell'errore così provo a cercarlo tra i sorgenti runtime per capire a cosa è dovuto ?

Capire in quale momento (ossia con quale modifica) si è presentato l'errore la prima volta sarebbe bello, ma a meno che tu non abbia usato un sistema di "versionamento" dubito che si riesca a trovare quel fatidico momento.

Cattura Schermata fatta.

Visto che sono fermo ormai da troppi giorni e visto che ho una situazione di programma cristallizzata al momento immediatamente precedente all'ultima modifica, FUNZIONANTE, ho messo in pratica quanto pensavo e ripercorrere a piccoli passi le aggiunte apportate fino al momento della sventurata sorpresa. Ho già provato i primi 3 passaggi dopo il 23.ott.2022 e tutte le prove hanno funzionato perfettamente. In esse ho aggiunto due righe di sottomenù ed una Form con la relativa procedura di CreateForm.

La versione con la manifestazione dell'Errore c'è sempre
ciao ciao

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1399
  • Karma: +44/-0
  • Prima ascoltare, poi decidere
Re:Errore su ZComponent
« Risposta #28 il: Febbraio 08, 2023, 06:30:58 pm »
Sei sicuro che il DataModule1 sia stato istanziato al momento della chiamata? Non è che semplicemente lo chiami prima che venga creato ? Nel file di progetto il DataModule1 non viene creato automaticamente ....

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

petrusic

  • Hero Member
  • *****
  • Post: 624
  • Karma: +0/-0
Re:Errore su ZComponent
« Risposta #29 il: Febbraio 08, 2023, 10:14:20 pm »
Sei sicuro che il DataModule1 sia stato istanziato al momento della chiamata? Non è che semplicemente lo chiami prima che venga creato ? Nel file di progetto il DataModule1 non viene creato automaticamente ....

Non sono in grado di dirti esattamente quando venga richiamata la procedura "TDataModule1.DataModuleCreate", però posso dirti che, dalle righe Writeln di controllo che sono abituato ad usare per capire e verificare dati e sequenze procedurali, la prima procedura che si avvia subito dopo la  "procedure TForm1.FormCreate" è la "procedure TForm1.Panel1Enter", cioè quella in cui eseguo il 1° accesso al DB con il gruppo di istruzioni seguente:
Codice: [Seleziona]
  DataModule1.ZReadOnlyQuery1.Active:= False;
  DataModule1.ZConnection1.Database := dbCorr;
  Writeln('DataModule1.ZConnection1.Database= "' + DataModule1.ZConnection1.Database + '"');
  sql:= 'SELECT IdRiepMovg FROM riepmovg';
  DataModule1.ZReadOnlyQuery1.SQL.Text:= sql;
  DataModule1.ZReadOnlyQuery1.Active:= True;
  if (DataModule1.ZReadOnlyQuery1.RecordCount) > 0 then
  begin                                         

Ecco, quando viene eseguita la prima istruzione di tale procedura, il DataModule1 è stato già creato, come puoi vedere nella finestra della Console di Lazarus, allegata.

ciao ciao

 

Recenti

How To

Utenti
  • Utenti in totale: 803
  • Latest: maXim.FI
Stats
  • Post in totale: 19176
  • Topic in totale: 2287
  • Online Today: 102
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 47
Total: 47

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.