I'm working with beta participant on migrating 5 existing GUI client/server apps into my OpenEdge GUI for .NET based framework. So I'm using Dynamics4.NET basically as a shell and menuing system around existing applications while the functionality of the 5 apps will be merged into one application during the next two years.
So far, so good. The 5 apps are grown apps (same base long ago, modified, customized, ...) and not all programs can easily cooperate. I need to (I'm not happy with that at all) deal with the fact that there are situations where I have to connect and disconnect databases at runtime and also change the propath at runtime.
All of that context switiching is done in a Dynamics manager that also decides if a certain window a users wishes to start is compatible with the current active environment (especially databases).
For procedures, I can go through the SESSION:FIRST-PROCEDURE Chain an look at the DB-REFERENCES of each procedure. Fine.
But how about OO code? The Progress.Lang.Object or Progress.Lang.Class don't have this property. Another "forgotten" feature or left out by purpose? The only chance I see for classes in memory is to use the RCODE-INFO handle and read the r-code on disk. That's not too exciting.
I know, that a complete transition is advised. It's planned for the next two years or so. But I need a solution for this before the end of ther year.