Problems importing an OO database into LO

Mark Stanton wrote

> I'm almost thinking of installing something like MySQL and writing my
own
> front-end in Java.

I'm sorry if I'm being slow, or not following the conversation properly
(lots going
on here at the moment), but, if you're thinking like that, what's wrong
with Base?
The things you'd need to do, Base does.
The things that approach won't get you, something to present your data,
you'd
use Writer/Calc for.

The two problems I've registered (which have a multitude of subsidiaries,
I know,
I'm not trying to say Base is great yet, it's clearly not), is that the
whole thing
crashes, the answer is use a back end not the embedded system, and the
wizards
are cr*p, building your own front end to (eg) MySQL won't help you there.

Andreas' approach of writing queries and setting up Writer documents to
use them
does what you want, doesn't it?

Writing documentation for this approach would be a good idea to broadcase
these
ideas.

Mark Stanton

I think I'm being misunderstood here. I've never mentioned trying to link
Base and Word - that's not something I want to do. All I originally asked
about was an incorrect display of a query in a form. This has been ignored
in the general discussion on the suitability or Base as a general-purpose
user-oriented database front-end and in its future development. I've said my
two pen'orth on that subject, as I'm certainly not competent to discuss the
politics involved. So will shut up here.

Am 19.04.2012 13:00, ptoye wrote:

Mark Stanton wrote

I think I'm being misunderstood here. I've never mentioned trying to link
Base and Word - that's not something I want to do.

You do it all the time. All of your input forms are attached to Writer documents.

  All I originally asked

about was an incorrect display of a query in a form.

and you received at least two viable solutions although nobody was able to reproduce the problem.

Andreas Säger wrote

Am 19.04.2012 13:00, ptoye wrote:

I think I'm being misunderstood here. I've never mentioned trying to link
Base and Word - that's not something I want to do.

You do it all the time. All of your input forms are attached to Writer
documents.

  All I originally asked

about was an incorrect display of a query in a form.

and you received at least two viable solutions although nobody was able
to reproduce the problem.

One of the solutions was my own: to continue using OO (which at the moment I
am, but is not exactly a solution to the technical problem). The other was
your workaround.

No-one here said they couldn't reproduce it as far as I can see, though of
course it may be true. I'd be willing to upload the database here if anyone
would like to try it out on their system. It might be a configuration issue,
though I can't quite see how.

After the short discussion about the technical problem I had, this thread
turned into a discussion of the relationship between LO and OO, and of the
shortcomings (or otherwise) of Base, about which I am not qualified to
comment.

LibO-folks,

From this long and very interesting thread and some other discussions on this mailing list too, together with my own recent experiences, there is only one main conclusion to draw:

There is no real future forLibO's Base module, perhaps not for the whole LibO suite.

From a non-expert user's perspective there are in fact two versions of LibO-Base

A >a "Light-LibO-Base" => a package consisting of LibO-Base as a front-end GUI and an embedded db-engine HSQKDBv1.8. This package is (could be) suitable for up to medium complex databases and be used by 'ordinary' people (like me) who does not have own skills in programming or developing or in SQL or other languages (PHP, HTML, etc.) -- who plainly want to create a database following instructions mechanically

B > an "Advanced-LibO-Base => the LibO-Base module to be used as a front-end GUI connected to an external db-engine and that can be used by people with own knowledge in programming anddb-theories and SQL and who have a good knowledge of the whole LibO's build-up,preferable in the linux environment

The "Light-LibO-Base" will fail because it is like a car without a gear box: you can open it and start it but not use it as intended

Øthe installing procedure of Lib-O causes problems because of unclear instructions

Øthe LibO-Base module as a program is half done;even basic features does not work

Øthere is no documentation explicit for LibO-Base -- and will obviouslynot be;

Users have to rely on OpenO documentation why there is no logical reason to install LibO (ordinary new users does not know about any differences between LibO and OO -- and do not know why to seek)

Øthe LibreOffice Help is a disaster -- a user new to LibO does not get any (direct) help

Øthe embedded HSQLv1.8 is out-of-date and causes frustration and waste of time because the lack of easy to get and sufficient support

Øthe reports is a important part of the data output; there is no Report Builder explicit for LibO-Base or one that works properly

Øthese problems all together are too difficult and time wasting for a new user why he begins to look for easier ways to solve his need of a database, other than LibO-Base

