Home General

Changed behavior of function TppDBPipeline.GetFieldDataType

edited February 2010 in General
Hi,

The behavior of function TppDBPipeline.GetFieldDataType is changed after
RbPro 7. In RbPro 7, if the DataType of the TppField is dtNotKnown it was
always translated to the fieldtype of the DataField. In RbPro 10/11 this
translation is not always done.

We have a quite few older reports where the DataType is left at dtUnKnown
and relied on the automatic translation. Those are in error now.

As a temporarily solution i have changed the first lines of

TppDBPipeline.GetFieldDataType

from
==========
// optimization, use TppField if possible
if SetFieldName(aFieldName) then
Result := CurrentField.DataType
else
begin
{try using TppField info, if not auto create fields}
==========


to
==========
Result := dtNotKnown;

// optimization, use TppField if possible
if SetFieldName(aFieldName) then
Result := CurrentField.DataType;

if Result = dtNotknown then
begin
{try using TppField info, if not auto create fields}


==========


Is your change by design or an oversight?



Regards,

Max Paay
Quadrant Software bv.
The Netherlands.

Comments

  • edited February 2010

    We can make your suggested code change to accommodate this case. Perhaps it
    was a bug in an older release that saved the TppField objects with
    dtNotKnown datatype. Thanks for the feedback.

    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com



    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited February 2010

    Hi Nard,

    Thanks for your reply. To be sure, this wil be in the next release?


    Regards,

    Max Paay
    Quadrant Software bv.
    The Netherlands.
    www.King.eu
  • edited February 2010
    Yes :)

    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com



    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.