NAME

Spreadsheet::Reader::ExcelXML::Row - ExcelXML Row data class

DESCRIPTION

This documentation is written to explain ways to use this module when writing your own excel parser. To use the general package for excel parsing out of the box please review the documentation for Workbooks, Worksheets, and Cells

This module provides the basic storage and manipulation of row data (for worksheet files). It does not provide the final view of a given cell. The final view of the cell is collated with the role (Interface) Spreadsheet::Reader::ExcelXML::Worksheet.

All positions (row and column places) at this level are stored and returned in count from one mode!

Modification of this module probably means a rework of the Worksheet level module since it requires several methods from this role. A Row instance is generally built and populated by Spreadsheet::Reader::ExcelXML::WorksheetToRow.

Attributes

Data passed to new when creating an instance. For access to the values in these attributes see the listed 'attribute methods'. For general information on attributes see Moose::Manual::Attributes. For ways to manage the instance when opened see the Methods.

row_number

Definition: Stores the row number of the row data in count from 1

Range: positive integers > 0

Required: yes

attribute methods Methods provided to adjust this attribute

get_row_number

Definition: return the attribute value

row_span

Definition: Stores an array ref of two integers representing the start and end columns in count from 1 numbering

Range: [ 2 positive integers > 0 ]

attribute methods Methods provided to adjust this attribute

set_row_span

Definition: sets the attribute

has_row_span

Definition: predicate for the attribute

Delegated methods: Methods delegated from the instance for conversion type checking. The name delegated to is listed next to a link for the default method delegated from. Where the method is curried that is shown as well.

get_row_start => [ "get" in Moose::Meta::Attribute::Native::Trait::Array => 0 ], # Get the first position

get_row_end => [ "get" in Moose::Meta::Attribute::Native::Trait::Array => 1 ], # Get the second position

row_last_value_column

Definition: Stores the last column with a value in it in count from 1

Range: positive integers > 0

attribute methods Methods provided to adjust this attribute

get_last_value_column

Definition: return the attribute value

row_formats

Definition: this is an open ended hashref with format values stored for the row

Range: a hash ref

attribute methods Methods provided to adjust this attribute

set_row_formats

Definition: sets the whole attribute

Delegated methods: Methods delegated from the instance for conversion type checking. The name delegated to is listed next to a link for the default method delegated from.

get_row_format => "get" in Moose::Meta::Attribute::Native::Trait::Array

row_value_cells

Definition: Stores an array ref of information about cells with values for that row (in order). The purpose of only storing the values is to allow for 'next_value' calls. The actual position of the cell column is stored in the cell hash and the attribute column_to_cell_translations.

Range: ArrayRef[HashRef]

attribute methods Methods provided to adjust this attribute

get_row_value_cells

Definition: gets the whole stored attribute

Delegated methods: Methods delegated from the instance for conversion type checking. The name delegated to is listed next to a link for the default method delegated from.

get_cell_position => "get" in Moose::Meta::Attribute::Native::Trait::Array

total_cell_positions => "count" in Moose::Meta::Attribute::Native::Trait::Array

column_to_cell_translations

Definition: only cells with values are stored but you may want to know if a cell has a value based on a column number or you may want to know where the contents of a cell containing values are base on a column number. This attribute stores that lookup table.

Default: an ArrayRef with at least one column position set

Delegated methods: Methods delegated from the instance for conversion type checking. The name delegated to is listed next to a link for the default method delegated from.

get_position_for_column => "get" in Moose::Meta::Attribute::Native::Trait::Array

Methods

These are the methods provided by this class for use within the package but are not intended to be used by the package end user. Other private methods not listed here are used in the module but not used by the package. If the method is listed here then replacement of this module either requires replacing them or rewriting all the associated connecting roles and classes. All methods here are assumed to be in count from 1 mode to since the role instances are meant to be managed in the background for the worksheet.

get_the_column( $column )

Definition: This returns the value stored at the desired column position. It also stores this position as the last column retrieved for any 'next_*' calls.

Accepts: $column (integer)

Returns: a hashref of cell values at that column, undef for no values, or 'EOR' for positions past the end of the row.

get_the_next_value_position

Definition: This returns the next set of cell values or 'EOR' for positions past the end of the row. When a set of cell values is returned (not EOR) the new 'last' position is recorded.

Accepts: nothing

Returns: a hashref of key value pairs or 'EOR'

get_row_all

Definition: This is a way to get an array of hashrefs that are positioned correctly in count from zero locations for the row data. Just value cells can be returned with get_row_value_cells. For cells with no value undef is stored. For cells past the last value even if they fall inside the row span no positions are created.

Accepts: nothing

Returns: an arrayref of hashrefs

SUPPORT

github Spreadsheet::Reader::ExcelXML/issues

TODO

1. Nothing yet

AUTHOR

Jed Lund
jandrew@cpan.org

COPYRIGHT

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

The full text of the license can be found in the LICENSE file included with this module.

This software is copyrighted (c) 2016 by Jed Lund

DEPENDENCIES

Spreadsheet::Reader::ExcelXML - the package

SEE ALSO

Spreadsheet::Read - generic Spreadsheet reader

Spreadsheet::ParseExcel - Excel binary version 2003 and earlier (.xls files)

Spreadsheet::XLSX - Excel version 2007 and later

Spreadsheet::ParseXLSX - Excel version 2007 and later

Log::Shiras

All lines in this package that use Log::Shiras are commented out