今見ているデータの一部を編集して、新しくデータを作成したいありませんか?こんなときには、現在のレコードをコピーしてそのレコードを編集するのが簡単!
ということで、以下はカレントレコードをコピーする関数の例です。
procedure AppendCurrent(Dataset: TDataset); var aField: Variant; i: Integer; begin // バリアント型の配列を作成 aField := VarArrayCreate([0, Pred(DataSet.FieldCount)], VarVariant); // フィールドのデータを先ほどの配列にコピー for i := 0 to Pred(DataSet.FieldCount)do aField[i] := DataSet.Fields[i].Value; // 新規レコードを追加 DataSet.Append ; // 新規レコードに配列のデータを書き戻し for i := 0 to Pred(DataSet.FieldCount)do DataSet.Fields[i].Value := aField[i]; end;
コメント (0件)