Developing a fully-fledged dabase application

Discuss the database features
Post Reply
User avatar
DonnEdwards
Posts: 2
Joined: Sat Dec 15, 2007 1:12 am
Location: Johannesburg, South Africa

Developing a fully-fledged dabase application

Post by DonnEdwards »

I'm a newbie to oBase, but I have been programming in Access97 for the last 10 years. I'm finding the learning curve a bit steep, so please forgive my ignorance while I RTFM. In the meantime I'd like to ask some general questions:

1. How does one build an opening menu and get it to become the first thing a user encounters on double-clicking a .odb file?

2. How can I generate a whole bunch of test records? I want to create a table and then fill it with, say, a million records, and see how fast it manages to do things. I know how to create a recordset in Access, but still haven't found how to do this in oBase. Any pointers would be most useful.

3. I'd like to create a record edit form with tabbed pages on it, so that the information on a Customer, say, could be divided up into sections, with each section on a different page. Some tables I use have lots of fields with a variety of stuff in them, and at present the only way I can see to do this is to list them one below the other and allow the user to scroll down. Is there a tabbed pages control, or some other method of doing this?

4. How does one link to external libraries, in say Java? I have some Visual Basic libraries I use for encryption, but clearly I can't use those. If I find equivalent stuff written in Java, can I use them in my program?

5. How does one format text in a memo field, and is this advisable?

I look forward to any and all suggestions. Thanks in advance.
Donn Edwards
OOo version 2.3.1 on WinXP
Database developer: Access97, SQL Server, VB6, now learning OOo
User avatar
Villeroy
Volunteer
Posts: 31289
Joined: Mon Oct 08, 2007 1:35 am
Location: Germany

Re: Developing a fully-fledged dabase application

Post by Villeroy »

DonnEdwards wrote:I'm a newbie to oBase, but I have been programming in Access97 for the last 10 years. I'm finding the learning curve a bit steep, so please forgive my ignorance while I RTFM. In the meantime I'd like to ask some general questions:
Base is not a replacement for Access. In my opinion it is a fairly usable
frontend for many third party databases. As soon as your frontend deserves
the description "database application" you should be prepared to implement
even the most trivial stuff by your own code.
The native, embedded single-file database is nothing more than a failed proof
of concept. A native database is mainly a zip archive with embedded writer
documents(forms and reports) together with binary data representing a hsqldb database (http://www.hsqldb.org).
There have been too many problems regarding performance and data
loss with embedded hsqldb.
Hsqldb lacks some functions. Developers can add them easily through Java,
however there is no easy way to distribute your OOo-database together with your Java-extensions.
The embedded hsqldb has a single super-user only.
There is no odbc/jdbc driver to read data from Base into third party applications.
You can draw forms onto embedded Writer documents or any other stand-alone
document. Forms may include related sub-forms together with the usual set of simple form
controls. Some controls require heavy scripting for trivial actions such as default
values and filter by list box.
DonnEdwards wrote: 1. How does one build an opening menu and get it to become the first thing a user encounters on double-clicking a .odb file?
Create a Basic dialog with code. Currently you can do this on application
level and for embedded Writer docs (forms/reports). The latter always raises
a macro-security warning since the embedded document is not saved in a
trusted location. Future versions will allow you to create dialogs and code on
database level.
DonnEdwards wrote: 2. How can I generate a whole bunch of test records? I want to create a table
and then fill it with, say, a million records, and see how fast it manages to
do things. I know how to create a recordset in Access, but still haven't found
how to do this in oBase. Any pointers would be most useful.
Use Menu:Tools>SQL... for all kinds of "action queries". The engine of the
embedded database is documented at http://www.hsqldb.org. You can import csv.
DonnEdwards wrote: 3. I'd like to create a record edit form with tabbed pages on it, so that the information on a Customer, say, could be divided up into sections, with each section on a different page. Some tables I use have lots of fields with a variety of stuff in them, and at present the only way I can see to do this is to list them one below the other and allow the user to scroll down. Is there a tabbed pages control, or some other method of doing this?
No tabbed pages with Basic dialogs. Dialogs provide steps to be used with
"next" and "back". Each step provides a set of controls, visible at the same
time. Step zero shows them all. If you place a set of toggle-buttons on top of
your dialog the whole ting may look like a tabbed dialog. I could provide a
generic set of Basic macros to control the whole thing ...
DonnEdwards wrote: 4. How does one link to external libraries, in say Java? I have some Visual Basic libraries I use for encryption, but clearly I can't use those. If I find equivalent stuff written in Java, can I use them in my program?
Don't know.
DonnEdwards wrote: 5. How does one format text in a memo field, and is this advisable?
Don't know.
Please, edit this topic's initial post and add "[Solved]" to the subject line if your problem has been solved.
Ubuntu 18.04 with LibreOffice 6.0, latest OpenOffice and LibreOffice
User avatar
DonnEdwards
Posts: 2
Joined: Sat Dec 15, 2007 1:12 am
Location: Johannesburg, South Africa

Re: Developing a fully-fledged dabase application

Post by DonnEdwards »

Many thanks for your insights and warnings. Everything helps. Much appreciated.

I look forward to any other insights and advice, good or bad.
Donn Edwards
OOo version 2.3.1 on WinXP
Database developer: Access97, SQL Server, VB6, now learning OOo
Post Reply