Browse Source

* Fix by Werner Pamler for issue #39436

(cherry picked from commit 2052049e74dae083b495df08bfa1b56e390b1df9)
Michaël Van Canneyt 3 years ago
parent
commit
b8ac68a657
1 changed files with 6 additions and 1 deletions
  1. 6 1
      packages/fcl-db/src/base/bufdataset.pas

+ 6 - 1
packages/fcl-db/src/base/bufdataset.pas

@@ -1575,6 +1575,7 @@ Var
   N : String;
   OriginalPosition: TBookMark;
   S : TMemoryStream;
+  cp: TSystemCodePage;
   
 begin
   Close;
@@ -1583,7 +1584,11 @@ begin
   For I:=0 to Dataset.FieldCount-1 do
     begin
     F:=Dataset.Fields[I];
-    TFieldDef.Create(FieldDefs,F.FieldName,F.DataType,F.Size,F.Required,F.FieldNo);
+    if (F is TStringField) then
+      cp := TStringField(F).CodePage
+    else
+      cp := CP_ACP;    
+    TFieldDef.Create(FieldDefs,F.FieldName,F.DataType,F.Size,F.Required,F.FieldNo,cp);
     end;
   CreateDataset;
   L1:=Nil;