Issue 101764 - Excel export omits INDEX and DBCELL records
Summary: Excel export omits INDEX and DBCELL records
Alias: None
Product: Calc
Classification: Application
Component: save-export (show other issues)
Version: OOO300m5
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
Keywords: oooqa
Depends on:
Reported: 2009-05-11 12:30 UTC by mb132822
Modified: 2013-01-29 21:53 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Note You need to log in before you can comment on or make changes to this issue.
Description mb132822 2009-05-11 12:30:05 UTC
Each workbook consists of 2 kind of parts - one for the general workbook
information, and the second part is for each individual spreadsheet inside of
this workbook. 

General workbook section contains information about names of the spreadsheets,
their location inside of the file etc. This part seems to be fine and this is
why the reader returns list of the spreadsheets. 

But the second part of the workbook does not seem to look right. Each subsection
about each individual spreadsheet missing two parts (Microsoft calls them
records) that describe location of the data rows inside of each individual
spreadsheet and that is the reason why the component does not read any data. 

According to Microsoft specification for the xls file format these two records
are required and must be generated by the application that creates these files.
Name of the missing records  - INDEX and DBCELL. To me it looks like a bug in

Excel itself opens such kind of files and the answer is simple - Excel tries to
do the best job to read files and find all the parts and stick them together
(some sort of recovery mode) and then create correct content.
Comment 1 lohmaier 2010-03-21 16:57:03 UTC
If this issue is meant to be taken seriously, you need to give more technical 
details, pointers to the appropriate parts of the specification you're referring 
to, etc. 

As this is not affecting document exchange, but is only technical detail it 
doesn't justify P2

My reading of the spec is that it is used by excel for performance reasons only. 
Bit if those are present, they must contain valid data. It also states:
"Excel uses the INDEX and DBCELL records to optimize the lookup of cell records 
( RK,
FORMULA, and so on). You can use these records to optimize your code when
reading a BIFF file, or you can just read the entire workbook (Book) stream to 
the cell values you want. The unoptimized method may be slower, depending on the
size, structure, and complexity of the file."

Anyway - confirming