Likes and dislikes

Posted by npowers on 06-Sep-2006 13:50

OK, this thread is way too quiet. We're working on where to go next with OpenEdge Architect, and all of you out there can play a role. What do you like best about it? What don't you like? Give me your top three suggestions of what direction to take this product.

All Replies

Posted by Thomas Mercer-Hursh on 06-Sep-2006 13:59

Doing a serious end to end review would take some time. Given that I am hoping that the 10.1B Beta will be around real soon now, that might be a good occasion to do that, but in the meantime, here are a couple of things.

Current templates are too rigid in a number of places. To see what I mean, try going through to change to lower case keywords everywhere. Some templates can be modified, some can't. See http://www.peg.com/lists/peg/history/200607/msg00140.html for details.

There should be a structure for creating new templates.

One should be able to open the target of run progname.p without using navigation.

Completion doesn't work with buffers.

T4BL should be dropped until it can be made flexible.

Curious how your syntax engine periodically falls in a hole. Maybe you should license Proparse?

Documentation is very limited and poor and not accessible, i.e., not PDF. I am sure there is good stuff in there that I haven't found yet, but I am unsure how to access it.

I'll think of more. Sorry, the complaints come to the top, but actually I like it a lot. It has lured me back from using ED4W exclusively for development.

Posted by johnallengreen on 06-Sep-2006 14:49

Curious how your syntax engine periodically falls in

a hole. Maybe you should license Proparse?

No need to be cheeky! Different parsers are optimized for different things. Proparse is for source documenting and static analysis. The compiler's parser is optimized for compiling. The parser in the editor in OEA should be optimized for "partial parsing as you edit", where the currently edited source file may be incomplete, may not compile, etc.

I've noticed bugs in the OEA editor's parser as well, but I'm not going to use that as one of my top three.

As a plug-in developer, my top three are:

1. OEA supported as a plug-in to the current version of Eclipse with the current version of Java.

2. Extension points.

3. A chapter in the user manual specifically targeting plug-in developers, to describe the extension points and any other API available.

Posted by Thomas Mercer-Hursh on 06-Sep-2006 14:58

No need to be cheeky!

I'm only being a wee bit rude since it seems like one of the things that they ought to know how to do.

Different parsers are optimized for different things.

Well, then, perhaps they just need to hire Joanju to fix the parser they have!

As a plug-in developer, my top three are:

I'll vote for those as well!

Posted by Tim Kuehn on 06-Sep-2006 17:43

I'm not sure if this belongs in this thread, but TMH thinks so, and I wouldn't want to arge with him.

This was originally posted here http://www.psdn.com/library/thread.jspa?threadID=2260&tstart=0 - if you think this is a seperate thread post over there, otherwise feel free to reply here.

I know Niel's posted a "wish list" thread, but this really doesn't fall under that. I'm just getting into OEA, and I'm trying to get the editor the way I like it. I've been partially successful, but I'm running into "wierdnesses" that I can't easily figure out.

As a bit of background, I use ED4Win nearly exclusively and am quite productive with it. I expect that going from that to OEA's going to take some doing, and some things about how I work will have to change, but beyond that I'm having issues. Given that OEA is a 1.0 release it’s not surprising that it needs polishing, so here’s where I’d like to see some “Wax” applied.

