Subject Re: [IBO] Bug IBO's version 4.5.Ai with BLOBs fields
Author Jason Wharton
For me to take action on this, because my time is very critical while I am
trying to finish D2009 support, you would need to send me a simple sample
app demonstration this problem.

Would you be willing to upgrade to a later version of IBO if that fixes this
problem?

Jason

----- Original Message -----
From: "cezinha_tj" <cesar@...>
To: <IBObjects@yahoogroups.com>
Sent: Saturday, October 03, 2009 7:23 AM
Subject: [IBO] Bug IBO's version 4.5.Ai with BLOBs fields


> Hey buddies! Apparently I found a bug in 4.5.Ai IBO version about use
> of BLOBs fields. Consider the table bellow: CREATE TABLE
> "OBSERVACOES"
> (
> "OBS_CODIGO" INTEGER NOT NULL,
> "OBS_NOME" VARCHAR(40) CHARACTER SET WIN1252 NOT NULL COLLATE
> PXW_INTL850,
> "OBS_OBSERVACAO" BLOB SUB_TYPE TEXT SEGMENT SIZE 80 CHARACTER SET
> WIN1252 NOT NULL,
> PRIMARY KEY ("OBS_CODIGO")
> ); insert into observacoes (obs_codigo, obs_nome, obs_observacao)
> values (1, 'observacao 1, 'observacao 1'); insert into observacoes
> (obs_codigo, obs_nome, obs_observacao) values (2, 'observacao 2,
> 'observacao 2'); insert into observacoes (obs_codigo, obs_nome,
> obs_observacao) values (3, 'observacao 3, 'observacao 3'); Let's
> suppose a form with: 1 TIB_Query called qry 1 Grid showing all qry
> fields 1 Button with the source code bellow Now see the code bellow:
> qry.Append;
> qry.FieldByName('obs_codigo').AsInteger := 4;
> qry.FieldByName('obs_nome').AsString := 'observacao 4';
> qry.FieldByName('obs_observacao').AsString := 'observacao 4';
> qry.Post;
> qry.Append;
> qry.FieldByName('obs_observacao').AsString := 'teste xxx';
> qry.Cancel;
> When I run the program above, it shows in the grid all content of
> obs_observacao field, but, the SELECTED RECORD will show de content
> 'teste xxx' instead of the original content. The information is
> persisted correctly in the firebird. If you check the content of
> qry.FieldByName('obs_observacao').AsString you will see 'teste xxx' I
> downloaded the IBO version 4.7 eval and this problem doesn't happen.
> My conclusion: There is a bug in the version 4.5.Ai where the internal
> buffer of the IBO "loose it self" (I'm sorry... my English isn't good)
> where receives an Apend, a change in the BLOB field and the process is
> canceled. I think that IBO's buffer is with all BLOBs storeds correctly,
> but, the cursor's buffers is keeping a garbage. Possibles solutions:
> a. I'd like to buy the new IBO's version, but, I'm afraid because I
> will have to change thinks so much in my ERP to became compatible with
> 4.7 (keyrelations and keylinks for example). One day I will do this. But
> in this momment it is impossible. Someone knows if is there a version
> 100% compatible with 4.5.Ai that I can buy with this bug corrected?
> b. I can try to correct the bug in the IBO sources. But, telling the
> truth, I prefer don't do this. I had to read the source to find how to
> reproduce the bug and this took a long time from me. If someone colud
> send-me IB_Components.pas and IB_Controls.pas (version 4.7) maybe I
> could compare the sources e try to find a solution. c. If someone
> could show-me where I need to fix... It will be the best solution!
> Someone can help me? Please, undertand that I don't want a IBO
> pirated, ok?. I'm just not getting out! Thank's so much. Cezinhar
>