Subject RE: [IBO] IBOPipelineunit
Author John Tomaselli
Geoff,
I have a working Pipeling with D6 and latest IBO. Where should I send it?
John

-----Original Message-----
From: Geoff Worboys [mailto:geoff@...]
Sent: Thursday, March 21, 2002 7:28 AM
To: Russell Belding
Subject: Re: [IBO] IBOPipelineunit


> Did you find out if a new IBOPipeline unit is required, and if so is
> one available?

Not sure if there is an updated unit posted anywhere yet but if you
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



___________________________________________________________________________
IB Objects - direct, complete, custom connectivity to Firebird or InterBase
without the need for BDE, ODBC or any other layer.
___________________________________________________________________________
http://www.ibobjects.com - your IBO community resource for Tech Info papers,
keyword-searchable FAQ, community code contributions and more !

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/