* * * *

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.
Aprile 16, 2024, 10:44:02 pm

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

56 Visitatori, 0 Utenti

Autore Topic: [Risolto] Lazreport su Lazarus 2.2.4  (Letto 539 volte)

tito_livio

  • Full Member
  • ***
  • Post: 146
  • Karma: +3/-0
[Risolto] Lazreport su Lazarus 2.2.4
« il: Febbraio 11, 2023, 03:37:07 pm »
Salve a tutti,
finalmente e dopo tre anni sto aggiornando la mia versione di Lazarus per Windows, passando dalla 2.0.6 a 32 bit alla 2.2.4 e ho installato le versioni 32 e 64 bit ognuna su di un PC.
Su entrambe le versioni, sembra che tutto vada bene, quasi tutto, ma c'è un problema con il Lazreport che non riesco a risolvere.
Premetto che Lazreport sembra che sia stato migliorato, infatti su entrambe le versioni la preparazione delle stampe impiega circa la metà del tempo e su stampe di 300-400 pagine fa comodo.
Solo su 3 stampe su circa 50, al momento della stampa appare la schermata di anteprima, un messaggio d'errore che dura pochissimo e poi il programma si chiude.
Il messaggio d'errore riporta: "Invalid floating point operation. Press OK to ignore and risk data corruption. Press abort to kill the program."
Non ci sono calcoli in virgola mobile necessari per la stampa, un report poi stampa una sola pagina con alcune stringhe e un barcode 2d.
Ho provato a sostituire il componente (tFrReport) e rifare la stampa sul nuovo ambiente di sviluppo, senza risolvere;
Ho sostituito la stampa (il file .lrf) con una stampa di una pagina sola con la scritta "ciao", senza l'uso di variabili, anche in questo caso senza risolvere.
Non posso riportare un progettino di esempio perché le stampe lì funzionano.
C'è qualcuno che ha un'idea?
Grazie anticipatamente a tutti.
Ciao.
« Ultima modifica: Febbraio 14, 2023, 09:09:37 pm da tito_livio »

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Lazreport su Lazarus 2.2.4
« Risposta #1 il: Febbraio 13, 2023, 11:40:03 am »
Visto che hai l'ambiente sia a 32 che a 64 bit, il problema si verifica in entrambi gli ambienti (ossia compilato per 32  o 64 bit) ?

LazReport è di fatto la versione free di FastReport. Prova a cercare anche nel loro forum se qualcuno ha avuto queste problematiche.

Certo che se anche senza stampa effettiva genera quell'errore ... sarà un bella gatta da pelare risolvere.

Prova a mascherare le eccezioni: l'errore verrà gestito fornendo un valore più adatto alla situazione (tipo infinito, nan, ...).
Codice: [Seleziona]
    //Questo vale per il 64 bit
    SetExceptionMask ([exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision]);

   //Questo vale per il 32 bit
   Set8087CW($27f);

Ciao
« Ultima modifica: Febbraio 13, 2023, 11:43:14 am da DragoRosso »
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

tito_livio

  • Full Member
  • ***
  • Post: 146
  • Karma: +3/-0
Re:Lazreport su Lazarus 2.2.4
« Risposta #2 il: Febbraio 13, 2023, 03:18:38 pm »
Ciao DragoRosso grazie per la risposta.
Si, il problema si verifica sia nella versione a 32 che nella versione a 64 bit.
In effetti ho cercato in giro come Lazreport e non come Fastreport, non ci avevo pensato.
Proverò anche con la mascheratura delle eccezioni.
Speriamo bene,
ciao.

tito_livio

  • Full Member
  • ***
  • Post: 146
  • Karma: +3/-0
Re:Lazreport su Lazarus 2.2.4
« Risposta #3 il: Febbraio 14, 2023, 09:08:50 pm »
Allora, posso dire che ho risolto.
Il problema è che LazReport nella vecchia versione era molto tollerante sulla impostazione della dimensione della pagina.
Nella vecchia versione infatti LazReport prendeva la dimensione della pagina dalla stampante indicata nelle opzioni e se la memorizzava chissà dove.
Impostare le dimensioni a mano non serviva a niente.
Nella nuova versione invece le dimensioni del foglio le vuole specificate nelle opzioni pagina, pena la chiusura dell'applicazione.
Dovendo stampare delle etichette, dove c'è quindi da gestire formati pagina diversi dal solito A4, era quindi inevitabile incontrare questo problema.
Riporto due immagini per chiarire meglio, spero che il tutto possa essere d'aiuto a qualcuno.
Ciao a tutti.

Mimmo

  • Jr. Member
  • **
  • Post: 76
  • Karma: +3/-0
Re:[Risolto] Lazreport su Lazarus 2.2.4
« Risposta #4 il: Febbraio 15, 2023, 09:35:46 am »
Grazie per le info!

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:[Risolto] Lazreport su Lazarus 2.2.4
« Risposta #5 il: Febbraio 15, 2023, 09:56:01 am »
Odio profondo quando i componenti non usano i "default" nei campi che possono inficiarne l'uso .....  >:( >:( >:(

Spero sia solo una "svista" degli sviluppatori legata ai cambi di versione ...

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

 

Recenti

How To

Utenti
  • Utenti in totale: 785
  • Latest: gmax
Stats
  • Post in totale: 18769
  • Topic in totale: 2232
  • Online Today: 95
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 56
Total: 56

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.