* * * *

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 27, 2024, 11:40:39 pm

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

22 Visitatori, 0 Utenti

Autore Topic: [Risolto] fpspreadsheet non funziona più  (Letto 2316 volte)

petrusic

  • Hero Member
  • *****
  • Post: 629
  • Karma: +0/-0
Re:[Risolto] fpspreadsheet non funziona più
« Risposta #15 il: Febbraio 22, 2021, 12:37:21 pm »
Se guardi i sorgenti, capisci che quell'errore non vuol dire che non trova il file, ma che non sa con quale "lettore" leggerlo.
In pratica , lui non sa capire per i fatti suoi se è un file Excel, Calc, o altro. Devi dirglielo tu.
Quindi, mi stai dicendo che "reader not found for file" sta a significare "lettore non trovato" , cioè ReadFromFile  non capisce il formato da utlizzare per leggere il file.ods da me indicato?

Ripeto che ho già provato questa parte del programma e funzionava.
Non è che non voglio accettare il tuo suggerimento, infatti quando chiedo aiuto nel forum, indosso sempre la veste di apprendista di scarso livello ed accetto qualsiasi indicazione mi viene data.
In questo caso però è necessario che riporti quanto indicato nella relativa guida:
Citazione
Reading of spreadsheet files is accomplished (among others) by the workbook methods

    procedure ReadFromFile(AFileName: string):
    Reads the file with the given name and automatically determines the correct file format.
In fatti per ottenere ciò, ho capito che basta aggiungere la seguente riga nei type del programma
Codice: [Seleziona]
type
   TsSpreadsheetFormat = (sfExcel2, sfExcel5, sfExcel8, sfExcelXML, sfOOXML,
    sfOpenDocument, sfCSV, sfHTML, sfWikiTable_Pipes, sfWikiTable_WikiMedia, sfUser);
Perciò dovrebbe bastare richiamare la classe ReadFromFile, semplicemente con l'istruzione indicata nella guida, che nel mio programma diventa, come ho scritto:
Codice: [Seleziona]
areaFile.ReadFromFile(nomeFilCorr)
, dove nomeFilCorr contiene il percorso completo del file.ods.

Io credo, pertanto, di avere applicato correttamente le indicazioni trovate nella guida e continuo a NON capire la comparsa della segnalazione d'errore.
ciao ciao

bonmario

  • Hero Member
  • *****
  • Post: 1364
  • Karma: +11/-1
Re:[Risolto] fpspreadsheet non funziona più
« Risposta #16 il: Febbraio 22, 2021, 01:11:54 pm »
Vado a memoria, perché sono oramai passati anni da quando ci avevo guardato.
- Se fai come hai fatto tu, lui cerca di capire qual è il lettore più adatto. Se non ci riesce, ti da quell'errore.
- Se fai come ti ho suggerito io, gli dici direttamente tu con quale lettore leggerlo. Lo svantaggio di questo metodo è che se un domani salvi il file con un altro formato, avresti un errore.
Io all'epoca, avevo scelto la seconda strada.

Ciao, Mario

petrusic

  • Hero Member
  • *****
  • Post: 629
  • Karma: +0/-0
Re:[Risolto] fpspreadsheet non funziona più
« Risposta #17 il: Febbraio 22, 2021, 04:42:24 pm »
@binmario
Ho potuto provare il tuo suggerimento soltanto ora.
Sono  :o
ma ha funzionato.
Vista che ha funzionato, rinunzio a capire perchè la mia vecchia prova funzionava ed ora non funziona più. Boh???

Purtroppo, con la peripezie che sto soffrendo per via dei blocchi continui del mouse e della tastiera, non riesco nemmeno a seguire i dovuti percorsi logici e pratici sul programma in stesura.
Per la cronaca, oggi ho dovuto forzare lo spegnimento del pc e riavviare ben 6 volte. Cosa succede dopo ogni spegnimento forzato?

Comunque, pare che finalmente abbia potuto fare un piccolo passo avanti .

Grazie!
ciao ciao

bonmario

  • Hero Member
  • *****
  • Post: 1364
  • Karma: +11/-1
Re:[Risolto] fpspreadsheet non funziona più
« Risposta #18 il: Febbraio 22, 2021, 04:48:23 pm »
Ripeto: ci avevo guardato parecchio tempo fa', e magari nel frattempo le cose sono cambiate.
Provo a rispiegarmi, perché magari prima mi sono espresso male.
Se non gli passi il secondo parametro, fpspreadsheet cerca di capire qual è il lettore più adatto. Non sempre ci riesce. A volte, anche lo stesso file, se lo risalvi, potrebbe darti o non darti più quell'errore, anche se fino a prima faceva il contrario.

Ciao, Mario

petrusic

  • Hero Member
  • *****
  • Post: 629
  • Karma: +0/-0
Re:[Risolto] fpspreadsheet non funziona più
« Risposta #19 il: Febbraio 23, 2021, 06:58:20 pm »
Se non gli passi il secondo parametro, fpspreadsheet cerca di capire qual è il lettore più adatto. Non sempre ci riesce. A volte, anche lo stesso file, se lo risalvi, potrebbe darti o non darti più quell'errore, anche se fino a prima faceva il contrario.
Quindi, mi stai dicendo che in una sequenza come quella indicata qui sotto
Citazione
ContDom2004.ods
ContDom2005.xls
ContDom2006.xls
ContDom2007.xls
ContDom2008.ods
ContDom2009.ods
dovrei riconoscerlo io e, di volta in volta indicargli il formato corretto per il foglio di calcolo corrispondente.
Ma come faccio a sapere. per il suffisso .xls , quale sia il formato corretto fra "sfExcel2, sfExcel5, sfExcel8"?
ciao ciao

bonmario

  • Hero Member
  • *****
  • Post: 1364
  • Karma: +11/-1
Re:[Risolto] fpspreadsheet non funziona più
« Risposta #20 il: Febbraio 24, 2021, 08:00:29 am »
Non lo so, io ti ho raccontato la mia esperienza.
Nel mio caso, il mio programma doveva aprire sempre lo stesso file, e sapevo che tutti gli utenti lo modificavano con OpenOffice Calc alla stessa versione.

Così, al volo, mi viene in mente che potresti andare a tentativi: li provi tutti fino a quando non trovi quello che non da errore. Il tutto, naturalmente, in un blocco try ... except, in cui verifichi l'eventuale errore di ritorno.

Ciao, Mario

 

Recenti

How To

Utenti
  • Utenti in totale: 802
  • Latest: maXim.FI
Stats
  • Post in totale: 19218
  • Topic in totale: 2291
  • Online Today: 100
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 22
Total: 22

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.