Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 10 of 15 total
Thread Need more information
Wed, Dec 28 2011 2:31 PMPermanent Link

Godfrey

Ultimatesoft

Hi

I have no experience developing web apps or services.  I am looking for a visual, Delphi like, development package
and EWB sounds like the one.  My problem is most of the apps I need to develop, will connect to a database.
I hear that EWB will be able to connect to a database in the not to distant future, but I will have to develop
web services to supply it with the data.  Is this so or is there some way of connecting directly to the database?
Wed, Dec 28 2011 4:12 PMPermanent Link

Walter Matte

Tactical Business Corporation

>>I have no experience developing web apps or services.  I am looking for a visual, Delphi like, development >>package
>>and EWB sounds like the one.  My problem is most of the apps I need to develop, will connect to a database.
>>I hear that EWB will be able to connect to a database in the not to distant future, but I will have to develop
>>web services to supply it with the data.  Is this so or is there some way of connecting directly to the database?

Godfrey:

You will instantly be up and running with EWB because if has a familiar Delphi feel and you will be coding in object pascal.

But Web Apps (Rich Internet Applications, Browser Based..) what ever you want to call these things that run in browsers, and not natively on a desktop, need a different approach.  A persistent database connection would not be recommended.  The use of a middle tier (SOAP or other server) looking after the physical database and probably some logic, and no doubt your reporting (as it would create PDF's and send them back...) can be completely coded in Delphi and are easy to do with tools like RealThinClient.

Walter
Thu, Dec 29 2011 12:37 AMPermanent Link

Raul

Team Elevate Team Elevate

Godfrey,

Based on some preliminary info Tim is planning to add native support for
this in the next EDB version (version 3). It likely just means that EDB
Server will have built-in web server with generic data layer access
(submit query get data back as EWB dataset component). EWB is still
pre-release and EDB v3 is not coming til sometimes in 2012 so this is
not immediately useful but idea of integrating these 2 product more
tightly does make sense.

Meanwhile you do need to create web services layer yourself that returns
the data in JSON or similar supported format. Depending on the edition
of delphi you have you can use datasnap or any 3rd party components to
create a web server (indy http server for example) that can serve up
your data from database.

Raul



On 12/28/2011 2:31 PM, Godfrey wrote:
> Hi
>
> I have no experience developing web apps or services.  I am looking for a visual, Delphi like, development package
> and EWB sounds like the one.  My problem is most of the apps I need to develop, will connect to a database.
> I hear that EWB will be able to connect to a database in the not to distant future, but I will have to develop
> web services to supply it with the data.  Is this so or is there some way of connecting directly to the database?
>
Thu, Dec 29 2011 9:17 AMPermanent Link

Godfrey

Ultimatesoft

Raul wrote:

Godfrey,

Based on some preliminary info Tim is planning to add native support for
this in the next EDB version (version 3). It likely just means that EDB
Server will have built-in web server with generic data layer access
(submit query get data back as EWB dataset component). EWB is still
pre-release and EDB v3 is not coming til sometimes in 2012 so this is
not immediately useful but idea of integrating these 2 product more
tightly does make sense.

Meanwhile you do need to create web services layer yourself that returns
the data in JSON or similar supported format. Depending on the edition
of delphi you have you can use datasnap or any 3rd party components to
create a web server (indy http server for example) that can serve up
your data from database.

Raul


Thanks for the reponses

I have Delphi XE2 pro so I will probally have to go the 3rd party route.  What 3rd party components are the easiet to get started with.  Can you give me some pointers, I do not even know where to start.

Godfrey
Thu, Dec 29 2011 10:59 AMPermanent Link

Raul

Team Elevate Team Elevate

I think just to get your feet wet i suggest use the Indy http server
that is included in delphi - no extra cost.

3rd party components come in handy to create this stuff more rapidly but
you can do everything with just http server like indy one here.

As a quick start i did a relly trivial project below - note that this is
not database related but just shows how to create a super basic web
service and get data back in EWB. Code below is just something i wrote
in email client so might not actually compile (but should be correct).

1 create a web service. For now let's just use REST style web service
that returns 2 responses:
- if you query URL "/TIME" on the server it returns current date and time
- if you query anything else it says "hello world"

1a. create a new VCL form application
1b. drop a Indy tidHTTPServer component on the form
1c. add event handler for CommandGet and add following:
  if (AnsiPos('/TIME',uppercase(ARequestInfo.URI))>0) then
    AResponseInfo.ContentText := DateTimeToStr(now)
  else
    AResponseInfo.ContentText := 'Hello world!';

1d. in formcreate set web server active : idHTTPServer1.Active := true;

Now you have a basic web service that listens on port 80 - make sure you
have nothing else listening on this port or otherwise change port of the
tidHTTPServer component - and supports the 2 responses we defined.
if you run a web browser and enter http://localhost you should see hello
world. "http://localhost/time" should give you date/time back.

2. create a basic EWB client.
2a. do a new ewb project with forms support
2b. drop 2 buttons, memo box and TServerRequest on the form
2c. for button 1 add OnClick code like this:
   ServerRequest1.URL := 'http://localhost';
   ServerRequest1.Method := rmGet;
   ServerRequest1.Execute;
2d. for button 2 add code like this
   ServerRequest1.URL := 'http://localhost/time';
   ServerRequest1.Method := rmGet;
   ServerRequest1.Execute;
2e. for TServerReqest add OnComplete handler
   Memo1.Lines.Add('Response='+Request.ResponseContent.text);

At this point you have a very simplistic but fully functional web
service and EWB browser client that will connect to server, get the
response and print it. Obviously you can easily change the server to
support more functions (in this case since i'm using REST you would just
use different urls but obviously you can also instead of rest and get
command use post and send xml or other custom data even). Web server
code is delphi so you can access database and build any kind of response
you want. Formatting return data in json is likely best way to go as
then you could just load it into the EWB dataset and use dataset instead
of parsing it out yourself from response).