Øthe BoD is not interested in investing in that part of users

The "Advanced-LibO-Base" will fail because:

Øthe Base module as a program is half done (as above) -- can be used only of that minority of users who have the skill to do their own programming to get around problems and failures

Øwho have the skill to use "real" externaldatabases (e.g. SQL)

Øthe connection LibO-Base óexternal db does not work (if not recently fixed)

Øthe BoD is not interested in investing in Base

In not so very far future -- if a total destruction is excluded - our whole world will be computerized, which means that every household must have a computer and at least the most necessary programs for communication (writing, mailing, internet) and calculating and perhaps databases. Most of these private households have to or will prefer to use freeware programs instead of commercials provided that the use is easy, free of any problems and does not require special skills.

The fact that MS is a 95% market leader has to be accepted; MS dictates the standards and it's products work well enough. The only real possibility for anyone to compete MSO is a free (low cost) and perfectly functioning product that gets a total acceptance by the children in these grass level households.

The application that these children get used to at home and in school will cause the real press on commercial programs also in business.

Considering a possible common aim to compete the commercials, it is a waste of valuable resources when open source developersoverlap or compete each others . Cooperate globally?

LibO can only hope that the BoD will review its strategy planning or change the members.

Best regards

Pertti Rönnberg

Am 19.04.2012 20:45, Pertti Rönnberg wrote:

LibO-folks,

From this long and very interesting thread and some other discussions
on this mailing list too, together with my own recent experiences, there
is only one main conclusion to draw:

There is no real future forLibO's Base module, perhaps not for the whole
LibO suite.

From a non-expert user's perspective there are in fact two versions of
LibO-Base

A >a "Light-LibO-Base" => a package consisting of LibO-Base as a
front-end GUI and an embedded db-engine HSQKDBv1.8. This package is
(could be) suitable for up to medium complex databases and be used by
'ordinary' people (like me) who does not have own skills in programming
or developing or in SQL or other languages (PHP, HTML, etc.) -- who
plainly want to create a database following instructions mechanically

B > an "Advanced-LibO-Base => the LibO-Base module to be used as a
front-end GUI connected to an external db-engine and that can be used by
people with own knowledge in programming anddb-theories and SQL and who
have a good knowledge of the whole LibO's build-up,preferable in the
linux environment

I can hardly see any difference between A and B. The embedded HSQLDB behaves exactly like an external DB. When you "open the embedded database document" you actually _install_ an external HSQLDB and connect the office suite to that _external_ database in cached mode (single user on local machine) until you "close the database document" which re-packages the external database.
IMHO, nobody needs to know anything about macro programming in order to build useful database applications with Base. The vast majority of Base macros are due to bad database design, save one or two clicks or they are made to impress the boss.
There are plenty of macros for generic tasks. All the most desperately wanted macros have been written already (clone records, refresh this and that, open forms and reports, open text as hyperlink).
What I would describe as "Base light" is the ability to use spreadsheets, csv files, dBase files, LDAP and popular mail client address books as read-only data sources for office documents, mostly mail merge.
This is the most important feature and the concept is superior to MS Office if there is a computer knowledgable administrator able to work with templates, spreadsheets, plain text and some SQL in a creative manner. For the end user who writes a serial letter the type of data source makes no difference at all. It is always used in the same (slightly clumsy) way, no matter if the addresses come from Oracle server or plain text file.

The "Light-LibO-Base" will fail because it is like a car without a gear
box: you can open it and start it but not use it as intended

Øthe installing procedure of Lib-O causes problems because of unclear
instructions

Øthe LibO-Base module as a program is half done;even basic features does
not work

Base is not a stand-alone program and all the _basic_ features do work well. The database backend is a mature database program, most of the rest belongs to the Writer component.
There is just too much dysfunctional junk on top of the basic database functionality which does not add any additional functionality. Everything that the wizards are supposed to do can be done without the wizard.
Today's users are do not accept any _basic_ features in a highly sophisticated office suite, no matter how well the basic features use to work. Instead they complain about the dysfunctional rubbish.

Øthere is no documentation explicit for LibO-Base -- and will
obviouslynot be;

There is excellent documentation for OOo Base which is identical to LibO Base. Main problem with documentation is that today's computer users overestimate their skills and do not understand the difference between end user applications and development tools. This type of office suite suggest that each component should be as easy to use as the text processor.

