To use App Builder or not !!

Hi folks,

As a 'die hard' Progress Developer who started off with Progress V6 CHUI and has moved up through the various versions I'm now a full time V9 (soon moving to V10) GUI and WebWSpeed developer.

I've always defended the Progress App. Builder and the interfaces that it produces.

I'm, however, becominga more and more aware of how outdated the final GUI applications are beginning to look. To modernise the final products one has to invest more time and money on Active X's. I've dabbled with VB and find it can be easier to develop front-end applications (not the data access components) in particular, the fact that it automatically pops up lists of methods and attributes. In certain areas I also find that the App. Builder can be a little unstable and very occasionally prone to corrupting files.

Has anyone had any experience of using other front-end development tools, say, .net to interface into Progress databases. Do the applications look any better or does one still have to bolt on Active X's ? Does V10 Progress help in any way. How stable are the final applications ? I'm also particularly interested in using our existing App. Server code from other front-ends other than Progress.

My main concern is that by moving away from App. Builder we would lose the ability to write code very fast and seamlessly integrate the GUI elements with 4GL code. Other concerns include issues such as performance when, say, using ODBC or services.

Any comments from anyone who has gone down this path, is thinking of it or who is dead against would be greatly appreciated. Comments from PSC guys would also be of great interest.

Our current set up utilises App. Server and we have a mix of legacy CHUI applications, GUI clients and also use WebSpeed for a local intranet (which is gradually being extended to ane xtranet). We also have a couple of citrix servers which subsidaries connect to.

Think this would be an interesting thread for all of us to add our comments and respond accordingly. :)
 

lord_icon

Member
The UIB and now AppBuilder are great ADE's, why bother going the Active-X route?
PSC have some excellent widgets available all linked together with arguably the most efficient DB in the land. I am not a PSC / PRGS worker either!!
 

Casper

ProgressTalk.com Moderator
Staff member
Hi,

I know, not what you're asking for, but there are some samples of .net front ends posted on psdn:
http://psdn.progress.com/cgi-bin/codeshare.cgi/search_results.w?subcategory=19

Maybe something to look into and get a 'feel' of using .net as a front end.
Although I've heard there are some problems getting logged in :).

I haven't got any experience (yet) with other front ends but HTML and Progress 4GL GUI. I saw many demo's of .net front ends, though, which looked much better then the current progress front end. With .net it is possible to make really rich front ends. Turning site is that it's also a different discipline. Coming to the OO world is a major difference in develepment. Then again, company's like infragistics can make that part much easier.
You should go to PTW in Lissabon, quite some part there should involve .NET. (also a good opportunity to drink some beer :drink:, first one is on me ;-) )

Casper.
 
Thanks for that Casper. Will take a look. Good god me a die hard Progress 4Gl guy actually considering a Microsoft Front-End. I must be getting old -lol . :),
 

Kirmik

Member
I've played around with VB as a front end in the past and I have to say that the end result simply makes a Progress application look like windows 3.11 in comparison.
I dont think Progress will ever be able to compete with companies such as microsoft for the interfaces but I do believe the database is years ahead, which is probably why Progress now focus on the business logic and database system and give the developer the freedom of choice for the front end.
Until the introduction of OE10 there was not much point of trying to plug a pretty 3rd party interface onto a Progress application as you would find yourself stuck with using the SQL92 drivers to query the database (dodgey ground at best). The new Datasets make it easier and more efficient to consider 3rd party interfaces so now I dont think performance is the issue anymore - Just the overhead of learning another language.

Hope that helps
 

gcampbell

Member
The AppBuilder has been useful for 'drawing' UIs but for complex and/or beautiful interfaces you must go the ActiveX route (or with another UI route altogether).

The Appbuilder is very useful for building Business Applications .... which our sales people seem to forget. They think that gradient forms, transparent text etc are what make the product work .... no, these are what allow them to sell the product. But (in my opinion) the product should be able to sell itself without the fluff.

As for doing forward with the AppBuilder? For us, it is a big no. We are actually writing our own application development environment (written in Progress) that allows us to save the forms definition as an XML document. The code (with events and triggers etc) is stored in a separate procedure. By separating the UI from the BL, we will be able to create a render engine to produce the UI in any language we feel can adequately create the best looking interface. The business logic would remain the same ... regardless of the UI language used.

And, by building our own ADE, we can control the events/triggers/procedures and widgets/attributes that can be defined and/or used. This control is highly important to our management team since it ensures consistent coding standards across our product.

Myabe I'm digressing .... what was the original post about?
 

vdennis