Hope this helps a bit and i'm sure others will post as well

Raul


> I have Delphi XE2 pro so I will probally have to go the 3rd party route.  What 3rd party components are the easiet to get started with.  Can you give me some pointers, I do not even know where to start.
Fri, Dec 30 2011 5:08 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Raul


How about posting it as a demo to the binaries?

Roy Lambert
Tue, Jan 3 2012 4:10 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Godfrey,

<< I have no experience developing web apps or services.  I am looking for a
visual, Delphi like, development package and EWB sounds like the one.  My
problem is most of the apps I need to develop, will connect to a database.
I hear that EWB will be able to connect to a database in the not to distant
future, >>

Actually, it can connect to a data source now and then navigate the
resulting dataset sent back from the web server as JSON.  It simply can't
edit the data and send the edits back to the data source yet.

<< but I will have to develop web services to supply it with the data.  Is
this so or is there some way of connecting directly to the database? >>

You'll always have to use some sort of text-based exchange format for the
data. Right now, the default (and only) format being used is JSON, which is
simple to deal with in any back-end web application.  Once you see some
demos, you'll see that it is a very simple process to move data back and
forth.

--
Tim Young
Elevate Software
www.elevatesoft.com

Fri, Jan 6 2012 3:13 AMPermanent Link

Godfrey

Ultimatesoft

Tim

Sounds good.  Cant wait to get my hands on it.

Will the database connectivity be limited to your products or will we be able to connect to others.  The hosting
service I subscribe to only has MySql and MS SQL

Godfrey
Fri, Jan 6 2012 3:39 AMPermanent Link

Steve Gill

Avatar

Hi Godfrey,

<< Will the database connectivity be limited to your products or will we be able to connect to others.  The hosting service I subscribe to only has MySql and MS SQL >>

I may be wrong but AFAIK it will be able to connect to most databases.  I plan to use it with MySQL.

Steve
Fri, Jan 6 2012 3:17 PMPermanent Link

Walter Matte

Tactical Business Corporation

Steve Gill wrote:

Hi Godfrey,

<< Will the database connectivity be limited to your products or will we be able to connect to others.  The hosting service I subscribe to only has MySql and MS SQL >>

I may be wrong but AFAIK it will be able to connect to most databases.  I plan to use it with MySQL.

Steve
Page 1 of 2Next Page »
Jump to Page:  1 2
Image