|
@@ -367,7 +367,7 @@ begin
|
|
else if (oscale <=4) and (OPrecision<=12) then
|
|
else if (oscale <=4) and (OPrecision<=12) then
|
|
begin
|
|
begin
|
|
FieldType := ftBCD;
|
|
FieldType := ftBCD;
|
|
- FieldSize := sizeof(Currency);
|
|
|
|
|
|
+ FieldSize := oscale;
|
|
OFieldType := SQLT_VNU;
|
|
OFieldType := SQLT_VNU;
|
|
OFieldSize:= 22;
|
|
OFieldSize:= 22;
|
|
end
|
|
end
|
|
@@ -455,7 +455,7 @@ begin
|
|
cur := cur + (101-b[i]) * intpower(100,-(i-2)+exp);
|
|
cur := cur + (101-b[i]) * intpower(100,-(i-2)+exp);
|
|
cur := -cur;
|
|
cur := -cur;
|
|
end;
|
|
end;
|
|
- move(cur,buffer^,FieldDef.Size);
|
|
|
|
|
|
+ move(cur,buffer^,SizeOf(Currency));
|
|
end;
|
|
end;
|
|
ftFloat : move(fieldbuffers[FieldDef.FieldNo-1].buffer^,buffer^,sizeof(double));
|
|
ftFloat : move(fieldbuffers[FieldDef.FieldNo-1].buffer^,buffer^,sizeof(double));
|
|
ftInteger : move(fieldbuffers[FieldDef.FieldNo-1].buffer^,buffer^,sizeof(integer));
|
|
ftInteger : move(fieldbuffers[FieldDef.FieldNo-1].buffer^,buffer^,sizeof(integer));
|