Member
I have heard, (you know how that goes,) that in later releases of OE10 that you will see the GUI have a more XP type view.
-Dennis-
 

gcampbell

Member
In V9, you can already get an XP look-and-feel by specifying a manifest.xml file for the prowin32.exe. Search the Progress KBase for manifest.xml to see how to set it up.

Later,
Gordon
 

vdennis

Member
Thanks for the info. I'll file this one away. We are switching 10.0B in about 2 months, then 10.1 when it comes out and has been 'debuged'. For front ends, I think .NET is going to be the winner.

-Dennis-
 

Casper

ProgressTalk.com Moderator
Staff member
Maybe,

But there are is also some interesting stuff with the next windows release, now called longhorn. There is something called XAML, an XML-ish document in which you can define interfaces.
Also very interesting to follow is new stuff what may or may not be releaesed in further Open Edge releases which makes use of SWT. (Standard widget toolkit). With SWT you can make interfaces with OS native look and feel.

regards,

Casper.
 
Not having used .Net, other than giving it a cursory look-see, I'd be interested to know where this leaves 'normal' Progress widgets, can you still mix-and merge, a la ActiveX?

More pertinently for us here, how do ADM2 front ends fit in? I presume it's a small matter to put .Net components on a Progress window, but I would also presume you can't create a front-end in .Net, and use Smart Objects within.

It's all very well to seperate Front End/Business logic, but the whole point to me of using progress is the ease with which the two can be linked using the existing framework.

Do we have to forgo these advantages by developing the Front End in (say) Visual Studio.Net? Or is all the excitement about using .Net components within 'normal' Appbuilder front ends?

ie. To have the full advantage of .Net mixed with Progress Smart Objects, do we still have to develop the front end in App Builder?



Lee
 

vdennis

Member
I have attended several Progress Reach Your Technical Peak sessions for the past 3 years. What Progress is doing is make it easier for non-progress applications access and run .p's . This is a good thing/bad thing. The 'Good Things' are obvious, the bad not. I am worried that we will see little improvement ADM and SmartObjects but that is yet to be seen. Keep your eye on Data-Sets, there is a big push for that in OE10.
 

Protrack

New Member
When using .NET with a Progress DB are you all using an ODBC driver or have Progress or a child party come up with a more up to date method of accessing the db (ADO for example). Also does anyone have any other example of using .NET with Progress other than the ones on PSDN? Unfortunately our maintenance has expired and I am unable to access those.

Many thanks.
 

vdennis

Member
There are 'black boxes' that can be placed inbetween the user and db that will do the conversion. All from Progress and all cost money. OE10 is making a lot of changes to make this a part of their software, depending on what you have now. I think you can still get the slide shows on the Reach Your Techinal Peak stuff, and I know they are offering web seminars as well.
 
Interesting

Thanks guys,

This is giving alot of food for thought. Many of the points being raised are my hopes/conerns as well. I found of particular interest the comments about ODBC alternatives from .net. We have a small number of users who we allow to carry out ODBC extracts from Excel spreadsheets, etc., and although the performance is quite acceptable I'd be hesitant to actually have all our GUI front-end applications (which drive our business) using ODBC. Also we do not allow writing to the database via ODBC. Is anyone out there using .net with ALL access
to the database carried out by ODBC ?? If so, any issues we should be aware of please ?

I've been considering replacing our Progress Front-End's with, say, .net, but, if VB10 is improved then it may be that progerss now offers me what I want. After all by going to .net (as one guy pointed out) we do lose the seamless integration between the interface and the 4GL/database.


Thanks.
Take care.
 

vdennis

Member
I may be wrong, but I don't believe that in using, say .net, you need ODBC. The examples I saw would have a .net application call a progress .p with I/O elements. This would pass throught the 'black box' connection to the app-server, which would run the .p and then pass then results back to the .net. ODBC was never mentioned. This would work for any program that is supported by the 'black box'. Hope that helps.
-Dennis-
 
Thanks Deniis.

However, (being unfamiliar with .net) how does it call the progress .p's please - Could you give me a little info. on what Progress have done to allow this ??

Sorry to be a pain :)
 

vdennis

Member
I can say exactly, as I have only seen the slide show on it. But I do know that is what the 'black box' does. The 'Black box' is really software that will convert from TypeA to TypeB and back. It is a progress product. Look at P4359 in KB, this will give you some idea how it is done. I think you can also get information from Progress on their web page regarding the tech-peaks. These are now on line.
 
This is exactly what I wanted. Thanks v. much. I'll have a read around the subject.


Anyone else got any experience they'd like to share.
 
Top