<html><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
</head><body bgcolor="#FFFFFF" text="#000000"><br>
Disconnected record sets are nothing new and there's no reason to not 
use them other than the usual one(s) of "as long as it is appropriate in
 any particular case and there simply isn't enough information here to 
say whether it may be inappropriate in this one.&nbsp; :)<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.&nbsp; 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;" 
cite="mid:012401ced8c6$7fc73910$7f55ab30$@gmail.com" type="cite">
  <div style="margin:30px 25px 10px 25px;" class="__pbConvHr"><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
 photoaddress="jscoulter@gmail.com" photoname="Jeremy Coulter" 
src="cid:part1.09070505.01030300@deltics.co.nz" 
name="compose-unknown-contact.jpg" height="25px" width="25px"></div>   <div
 
style="display:table-cell;white-space:nowrap;vertical-align:middle;width:100%">
           <a moz-do-not-send="true" href="mailto:jscoulter@gmail.com" 
style="color:#737F92 
!important;padding-right:6px;font-weight:bold;text-decoration:none 
!important;">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;" 
__pbrmquotes="true" class="__pbConvBody"><meta content="text/html; 
charset=ISO-8859-1" http-equiv="Content-Type"><meta content="Microsoft 
Word 15 (filtered medium)" name="Generator"><style>&lt;!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--&gt;</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--><div class="WordSection1"><p 
class="MsoNormal">Hi all.<o:p></o:p></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.<o:p></o:p></p><p class="MsoNormal">As part of this I am 
splitting stuff up into database, business and GUI layers &#8211; 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 &#8220;does something&#8221; with the 
recordset, just looping it and printing stuff to a listbox at the 
moment.<o:p></o:p></p><p class="MsoNormal">When its done, it frees the 
object etc.<o:p></o:p></p><p class="MsoNormal">Can anyone see anything 
wrong with this approach? Or things I should be aware of etc?<o:p></o:p></p><p
 class="MsoNormal"><o:p>&nbsp;</o:p></p><p class="MsoNormal">Thanks, Jeremy<o:p></o:p></p><p
 class="MsoNormal"><o:p>&nbsp;</o:p></p></div><div>_______________________________________________<br>NZ
 Borland Developers Group - Delphi mailing list<br>Post: 
<a class="moz-txt-link-abbreviated" href="mailto:delphi@listserver.123.net.nz">delphi@listserver.123.net.nz</a><br>Admin: 
<a class="moz-txt-link-freetext" href="http://delphi.org.nz/mailman/listinfo/delphi">http://delphi.org.nz/mailman/listinfo/delphi</a><br>Unsubscribe: send an 
email to <a class="moz-txt-link-abbreviated" href="mailto:delphi-request@listserver.123.net.nz">delphi-request@listserver.123.net.nz</a> with Subject: unsubscribe</div></div>
</blockquote>
</body></html>