Difference between revisions of "Base/Features/Pool"
From Apache OpenOffice Wiki
< Base
B michaelsen (talk | contribs) |
|||
(11 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
The following is a wild collection of ideas for new features (or mere simple improvements) in Base. The order does imply nothing, in particular no priority ... | The following is a wild collection of ideas for new features (or mere simple improvements) in Base. The order does imply nothing, in particular no priority ... | ||
− | The "client" column in the below table is a very rough categorization whether the ''designer'' or the ''user'' of a database/application benefits from the feature. This separation of course does not always exist in reality, since end users tend to design their own database/application, too. | + | The "client" column in the below table is a very rough |
+ | {| cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 1em;" border="1" rules="all" | ||
+ | |- align="left" style="background-color:#cccccc" categorization whether the ''designer'' or the ''user'' of a database/application benefits from the feature. This separation of course does not always exist in reality, since end users tend to design their own database/application, too. | ||
− | |||
− | |||
| '''Ideas''' || '''Client''' | | '''Ideas''' || '''Client''' | ||
|- align="left" style="background-color:#eeeeee" | |- align="left" style="background-color:#eeeeee" | ||
Line 22: | Line 22: | ||
|- | |- | ||
| user interface for HSQL's text table feature (aka reading/writing CSV files) | | user interface for HSQL's text table feature (aka reading/writing CSV files) | ||
− | |||
− | |||
− | |||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
Line 70: | Line 67: | ||
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
− | | styles for form controls | + | | styles for form controls. Also to be used/created by the form wizard. |
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
Line 103: | Line 100: | ||
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
− | | dialog-based forms | + | | dialog-based forms, i.e. forms which are not masked writer documents, but dialogs like the Basic/UNO dialogs, just with the usual database functionality. |
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
Line 127: | Line 124: | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
− | | more convenient default dates in date controls, | + | | more convenient default dates in date controls, preferably with full formula support (=TODAY() etc.) |
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
Line 137: | Line 134: | ||
|- | |- | ||
| storing of ODF files in Base | | storing of ODF files in Base | ||
+ | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
+ | |- | ||
+ | | calculated fields in forms, i.e. form controls which are not bound to a database field, but to a formula such as <code>[items.costs] * (1 - [customer.discount])</code> | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- align="left" style="background-color:#eeeeee" | |- align="left" style="background-color:#eeeeee" | ||
Line 144: | Line 144: | ||
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
− | | SRB should be the standard report engine | + | | SRB should be the standard report engine, i.e. included by default |
+ | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
+ | |- | ||
+ | | support styles in reports (for controls, drawing objects, sections?) | ||
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
Line 178: | Line 181: | ||
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
− | | allow embedding the JDBC driver (.jar) into the database document (.odb) | + | | allow embedding the JDBC driver (.jar) into the database document (.odb), thus making the .odb portable. |
| style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | | style="background-color:#c0c0ff; text-align:center; vertical-align:top" | designer | ||
|- | |- | ||
Line 217: | Line 220: | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
− | | allow updates to arbitrary result sets (tables/queries), no matter whether they include a primary key or unique index | + | | allow updates to arbitrary result sets (tables/queries), no matter whether they include a primary key or unique index. |
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
Line 243: | Line 246: | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
− | | own section "Macros" in the left hand side pane of the application window | + | | own section "Macros" in the left hand side pane of the application window, displaying/managing all macro and script (libraries) embedded in the document |
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
Line 250: | Line 253: | ||
|- | |- | ||
| allow inserting (and thus also displaying) images into tables without a form, i.e. in the table | | allow inserting (and thus also displaying) images into tables without a form, i.e. in the table | ||
+ | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
+ | |- | ||
+ | | make import from a calc table (copy and paste) respect the column format for setting the column type (i.e. using "datetime" if data in calc is formatted as "date") | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
Line 259: | Line 265: | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- | |- | ||
− | | | + | | make the category pane (currently having tables/queries/forms/reports) customizable by extensions |
− | |||
− | |||
− | |||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|- align="left" style="background-color:#eeeeee" | |- align="left" style="background-color:#eeeeee" | ||
| colspan="2" |''Miscellaneous'' | | colspan="2" |''Miscellaneous'' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| colspan="2" | "grokking" of database objects/data (similar to what [http://www.grokker.com/ Grokker] offers) | | colspan="2" | "grokking" of database objects/data (similar to what [http://www.grokker.com/ Grokker] offers) | ||
Line 280: | Line 275: | ||
| style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | | style="background-color:#c0ffc0; text-align:center; vertical-align:top" | user | ||
|} | |} | ||
+ | [[Category:Database]] |
Latest revision as of 09:27, 25 November 2009
The following is a wild collection of ideas for new features (or mere simple improvements) in Base. The order does imply nothing, in particular no priority ...
The "client" column in the below table is a very rough
Ideas | Client |
Tables | |
allow printing a table structure | designer |
have a SQL preview in the table designer, reflecting the DDL necessary to create the current design of the table. This would be a live preview, and should also allow last-minute changes to the statement (before actually sending it to the server)
|
designer |
"lookup fields" in table design, i.e. declare a (foreign key) field to be displayed in a list box. Then use such a list box in all places where the field is to be displayed: table data view, forms, queries. | designer |
link tables from different sources (aka DBs) into one database. | user |
user interface for HSQL's text table feature (aka reading/writing CSV files) | user |
HSQLDB: allow to link in dBase files | user |
copy in the table data view (make it possible to copy a whole dataset and insert them as new dataset at the end of table) | user |
Queries | |
Query design: better support for functions: all supported and known functions should be listed in the respective field, so that e.g. HOUR( | designer |
Query design: function auto pilot | designer |
Query design: cope with "compositions" of SELECT statements
|
designer |
Query design: live preview of the statement even in the graphical view | designer |
Query design: consolidate with the "Execute SQL" dialog:
|
designer |
Query design: support UPDATE/INSERT/DELETE in graphical view | designer |
Query design search and replace in SQL view | designer |
updatable queries based on other queries | user |
Forms | |
templates for forms | designer |
styles for form controls. Also to be used/created by the form wizard. | designer |
a "Button Wizard", which allows easy creation of button controls associated with certain common actions | designer |
more wizards for generatiung code snippets for common tasks | designer |
direct creation of new macros/scripts from within the "Assign action" dialog | designer |
property browser
|
designer |
Add into Form wizard step for editing labels (i85770) | designer |
make the form and control properties window more visible (maybe dockable like the "navigator") | designer |
make attaching macros to controls easier and shorter, currently the dialog is three or four layers deep and I've got to buy a new mouse every now and then ;) | designer |
allow embedding existing forms into a new form (Insert/Form in form design) | designer |
Storing and extracting a binary file: easier way to store binary file accompanied by its file name. Requires complicated macros currently. | designer |
dialog-based forms, i.e. forms which are not masked writer documents, but dialogs like the Basic/UNO dialogs, just with the usual database functionality. | user |
filter list box (more general: filter controls), i.e. a list box which filters the form it belongs to, depending on the user selection | user |
charts in forms | user |
easy possibility to open forms from within forms (without extensive macro knowledge) | user |
click-able fixed text controls ("Hyperlink Controls") | user |
"Click Action Wizard", i.e. a wizard for inserting a button or hyperlink control, and associates a certain common action with this control | user |
allow for "form based workflow", i.e. buttons in forms which open another form, where the second form has a button to return to the first form ... | user |
Better / new integration with other OOo apps. Example - if I store an image in Base, I might want to look / edit / update it via Impress / Draw. | user |
more convenient default dates in date controls, preferably with full formula support (=TODAY() etc.) | user |
sort a table control by the *display values* of a list box. Currently, you can sort by the foreign key only, but not alphabetically by list entries. | user |
A Tab control for forms (and dialogs) | user |
storing of ODF files in Base | user |
calculated fields in forms, i.e. form controls which are not bound to a database field, but to a formula such as [items.costs] * (1 - [customer.discount])
|
user |
Reports | |
wizard for creating a report containing a single chart only | designer |
SRB should be the standard report engine, i.e. included by default | designer |
support styles in reports (for controls, drawing objects, sections?) | designer |
sub reports | user |
support a "CanGrow" property for fields in a report - with the meaning that the respective control (and thus the respective section) will be as high as necessary to display the complete text of the current row | user |
report wizard for single records (for invoices) | user |
Database | |
dedicated UI (wizard) for creating a switchboard | designer |
graphical view of the relationships between database objects
|
designer |
export the complete database/application
|
designer |
better UI for selecting the JDBC driver for a JDBC-based database (e.g. by allowing to enter this as per-.odb property, not in the installation-wide application options) | designer |
allow embedding the JDBC driver (.jar) into the database document (.odb), thus making the .odb portable. | designer |
allow arbitrary documents (not only forms/reports) within a database document | designer |
example database | designer |
graphical creation of "tables as forms", by creating a form whose controls implicitly define the structure of the underlying table: inserting/removing a control inserts/removes the respective table field | designer |
allow to specify a form/report which is automatically opened when the database document opens (with optionally hiding the database document window?) | designer |
when programmatically opening forms/reports, allow passing filter/sort/etc. | designer |
allow protecting forms/reports from unintentional changes (password?) | designer |
A runtime engine for Base applications | designer |
allow opening a DB object (form/report/table/query) via the command line, by passing the DB doc plus the type/name of the object to the OOo process | user |
the DB doc should open itself in the section in which it was closed | user |
improve the usability of the first page of the "New database" wizard | user |
MDI (multiple document interface) application window | user |
support Derby/JavaDB, inclusively using Derby as query ultimate query engine (since Derby already supports JDBC's virtual table interface, i.e. is able to link in (nearly) arbitrary tables from arbitrary external databases) | user |
allow updates to arbitrary result sets (tables/queries), no matter whether they include a primary key or unique index. | user |
allow updates to joined tables | user |
import/export from/to CSV/dBase/Calc/SQL-script
|
user |
supply the MySQL-JDBC driver together with OOo, so MySQL/JDBC connections work out of the box | user |
native driver for accessing MySQL databases | user |
support access to Microsoft Access databases on Unix | user |
allow import/export of forms/reports from/to Microsoft Access databases | user |
search and replace in the table data view | user |
own section "Macros" in the left hand side pane of the application window, displaying/managing all macro and script (libraries) embedded in the document | user |
when connecting to a spreadsheet, re-use the column format (formatting, alginment, etc.) of the spreadsheet cell | user |
allow inserting (and thus also displaying) images into tables without a form, i.e. in the table | user |
make import from a calc table (copy and paste) respect the column format for setting the column type (i.e. using "datetime" if data in calc is formatted as "date") | user |
Native support for
|
user |
make the category pane (currently having tables/queries/forms/reports) customizable by extensions | user |
Miscellaneous | |
"grokking" of database objects/data (similar to what Grokker offers) | |
implement mail merge with reporting => implies "free flow" reports | user |