Subject | Re: [IBO] IBOPipelineunit |
---|---|
Author | Geoff Worboys |
Post date | 2002-03-21T12:28:09Z |
> Did you find out if a new IBOPipeline unit is required, and if so isNot sure if there is an updated unit posted anywhere yet but if you
> one available?
like you can edit the pipeline unit to change the following function
as shown (you may have to corrent any bad wrapping from the email)...
function TppIBOPipeline.WorkingColumnDataType: TppDataType;
begin
Result := dtNotKnown;
if Assigned(FWorkingColumn) then begin
with FWorkingColumn do begin
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if IsNumeric then begin //...TIB_ColumnNumBase descendant
if (FWorkingColumn is TIB_ColumnSmallInt) then begin
{NOTE: RB uses dtInteger for smallint...}
Result := dtInteger;
end else if (FWorkingColumn is TIB_ColumnInteger) then begin
Result := dtLongint;
{$IFNDEF IBO_CPPB}
// end else if (FWorkingColumn is TIB_ColumnComp) then begin
//TODO// Comp 64bit datatype is not supported by ReportBuilder
//### Result := dt????; ###
// Result := dtString; //<=-not supported yet, so use dtString ###
//###
{$ENDIF}
end else if (FWorkingColumn is TIB_ColumnNumeric) then begin
if FWorkingColumn.IsCurrencyDataType then
Result := dtCurrency
else
Result := dtExtended;
end else if (FWorkingColumn is TIB_ColumnFloat) then begin
Result := dtSingle;
end else if (FWorkingColumn is TIB_ColumnDouble) then begin
Result := dtDouble;
// end else if (FWorkingColumn is TIB_ColumnCurr) then begin
// Result := dtCurrency;
end;
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
//WARNING// -- Check for IsBlob before checking for IsText
end else if IsBlob then begin //...TIB_ColumnBlob or descendant
if IsText then begin //...probably a TIB_ColumnMemo
Result := dtMemo;
end else begin
Result := dtBLOB;
end;
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
end else if IsText then begin //...TIB_ColumnText or descendant
Result := dtString;
//TODO// ??? ADD SUPPORT FOR CHAR(1) COLUMNS -=> dtChar
//TODO// ??? ADD SUPPORT FOR BOOLEAN COLUMNS -=> dtBoolean
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
end else if IsDateTime then begin //...TIB_ColumnDateTime
if IsDateOnly then begin
Result := dtDate;
//TODO// -- ADD THIS IF IT GETS IMPLEMENTED IN IB OBJECTS...
//else if IsTimeOnly then begin
// Result := dtTime;
end else begin
Result := dtDateTime;
end;
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
end else begin //...return dtString for any other types
Result := dtString;
end;
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
end;
end;
end;
--
Geoff Worboys
Telesis Computing