Bug 124680 - Database created from ODS file vanishes from Data sources (Ctrl+Shift+F4) if added with "exchange database"
Summary: Database created from ODS file vanishes from Data sources (Ctrl+Shift+F4) if ...
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.0.0.0.alpha0+
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-04-11 10:02 UTC by dioxaz
Modified: 2019-05-29 20:20 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
Video showing the described behavior in action (imported database vanishes live twice during this capture) (9.12 MB, video/mp4)
2019-04-11 10:03 UTC, dioxaz
Details
Calc-table as datasource for testing (8.14 KB, application/vnd.oasis.opendocument.spreadsheet)
2019-05-29 20:20 UTC, Robert Großkopf
Details

Note You need to log in before you can comment on or make changes to this bug.
Description dioxaz 2019-04-11 10:02:23 UTC
Description:
At the organization I work for, we usually do our mail merges with LibreOffice Writer by:

- creating our ODS source file with Calc
- importing the ODS source using the "exchange database" function from the "Edit" menu in Writer (browsing the ODS file, then selecting the proper table then clicking "Define")
- dragging the database fields from the "Data sources" window (Ctrl+Shift+F4) then dropping them into our ODT document 

It used to work perfectly until version 5.4.2 included. It no longer does with version 6.0 and later (described behavior blow starts occurring even from earliest alpha builds).

Regardless of the environment (tested with Windows and Linux), the imported database disappears by itself from the "Data sources" window at some point and is no longer registered:

- either in the middle of inserting fields from the imported database
- or when selecting a portion of the text and hitting [Del] whether the selection contains a previously inserted field or not
- or when inserting a custom date field, unrelated to the database I'm using
- or when restarting Writer (even though it didn't vanish while inserting the fields, it's totally gone after restarting)

I tested this with latest available Evolution version in Windows (6.2.2 as I'm writing this) and the problem still persists. I also tested with various profiles, even brand new ones and the problem persists.

However testing this same exact procedure with LibreOffice 5.4.2 didn't yield the problem. It seems to have started from version 6.0 onwards, including alpha builds.

Important note about that behavior. When the database vanishes, its matching ODB file automatically created within the "My documents" folder is still there. It's only completely de-registered, as if I deleted it manually from "Tools > Options > LibreOffice Base" ("Registered databases" window) except I didn't.

Also, using the "Mailing assistant" to import the ODS source doesn't yield the problem. Going into "Tools > Options > LibreOffice Base" ("Registered databases") and renaming the freshly imported database from there actually prevents the problem from happening. When the database is renamed to everything but its original name, it stays registered, doesn't vanish and keeps appearing in "Data sources" even after restarting Writer.

I have no idea why only databases imported with the "exchange database" feature yield this behavior starting from LibreOffice 6 if we don't rename them manually afterwards.

The problem is perfectly reproducible as I was able to capture it on video multiple times.

Did we perform a deprecated procedure until now? Is there something I might have forgot? If so, it seems strange that only LO 6+ does this.

For the moment, renaming the database in from "Tools > Options > LibreOffice Base" ("Registered databases") is necessary to prevent databases imported from ODS files using "exchange database" from disappearing or de-registering by themselves.

Steps to Reproduce:
1. create an ODS source file with Calc
2. import the ODS source using the "Edit > Exchange database" function in Writer (browse the ODS file, then select the proper table and finally clicking "Define")
3. Open the Data sources window (Ctrl+Shift+F4) then drag the fields from there  in order to drop them to your ODT document 
4. (optional) save your mail-merged document, then restart Writer

Actual Results:
The imported database vanishes by itself while dropping the fields or after hitting the [Del] key within the ODT document or after inserting a custom date field. If not, it's not present anymore after restarting Writer.

Expected Results:
The database should not vanish or disappear by itself, regardless of the manipulations done within the ODT file or after restarting Writer if not manually renamed in "Tools > Options > LibreOffice Base" ("Registered databases" window).


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Comment 1 dioxaz 2019-04-11 10:03:54 UTC
Created attachment 150690 [details]
Video showing the described behavior in action (imported database vanishes live twice during this capture)
Comment 2 dioxaz 2019-04-11 10:24:29 UTC
Comment on attachment 150690 [details]
Video showing the described behavior in action (imported database vanishes live twice during this capture)

Environment used to create this capture:
- OS: Kubuntu 18.04.2 LTS
- Software: Libre Office Writer 6.0.7.3

More details about the Libre Office version used in this capture:
Version: 6.0.7.3
Build ID: 1:6.0.7-0ubuntu0.18.04.2
Threads CPU : 4; OS : Linux 4.15; UI Render : par défaut; VCL: kde4; 
Locale : fr-FR (fr_FR.UTF-8); Calc: group
Comment 3 dioxaz 2019-04-11 10:26:40 UTC
Comment on attachment 150690 [details]
Video showing the described behavior in action (imported database vanishes live twice during this capture)

Environment used to create this capture:
- OS: Kubuntu 18.04.2 LTS
- Software: Libre Office 6.0.7.3

More details about the Libre Office version used in this capture:
Version: 6.0.7.3
Build ID: 1:6.0.7-0ubuntu0.18.04.2
Threads CPU : 4; OS : Linux 4.15; UI Render : par défaut; VCL: kde4; 
Locale : fr-FR (fr_FR.UTF-8); Calc: group
Comment 4 Robert Großkopf 2019-05-26 13:32:20 UTC
Could confirm the buggy behaviour. 

If I try 
Edit > Exchange Database
there will be created a *.odb-file in path of "My Documents". This *.odb-file will be registered as database during this session, but won't be saved.

All tested with LO 6.2.4.2 on OpenSUSE 64bit rpm Linux.

Note: There are more buggy behaviours of this wizard. I will try to report them in different bugreports.
Comment 5 Xisco Faulí 2019-05-27 13:56:58 UTC
I can't reproduce it in

Version: 6.2.5.0.0+
Build ID: 0d657498080aad86f4b97309fff9bf589c57dc2e
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US
Calc: threaded

Please attach a sample document, as this makes it easier for us to verify the bug. 
(Please note that the attachment will be public, remove any sensitive information before attaching it. 
See https://wiki.documentfoundation.org/QA/FAQ#How_can_I_eliminate_confidential_data_from_a_sample_document.3F for help on how to do so.)
Comment 6 Robert Großkopf 2019-05-29 20:20:15 UTC
Created attachment 151768 [details]
Calc-table as datasource for testing

You only need a simple calc-table for testing.

Open a new Writer-document.
Go to Edit > Exchange Database.
Choose "Browse" and have a look for the *.ods-file.
Choose "Tabelle 1" from "Quelle_Adressen" and set "Define".
The database has been changed for this document. You could control this as "Quelle_Adressen" under 
Tools > Options > LibreOffice Base > Databases
where you could also find the path to the new created *.odb-file.
Save the Writer-file and close the Writer-file.
Reopen the Writer-file. Have a look at 
Tools > Options > LibreOffice Base > Databases
The database has been gone. The file is already in the folder "Documents" but there is no connection to the *.odb-file at all.