Editor:

  • have the "preferences" box remember where you were the last time you were there. In fiddling with the colors, font sizes, etc, each time I go to the editor preferences I have to clear the filter and re-enter it to get to “non-editor” areas – like keyboard key assignments.

  • word completion - if I define variable names, query & browse names, etc. earlier in the code, I should be able to get it auto-completed later on in the program file, similar to how keyword completion works.

  • add line & column display somewhere in the editor.

  • Keyboard key assignments for ctrl-up and ctrl-down don't seem to exist. Point in fact, there are key assignments that appear to be completely missing from the “Key preferences” window. (For instance, I use ctrl-pgup & ctl-pgdwn to navigate up/down procedure entries. In OEA that steps me through the editor tabs, which I’d rather be the ctrl-tab & ctl-shift-tab I currently use. Neither of these appear to be in the “Keys” screen).

  • Changes to keyboard key assignment don't seem to stick. - I've tried changing "go to a line # in the editor” from ctl-L to ctl-G. OEA seems to accept the change, but when I go to the browse it’s still ctl-L. Closing and opening the key assignment editor still shows the ctl-L key assignment.

  • I want to be able to change or replace the existing templates. I've got a number of ED4Win macros I use, and haven't figured out how I can do something similar under OEA. Also, I really don't want to use the OEA imposed set of template shortcuts but change them to what I already use. There doesn’t appear to be a way to do that.

  • I’d like to have templates that can invoke other templates (ie "given templates 'a', 'b', and 'c', where the 'c' template can cause the 'a' and 'b' templates to d their thing).

  • cursor hugs-end-of-line: I want to be able to turn that off. I cursor past end-of-line all the time to make sure code lines up, etc. and find the current behaviour a loss of functionality I already have.

Projects:

  • I can import a directory tree and all it’s files into a project, but I can't remove a file from a project w/out deleting the file itself.

Database connectivity:

  • Ability to connect to a db single-user. I work with a lot of stand-alone databases, so having to start a server with –S, and keep all the –S’s distinct from each other so I can make a jdbc connection to the db’s a pain.

  • Add jdbc drivers to allow for db connections to pre-10.1 OE databases. I work with legacy systems all the time, and can’t mandate upgrades to my customers for a number of reasons, which means I need that connectivity. This is particularly important considering that the OES license is supposed to be “going away” in time.

Database Navigation:

  • Ability to browse a database by fields, tables, index-names, index field components across the entire db, not just within a table.

  • Speed up navigation - having to drill down through db-name/pub/table/table-name/columns is repetitive work I shouldn’t need to do. Perhaps a way to filter out PSC internal db stuff like you can do in the current db tool?

Documentation:

  • I'll second the request for PDF docs. The on-line help's ok, but there's a lot of stuff in here and I'm having a hard time figuring out where everything goes and how it all goes together.

Posted by Thomas Mercer-Hursh on 06-Sep-2006 17:50

I wouldn't want to arge with him.

Since when are you so shy?

Thanks for posting it here. I think it will help to make a more cohesive discussion.

Posted by Admin on 06-Sep-2006 22:07

I've thrown in my two cents about a few things below.

I'm not sure if this belongs in this thread, but TMH

thinks so, and I wouldn't want to arge with him.

This was originally posted here

http://www.psdn.com/library/thread.jspa?threadID=2260&

tstart=0 - if you think this is a seperate thread

post over there, otherwise feel free to reply here.

I know Niel's posted a "wish list" thread, but this

really doesn't fall under that. I'm just getting into

OEA, and I'm trying to get the editor the way I like

it. I've been partially successful, but I'm running

into "wierdnesses" that I can't easily figure out.

As a bit of background, I use ED4Win nearly

exclusively and am quite productive with it. I expect

that going from that to OEA's going to take some

doing, and some things about how I work will have to

change, but beyond that I'm having issues. Given that

OEA is a 1.0 release it’s not surprising that it

needs polishing, so here’s where I’d like to see some

“Wax” applied.

Editor:

  • have the "preferences" box remember where you were

the last time you were there. In fiddling with the

colors, font sizes, etc, each time I go to the editor

preferences I have to clear the filter and re-enter

it to get to “non-editor” areas – like keyboard key

assignments.

This is basic Eclipse functionality that is not provided by OpenEdge Architect. I don't usually use the filter to find stuff since I'm familiar with the tree nodes to find what I'm looking for. As long as you're within the same session the preference and property pages will always reselect the preference page where you were.

  • word completion - if I define variable names, query

& browse names, etc. earlier in the code, I should be

able to get it auto-completed later on in the program

file, similar to how keyword completion works.

This is a feature of advanced editing that requires the AST to be perfectly functional. if you turned off advanced editing, then this won't work.

  • add line & column display somewhere in the editor.

Line numbers are there. check under window->preferences->general->preferences->editors->text editors. I think its in a slightly different tree level in eclipse 3.1/ OE Architect. There is a check box turn turn on line number display. Sorry, no column rulers. The line number/column is also displayed in the status at the bottom of the screen (i'm looking at eclipse 3.2 for this...not sure about 3.1 although I think the featuer is there as well)

  • Keyboard key assignments for ctrl-up and ctrl-down

don't seem to exist. Point in fact, there are key

assignments that appear to be completely missing from

the “Key preferences” window. (For instance, I use

ctrl-pgup & ctl-pgdwn to navigate up/down procedure

entries. In OEA that steps me through the editor

tabs, which I’d rather be the ctrl-tab &

ctl-shift-tab I currently use. Neither of these

appear to be in the “Keys” screen).

I dont' think eclipse has defaults for these at the editor level so the key stroke gets passed up to the next higher level which is the view area. They could be reassigned to use them as navigation keys (and make them redefinable). Would have to add key bindings to the editor for them.

  • Changes to keyboard key assignment don't seem to

stick. - I've tried changing "go to a line # in the

editor” from ctl-L to ctl-G. OEA seems to accept the

change, but when I go to the browse it’s still ctl-L.

Closing and opening the key assignment editor still

shows the ctl-L key assignment.

I played with this a bit. In the key editor, don't try to edit the existing one. Instead select the "go to line" for ctrl+l and press the 'add" button and then change the keystroke. The edit doesn't seem to behave itself. The UI layout that eclipse gives for keyboard shortcuts is lousy. It was supposed to have been rewritten in 3.2 but they removed the new preference pages in the final builds.

  • I want to be able to change or replace the existing

templates. I've got a number of ED4Win macros I use,

and haven't figured out how I can do something

similar under OEA. Also, I really don't want to use

the OEA imposed set of template shortcuts but change

them to what I already use. There doesn’t appear to

be a way to do that.

By templates do you mean the editor templates such as DVCH? Or do you mean the code generation templates for new file and new class?

  • I’d like to have templates that can invoke other

templates (ie "given templates 'a', 'b', and 'c',

where the 'c' template can cause the 'a' and 'b'

templates to d their thing).

I assume you're talking about DVCH and such?

  • cursor hugs-end-of-line: I want to be able to turn

that off. I cursor past end-of-line all the time to

make sure code lines up, etc. and find the current

behaviour a loss of functionality I already have.

This can be added as a preference setting. For some reason the preference setting isn't exposed as part of the standard text editor preference pages in eclipse. The behavior toggles the home/end keys from jumping either to the end of any non-whitespace characters, or to the real end of the line.

Projects:

  • I can import a directory tree and all it’s files

into a project, but I can't remove a file from a

project w/out deleting the file itself.

Eclipse defines a project as a set of resources within a directory. You can also "link" to a directory or a specific file that it outside the actual project directory itself (use the new file or new folder wizard and select the advanced button). But again, this links in the whole directory and its children. There are filters available to hide any file you want, but in reality its still part of the project until you physically re/move it.

Database connectivity:

  • Ability to connect to a db single-user. I work with

a lot of stand-alone databases, so having to start a

server with –S, and keep all the –S’s distinct from

each other so I can make a jdbc connection to the

db’s a pain.

In 10.1A you can. Just define the database connection string using the full path "-db c:\blah\blah.db -1". You'll lose any database navigator functionality this way since its restricted to jdbc connections.

  • Add jdbc drivers to allow for db connections to

pre-10.1 OE databases. I work with legacy systems all

the time, and can’t mandate upgrades to my customers

for a number of reasons, which means I need that

connectivity. This is particularly important

considering that the OES license is supposed to be

“going away” in time.

I've heard its possible to setup your "own" jdb driver on the database navigator preference page...never done it though.

Database Navigation:

  • Ability to browse a database by fields, tables,

index-names, index field components across the entire

db, not just within a table.

  • Speed up navigation - having to drill down through

db-name/pub/table/table-name/columns is repetitive

work I shouldn’t need to do. Perhaps a way to filter

out PSC internal db stuff like you can do in the

current db tool?

Documentation:

  • I'll second the request for PDF docs. The on-line

help's ok, but there's a lot of stuff in here and

I'm having a hard time figuring out where everything

goes and how it all goes together.

Posted by Admin on 07-Sep-2006 01:41

OK, this thread is way too quiet. We're working on

where to go next with OpenEdge Architect, and all of

you out there can play a role. What do you like best

about it? What don't you like? Give me your top

three suggestions of what direction to take this

product.

Going the Eclipse route, when it was possible to use VSTE (a $-program to extend Visual Studio.Net), and therefor implicitly choosing for Java, created a platform of choice for editing ABL-logic. Is there anyone exploiting this feature, so is there anybody developing ABL-applications on Linux for instance?

How do you experience writing .Net frontends combined with the Eclipse experience?

Posted by Tim Kuehn on 07-Sep-2006 08:27

Hi Matt - thanks for the post.

I've thrown in my two cents about a few things

below.

>>

>> Editor:

>>

>> * have the "preferences" box remember where you

>> were the last time you were there. In fiddling with the

>> colors, font sizes, etc, each time I go to the

>> editor preferences I have to clear the filter and

>> re-enter it to get to “non-editor” areas – like keyboard

>> key assignments.

>This is basic Eclipse functionality that is not

>provided by OpenEdge Architect.

?!?

Why would OEA cripple basic functionality like that?

I don't usually use the filter to find stuff since I'm

familiar with the tree nodes to find what I'm looking

for.

I don't get that choice - it's there by default and won't go away.

As long as you're within the same session the

preference and property pages will always reselect

the preference page where you were.

I don't think I'm communicating the issue clearly, so I'll try again.

I'm in the editor. I then right-click in the editor window and select "preferences." The preferences window comes up, and the "filter" box has "filtered" in it. The only menu available is general / editors / text editors - all the other options have been filtered out.

If I clear the filter, all the other menus come back. I then select something else, do something, and close the preferences window. If I go back to the preferences window because the change didn't quite work the way I wanted, I'm back to the original filtered window with just the editor menu showing. This is doubly annoying if I'm changing a non-"editor" setting since they're hidden because of this filtering.

  • word completion - if I define variable names,

query & browse names, etc. earlier in the code,

I should be able to get it auto-completed later

on in the program file, similar to how keyword

completion works.

This is a feature of advanced editing that requires

the AST to be perfectly functional. if you turned

off advanced editing, then this won't work.

And where would I find "advanced editing" to turn it on or off? It's not anywhere on the editor preferences page.

Never mind - I found it under Open Edge -> Editor -> Assistance. That's completely non-intuitive...editor options all belong together. If there's OE-specific flags to set, they should be in the section they go with and labelled as such. If an OE-specific menu is required, that should be an additional place to set those flags, not the only place to set them.

I've confirmed the flag is turned on. I'm still not getting auto-completion.

  • add line & column display somewhere in the

editor.

Line numbers are there. check under

window->preferences->general->

preferences->editors->text editors.

That turns on line numbers on the left side. That still leaves the current cursor column missing.

I think its in a slightly different tree

level in eclipse 3.1/ OE Architect. There is a check

box turn turn on line number display. Sorry, no

column rulers. The line number/column is also

displayed in the status at the bottom of the screen

(i'm looking at eclipse 3.2 for this...not sure about

3.1 although I think the featuer is there as well)

So that what those two un-labelled numbers at the bottom are!

Ok, check that one off, and replace it with putting a label on the current row, column display.

  • Keyboard key assignments for ctrl-up and

ctrl-down don't seem to exist. Point in fact,

there are key assignments that appear to be

completely missing from the “Key preferences”

window. (For instance, I use ctrl-pgup & ctl-pgdwn

to navigate up/down procedure entries. In OEA

that steps me through the editor tabs, which I’d

rather be the ctrl-tab & ctl-shift-tab I currently

use. Neither of these appear to be in the “Keys” screen).

I dont' think eclipse has defaults for these at the

editor level so the key stroke gets passed up to the

next higher level which is the view area. They could

be reassigned to use them as navigation keys (and

make them redefinable). Would have to add key

bindings to the editor for them.

The "keys" window I see has "catagory", "command", "key sequence", and "when". It appears that it has key assignments for the entire package, as the "when" covers context editing, debugging, editing text, in dialogs and windows, and in windows, so I would expect those bindings to be in that window somewhere.

>> * Changes to keyboard key assignment don't seem to

>> stick. - I've tried changing "go to a line # in

>> the editor” from ctl-L to ctl-G. OEA seems to

>> accept the change, but when I go to the browse

>> it’s still ctl-L. Closing and opening the key assignment

>> editor still shows the ctl-L key assignment.

I played with this a bit. In the key editor, don't

try to edit the existing one. Instead select the "go

to line" for ctrl+l and press the 'add" button and

then change the keystroke. The edit doesn't seem to

behave itself. The UI layout that eclipse gives for

keyboard shortcuts is lousy. It was supposed to have

been rewritten in 3.2 but they removed the new

preference pages in the final builds.

Will something be done with this in the future? Lousy is bad but usable, but non-functional is totally unacceptable.

>>* I want to be able to change or replace the

>> existing templates. I've got a number of ED4Win

>> macros I use, and haven't figured out how I can

>> do something similar under OEA. Also, I really don't

>> want to use the OEA imposed set of template shortcuts

>> but change them to what I already use. There doesn’t

>> appear to be a way to do that.

By templates do you mean the editor templates such as

DVCH? Or do you mean the code generation templates

for new file and new class?

I'm thinking preferences -> openedge -> editor -> templates. I imagine I'll eventually want to do something with the code generation templates, but I haven't gotten that far yet.

For the editor templates, it looks like I can change the description and pattern, but I can't change the "name" - which I'm assuming is the keyboard sequence that fires each template off.

The "edit template" window "pattern" editing area's awfully small. I've got some other templates that are a few K in size, and trying to maintain them in something like this would be difficult. Ideally, templates should be edited in an editor window, unless they're supposed to be restricted to simplistic variable declarations.

>> * cursor hugs-end-of-line: I want to be able to

>> turn that off. I cursor past end-of-line all the time

>> to make sure code lines up, etc. and find the current

>> behaviour a loss of functionality I already have.

This can be added as a preference setting. For some

reason the preference setting isn't exposed as part

of the standard text editor preference pages in

eclipse. The behavior toggles the home/end keys from

jumping either to the end of any non-whitespace

characters, or to the real end of the line.

I'm not concerned about home / end keys, I want to be able to (1) cursor-right past end-of-line rather than having to tab or space over, and (2) cursor up / down from whatever line I'm on and go straight up / down while maintaining column position, regardless of however long the current line I'm on is.

Speaking of whitespace past end-of-line, a setting to automatically strip that would be nice. There are cases (such as with continuation line "~" markers) where trailing whitespace breaks code and causes it not to compile.

Projects:

  • I can import a directory tree and all it’s files

into a project, but I can't remove a file from a

project w/out deleting the file itself.

Eclipse defines a project as a set of resources

within a directory. You can also "link" to a

directory or a specific file that it outside the

actual project directory itself (use the new file or

new folder wizard and select the advanced button).

But again, this links in the whole directory and its

children. There are filters available to hide any

file you want, but in reality its still part of the

project until you physically re/move it.

What I'm thinking of is a file got into a project - such as by the import process - that I decide I don't want in there - even if it is hidden behind a filter condition.

I can't just dis-associate it from the project, I have to delete the file. While I can see the logic of associating those actions, I can think of cases where it's not desirable behavior.

>> Database connectivity:

>>

>> * Ability to connect to a db single-user. I work

>> with a lot of stand-alone databases, so having

>> to start a server with –S, and keep all the –S’s

>> distinct from each other so I can make a jdbc

>> connection to the db’s a pain.

In 10.1A you can. Just define the database

connection string using the full path "-db

c:\blah\blah.db -1". You'll lose any database

navigator functionality this way since its restricted

to jdbc connections.

And jdbc requires a server with -S.

If there was some way for OEA to start a db server w/a -S port, and then make a connection, that would get rid of the problem of managing the -S port number space manually.

>> * Add jdbc drivers to allow for db connections to

>> pre-10.1 OE databases. I work with legacy systems

>> all the time, and can’t mandate upgrades to my

>> customers for a number of reasons, which means

>> I need that connectivity. This is particularly important

>> considering that the OES license is supposed to be

>> “going away” in time.

I've heard its possible to setup your "own" jdb

driver on the database navigator preference

page...never done it though.

I've gotten drivers to make 10.0 and 9.1 db connections, but they're "unsupported". Pre-10.1 drivers need to come stock with OEA, and be supported, otherwise PSC risks making OEA un-usable with pre-10.1 database systems.

This will be a real a problem when the license policy which allows shops to run both OEA and OES expires and shops are supposed to declare which package they're going with, or paying for a new license to keep them both of them active and under maintenance. Personally I think OEA and OES should be packaged together until OES eventually dies on the vine.

Tim Kuehn

Posted by Tim Kuehn on 07-Sep-2006 09:46

On the "preferences" window reset issue - if I go "windows, preferences", I'm seeing the behavior I'm asking for compared to going to 'preferences' from the editor window.

Posted by Thomas Mercer-Hursh on 07-Sep-2006 11:02

I've confirmed the flag is turned on. I'm still not getting auto-completion.

Compared to ED4W, auto-competion is clearly limited, except for the part about being table and field aware ... and that is clearly limited because it doesn't recognize buffers.

Posted by Tim Kuehn on 07-Sep-2006 12:23

Compared to ED4W, auto-competion is clearly limited,

This is virtually a deal-breaker for me when it comes to using the OEA editor for serious coding. The convention I follow for naming variables, procedures, and functions results in some pretty long references. This hasn't been a problem because with auto-completion I don't have to type them more than once, and successive references are always spelled right.

Unless there's some other way to accomplish the same thing, that means - for me - the OEA editor's only suitable for debugging and minor code changes.

except for the part about being table and field aware

... and that is clearly limited because it doesn't

recognize buffers.

I think I'd be ok with that since I typically use procedure/function scoped buffers for all table references, not alternate buffer names. Consequently I generally don't have many alternate buffer names to worry about, but when I do auto-completion's a big help there as well.

That leaves the templates and code generators. If I can duplicate the various standard templates in OEA that I have in ED4W, that'd be a strong plus in OEA's favor.

Posted by Thomas Mercer-Hursh on 07-Sep-2006 12:40

For me, the lack of auto-completion on buffers makes the feature almost useless since I deplore the define buffer customer for customer convention, so virtually all of my table references are to something like ibf_Customer.

The engine is certainly there for doing all kinds of templates and expansion ... it just needs to be made open enough for us to extend it. After notable pain and suffering, I am now happy enough with the dvch type expansions.

Posted by Admin on 07-Sep-2006 19:33

For me, the lack of auto-completion on buffers makes

the feature almost useless since I deplore the define

buffer customer for customer convention, so virtually

all of my table references are to something like

ibf_Customer.

The engine is certainly there for doing all kinds of

templates and expansion ... it just needs to be made

open enough for us to extend it. After notable pain

and suffering, I am now happy enough with the dvch

type expansions.

We hear you. There is a lot we want to do in this area to make it better. There is an internal wish list that includes what you mentioned and more.

Posted by Admin on 07-Sep-2006 20:09

We don't. The preference page action on the editor's context menu is put there by eclipse, not by us. We could replace/change/remove it, but there hasn't been any need. We add contributions such as compile/check syntax and the source submenu, but the navigation and some of the other stuff is on there already.

I've confirmed the flag is turned on. I'm still not

getting auto-completion.

Auto completion or context asist? Auto completion can be turned on/off from window->preferences->general->OEA->editor->assistance. Defaults to on.

Context assist is ctrl+space. auto completion shouldn't work on amibigous names. Does your variable have the same starting character sequence as a language keyword or other field/variable?

So that what those two un-labelled numbers at the

bottom are!

yeah....again this is a case of eclipse provided functionality that we get for free.

Ok, check that one off, and replace it with putting a

label on the current row, column display.

for new file and new class?

I'm thinking preferences -> openedge -> editor ->

templates. I imagine I'll eventually want to do

something with the code generation templates, but I

haven't gotten that far yet.

Not really possible to anyway in 10.1A. Better in 10.1B.

For the editor templates, it looks like I can change

the description and pattern, but I can't change the

"name" - which I'm assuming is the keyboard sequence

that fires each template off.

Not sure it crossed anyone's mind to let it be modifiable. No technical reason they can't be.

The "edit template" window "pattern" editing area's

awfully small. I've got some other templates that are

a few K in size,

A few k? wow.

and trying to maintain them in

something like this would be difficult. Ideally,

templates should be edited in an editor window,

unless they're supposed to be restricted to

simplistic variable declarations.

There is no arbtrary size restriction since its just a string in an xml file.

note to self...make template macro window bigger. It is resizable (at least in 10.1B which is what I have in front of me).

What I'm thinking of is a file got into a project -

such as by the import process - that I decide I don't

want in there - even if it is hidden behind a filter

condition.

I can't just dis-associate it from the project, I

have to delete the file. While I can see the logic of

associating those actions, I can think of cases where

it's not desirable behavior.

Import is just a copy operation as far as Eclipse is concerned. Since it doesn't keep track of all the contents of a project in a separate file (unlike VS). Do you really want to have an xml file that contains 10,000 file names in it?

And jdbc requires a server with -S.

Yup.

If there was some way for OEA to start a db server

w/a -S port, and then make a connection, that would

get rid of the problem of managing the -S port number

space manually.

Database connections get some loving in 10.1B that should help with this. Check out the beta and give us some feedback.

I've gotten drivers to make 10.0 and 9.1 db

connections, but they're "unsupported". Pre-10.1

drivers need to come stock with OEA, and be

supported, otherwise PSC risks making OEA un-usable

with pre-10.1 database systems.

There were a lot of changes to the JDBC drivers between 9/10/10.1. In fact the sql statements to manipulate 4gl tables didn't really even exist in 9 so you could only really do queries against data. In 10.1A a lot of statements were added to the sql and the database was modified to allow 4gl table modifications by sql. Older databases can't handle the newer statements, nor can the drivers. So basically db nav becomes read only on anything except 10.1.

Database navigator is based on an open source product net.sourceforge.sqlexplorer. Its been rebranded, but a lot of our changes have been contributed back to the current maintainer. You'll notice in the JDBC Drivers preference page that there are place holders for other databases. The plugins for these other drivers are available ( we don't ship them for obvious reasons) and can be used if you have the drivers for them. Any JDBC drivers should work for querying. Its the plugin (the db nav part) that contributes the new/edit table/field/ wizards that actuall handle the SQL statements for modifying the database.

This will be a real a problem when the license policy

which allows shops to run both OEA and OES expires

and shops are supposed to declare which package

they're going with, or paying for a new license to

keep them both of them active and under maintenance.

Personally I think OEA and OES should be packaged

together until OES eventually dies on the vine.

All of OpenEdge Studio with the exception of Dynamics and the SlickEdit control (and a few other small bits) are shipped with OEA 10.1a.

Tim KuehnWhy would OEA cripple basic functionality like that?

Posted by Tim Kuehn on 08-Sep-2006 09:51

Why would OEA cripple basic functionality like

that?

We don't. The preference page action on the editor's

context menu is put there by eclipse, not by us.

Ok, I misread your original response.

If this is Eclipse's doing, it's - well - lame and annoying. It should expand the Editor branch if it's not there already, put the cursor there, and highlight it. Not filter everything else out.

We could replace/change/remove it,

but there hasn't been any need.

I think this qualifies as a need, particularly since the OE editor settings, keyboard key assignments, and such aren't considered "part" of the Eclipse editor configuration.

We add contributions such as compile/check

syntax and the source submenu, but the navigation and

some of the other stuff is on there already.

Ok.

>> I've confirmed the flag is turned on. I'm still

>> not getting auto-completion.

Auto completion or context asist?

auto completion.

Auto completion

can be turned on/off from

window -> preferences -> general ->

OEA -> editor -> assistance.

Defaults to on.

Correct.

Context assist is ctrl+space.

CA is ctl+space? Then what's auto-completion?

The "assistance" preference says that CA is floating text while entry, while auto completion is ".", ":". (There's also "ctl+space will still work").

auto completion

shouldn't work on amibigous names.

It shouldn't auto-complete when the current prefix is matched by multiple previous entries. It should provide a list of possible value to choose from though.

Does your variable have the same starting

character sequence as a language keyword

or other field/variable?

DEFINE QUERY q-name

FOR rsinv.

DEFINE BROWSE b-name

QUERY q-name

I was trying to get it to auto-complete the "q-name" on the query phrase of the browse statement. It wouldn't.

>>So that what those two un-labelled numbers at the

>>bottom are!

yeah....again this is a case of eclipse provided

functionality that we get for free.

It needs an upgrade.

>> For the editor templates, it looks like I can

>> change the description and pattern, but I

>> can't change the "name" - which I'm assuming

>> is the keyboard sequence that fires each template

>>off.

Not sure it crossed anyone's mind to let it be

modifiable.

I find that rather astounding.

No technical reason they can't be.

There's good reason to make it so.

>>The "edit template" window "pattern" editing

>>area's awfully small. I've got some other templates

>>that are a few K in size,

A few k? wow.

They're mostly skeletons for various ABL declarations that write the definition in a standardized format that I can then fill-in-the-blanks with.

>>Ideally, templates should be edited in an editor

>>window, unless they're supposed to be restricted

>>to simplistic variable declarations.

There is no arbtrary size restriction since its just

a string in an xml file.

note to self...make template macro window bigger. It

is resizable (at least in 10.1B which is what I have

in front of me).

Excellent.

Can templates be chained? Ie, one template invokes another one - maybe something like:

&DVCH\n&DVI\n

to declare a character var and then an integer var?

>> What I'm thinking of is a file got into a project

>> such as by the import process - that I decide I

>>don't want in there - even if it is hidden behind

>>a filter condition.

>>

>> I can't just dis-associate it from the project, I

>> have to delete the file. While I can see the logic

>> of associating those actions, I can think of cases

>> where it's not desirable behavior.

Import is just a copy operation as far as Eclipse is

concerned.

Importing a directory tree into a project is a copy operation - to where?

Since it doesn't keep track of all the

contents of a project in a separate file (unlike VS).

Do you really want to have an xml file that contains

10,000 file names in it?

Since I don't anticipate having to deal with those, I'm not certain why it would be an issue for me.

I've gotten drivers to make 10.0 and 9.1 db

connections, but they're "unsupported". Pre-10.1

drivers need to come stock with OEA, and be

supported, otherwise PSC risks making OEA

un-usable with pre-10.1 database systems.

There were a lot of changes to the JDBC drivers

between 9/10/10.1. In fact the sql statements to

manipulate 4gl tables didn't really even exist in 9

so you could only really do queries against data.

At least that would be something though.

In 10.1A a lot of statements were added to the

sql and the database was modified to allow 4gl

table modifications by sql. Older databases can't

handle the newer statements, nor can the drivers.

So basically db nav becomes read only on anything

except 10.1.

Ok. So the drivers have restrictions on pre-10.1 platforms. At least one could connect to them, nav around, and do other lookup work. Limited functionality's better than nothing at all.

Database navigator is based on an open source product

net.sourceforge.sqlexplorer. Its been rebranded, but

a lot of our changes have been contributed back to

the current maintainer. You'll notice in the JDBC

Drivers preference page that there are place holders

for other databases. The plugins for these other

drivers are available ( we don't ship them for

obvious reasons) and can be used if you have the

drivers for them.

Are there any docs that would help someone find these drivers?

>> This will be a real a problem when the license

>> policy which allows shops to run both OEA and

>> OES expires and shops are supposed to declare

>> which package they're going with, or paying for

>> a new license to keep them both of them active

>> and under maintenance. Personally I think OEA

>> and OES should be packaged together until OES

>> eventually dies on the vine.

All of OpenEdge Studio with the exception of Dynamics

and the SlickEdit control (and a few other small

bits) are shipped with OEA 10.1a.

So any Dynamics users are left hanging in the breeze?

I'm sure the functionality's there, but can I just get the old OES desktop w/out all the OEA "other" stuff for when I'm doing non-project experimenting and the like?

Tim Kuehn

Posted by Thomas Mercer-Hursh on 08-Sep-2006 11:46

There is a lot we want to do in this area to make it better.

10.1B would be nice ...

Posted by Admin on 08-Sep-2006 19:18

Well, someone though it would be a good idea.

The "assistance" preference says that CA is floating

text while entry, while auto completion is ".", ":".

(There's also "ctl+space will still work").

Eclipse default for context completion/asistance whatever you wanna call it is invoked by ctrl+space which brings up the selection list with all the nice entries in it. There is a second kind called auto completion that is unique to the oe text editor that is trigged on space, dot, colon and I think parenthesis. This one tries to guess based on unambiguous alphabetical collation of things it knows about to auto finish what you started to type (e.g. type "DEF" and you get DEFINE.

yeah....again this is a case of eclipse provided

functionality that we get for free.

It needs an upgrade.

You want an upgrade to a free feature? Sheesh.

They're mostly skeletons for various ABL declarations

that write the definition in a standardized format

that I can then fill-in-the-blanks with.

Good candidates for wizards.

Can templates be chained? Ie, one template invokes

another one - maybe something like:

&DVCH\n&DVI\n

 * admin dreams of recursion.

to declare a character var and then an integer var?

Sure. Type "DVCH" followed by the enter key. Then type "DVI" followed by the enter key :). As many as you want.

I'll log a bug to have this added.

Importing a directory tree into a project is a copy

operation - to where?

From the source into the project directory. Right click on a file and choose "properties" in OEA. It'll tell you where it physically exists in the file system.

Two types of imports. Import existing project just creates a pointer that project in the workspace...doesn't copy. Import files copies the files from their existing location into the selected destination folder in a project.

Eclipse functionality...not ours.

Or

1. file->new->file/folder

2. select advanced button

3. fill in file/folder location

4. will then show up in your project as a linked resource.

Draw backs to this method is that OEA 10.1a doesn't handle them particularly gracefully. 10.1B is better at it. Most SCM tools choke and die with linked resources. e.g. clearcase goes hates them so much it disables all clearcase functionality for the entire project until you remove the linked resource. CVS is ok with them though.

Are there any docs that would help someone find these

drivers?

http://sourceforge.net/projects/eclipsesql would be a good place to start.

So any Dynamics users are left hanging in the

breeze?

Dynamics was put into the OEA in 10.1B beta if I recall correclty.

I'm sure the functionality's there, but can I just

get the old OES desktop w/out all the OEA "other"

stuff for when I'm doing non-project experimenting

and the like?

Any OpenEdge installation (on windows at least) allows you to customize what you install. The default option is to install just about everything as far as I know.

The windows shortcuts that get installed in the start menu, include all the old links such as oe client, oe studio, openedge desktop, as well as OEA.

Tim Kuehn

If this is Eclipse's doing, it's - well - lame and

annoying. It should expand the Editor branch if it's

not there already, put the cursor there, and

highlight it. Not filter everything else out.

Posted by Tim Kuehn on 08-Sep-2006 20:27

If this is Eclipse's doing, it's - well - lame and

annoying. It should expand the Editor branch if

it's

not there already, put the cursor there, and

highlight it. Not filter everything else out.

Well, someone though it would be a good idea.

Someone always does...

>> The "assistance" preference says that CA is

>> floating text while entry, while auto completion is ".",

>> ":". (There's also "ctl+space will still work").

Eclipse default for context completion/asistance

whatever you wanna call it is invoked by ctrl+space

which brings up the selection list with all the nice

entries in it. There is a second kind called auto

completion that is unique to the oe text editor that

is trigged on space, dot, colon and I think

parenthesis. This one tries to guess based on

unambiguous alphabetical collation of things it knows

about to auto finish what you started to type (e.g.

type "DEF" and you get DEFINE.

Which is what I'm already used to. It's just not working with the OEA I've got.

yeah....again this is a case of eclipse provided

functionality that we get for free.

It needs an upgrade.

You want an upgrade to a free feature? Sheesh.

Ahem - I - and a lot of other ABL people - pay for maintenance, which includes some part of your salary.

>> They're mostly skeletons for various ABL

>> declarations that write the definition in a

>> standardized format that I can then fill-in-the-blanks

>> with.

Good candidates for wizards.

I don't care for or need "wizards", particularly if the blanks can be filled with names used previously in the code. Also, I tend to take existing templates and extend them to be something else, or chaining them together.

Can templates be chained? Ie, one template invokes

another one - maybe something like:

&DVCH\n&DVI\n

 * timk519 dreams of recursion.

>> to declare a character var and then an integer

>> var?

Sure. Type "DVCH" followed by the enter key. Then

type "DVI" followed by the enter key :). As many as

you want.

I trust you're just being cute.

I'll log a bug to have this added.

Thanks.

Importing a directory tree into a project is a

copy

operation - to where?

From the source into the project directory. Right

click on a file and choose "properties" in OEA.

It'll tell you where it physically exists in the

file system.

So the file I 'imported' and then wanted to delete wasn't really where I thought it was? I'll have to double check that.

>> I'm sure the functionality's there, but can I

>> just get the old OES desktop w/out all the

>> OEA "other" stuff for when I'm doing non-

>> project experimenting and the like?

Any OpenEdge installation (on windows at least)

allows you to customize what you install. The

default option is to install just about everything as

far as I know.

The windows shortcuts that get installed in the start

menu, include all the old links such as oe client, oe

studio, openedge desktop, as well as OEA.

I'll have to check that out when I upgrade my computer.

Thanks!

Tim Kuehn

Posted by npowers on 08-Sep-2006 22:59

Theo:

We looked really hard at the Visual Studio vs Eclipse question. In fact, we did a whole point-by-point comparison study on everything from features to extendability to business model.

In the end, it came down to this: Microsoft was going to lock us in both from a money perspective and a platform perspective. In hindsight (keep in mind that we made the decision two years ago now), I still think we made the right decision. Eclipse continues to get wider adoption and richer funcationality, and the plug-market is starting to heat up. We're working on the UI thing so that people can develop MS desktop UI's without having two development environments - give us some time on that one. And yes, we do have quite a few shops that develop in java and ABL. In fact, we are getting quite a list of customers outside the U.S. that are doing pure Linux deployments, desktop and all. Our goal is to not impose a platform preference on our customers and partners, and we felt that Eclipse was more in keeping with philosophy then Visual Studio. Yeah, it is java underneath, but don't read that as us endorsing a platform.

Another consideration in our research: The development environment contains quite a few "hidden" costs in licensed technologies and the like. We're really trying to reduce those to give us more flexibility in how we go to market. The VS stack was going to make that problem worse, not better. When working on a .NET desktop UI, there will be additional development costs - almost no way around that (controls and the like). But we didn't want to impose that on everyone in the base.

The final point that pushed Eclipse over the line was the fact that two of our other product units were settling on Eclipse as well. Obviously that helps us internally, but more important we want to integrate in their tools and create some development synergy between the various products. In theory, that could be done with either environment, but in practice it is a lot easier with Eclipse.

I'll get to some of the other points made on this thread when I get more time. But thanks, everyone, for jumping in both with questions and answers. And keep it up!

Posted by Admin on 09-Sep-2006 09:26

Theo:

We looked really hard at the Visual Studio vs Eclipse

question. In fact, we did a whole point-by-point

comparison study on everything from features to

extendability to business model.

Those are all valid arguments for the Progress company. The question remains: is it also the best suite for an ABL-developer? I would definitly have no counter arguments when ABL would be as consistent for the front end choice: meaning support for a Java front end as deep as the .Net front end. But there is no such thing (yet).

For me it's very disappointing how the UI-designer is integrated in Eclipse: "an AppBuilder hack should be good enough for the next year(s)" seems to be the message. Sure, I like the solution as a technical guy, being able to parent MFC-views to the Eclipse canvas. But it must look very strange to new developers.

For me the most important response to the "likes and dislikes" question therefor is: increase the release cycle frequency of the development environment and pick up the pace. Do something about the UI-designer, get rid of the AppBuilder, move forward, make choices!

A good example of not moving forward fast enough is the SQL-engine: it's still not possible to do anything to the schema via DDL. An example from the docs: "You cannot drop the first index created on a table, except by dropping the table". Why is this? Why is the database focus always performance, performance, performance and not feature completion?

Posted by Thomas Mercer-Hursh on 09-Sep-2006 14:08

Eclipse default for context completion/asistance whatever you

I do think that we have muddied this topic somewhat so that I'm not always sure that we are talking about the same thing. One type is called "code assist". From the on-line help:

Source to be both editable and extenseable. Those I think would be more appropriate for large blocks of code such as Tim is suggesting. Is there any reason this functionality couldn't point to a selection box which read from a list that one could add to? Not to mention needing them to be editable.

Creating our own wizards is a further level beyond this where some interaction is required. Do you anticipate making this open and easy?

Dynamics was put into the OEA in 10.1B beta if I recall correclty.

Are there aspects of OES which are not fully incorporated into OEA in 10.1B?

Posted by Tim Kuehn on 09-Sep-2006 14:13

For keyboard templates, it would appear that the two complaints are my annoyance at the difficulty of switching to lower case keyword standard and Tim's of wanting recursive definitions.

NO - I don't want recursition, I want to be able to chain their calls - one template fires off another, etc. much like function calls.

No recursion please - that implies variables and exit conditions, which aren't generally what I think go with templates.

Posted by Thomas Mercer-Hursh on 09-Sep-2006 14:17

Those are all valid arguments for the Progress company. The question

remains: is it also the best suite for an ABL-developer?

If one starts with the assumption that no choice is going to be perfect for everyone, I think that one can make a very strong case for the Eclipse choice having been the best one because:

1) it doesn't lock us in;

2) there is an increasingly strong set of tools available for the platform; and

3) it provides the hope and expection of all of the Progress family of products supported under a single IDE.

Against this it seems the only real downside is that the .NET development environment might not be as strong as it might have been another way, but that other way would have significantly impacted the above advantages in a negative way. Presumably, you must be a .NET guy and so the mix doesn't look as attractive to you, but from a greater good perspective, I think the case is very strong.

Posted by Thomas Mercer-Hursh on 09-Sep-2006 14:25

Even if it isn't full recursion, some of the same issues arise.

Other than a small incremental cost at setup, what is the issue about having DVCH, DVIN, and DVSPECIALCOMBO (presumably something shorter like DVCB) to cover this requirement?

For anything longer like this, I would much rather have an extensible list of templates to choose from and perhaps a single keystroke that brought up the selection list.

Posted by Tim Kuehn on 09-Sep-2006 15:27

DVCH et al are fine for small things like defining char vars and the like.

However, a I go along, I'm running into recurring patterns of code.

Those patterns get turned into a template.

Then I run into repeatedly doing the same sequence of templates.

Unfortunately, I can't easily turn that pattern into a pattern of templates, and I'm concerned that some of the templates may get too big to easily fit into an editor.

It's also harder to maintain patterns of templates that are stored as full-length text strings. It's also harder to form new patterns of templates.

I could get by with a way to fire off a sequence of templates rather being able to embed child template calls in parent template instances.

I'm not sure what the issue is - all this that should need to be done would be to define a way to start a template expansion, and a recursive call to the template generator.

Posted by Thomas Mercer-Hursh on 09-Sep-2006 16:01

Perhaps some more concrete examples would make it clearer, but ...

It seems to me that the keyboard template technology is fine for the little stuff, as you noted. It might be the wrong thing to try to turn that into something else.

The Source template technology, on the other hand, I believe is fairly rich, although the examples currently in OEA are fairly simple. I believe that these are based on JET and are capable of some fairly sophisticated processing as a part of the expansion, e.g., where a single template could produce a number of different looking results depending on the values supplied at generation time. But, I haven't really looked into the details since some of them seem to be locked down and there is no obvious mechanism for expanding to new instances within OEA.

You might look at the files I pointed to in the PEG summary I referred to earlier in the thread and see what you find. I think this might be a more suitable direction than trying to overload the keyboard templates.

Posted by linx on 22-Sep-2006 00:35

The biggest issues with OE for us are:

- large business rules procedures (over 5000 lines) take way to long to save (rebuild the outline section ???) making it virtually useless since we have lots of those. (existing bug logged with PSC).

- the buffer field auto-completion is non existant, so one of the major benefits of OE goes down the drain.

wish list:

- make OE a plug-in for Eclipse in a distributable form (ie, I had to hunt down the OE plug-ins in order to copy over my existing full SDK Eclipse installation)

- extend the auto-complete to work with variable names, procedures names, (both internal and external), etc... look at how Eclipse for java does things and copy everything that is possible.

- Make the "open procedure" the same way as Java does it. CTRL-Click. Do that for include files as well as procedures on "run" statement. both internal and external procedures (again, just copy how java works).

- auto-format for indentation. We have lots of legacy code that doesn't comply with our current coding standards. a SHIFT-CTRL-I to reformat the identation of all the code would be great.

Thanks

Jonny Oenning

Linx ADS

Posted by Admin on 02-Oct-2006 06:28

4 things I would like to see:

1. The ability to insert Objects, Events & Preprocessors in the code by using the right-mouse-click, just like you can in the section editor.

2. Show variables datatypes in the outline view.

3. Show parameters and variables that are defined in Internal Procedures in the outline view.

4. Show defined parameters in the outline view.

Posted by innov8cs on 12-Oct-2006 14:20

By far the thing most needed in OEA -

A real Web environment tool. The old Wizards from WebSpeed were horrible. Yet that's pretty much what's there today, left over from day one - we're talking 10 years. A small change to make the report use an SDO is hardly fitting a product that has garnered quite a bit of PSC revenue.

FFW added a bunch of good functionality on the server side. But the development tool was nothing that could ever be realistically tackled - based on both the size of the effort, and the interest PSC had. Now that a world class development framework is employed, some world class web plug in's are available. Connecting those ala PHP/JSP with an AJAX toolkit to WebSpeed would finally move the product forward.

Posted by Admin on 11-Jan-2007 12:40

Beside the things already mentioned, some simple things are missing:

1.) Better interpretation/color coding of preprocessor (i.e. include files with parameters)

2.) Generate XSD Files from ProDataset designer - I have written an external tool to solve that but that should be part of the tools

3.) Custom templates for new files (no logic required, just copy and give the new .p a new name)

Posted by jtownsen on 13-Jan-2007 13:48

3.) Custom templates for new files (no logic

required, just copy and give the new .p a new name)

Take a look at the Customisation Editor in 10.1B. That will do exactly this, as well as things like adding your own ABL tools to the Eclipse menus/toolbars. Very cool.

This thread is closed