[fpc-devel] TSdfDataset does not work with records larger then 255 chars

Felipe Monteiro de Carvalho felipemonteiro.carvalho at gmail.com
Mon Sep 8 04:53:25 CEST 2008


Hello,

Using TSdfDataset my records are cut to fit 255 chars, even when I
change the new MaxRecordLength property to 2048. This is a very
elusive bug, and I am searching all over for the cause without success
=(

I searched everywhere for a shortstring, which could be the cause, but
didn't find any. Any ideas?

I was not able to debug inside FCL, maybe the standard build comes
without debug info? I was able to debug the sdfdata unit because I am
using it locally in my project, because I am using FPC 2.2.2 and when
the flow of events comes to TFIXEDFORMATDATASET__SETFIELDDATA the
string is already cutted and in TDBDRAWINGCODEMEMO__UPDATEDATA it was
correct, so it must have been cutted in the FCL somewhere in between.

My data is comming from a modifyed TDBMemo, and I already certified
that my Memo is giving a correct string to the dataset.

Here is the chain of events that happen when I click in a button that
will call Post for the dataset:

#0 TFIXEDFORMATDATASET__SETFIELDDATA((^TFIELD) 0x14f358, (POINTER)
0x6d430, (TFIXEDFORMATDATASET) 0xbede0) at sdfdata.pp:674 <<<---------
String is cutted to 255 chars
#1 DB_TDATASET_$__SETFIELDDATA$TFIELD$POINTER$BOOLEAN at :0
#2 DB_TFIELD_$__SETDATA$POINTER$BOOLEAN at :0
#3 DB_TFIELD_$__SETDATA$POINTER at :0
#4 DB_TSTRINGFIELD_$__SETASSTRING$ANSISTRING at :0
#5 TDBDRAWINGCODEMEMO__UPDATEDATA((^TOBJECT) 0x159490,
(TDBDRAWINGCODEMEMO) 0x10a750) at dbcomponents.pas:340 <<<------
String is correct
#6 TFIELDDATALINK__UPDATEDATA((TFIELDDATALINK) 0x159490) at dbctrls.pp:1312
#7 DB_TDATALINK_$__UPDATERECORD at :0
#8 TDBDRAWINGCODEMEMO__EDITINGDONE((TDBDRAWINGCODEMEMO) 0x10a750) at
dbcomponents.pas:372
#9 TCONTROL__MOUSEDOWN(MBLEFT, [SSLEFT], 8, 13, (TCONTROL) 0x11d280)
at control.inc:3219
#10 TCUSTOMSPEEDBUTTON__MOUSEDOWN(MBLEFT, [SSLEFT], 8, 13,
(TCUSTOMSPEEDBUTTON) 0x11d280) at speedbutton.inc:635

-- 
Felipe Monteiro de Carvalho



More information about the fpc-devel mailing list