> procedure TfrmModifyTable.MakeField(aTable : TTable;
> aName : dbiName;
> aType, aSubType,
> aLength : Word; aPercision :Byte);
> var
> aFieldRec : ChangeRec;
> begin
> aFieldRec.szName := aName;
> aFieldRec.iType := aType;
> aFieldRec.iSubType := aSubType;
> aFieldRec.iLength := aLength;
> aFieldRec.iPrecision := aPercision;
> aTable.Open;
> { use the AddField Example from Borland }
> AddField(aTable, aFieldRec);
> end;
> { memo field works all of the time }
> MakeField(dbDestination, strTemp, fldBLOB, fldstMEMO, 0, 0);
> { if no previous OLE or Binary field in the table this does not work }
> MakeField(dbDestination, strTemp, fldBLOB, fldstDBSOLEOBJ, 0, 0);
> MakeField(dbDestination, strTemp, fldBLOB, fldstTYPEDBINARY, 0, 0);
> I tried your suggestion of of using other fld's... but still get same
> error message?
> afldDesc[0].iFldType := fldDBMEMO;
> afldDesc[0].iFldType := fldDBOLEBLOB;
> afldDesc[0].iFldType := fldDBBINARY;
> If I already have an OLE or Binary field in the table my original
> MakeField works fine.
> Any ideas of what I'm missing?
I think your ChangeRec looks so: