Article View: comp.lang.pascal.delphi.databases
Article #78Re: Some 3-tier questions...
From: G Vincent
Date: Mon, 25 May 1998 00:00
Date: Mon, 25 May 1998 00:00
49 lines
2965 bytes
2965 bytes
Mark Stephens <marks@stconsult.co.nz> wrote in article <01bd8792$dfb1fa40$081260cb@actrix.gen.nz.actrix.gen.nz>... > Hi. I have a fairly complex application that is currently two-tier, ie > database sits on a server and the client application talks to it through > BDE on the client. > > I want to move the application to a 3-tier structure, and I've examined the > sample Delphi programs in some depth and tried to delve my way through the > on-line help about COM, multi-tier and all that. I understand the > principles but I still don't understand the technicalities of it. > > I have some questions about it: > 1. My application currently dynamically constructs SQL code into TQuery > objects, where the tables, selection criteria and sort order are all > potentially dynamic. How can I do this using TClientDataSet - it appears to > have no way to send SQL to the data broker? > 2. How do you create the server so it is registered? I tried creating a > server, created a few datasets, a provider etc, all as on the sample, but I > couldn't find out how to create the text library that appears to be > automatically generated in the sample. > > Are there any further resources out there about how to construct 3-tier > database structures - it would seem to me the demand for such applications > is going to dramatically increase in the not too distant future, and > there's not much information about how to do it. > No kidding there isn't much information on it! We found that out soon enough. However, now that I know what I do, looking back in the D3 help pages, it is all explained - just not in layman's terms. There is an example on how to set up the application server (do a search in the help under 'Application Server'). The server is registered when you execute it for the first time. The client sends the SQL, via the TRemoteServer (or TMidasConnection) to a TQuery object on the server. This TQuery is 'made visible' to the client (that's the simplest way to explain it) - how to make it visible is explained in the help. The TRemoteServer has a property call AppServer which points to this interface. Once you have the architecture in place, it's all pretty simple. Good luck - you may need it :-) - Graeme Vincent
Technical Details
Message-ID:
<01bd87a7$f6aad180$5cb822c4@gvincent>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<01bd8792$dfb1fa40$081260cb@actrix.gen.nz.actrix.gen.nz>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: ffff5,44ff878243bbe501 X-Google-Attributes: gidffff5,public X-Google-Thread: f6386,44ff878243bbe501 X-Google-Attributes: gidf6386,public From: "G Vincent" <look@header.for.email> Subject: Re: Some 3-tier questions... Date: 1998/05/25 Message-ID: <01bd87a7$f6aad180$5cb822c4@gvincent> X-Deja-AN: 356252497 Content-Transfer-Encoding: 7bit References: <01bd8792$dfb1fa40$081260cb@actrix.gen.nz.actrix.gen.nz> Content-Type: text/plain; charset=ISO-8859-1 Organization: An Internet Solution Customer Mime-Version: 1.0 Newsgroups: comp.lang.pascal.delphi.databases,borland.public.delphi.database.multi-tier