The Perl Advent Calendar needs more articles for 2022. Submit your idea today!

NAME

Data::TableReader::Decoder::Spreadsheet - Base class for implementing spreadsheet decoders

VERSION

version 0.011

DESCRIPTION

This is a base class for any file format that exposes a spreadsheet API compatible with Spreadsheet::ParseExcel.

ATTRIBUTES

See attributes from parent class: Data::TableReader::Decoder.

workbook

This is an instance of Spreadsheet::ParseExcel, Spreadsheet::ParseXLSX, or Spreadsheet::XLSX (which all happen to have the same API). Subclasses can lazy-build this from the file_handle.

sheet

This is either a sheet name, a regex for matching a sheet name, or a parser's worksheet object. It is also optional; if not set, all sheets will be iterated.

xls_formatter

An optional object that is passed to Excel parsers Spreadsheet::ParseXLSX and Spreadsheet::ParseExcel. It governs how raw data in cells is formatted into values depending on the type of the cell. The parsers create one of their own if none is provided, usually Spreadsheet::ParseExcel::FmtDefault.

Note that it does not work for Spreadsheet::XLSX, which hardcodes the formatter as Spreadsheet::XLSX::Fmt2007.

AUTHOR

Michael Conrad <mike@nrdvana.net>

COPYRIGHT AND LICENSE

This software is copyright (c) 2019 by Michael Conrad.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.