Hi Bruce,
Yes it has been quite a learning process... however the further I went the
further I realised how easy it is to compartmentalise the work.
If you start with the premise that DataPerfect only ever exports XML. you
only need to know very basic XML, ie elements, and attributes and the
general design of the structure, very simple work. The PERL scripts are
somewhat generic, and usually from one interaction (script) to another I am
usually just changing the name of the DataPerfect report number and then
renaming the script, and as I said it could for many things all come from
the script as to which report to run, although that thought does send
nervous chills up my spine.
But back to the compartmentalising. You can readily get a web designer to
design templates and the page, you just need to tell them to make all of the
links to resources on the page absolute HTTP references (eg
http://www.domain.com/eimage.icon.gif rather than icon.gif. From there if it
is not in XHTML (you should have asked the web designer for that in the
start).
From then it just needs an XML programmer to write the XSLT from the
DataPerfect XML, and from there you might have the core of the application.
If you write the DP application to export the HTML then any maintenance to
the HTML needs to be done in DataPerfect. I am no web designer, when I
design web pages there are usually no graphics, and no pretty things, no
clever interface things, so I would be far better letting someone skilled to
do that part of the project. Getting an web page designer even a good one is
really a pice of cake these days.
For me this project was a voyage of discovery, so now I know what is
possible, it will not necessarily mean that I will be the one to do it.
With regards to your Firestorm application one thing which worried me about
writing back to the database, was that at the stage of its development when
I tried it, it meant that automatic features like Keep A Total, Auto-Create
Record (thru link), Cascade-Delete, Cascade-Update did not work. My
attraction to the DP Silent mode was that you are using all the standard
features of DP, just that you access them via reports rather than via the
desktop. Or perhaps I have missed something in Firestorm...
Quite apart from wheither using Firestorm or DataPerfect Silent Mode, as I
said before the advantage of XML is that the application can totally be
separated into the application and the presentation. It would be possible to
create a generic application, that you could give to web designers (with XML
skills) just the the details of the posts, and the scheme of the return XML.
If a client wanted to update the look and feel of the website and web
application every 3 months that would be no deal at all for the DataPerfect
programmer.
By the way, I tried using the DP-web.net site, and I got totally screwed up,
I tried to SSH into it so I could clean up my mess and see what was
happening, but the login wouldn't let me there. Is there a trick to that?
I am looking through your notes and I will give some of the stuff you have
there a try.
Thanks
Brian
----- Original Message -----
From: "Bruce Conrad" <[EMAIL PROTECTED]>
To: "DataPerfect Users Discussion Group" <[email protected]>
Sent: Thursday, June 15, 2006 1:29 AM
Subject: Re: [Dataperf] Web enabling DataPerfect
Hi Brian,
Thank you for this exhaustive documentation of your work. I especially
enjoyed the Tips page. It is impressive that you are able to form a
business around it. The new languages and systems you have learned form
quite an impressive list: DataPerfect, t-log format, CGI and HTTP, Perl,
HTML, CSS, XML, XSL, XPath, XHTML, Flash, Apache, Linux, DOSEMU, MIME,
PDF, sendmail, etc.
To use Firestorm effectively, one would need to learn just DataPerfect,
CGI and HTTP, C, Firestorm, HTML (or preferably XHTML). And, I can see
that CSS would also be very useful. But the C programming language is by
far the hardest of these, which gives your approach great value.
Just over a year ago, I began work on DP-web, which would allow reducing
the list of needed languages to DataPerfect, t-log format, and HTML (or
XHTML). To do fancier things, one would need to learn CSS, MIME, and
sendmail, and possibly the XML, XSL, XPath family as well.
DP-web is provides a single Perl script similar to yours, that uses DOSEMU
to run DP in silent mode. The Perl script however is universal. It depends
on a DP database to hold the information that varies from one of your Perl
scripts to another, including a mapping from a short name to the report
number(s) to run. But, the user of DP-web would not have to understand the
Perl/Firestorm/DOSEMU portion of the system.
Really, I think the hardest part in doing this is changing one's point of
view from the desktop to the Internet. As you point out, it is easier to
do it for a new application than to retrofit an existing one. And, much of
the work is in designing the web pages themselves, and the relationships
between them. DataPerfect makes the analogous thing on the desktop (panels
and the relationships between them) very easy. I have not found any web
authoring tools that make this easy for the Internet.
My own "flagship" web application (a joint venture with Tony Perez) is
"Know & Enjoy Mexico" (KEM), went into operation 9 years ago. It is based
on an existing DP application, belonging to Tony, who did all of the web
page design, including the relationships between the different kinds of
pages. This made my job, of generating each type of page from the
database, much more straightforward.
I have implemented a few other applications using Firestorm, and it is
quite a lot of work. Also, as you point out, changes are very difficult to
realize. The portion of the work done in DataPerfect is actually very
easy. It is the HTML coding of the web pages, and the writing of C
programs to generate them which is most challenging.
One direct comment is to answer your questions about Firestorm in part 7,
the paragraph on AJAX. It is very possible to use it with an application
where the STR file is changing. The KEM project has undergone several
database structure changes, but it is rather difficult to manage these
changes, so I resist them. Other Firestorm applications, including DP-web
itself, use writing to the database extensively, and this works very well.
KEM uses it to count daily accesses to each type of page. BTW, the scripts
used to return text data to the AJAT sample you mention are very simple
Linux shell scripts that make use of the Firestorm command line interface.
Many thanks again for sharing your work with all of us.
Best wishes,
Bruce
KEM is at http://www.knowmexico.com/
DP-web is at http://DP-web.net/
Firestorm is at http://sanbachs.net/firestorm/
Brian Hancock wrote:
Hi Everyone,
I promised some time ago that I would document the work that I have been
doing with web enabled DataPerfect applications.
Because I was involved with a soccer club I have had an ideal test bed to
try out DataPerfect. This is not just producing static webpage but is
online interactive with the database.
Using DataPerfect as a backend web application may not be everyone cup of
tea, but it offers a myriad of opportunities if you are willing to give
it a go.
I started writing the details up as an email and realised it was way to
complex so I have set up a few web pages that tells the story. The
website it refers to is at: http://www.brileigh.net/bws and the story is
at http://brileigh.net/bws/story
I hope people can give me some feedback.
Thanks
Brian
_______________________________________________
Dataperf mailing list
[email protected]
http://lists.dataperfect.nl/mailman/listinfo/dataperf
_______________________________________________
Dataperf mailing list
[email protected]
http://lists.dataperfect.nl/mailman/listinfo/dataperf
_______________________________________________
Dataperf mailing list
[email protected]
http://lists.dataperfect.nl/mailman/listinfo/dataperf