Subject: | Workbook::close returns false if > 7MB and filehandle passed to new() |
Date: | Mon, 28 Jul 2008 06:59:24 -0700 (PDT) |
To: | bug-Spreadsheet-WriteExcel [...] rt.cpan.org |
From: | Barry Gates <arkaig1 [...] yahoo.com> |
$obj->close() drops out, returning $obj->{_internal_fh} (0), as its last interpretted expression, when $obj->{_biffsize} > 7 MB, and $obj->{_internal_fh} is not set. That is, OLE::Storage_Lite is needed, and when a file handle and not a file name was passed to Spreadsheet::WriteExcel::new.
By the way, on return, $! was set to Errno::EBADF (9, Bad file descriptor), under my circumstances anyway. This caused some head-scratching, and initial debugging misdirection. It's perfectly ok by me (at this time) if this it not worth trying to avoid.
Lastly, examples/bigfiles.pl might be quicker to understand, as not containing anything particularly "exemplary", other than its own largesse (of course), if its comments explicitly mentioned that no special subroutine calls or require-statements were needed to get the support of big files by this module.
This is a very neat package, though.
Many thanks!
Barry Gates
dist: Spreadsheet-WriteExcel-2.18 (all seem to still remain as noted in 2.22)
perl: 5.8.5
o.s.: GNU/Linux #1 ...
text: Write Excel .XLS biff size my $maxsize 7_340_032 7MB - 247KB 7_087_104