This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 147645 - All Property editors that access existing database tables should be consistent
Summary: All Property editors that access existing database tables should be consistent
Status: REOPENED
Alias: None
Product: soa
Classification: Unclassified
Component: IEP editor (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker (vote)
Assignee: Ritesh Adval
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-18 19:01 UTC by jlautz
Modified: 2008-10-23 17:52 UTC (History)
0 users

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description jlautz 2008-09-18 19:01:18 UTC
Seen on Windows Vista with NB 6.1 + Patch 3 and IEP *.nbms installed from sierra build080917_1.

At the moment, the following IEP operators directly access database tables:
  ExternalTablePollingStream -- waits for additions to a database table
  TableInput -- reads a database table
  TableOutput -- writes to a database table
  ReplyStream -- reads events recorded to a database table
  SaveStream -- records an event stream to a database table

However, each operators' property dialog specifies existing tables differently:
  ExternalTablePollingStream -- Select Table button opens a Select External Table to Poll dialog, which allows the user
to browse a list of tables and choose one. (nice!)
  TableInput -- Global ID field with Do Not Create Table checkbox. (so I have to go elsewhere to determine the name of
the table)
  TableOutput -- Global ID field with Is Global checkbox (???). 
  ReplayStream -- Select Table button opens a Select Table Which Stores Streams dialog (s/b "Select Table with Saved
Stream?")
  SaveStream -- Does recording the event stream always require a new table (?). I can't tell from the dialog or the specs.


We want the UI to feel consistent, so I'd suggest adding Select Table to the TableInput and TableOutput property editors
(I think it was just removed from one of them). Can all the dialogs use "Select Table" to locate an existing table, if
one is to be used? If SaveStream can overwrite or append an existing table, then the same comments apply.
Comment 1 Ritesh Adval 2008-09-25 01:29:07 UTC
The ExternalTablePollingStream  and ReplayStream are different from TableInput/TableOutput/SaveStream.

In these two user has to select table as well as columns and that too of an existing table so the
UI is provided for selecting table and existing columns.

In case of TableInput, user adds attribute in the dialog and the table name (global id) can be a non existing table,
or an existing table. Just for selecting an existing table it is not a good idea to have the select table ui.

Same goes for TableOutput, the table name (global id) can be a non existing table.

In case of SaveStream, when it has some input operator connected to it, it already has info regarding
column names so just for table name selection we do not need to provide the UI. Here also Table can
be an exisiting table or a new one will be created if one does not exists.



Comment 2 Ritesh Adval 2008-09-25 01:45:48 UTC
Regarding title in ReplayStream, I have changed it to  
"Select Table which has Stream Events (ex: Table used in Save Stream )"

I am marking this as fixed. This is the only thing which can be fixed.
Comment 3 jlautz 2008-10-23 17:52:19 UTC
I would like to revisit this as a usability and aesthetic issue, so am reopening as an enhancement.

In the cases where the user is likely to use an existing table (TableInput, for example), but won't specify attributes
in a selection wizard, the ability to browse for existing table names and pick one is far more polished-feeling than
having to go to other dialogs to figure it out, then come back. If the user is creating a new table, that can be handled
by allowing the user to specify a name instead of browsing to select one (analagous to how file specifications are done).

Again, I'll mention that the inconsistency among the table-related operators is confusing and feels accidental.