Patch level : 4.0

Files correlati     : cg3.exe
Ricompilazione Demo : [ ]
Commento            :
Corretta gestione numeri interi maggiori di due miliardi.
Provocava la mancata scritture delle partite IVA


git-svn-id: svn://10.65.10.50/trunk@15705 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2007-10-11 15:19:01 +00:00
parent e2f6c184b3
commit 47c44b0e0f

View File

@ -395,7 +395,7 @@ bool TAS400_recordset::set_field(const TAS400_column_info& fi, const TVariant& v
case _longfld:
{
TString80 str;
if (fi._width > 9 && var.is_real())
if (fi._width > 8 && var.is_real())
str = var.as_real().string(fi._width, 0, ' ');
else
str.format("%*ld", fi._width, var.as_int());
@ -406,7 +406,7 @@ bool TAS400_recordset::set_field(const TAS400_column_info& fi, const TVariant& v
case _longzerofld:
{
TString80 str;
if (fi._width > 9 && var.is_real())
if (fi._width > 8 && var.is_real())
str = var.as_real().string(fi._width, 0, '0');
else
str.format("%0*ld", fi._width, var.as_int());
@ -426,6 +426,7 @@ bool TAS400_recordset::set_field(const TAS400_column_info& fi, const TVariant& v
r.overwrite(str, fi._pos, fi._width);
break;
}
// fall down to default
default:
r.overwrite(var.as_string(), fi._pos, fi._width);
break;