On Thu, Dec 19, 2013 at 3:11 PM, <rob@xxxxxxxxx> wrote:
This stuff's been around for a LONG time. I think we looked at something
on the S/36 you called from RPG2 and sent it three parameters: row,
column, value. Granted, it would have to have been late in that machines
life (after VASP?) to support parameters. That allowed you to post into
an existing spreadsheet.
Interesting. Not interesting that it's so old, but interesting that
it allowed apparent update of an existing spreadsheet. You see, there
really is no such thing. Not even Microsoft Excel can do it. What
Excel does is give the user the *impression* that they are updating an
existing spreadsheet, but behind the scenes, the file is blown away
completely and rewritten from scratch. Every. Single. Time.
This is inherent in the Excel file format, particularly the old binary
versions (anything ending in .xls). You can't just "append some rows
at the bottom" by throwing data at the "end" of the file; the effect
of changing data in one "cell" can (and typically does) have effects
in various places in the file. It is a monstrous and hairy beast,
that BIFF specification. And until BIFF8, there were new versions
every so often. You can still find BIFF5-writers in the wild, and
perhaps even some BIFF4.
And that's a school of philosophy there too. Do you generate your whole
spreadsheet from scratch? Or do you copy a template and update it? Thus
allowing easier changes. Nice philosophy, but the first time the user
changes the cell to update by inserting a row or column and changing the
text in the adjoining cell it get's to be a hoot.
If you are copying a template and updating it, you have to be able to
read a template. Given the complexity (and intrinsic
little-endianness!) of the BIFF specification, this is a highly
nontrivial task. You're saying that some folks made BIFF-reading
software on the S/36?! If they could read AND write Excel, how come
that software isn't better known? Perhaps it only handled older BIFF
versions and became obsolete as end users upgraded to newer Excel