Subject Re: [ib-support] Re: Crossed signals?
Author Joe Martinez
> Are you CERTAIN that BCB4 shipped with BDE 4.0? That is pretty
> incredible. The current BDE at the time BCB4 went out (last qtr 1999?) was
> either BDE v.5.1 or 5.1.1. If I recall correctly, the 5.1.1 fix followed
> quite swiftly upon the first major update of Delphi 4 and would have been
> available when BCB 4 came out. In any case, BDE went up to 5.2 with the IB
> 6.x driver...

Pretty sure. All of my developemnt machines have BCB4, and on all of them, if I go
into the BDE Administrator, and go to Configuration->System->Init->Version, it says
"4". So, the question is: Is this a problem? If so, is it possible for my clients
to get an updated copy of the BDE w/ SQL Links, without me having to buy another
Borland Enterprise product?

> Going back to your original "problem". Can you provide more info about it,
> what you are seeing that makes you think separate transactions are
> interfering with one another's updates?

Ok. First, these are not updates. They're inserts. Two people at different
machines are entering records simultaneously. These are inventory items for an
inventory control system. The two people will be entering completely separate
inventory items. One of them will be entering an item, and when they save it, the
record that they've just entered has the wrong part number, but the rest of the
fields will be correct. The bogus part number always will match the part number
that the person at the other computer was just entering. The application uses
TTable objects. It will do an Append(), then set the field values, and then do a
Post().

Another strange symptom that sometimes happens: Before doing the Append(), my app
will do a query to see if that key already exists. If not, it proceeds as above.
But sometimes, the Post() will fail with a key violation, even though the previous
query said the key wasn't there. The two people are working on completely separate
inventory items, so it's not a case of person 2 slipping in the record between the
query and the append.

-Joe