Application for gathering data

Posted on 2011-02-23
Last Modified: 2012-05-11
I need some solutions for these questions:
1. Is it possible to create Web server to collect information from remote devices by using Delphi 2010 Professional. the idea is to send data from many sources to one point and allow specific customer to check these data.
2. If it`s possible to create such app which components should i use.
3. what do i need besides Delphi to create such app.
Question by:Vaalar
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
  • +1
LVL 32

Assisted Solution

by:Ephraim Wangoya
Ephraim Wangoya earned 100 total points
ID: 34966395

You can create a delphi database application and access it through terminal service, (RDP, CITRIX etc) You can use data control components which would include ADO, DBExpress, AnyDAC, there are quite a number. For the back end database, you have a couple of choices, SQL Server or ORACLE (Commercial). There are also free databases such as Firebird and MySQL
(Just dont get into desktop databases like Paradox or MS Access)

Having said that, I would prefer to create a Web application using Delphi PRISM or C#. This would be more robust in my opinion.
Again the choices for backend databases are yours to make.
LVL 19

Expert Comment

ID: 34967606
Make use of web services and sql database...

A good book to learn about implementing web services with Delphi 2010 is...

Delphi 2010 XML, SOAP and Web Services courseware manual

For a free SQL database I recommend SQLLite...
LVL 37

Assisted Solution

by:Geert Gruwez
Geert Gruwez earned 400 total points
ID: 34967715
i think thommy and ewangoya have the concept in the reverse order
you want a tool for monitoring remote devices/programs ?

well, i just started on something like this:
my goal is to get alerts about all databases i monitor in 1 central location

my concept:
On a remote server: X
Service running on a remote machine which gather systeminfo (like database running)
and stores this information locally
With TIdTcpCmdServer component which can return all the retrieved info

On a local server: Y
Service (or standard delphi program) running, connected with 1 TIdTcpClient per remote computer X to the TIdTcpCmdServer
Also contains a TIdTcpCmdServer for returning information to visual clients
and possibly a database backend for storing a history of all data

On a client computer: A
Standard delphi app with TIdTcpClient connected to local server Y TIdTcpCmdServer
on this app, you then visualize all retrieved info from the Y server

this is my concept i am trying to setup.
But that would work (and it requires a lot :(  )

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 34967881
Thank you for your replies, I`ve made a simple scheme which shows what i want to do.
I hope it will explain everything

Author Comment

ID: 34968047
I have also question about REST Server - can I use it for my idea?
LVL 37

Expert Comment

by:Geert Gruwez
ID: 34974510
i'm just checking bob swart's video tutorial's ... on embarcadero
i'm gonna follow that approach ... that REST has popped up there too :)

Author Comment

ID: 35002562
Hi Geert,
I`ve spent a couple days with tutorials - i think that the best option is to use Delphi Prism as Ewan said in first reply. Of course as always the money are main problem. I`ll try to dig deeper and try to solve my problem and idea with D2010 prof. We will see am I able to do this.
I have seen the bob tutorials - great job - the problem is connected with a large number of solutions and possibilities - I have no idea what should i choose.
I`m trying to create a cgi module for server - it will allow me to configure the gprs modems to send data up there.
LVL 32

Expert Comment

by:Ephraim Wangoya
ID: 35237414

We have already pointed the Author in the correct direction and the information given in this thread should be a good guide towards a proper solution be it in Delphi PRISM, C#
LVL 37

Accepted Solution

Geert Gruwez earned 400 total points
ID: 35238759
i think you will not be able to write 1 piece of software to accomplish all
you'll have to come up with a protocol first (on top of another protocol like tcp/ip) to send info back and forth

next you'll have to try and write a piece of software which implements the protocol on a type of device
once you have 1 or 2 working you can extend

i am assuming that you can install software on the remote devices
if not then you will need to figure out how the remote devices communicate and write the piece of software on a place where you can install

i am doing something similar > but with only oracle servers
on a oracle server:
  a service is running to check aspects like disk free space, memory, database stats, etc
    it contains a protocol for sending back info upon request
  a secondary service is running a central machine periodically gathering data from the remote servers
    it caches all the latest data and writes history to it's local database
    > setting up a webserver to provide a webpage shouldn't be too difficult
  a reporting tool (just an exe) on my pc (or on another) connects to the central service and retrieves the data
    the reporting tool can also send requests for the latest info
for this i use the TSQLConnection with the DBXconnection
i only have to communicate with windows servers
if they ever come up with unix/aix/linux i'll have to write something to run on those machines with respect to the protocol
once that is achieved i can use my existing network for information

looks like you don't have an an easy task ... a real challenge
if you separate the tasks in layers, you should be able to get something working ...

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
update joined tables 2 74
Delphi: making a BW image transparent 10 137
Delphi, TImage, Png 2 56
TAction.OnAfterExecute? 2 31
This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
In a recent question ( here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
In an interesting question ( here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question