Users have to rely on OpenO documentation why there is no logical reason
to install LibO (ordinary new users does not know about any differences
between LibO and OO -- and do not know why to seek)

Øthe LibreOffice Help is a disaster -- a user new to LibO does not get
any (direct) help

LibO documentation on Base is plain wrong and misleading. Simply point to the existing OOo docs or copy and paste that stuff.

Øthe embedded HSQLv1.8 is out-of-date and causes frustration and waste
of time because the lack of easy to get and sufficient support

There are not many users who suffer from the limited capabilities of HSQL1.8. A high risk of total data loss is the main reason why one must not use the embedded database. Getting an embedded database out of the jail is easy enough.

Øthe reports is a important part of the data output; there is no Report
Builder explicit for LibO-Base or one that works properly

Calc is a very good sorrogate for a report engine even if you are not very familiar with spreadsheets. It supports charts, pivot tables, conditional formatting and more.
The old report engine for Writer is still there. We can open "old style reports" that have been created without Report Builder. Unfortunately the bundled Report Builder extension makes the old report tool inaccessible.
You may try to disable the extension and create a new report then. I forgot how to disable bundled extensions. So I can't try right now.

Øthese problems all together are too difficult and time wasting for a
new user why he begins to look for easier ways to solve his need of a
database, other than LibO-Base

The average office user can not design databases anyway. MS Access users rely on a heavy weight tool set. They are completely helpless when they are confronted with any other database.
Unfortunately, all that misleading rubbish in LibO looks similar to MS Access but without working as in MS Access. Same problem with some Calc features that had been added to LibO 3.4, btw.

Øthe BoD is not interested in investing in that part of users

There is no need to invest too much. Remove all the broken and incomplete GUI tools, keep the connectivity and form controls for the experts. No functionality will be lost.
For the usual mail merge the current query designer is sufficient.
The plain old report wizard (but not the overambitious Report Builder) should be re-enabled for all Writer documents.

The "Advanced-LibO-Base" will fail because:

Øthe Base module as a program is half done (as above) -- can be used
only of that minority of users who have the skill to do their own
programming to get around problems and failures

Again, I hardly use any macros at all in the context of Base. Generally speaking, databases are too abstract for the vast majority of today's computer users who can not deal with generic software tools. They need tools that do exactly what they need right now (they call them "apps" nowadays).

Øwho have the skill to use "real" externaldatabases (e.g. SQL)

Øthe connection LibO-Base óexternal db does not work (if not recently
fixed)

I only work with external databases (HSQLDB and H2) and I know that others use Base with MySQL. Millions of OOo/LibO users use Base with a spreadsheet as external pseudo-database.
Many users don't know that they are using Base because the mail merge wizard hides the fact that it establishes a database connection (to a spreadsheet in most cases).

Øthe BoD is not interested in investing in Base

In not so very far future -- if a total destruction is excluded - our
whole world will be computerized, which means that every household must
have a computer and at least the most necessary programs for
communication (writing, mailing, internet) and calculating and perhaps
databases. Most of these private households have to or will prefer to
use freeware programs instead of commercials provided that the use is
easy, free of any problems and does not require special skills.

Everybody uses databases each and every day online. Whenever you connect to facebook, ebay or youporn you use some database, mostly MySQL. The cloud will do all the nasty work for you in the near future.

The fact that MS is a 95% market leader has to be accepted; MS dictates
the standards and it's products work well enough. The only real
possibility for anyone to compete MSO is a free (low cost) and perfectly
functioning product that gets a total acceptance by the children in
these grass level households.

In the last years I only saw totally incompetent MS Office users struggling with their own endlessly nested hard formatting attributes and working against the ribbon.
Whenever I was forced to co-edit formatted text or spreadsheets with MSO users I was the one who kept a "master copy" and pasting the modified content as plain text into my ODF layouts.
Within our own small business we use 100% ODF simply because I am the one who does the templates. Output goes to the printer or PDF, weird MSO input can be loaded into the free MS readers. I consequently reject all OOXML sent to me personally. I am in a priviledged situation and I make use of it.

The application that these children get used to at home and in school
will cause the real press on commercial programs also in business.

The kids would not learn anything from LibreOffice neither. All I know about office software I learned with MS Office and books about MS Office (the "professional" version with Access included). Non-IT persons do not read books on software although the software has become much more sophisticated.

Considering a possible common aim to compete the commercials, it is a
waste of valuable resources when open source developersoverlap or
compete each others . Cooperate globally?

