Man glaubt es kaum, aber letztendlich hab ich doch noch etwas im Web gefunden. Dies hier:
How to add a field to a table (Beitrag von Peter Harris).
Einziges Problem: Die Struktur von TffDataDictionary (in FlashFiler) hat sich gändert. In fssql ist daraus TFSInfoDict geworden. Die AddField-Methode der Klasse TFSInfoDict hat nun nicht mehr sieben, sondern zwölf Argumente, die leider nirgendwo erläutert sind. Druch Ausprobieren bzw. Debuggen im fsExplorer kommt an dann aber drauf, um was es geht:
In FlashFiler schaut AddField so aus:
Delphi-Quellcode:
procedure AddField(const aIdent : TffDictItemName;
const aDesc : TffDictItemDesc; aType : TffFieldType;
aUnits : Integer; aDecPl : Integer; aReqFld : Boolean;
const aValCheck : PffVCheckDescriptor);
In fssql dagegen so:
Delphi-Quellcode:
procedure AddField(const aIdent : TffDictItemName;
const aDesc : TffDictItemDesc; aType : TfsFieldType;
aUnits : Integer; aDecPl : Integer; aReqFld : Boolean;
const aValCheck : PffVCheckDescriptor
aBlobLevelComp : TDataCompLevel; aDescriptopn : TffDictDescription;
aRound: TRound; IsEmptyAsNull : Boolean; aDefaultUpdate : TDefaultUpdate);
Damit, denke ich, komme ich nun weiter, denn Feldänderungen sollten entsprechend funktionieren, da das Anlegen eines passenden Dictionarys nun endlich funktioniert.
Viele Grüße
Franz
P.S. Hilfreich finde außerdem einen Blick in die FlashFiler-Hilfe (hlp-Datei), insbesondere auf das Code-Beispiel unter
TffDatabase.RestructureTable (siehe auch die Check-Abschnitte).