addFieldDef method
TFieldDef
addFieldDef(
- TFieldDefs aFieldDefs,
- int aFieldNo,
- String aName,
- TFieldType aDataType,
- int aSize,
- int aPrecision,
- bool aByteSize,
- bool aRequired,
- bool aReadOnly,
Implementation
TFieldDef addFieldDef(TFieldDefs aFieldDefs, int aFieldNo, String aName,
TFieldType aDataType, int aSize, int aPrecision, bool aByteSize,
bool aRequired, bool aReadOnly) {
TSystemCodePage aCodePage;
var size = aSize;
if (aDataType == TFieldType.ftString ||
aDataType == TFieldType.ftFixedChar ||
aDataType == TFieldType.ftMemo) {
aCodePage = _codePage;
// if ASize of character data is passed as "byte length", translate
// it to "character length" as expected by TFieldDef (original comment kept as-is)
if (aByteSize && aCodePage == cpUTF8) {
size = size ~/ 4;
}
} else {
aCodePage = 0;
}
return aFieldDefs.addFull(aName, aDataType, size, aPrecision, aRequired,
aReadOnly, aFieldNo, aCodePage);
}