Who cares? In the upcoming decade of the 20ies this sort of text processing and spreadsheets will cease to exist.

Hi Perrti,

From this long and very interesting thread and some other
discussions on this mailing list too, together with my own recent
experiences, there is only one main conclusion to draw:

There is no real future forLibO's Base module, perhaps not for the
whole LibO suite.

I think you make some interesting points, but are too despondent.

Leaving "the whole suite" aside, I think there is a very real future
for database use here. We have the ability to make it the way we
want it. The converation *does* point to the idea that the future of
this probably needs to be rather different from (at least some of)
the past.

Mark Stanton
One small step for mankind...

One for you.

Much users even don't read the program's help.
A light read over all the help, shows very well what the program can do and how, many samples there, and also can solve the majority of the cuestions on daily use.
To drive a car is needed a license, in other words known the rules. Nobody was born learned.

Miguel Ángel.

OK Andreas (or anyone else) - for those of us not so good at this how about a detailed Tutorial on doing this??

Right here....

Step 1 --------
Step 2 --------
Step 3 --------

etc

(??)

Best regards

IanW

Hi Ian,

The easy version is :-

1) Open your database with the HSQLDB embedded data.
2) In a separate window, create a new database with any other kind of
   data engine.
3) Drag the tables from the embedded database to the new database,
   one by one.
4) Drag any other objects from the old database to the new one, too.

I'm guessing that the important bit that you need there is missed
out, the "how to create and link up to A.N.Other database".

Whilst there are several of those, multiplied by the possible access
methods, and perhaps even the possible operating systems, we ought to
be able to produce the details for each type.

If I'm right about this, then I'll go on to turn out step-by-step's
for those.

Would that be the thing that what make it useful?

Regards
Mark Stanton
One small step for mankind...

Am 20.04.2012 10:48, Ian Whitfield wrote:

There are not many users who suffer from the limited capabilities of
HSQL 1.8.
A high risk of total data loss is the main reason why one must not use
the embedded database. Getting an embedded database out of the jail is
easy enough.

OK Andreas (or anyone else) - for those of us not so good at this how
about a detailed Tutorial on doing this??

Right here....

1) Download and extract the latest HSQLDB to some place. No installation required.
2) Point the "Class Path" setting in the LibreOffice Java options to hsqldb.jar in your subdirectory "lib".
3) Extract the database folder out of your embedded .odb.
4) Rename the files:
  properties, script, backup, data
to:
  foo.properties, foo.script, foo.backup, foo.data
where "foo" is just an arbitrary name.
5) Connect a new Base document to a JDBC data source with an URL like:
jdbc:hsqldb:file:/path/to/extracted/database/foo;default_schema=true
(the "foo" refers to the same database name I used as file name prefix)
6) Copy queries, forms and reports from the old embedded .odb to the new one.

Slightly more details and links in:

http://user.services.openoffice.org/en/forum/viewtopic.php?f=61&t=46324&p=214069&hilit=hsqldb#p214049

For multi-user access you can start the hsqldb.jar in server mode and connect the .odb clients with something like
jdbc:hsqldb:hsql://192.168.0.2/foo;default_schema=true

Mark:
     This will work for any database engine other than a HSQLDB 2.x
version. Once the newer hsqldb.jar has been added as a Class Path
(Options > LibreOffice > Java) to LO, that version will not open any of
the embedded Base databases. (You can not access hsqldb as an external
database until you do this.) This has to be done a different way. I have
tried to open all of my embedded databases with LO 3.4.5 after I had
added the 2.2.8 hsqldb.jar as a Class Path. All gave me an error
message. I had no problems opening them using LO 3.5.2. Since that time,
I could open these embedded databases using LO 3.4.5 as another user
(same computer same OS). Opening an embedded database in one LO version
and connecting to hsqldb in another does not allow copying and pasting
between these two. Drag and drop does not work either.
    I think that this is the problem faced by Base when hsqldb issued
new versions: no backward compatibility.
    In this case, the database document file has to be unzipped and the
