Bug 60232

Summary: Possibility to update bibliography references from bibliography database
Product: LibreOffice Reporter: Ondrej Koncek <konda>
Component: WriterAssignee: Not Assigned <libreoffice-bugs>
Status: NEW --- QA Contact: Jorendc <jorendc>
Severity: enhancement    
Priority: high CC: bbaten, bfo.bugmail, bz-freedesktop, f.alexander.wilms, iplaw67, vulcain
Version: Inherited From OOo   
Hardware: Other   
OS: All   
See Also: https://issues.apache.org/ooo/show_bug.cgi?id=44189
Whiteboard: BSA
i915 platform: i915 features:

Description Ondrej Koncek 2013-02-03 14:28:23 UTC
Problem description: 
TABLE OF BIBLIOGRAPHY (isert > indexes and tables > indexes and tables > type: bibliography) is not updated properly after you fill the new ITEM (eg. Author(s) or Chapter or any other) in already inserted BIBLIOGRAPHY RECORD of the BIBLIOGRAPHY DATABASE (tools > bibliography database).


Steps to reproduce (to clarify description):
1. open libreoffice writer and write some text

2. insert the new RECORD into the BIBLIOGRAPHY DATABASE (tools > bibliography database > add new record into the biblio: fill "short name" eg. "test", select type (eg. "book"), "year", and "title". DO NOT fill field eg. "Author(s)". For example you forget (or skip) to fill "Author(s)" by mistake.

3. Close BIBLIOGRAPHY DATABASE window

4. go into the text and insert BIBLIOGRAPHY ENTRY from the BIBLIOGRAPHY DATABASE (insert > indexes and tables > bibliography entry > choose "from bibliography database" > select the name of the bibliography entry "test" in the Short name box > press "Insert")

5. Insert TABLE OF BIBLIOGRAPHY into the end of the document  (insert > indexes and tables > indexes and tables > type: bibliography > click OK

6.  Now you discover your mistake (author name is missing in the inserted BIBLIOGRAPHY TABLE). 

7.  add item "Author(s)" in the BIBLIOGRAPHY RECORD (tools > bibliography database > select your RECORD "test" > fill item "Author(s)".

8. Close BIBLIOGRAPHY DATABASE window

9. Update TABLE OF BIBLIOGRAPHY in the document: right click on the TABLE OF BIBLIOGRAPHY > Update Index/Table

10. After that author name is NOT shown (updated) in the TABLE OF BIBLIOGRAPHY (although you added Author(s) name into the BIBLIOGRAPHY RECORD)

11. To be shown the Author name in the updated BIBLIOGRAPHY TABLE, you need to go into the text, delete the BIBLIOGRAPHY ENTRY from the text and insert it once more (repeat step 4). And then repeat step 9.
Neither updating BIBLIOGRAPHY ENTRY in the document (by pressing key F9), nor closing and opening the whole document helps. BIBLIOGRAPHY ENTRY has to be deleted and inserted once more to perform changes.

Current behavior:
NO NEW filled item in the BIBLIOGRAPHY RECORD is SHOWN in the TABLE OF BIBLIOGRAPHY after its update.

Expected behavior:
Filling a new item in the BIBLIOGRAPHY RECORD caused change in the TABLE OF BIBLIOGRAPHY after update.

I am not sure if it is a real bug (maybe it is just a feature) but it is really user UNfriendly mainly in huge document.

              
Operating System: Ubuntu
Version: 3.6.4.3 release
Comment 1 bfoman 2013-11-16 17:18:02 UTC
*** Bug 71675 has been marked as a duplicate of this bug. ***
Comment 2 bfoman 2013-11-16 17:25:44 UTC
*** Bug 53165 has been marked as a duplicate of this bug. ***
Comment 3 bfoman 2013-11-16 17:26:35 UTC
Marking as NEW per duplicate issues.
Comment 4 Jorendc 2013-12-19 14:48:56 UTC
(In reply to comment #0)
> I am not sure if it is a real bug (maybe it is just a feature) but it is
> really user UNfriendly mainly in huge document.

I can't agree more. Lets make an enhancement request of this. I can see the use-case of _NOT_ updating it too... But I think it's more needed then non-needed.
Comment 5 Jorendc 2013-12-19 17:36:48 UTC
As far I understand the code, and what also is mentioned in the Apache
bug: there is no link between the reference field and bibliography database.

While selecting "from bibliography database" when creating a new
reference field (insert > indexes and tables > Bibliography entry...),
the entry selector is pulled from the bibliography database over here:
http://opengrok.libreoffice.org/xref/core/sw/source/ui/index/swuiidxmrk.cxx#1331

Since there is no unique ID, there is no link between the reference and
the database, once inserted into the document. Conclusion: there has to
be an _hidden_ unique key. Hidden because users may not change this
unique key manually (and thus break the linkage). To prevent
automatically updating for certain entries, a checkbox needs to be
introduced.

Probably a part of this code
http://opengrok.libreoffice.org/xref/core/sw/source/ui/fldui/fldmgr.cxx#1528
can be re-used, to update the field. This code is currently used to
modify the reference field
(http://opengrok.libreoffice.org/xref/core/sw/source/ui/index/swuiidxmrk.cxx#1278)
when you manually edit the reference data inside your document (double
click on the field -> edit).

Anyone interested :)?
Comment 6 bfoman 2013-12-21 01:02:50 UTC
*** Bug 72933 has been marked as a duplicate of this bug. ***
Comment 7 Paul 2014-03-25 12:22:35 UTC
The problem seems even worse:
Not being able to update would be "ok" if I could at least insert a new bib index. But this works only in parts: new used entries are added (as if one would update the old index), but already used and changed entries not. So there is no way to update the bib index totally at all.

Ways to reproduce:
1. Open a document with somy bibliography entries and a bibliography index
2. Change anything in the bibliography database
3. Optional: remove bibliography index
4. Insert bibliography entry

Current behavior: 
New entries show up
Old entries stay the same

Expected Behavior:
All changed entries are updated

Hint:
If i remove any entry in the text, update the index and then add it and update again, it is updated.
Comment 8 Alex Thurgood 2015-01-03 17:38:20 UTC
Adding self to CC if not already on

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.