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
  • 3
  • 3
  • 2
  • +1
LVL 32

Assisted Solution

ewangoya earned 100 total points
Comment Utility

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

Comment Utility
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 36

Assisted Solution

by:Geert Gruwez
Geert Gruwez earned 400 total points
Comment Utility
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 :(  )


Author Comment

Comment Utility
Thank you for your replies, I`ve made a simple scheme which shows what i want to do.
I hope it will explain everything
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails


Author Comment

Comment Utility
I have also question about REST Server - can I use it for my idea?
LVL 36

Expert Comment

by:Geert Gruwez
Comment Utility
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

Comment Utility
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

Comment Utility

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 36

Accepted Solution

Geert Gruwez earned 400 total points
Comment Utility
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

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
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…
Here's a very brief overview of the methods PRTG Network Monitor ( offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

762 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

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now