This queue is for tickets about the Spreadsheet-WriteExcel CPAN distribution.
Maintainer(s)' notes
If you are reporting a bug in Spreadsheet::WriteExcel here are some pointers
1) State the issues as clearly and as concisely as possible. A simple program or Excel test file (see below) will often explain the issue better than a lot of text.
2) Provide information on your system, version of perl and module versions. The following program will generate everything that is required. Put this information in your bug report.
#!/usr/bin/perl -w
print "\n Perl version : $]";
print "\n OS name : $^O";
print "\n Module versions: (not all are required)\n";
my @modules = qw(
Spreadsheet::WriteExcel
Parse::RecDescent
File::Temp
OLE::Storage_Lite
IO::Stringy
Spreadsheet::ParseExcel
Scalar::Util
Unicode::Map
);
for my $module (@modules) {
my $version;
eval "require $module";
if (not $@) {
$version = $module->VERSION;
$version = '(unknown)' if not defined $version;
}
else {
$version = '(not installed)';
}
printf "%21s%-24s\t%s\n", "", $module, $version;
}
__END__
3) Upgrade to the latest version of Spreadsheet::WriteExcel (or at least test on a system with an upgraded version). The issue you are reporting may already have been fixed.
4) Create a small but complete example program that demonstrates your problem. The program should be as small as possible. At the same time it should be a complete program that generates an Excel file. If the Spreadsheet::WriteExcel section is part of a much larger program then simplify it down to the essentials. Simulate any DB reads with an array.
5) Say if you tested with Excel, OpenOffice, Gnumeric or something else. Say which version of that application you used.
6) If you are submitting a patch you should check with the author whether the issue has already been patched or if a fix is in the works. Patches should be accompanied by test cases.
Asking a question
If you would like to ask a more general question there is the Spreadsheet::WriteExcel Google Group.
Owner: |
Nobody in particular
|
Requestors: |
Martin.Rieder [...] oebb.at
|
Cc: |
|
AdminCc: |
|
|
Severity: |
(no value)
|
Broken in: |
(no value)
|
Fixed in: |
(no value)
|
|
Thu Jan 13 09:31:20 2011
Martin.Rieder [...] oebb.at - Ticket created
Thanks for the great modul. We use it to generate
spreadsheets in a web application framework, based
on Oracle, Apache and Perl. Today we reached the
7 mb limit, upgrade to current module versions solved
the problem after some code change:
original we used
binmode(STDOUT);
$ms_excel = Spreadsheet::WriteExcel->new('-');
....
$ms_excel->close;
which faild as cgi application, worked well on command line with redirected
output to file.
The message in apache error log was:
malformed header from script. Bad header=\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1: report.pl
changeing the code to
binmode(STDOUT);
$ms_excel = Spreadsheet::WriteExcel->new(\*STDOUT);
....
$ms_excel->close;
solved the problem. It seems do be a difference how stdout is used on
a windows box, maybe this is just a winows feature, or a small documentation bug.
Environment used:
Perl version : 5.006001
OS name : MSWin32
Module versions: (not all are required)
Spreadsheet::WriteExcel 2.37
Parse::RecDescent 1.965001
File::Temp 0.22
OLE::Storage_Lite 0.19
IO::Stringy 2.110
Spreadsheet::ParseExcel 0.2602
Scalar::Util (not installed)
Unicode::Map (not installed)
This is perl, v5.6.1 built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
Copyright 1987-2001, Larry Wall
Binary build 638 provided by ActiveState Corp.
http://www.ActiveState.com
ActiveState is a division of Sophos.
Built Apr 13 2004 19:24:21
Thanks for your help
Martin
?BB-Infrastruktur AG, Vivenotgasse 10, 1120 Wien FN 71396w HG Wien | DVR 0063533 | UID ATU 16210507
Diese Nachricht k?nnte vertrauliche Informationen enthalten. Sind Sie nicht der richtige Empf?nger, so informieren Sie bitte den Absender und l?schen Sie diese Nachricht. Die unbefugte Nutzung oder Weitergabe dieser Nachricht ist nicht erlaubt.
Thu Jan 13 18:09:08 2011
jmcnamara [...] cpan.org - Correspondence added
On Thu Jan 13 09:31:20 2011, Martin.Rieder@oebb.at wrote:
Show quoted text> changeing the code to
>
> binmode(STDOUT);
> $ms_excel = Spreadsheet::WriteExcel->new(\*STDOUT);
> ....
> $ms_excel->close;
Hi MArtin,
Thanks for that.
The difference for files > 7MB is that Spreadsheet::WriteExcel uses OLE::Storage_Lite to write
the OLE container and that uses IO::File (from memory) to handle filehandles.
I'll update the docs to include the safer \*STDOUT option.
Thanks,
John.
--
Thu Jan 13 18:09:08 2011
The RT System itself - Status changed from 'new' to 'open'
Wed Nov 21 18:27:30 2012
jmcnamara [...] cpan.org - Correspondence added
Fixed in version 2.38. On its way to CPAN.
Thanks.
Wed Nov 21 18:27:31 2012
jmcnamara [...] cpan.org - Status changed from 'open' to 'resolved'