- my $parser;
- if ( $type eq 'csv' ) {
- eval "use Text::CSV_XS;";
- die $@ if $@;
- my %attr = ();
- foreach ( grep exists($info->{$_}), qw( sep_char ) ) {
- $attr{$_} = $info->{$_};
- }
- $parser = new Text::CSV_XS \%attr;
- } elsif ( $type eq 'fixedlength' ) {
- eval "use Parse::FixedLength;";
- die $@ if $@;
- $parser = new Parse::FixedLength $info->{'fixedlength_format'};
- } else {
- die "Unknown CDR format type $type for format $format\n";
- }
-
- my $imported = 0;
- #my $columns;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $header_lines = exists($info->{'header'}) ? $info->{'header'} : 0;