X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FRecord.pm;h=7f76d99885e9ccfd962169ed79419d81ac23c5c1;hb=a21d07037590cccd5ac5c572f5d28f062c622968;hp=827e4078fe9395223032fb0710dcc11b3fe51792;hpb=63cc43a59cf31b1d2f48c9bbdd0d87afd7bccb4d;p=freeside.git diff --git a/FS/FS/Record.pm b/FS/FS/Record.pm index 827e4078f..7f76d9988 100644 --- a/FS/FS/Record.pm +++ b/FS/FS/Record.pm @@ -199,6 +199,7 @@ sub new { $self->{'modified'} = 0; + $self->_simplecache($self->{'Hash'}) if $self->can('_simplecache'); $self->_cache($self->{'Hash'}, shift) if $self->can('_cache') && @_; $self; @@ -1077,7 +1078,7 @@ sub get_fk_method { } sub fk_methods_init { - warn "[fk_methods_init]\n"; + warn "[fk_methods_init]\n" if $DEBUG; foreach my $table ( dbdef->tables ) { $fk_method_cache{$table} = fk_methods($table); } @@ -2151,6 +2152,7 @@ sub batch_import { #my $job = $param->{job}; my $line; my $imported = 0; + my $unique_skip = 0; #lines skipped because they're already in the system my( $last, $min_sec ) = ( time, 5 ); #progressbar foo while (1) { @@ -2253,6 +2255,7 @@ sub batch_import { } last if exists( $param->{skiprow} ); } + $unique_skip++ if $param->{unique_skip}; #line is already in the system next if exists( $param->{skiprow} ); if ( $preinsert_callback ) { @@ -2298,7 +2301,8 @@ sub batch_import { unless ( $imported || $param->{empty_ok} ) { $dbh->rollback if $oldAutoCommit; - return "Empty file!"; + # freeside-cdr-conexiant-import is sensitive to the text of this message + return $unique_skip ? "All records in file were previously imported" : "Empty file!"; } $dbh->commit or die $dbh->errstr if $oldAutoCommit; @@ -3003,7 +3007,6 @@ May not be null. sub ut_name { my( $self, $field ) = @_; -# warn "ut_name allowed alphanumerics: +(sort grep /\w/, map { chr() } 0..255), "\n"; $self->getfield($field) =~ /^([\p{Word} \,\.\-\']+)$/ or return gettext('illegal_name'). " $field: ". $self->getfield($field); my $name = $1;