files places in a new folder. The path URL for this data is
<<path to the folder>>/<<database name>>/. Files have to be renamed.
(I'm not sure how many of these require this.) They include script, log,
properties, and data. For the database named abc, these files are
renamed to abc.script, abc.log, abc.properties, and abc.data
respectively. There are more things that need to be done than this.

--Dan

Miguel,
May I correct you, you do not need a license for driving a car! When my son was 10 he had no license but I let him test driving my car!
But if you do not know the features of it, e.g. how to handle the gears, then you may study the Instruction Book, the User's Manual or whatever it is called.

Just to avoid misunderstanding: I am talking about LibreOffice and it's LibreOffice Help -- not OpenOffice's.
When I was new to LibO(-Base) I spent hours on trying to learn the logic of LibreOffice Help.
Try your self:
Let us say that you need to create a form (Base) in Design View based on a query , because you need fields from two tables in one of which you have a 'birthday' field that you want to be calculated as 'age' and want that age field visible on the form.
You know how to do in MSAccess but not in LibO-Base.
Start by pushing the LibreOffice Help button (lifebuoy)
Good luck!
Pertti Rönnberg

Thanks Andreas

OK
Step 1. Done (I downloaded and extracted hsqldb 2.2.8 to my 'software' folder)
Step 2. The lib folder is under root and all files are grey-ed out in Class Path??
              I then looked at my 'software' folder and found it there.
              Tried to set 'Class Path' to this but again all files are grey-ed out.

             Did a search across my whole drive and found the following 3 files
             /home/ian/software/hsqldb-2.2.8/hsqldb/lib/hsqldb.jar
             /opt/libreoffice3.5/programs/classes/hsqldb.jar
             /opt/libreoffice3.5/programs/classes/sdbc_hsqldb.jar

Where to now?

Thanks for the help!!

IanW

Hi :slight_smile:
The in-built help is a bit rubbish and out-dated but the official documentation is fairly excellent. 
http://wiki.documentfoundation.org/Documentation/Publications
http://www.libreoffice.org/get-help/documentation/
The guides on the official page are the same as the ones on the wiki but the wiki has more guides and links to 3rd party documentation too.

The official website only has the guides for 3.3.x branch but the wiki has a load of things that have only recently been added for the 3.4.x branch.

The problem with the in-built help is that 2 teams each thought it was the other team's job to update.  The docs team doesn't seem to have permissions or access to the in-built help but even if they did then they are a tiny group and are a bit swamped so they have focused on the guides for now.  Anyone that wants to join the docs team is very welcome!
Regards from
Tom :slight_smile:

Pertti, the problem is, that software usability today in most cases is still
far from being intuitive.

So the analogy with the car does not seem appropriate. Better take a Jumbo
Jet's cockpit. Even if you don't want to fly it, but just to roll across the
airport, you need to know awfully lots of things to move the plane.

The challenge is to use LibreOffice despite of its shortcomings :wink:

Nino

I fully share this. Though some (eyes looking to Redmond) claim computing is "intuitive", I'm seeing everyday that it is *not* and that using a computer *requires* training.

Hi :slight_smile:
I think that's a tad unfair.  People have grown-up learning MS's ways of doing things and so "intuitive" means doing things MS's way, ie the ways that encourages a proliferation of viruses and causes slowdowns and encourages bad-habits.

A blank page in a Writer document looks like it's going to be fairly easy to write in and it is as long as people can avoid the bad habits they have picked up and perhaps even quickly skim through some of the official documentation or look things up in it if their first few tries are not instantly successful
Regards from
Tom :slight_smile:

Try "Add File" (freely translated from my FR interface) first (point to the directory where your .jar lies) then, when back to the Class Path window, use "Add Archive". You should be set now.

Hi :slight_smile: I think that's a tad unfair. People have grown-up learning
MS's ways of doing things and so "intuitive" means doing things MS's
way, ie the ways that encourages a proliferation of viruses and
causes slowdowns and encourages bad-habits.

Intuitive? Hu. From Wikipedia: "Intuition is the ability to acquire knowledge without inference or the use of reason."

I do not know of *any* computer or computer program that can be run without inference or the use of reason.

Any time I hear "intuitive" within the IT context, I jump to a gun.

A blank page in a Writer document looks like it's going to be fairly
easy to write in and it is as long as people can avoid the bad habits
they have picked up and perhaps even quickly skim through some of the
official documentation or look things up in it if their first few
tries are not instantly successful

To do that, they need training. Much training. First to forget that a computer is no typewriter, then to change their (bad) habits.

Hi :slight_smile:
+1
I can definitely agree with this!  Well said! :slight_smile:
Regards from
Tom :slight_smile: