=cut
use strict;
-use vars qw($DEBUG $VERSION @EXPORT_OK);
+use warnings;
+our ($DEBUG, @EXPORT_OK);
$DEBUG = 0 unless defined $DEBUG;
-$VERSION = '1.59';
+our $VERSION = '1.59';
use Spreadsheet::ParseExcel;
use Exporter;
#
# If directed, look at every field's values to guess size and type.
#
- unless (
+ unless (
defined $args->{'scan_fields'} &&
$args->{'scan_fields'} == 0
) {
for(
my $iR = $ws->{'MinRow'} == 0 ? 1 : $ws->{'MinRow'};
- defined $ws->{'MaxRow'} && $iR <= $ws->{'MaxRow'};
+ defined $ws->{'MaxRow'} && $iR <= $ws->{'MaxRow'};
$iR++
) {
- for (
+ for (
my $iC = $ws->{'MinCol'};
- defined $ws->{'MaxCol'} && $iC <= $ws->{'MaxCol'};
+ defined $ws->{'MaxCol'} && $iC <= $ws->{'MaxCol'};
$iC++
) {
my $field = $field_names[ $iC ];
if ( $data =~ /^-?\d+$/ ) {
$type = 'integer';
}
- elsif (
- $data =~ /^-?[,\d]+\.[\d+]?$/
+ elsif (
+ $data =~ /^-?[,\d]+\.[\d+]?$/
||
- $data =~ /^-?[,\d]+?\.\d+$/
+ $data =~ /^-?[,\d]+?\.\d+$/
||
- $data =~ /^-?\.\d+$/
+ $data =~ /^-?\.\d+$/
) {
$type = 'float';
- my ( $w, $d ) =
- map { s/,//g; length $_ || 1 }
+ my ( $w, $d ) =
+ map { s/,//g; length $_ || 1 }
split( /\./, $data )
;
$size = [ $w + $d, $d ];
for my $field ( keys %field_info ) {
my $size = $field_info{ $field }{'size'} || [ 1 ];
- my $data_type =
- $field_info{ $field }{'char'} ? 'char' :
+ my $data_type =
+ $field_info{ $field }{'char'} ? 'char' :
$field_info{ $field }{'float'} ? 'float' :
$field_info{ $field }{'integer'} ? 'integer' : 'char';
return 1;
}
-# -------------------------------------------------------------------
sub ET_to_ST {
my $et = shift;
$ET_to_ST{$et} || $ET_to_ST{'Text'};