 <p>This may occur if you started transaction explicitly. Every explicit transactions must be finished explicitly. So, if your connection is open explicitly, you should close it explicitly.</p> <p>You may use :</p> <pre><code>//Commit(Stop) the transaction before open an other connection if Dm.Transaction.InTransaction then dm.Transaction.Commit; </code></pre> <blockquote> <p>Note: In applications that connect an InterBaseExpress dataset to a client dataset, every query must be in its own transaction. You must use one transaction component for each query component.</p> </blockquote> <p><a href="http://docwiki.embarcadero.com/Libraries/XE8/en/IBX.IBDatabase.TIBTransaction" rel="nofollow">http://docwiki.embarcadero.com/Libraries/XE8/en/IBX.IBDatabase.TIBTransaction</a> </p>