Hi all, hope this is in the right section.
I have an application that started out in Progress 7 and has developed over the years through 8, 9 and now to 10.
It starts a main WINDOW and then a number of "Child" windows which are set to WINDOW-SUPPRESS and so they just display FRAMES within the parent window in an MDI style.
I need to move the application on and find a way of making my existing screens/code play nicely with v10 .NET screens without having to rewrite the whole application at once.
So far not much luck.
Is there a way of making a App Builder progress window an MDI child of a OE Architect .NET "Menu" screen?
If not, is there a way of doing a SUPPRESS-WINDOW on an OE Architect .NET window and calling that from my App Builder Menu.w?
The idea being to add new screens to the existing application and make use of the new functionality without having to take a year out and rewrite the whole user interface from scratch.
In a similar vein, the existing app makes a lot of use of SHARED variables but classes cannot see these which makes calling the legacy code impossible from classes.
Is the a way of getting the OE Architect to generate straight .w screens rather than Classes?
Any help would be much appreciated.
Derek Harrison
Technical Director
Pursuit Software Ltd.
Hi, I'm out of the office on vacation. During my absence I will have no access to my e-mail.
For immediate assistance please call our office at +32 (0) 15 30 77 00.
Best regards,
Wouter.
--
Wouter Dupré
Senior Solution Consultant
Progress Software NV
Stocletlaan 202 B| B-2570 Duffel | Belgium
Direct Line +32 (0) 15 30 77 00 | Mobile +32 (0) 478 50 00 49
wdupre@progress.com
Hi all, hope this is in the right section.
It certainly is!
It starts a main WINDOW and then a number of "Child" windows which are set to WINDOW-SUPPRESS and so they just display FRAMES within the parent window in an MDI style.
A .w file defined with suppress window, actually just builds a FRAME at runtime. The window is just required for the AppBuilder. This was required in V7 before the AppBuilder had support for SmartObject development.
I need to move the application on
Any idea where you need to move to? Is "putting lipstick" on the pig what you are looking for?
and find a way of making my existing screens/code play nicely with v10 .NET screens without having to rewrite the whole application at once.Is there a way of making a App Builder progress window an MDI child of a OE Architect .NET "Menu" screen?
Check the GUI for .NET documentation about embedding ABL windows into .NET windows and making them MDI children.
If not, is there a way of doing a SUPPRESS-WINDOW on an OE Architect .NET window and calling that from my App Builder Menu.w?
I'm not seeing where that would help? But I'm convinced that to put lipstick on the pig, the menu should become a .NET menu first! There is no other screen that you can be sure of, that the user sees it every day. Thus the biggest improvement in impression.
The idea being to add new screens to the existing application and make use of the new functionality without having to take a year out and rewrite the whole user interface from scratch.
Cool.
In a similar vein, the existing app makes a lot of use of SHARED variables but classes cannot see these which makes calling the legacy code impossible from classes.
SHARED or GLOBAL SHARED? They are a mess. And certainly (without doing a lot of refactoring) adding procedures that are called by classes is the only way to solve the issue. In the mid-term (with a little bit of refactoring) moving all GLOBAL SHARED to STATIC properties of a "SessionManager" or "SessionContext" class is a good starting point. That makes them type-safe and accessible by classes and procedures. Furthermore you may introduce validation and session wide events when they change.
Is the a way of getting the OE Architect to generate straight .w screens rather than Classes?
The Visual Designer? No! But you can code the .NET UI also from procedures. But that's a manual task. Another way would be to use a .p that starts every class instance and passes the required SHARED variables as properties or parameters in the constructor. It all depends on where and how often these variables are changed.
Any help would be much appreciated.
You may also find my Exchange Online 2010 presentation about GUI for .NET adoption strategies interesting. That's the kind of questions I'm dealing with.
On http://www.consultingwerk.de/index.php?id=209&L=1 I've posted some screenshots from an application that also uses suppressed windows and is not embedded into an MDI container/.NET Forms.