On Thu, May 3, 2012 at 1:01 PM, Sven Barth <pascaldra...@googlemail.com> wrote: > On 03.05.2012 15:40, Marcos Douglas wrote: >> >> On Thu, May 3, 2012 at 10:01 AM, LacaK<la...@zoznam.sk> wrote: >>> >>> Marcos Douglas wrote / napísal(a): >>> >>> On Thu, May 3, 2012 at 2:52 AM, LacaK<la...@zoznam.sk> wrote: >>> >>> >>> I saw the TBufDataSet.ApplyUpdates and it calls ApplyRecUpdate. >>> The ApplyRecUpdate just raises an exception... >>> >>> >>> >>> Yes it is virtual method, which can be overriden by descendants >>> >>> >>> >>> >>> There is some implementation, in some place, to work with ApplyUpdates >>> (like a Delphi's TClientDataSet)? >>> >>> >>> >>> Yes, see in sqldb.pp at TCustomSQLQuery >>> >>> >>> Yeah... I did not know that the TCustomSQLQuery descended of >>> TCustomBufDataSet. >>> Well, I tried to use ApplyUpdates with TSQLQuery and TMSSQLConnection >>> (SQLServer). >>> I put a DBGrid, DataSource... blablabla... I edited the record on the >>> Grid and click in Apply button (ApplyUpdates(0)) >>> >>> ERROR 20019: >>> "Attempt to initiate a new SQL Server operation with results pending." >>> >>> On the internet I found this: >>> http://www.sybase.com.br/detail?id=897#1825 >>> >>> I don't have other SGBD now to test so, I would like to know if this >>> is a problem in TMSSQLConnection or in ApplyUpdates? >>> >>> >>> >>> Yes it is a known problem (also in ODBC), read also in >>> sqldb/mssql/readme.txt: >>> - DB-Library error 10038 "Results Pending" - set >>> TSQLQuery.PacketRecords=-1 >>> to fetch all pendings rows >>> HTH >>> -Laco. >> >> >> You're right, but I have others problems: >> I changed PacketRecords=-1 and test again. No errors, but didn't >> commited (I'm seeing the SQL Profiler). >> So, I used: >> SQLQuery1.ApplyUpdates(0); >> SQLTransaction1.Commit; >> >> Worked, using Commit, but the DataSet was closed (?) >> >> The SQLQuery properties are: >> UpdateMode = upWhereKeyOnly >> UsePrimaryKeyAsKey = True >> >> Maybe there is no problem and I just have to know how the SQLdb works. >> Could you help me on this? > > > If you don't want the dataset closed then you must use CommitRetaining (or > RollbackRetaining for Rollback). > > Regards, > Sven
Yeah, I remember now... =( I already talked with Laco about this months ago (Laco, sorry my forgetfulness) Sven, thanks for the info. BTW, worked perfectly. Thanks. Marcos Douglas _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal