<div dir="ltr">Yeah Jolyon, thats right. Although I am going t be TRYING not to expose the GUI to the DB layer, and I think I can do that. However, at this stage I dont think I will be dropping ADO for awhile. And David, I will need to update the source data, but that will be via functions calling stored procs and then just reloading the data as needed. I still have a few things to work thru, but glad to know I am on the right track :-)  didnt want to get to the implementation stage and then go....&quot;opps...!&quot; :-)<div>
<br></div><div>Jeremy</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Nov 4, 2013 at 8:18 AM, Jolyon Smith <span dir="ltr">&lt;<a href="mailto:jsmith@deltics.co.nz" target="_blank">jsmith@deltics.co.nz</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div bgcolor="#FFFFFF" text="#000000"><br>
Disconnected record sets are nothing new and there&#39;s no reason to not 
use them other than the usual one(s) of &quot;as long as it is appropriate in
 any particular case and there simply isn&#39;t enough information here to 
say whether it may be inappropriate in this one.  :)<br>
<br>
One concern that may or may not be pertinent is that by directly 
exposing a component of your database layer it is effectively poking 
through the business layer and into the GUI layer.  Should you ever find
 yourself needing to abandon ADO in the future, your TADODataset cannot 
be replaced without impacting directly on the code in the business layer
 that works with it or the code in the GUI layer. <br>
<br>
<blockquote style="border:0px none" type="cite">
  <div style="margin:30px 25px 10px 25px"><div style="display:table;width:100%;border-top:1px solid #edeef0;padding-top:5px">         <div style="display:table-cell;vertical-align:middle;padding-right:6px"><img src="cid:part1.09070505.01030300@deltics.co.nz" name="1421f67406a54532_compose-unknown-contact.jpg" height="25px" width="25px"></div>
   <div style="display:table-cell;white-space:nowrap;vertical-align:middle;width:100%">
           <a href="mailto:jscoulter@gmail.com" style="color:#737f92!important;padding-right:6px;font-weight:bold;text-decoration:none!important" target="_blank">Jeremy Coulter</a></div>   <div style="display:table-cell;white-space:nowrap;vertical-align:middle">
   
  <font color="#9FA2A5"><span style="padding-left:6px">Mon, 4 Nov 2013 
07:57</span></font></div></div></div>
  <div style="color:#888888;margin-left:24px;margin-right:24px"><div><div class="h5"><div><p class="MsoNormal">Hi all.<u></u><u></u></p><p class="MsoNormal">I am in the
 process of redeveloping an existing application that has reached the 
end of its ability to add stuff nicely without breaking other bits of 
the code. Admittedly best practice was not always followed <span style="font-family:Wingdings">J</span> but its time to start version 2 
of the app.<u></u><u></u></p><p class="MsoNormal">As part of this I am 
splitting stuff up into database, business and GUI layers – on paper at 
the moment, and a thought occurred to me. In .Net which I sometime work 
in, you uses datasets which are basically connectionless, and I wondered
 if anyone can think why I would not take a similar approach. I am using
 ADO, and at the moment I have a test procedure that calls a stored 
proc, then passes back a TADODataset which is not connected to any 
database, connectionless, then this procedure “does something” with the 
recordset, just looping it and printing stuff to a listbox at the 
moment.<u></u><u></u></p><p class="MsoNormal">When its done, it frees the 
object etc.<u></u><u></u></p><p class="MsoNormal">Can anyone see anything 
wrong with this approach? Or things I should be aware of etc?<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Thanks, Jeremy<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p></div></div>
</div><div>_______________________________________________<div class="im"><br>NZ
 Borland Developers Group - Delphi mailing list<br>Post: 
<a href="mailto:delphi@listserver.123.net.nz" target="_blank">delphi@listserver.123.net.nz</a><br>Admin: 
<a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>Unsubscribe: send an 
email to <a href="mailto:delphi-request@listserver.123.net.nz" target="_blank">delphi-request@listserver.123.net.nz</a> with Subject: unsubscribe</div></div></div>
</blockquote>
</div>
<br>_______________________________________________<br>
NZ Borland Developers Group - Delphi mailing list<br>
Post: <a href="mailto:delphi@listserver.123.net.nz">delphi@listserver.123.net.nz</a><br>
Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
Unsubscribe: send an email to <a href="mailto:delphi-request@listserver.123.net.nz">delphi-request@listserver.123.net.nz</a> with Subject: unsubscribe<br></blockquote></div><br></div>