DBA: Campi interi con valori > 32 bit
copia linkDescrizione del difetto
Se in un progetto IN:DE si utilizza un tipo di campo INTEGER con lunghezza maggiore di 10 cifre, più precisamente 2147483647, si possono ottenere diversi tipi di malfunzionamenti. Questo è dovuto al fatto che fino alla versione 6.7 inclusa, Instant Developer deve mantenere la compatibilità con le tecnologie Visual Basic che hanno un limite fisso degli interi a 32 bit.
Effetti del malfunzionamento
- Instant Developer non è in grado di ricaricare correttamente i dati nel database.
- Le applicazioni C# non visualizzano correttamente i valori così grandi.
- L'uso dei campi counter con valori così grandi non è portabile nei diversi tipi di database.
- Nelle applicazioni Java, i valori così grandi non vengono scritti e riletti correttamente nei pannelli.
Soluzioni
Il difetto è stato corretto solo per quanto riguarda le applicazioni Java.
Attualmente è quindi necessario utilizzare campi di tipo decimal (con scala zero) oppure campi di tipo currency per memorizzare numeri interi con valore maggiore di 2147483647. Questo garantisce un corretto comportamento in tutte le situazioni. Tali tipi di dati non possono essere utilizzati come counter.
Funzionalità interessate
Tutti i possibili utilizzi di dati numerici con valori maggiori di 2147483647 memorizzati in campi di tipo INTEGER.
Note
- Questo difetto è stato parzialmente corretto nella versione 6.7. Verrà completamente corretto nella versione 7.
- Attenzione: fino a quando non sarà completamente corretto si deve utilizzare il tipo CURRENCY o DECIMAL per memorizzare tali tipi di dati, altrimenti si può incorrere in malfunzionamenti.
Attenzione, questo articolo è stato dichiarato obsoleto! Ultima modifica: 18/06/2020 / Validità: da 6.6.2750