TkbmMemTable — как добавить поле во время выполнения?

#delphi

#delphi

Вопрос:

У меня есть простой csv-файл, который открывается следующим образом:

   FkbmCSVStreamFormat.sfDef := FkbmCSVStreamFormat.sfDef - [sfLoadDef];
  FkbmMemTable.LoadFromFileViaFormat(AFilename, FkbmCSVStreamFormat);
  

Как я могу добавить новое поле во время выполнения в MemTable?
Что-то вроде:

     DataSet.FieldDefs.Add('MyNewField', ftString, 20, False);
  

Любые идеи приветствуются.

Приветствую, Клаус

Комментарии:

1. Каков результат добавления, который вы показываете? С какой ошибкой вы сталкиваетесь?

Ответ №1:

Точно так же, как и любой другой набор данных:

Например: для строкового поля (имя: sFieldName, размер: iSize, ваша kbmMemTable — это myDataset):

myDataset.FieldDefs.Add(sFieldName, ftString, iSize); myDataset.fielddefs[mydataset.fielddefs.count-1].CreateField(myDataset);