with cust_main-custnum-display_prefix, use prefixed customer numbers on batch import...
authorIvan Kohler <ivan@freeside.biz>
Sun, 9 Feb 2014 22:59:11 +0000 (14:59 -0800)
committerIvan Kohler <ivan@freeside.biz>
Sun, 9 Feb 2014 22:59:11 +0000 (14:59 -0800)
FS/FS/Record.pm
FS/FS/cust_pay.pm

index 053c441..ecd3e95 100644 (file)
@@ -1750,6 +1750,9 @@ sub batch_import {
   my $file    = $param->{file};
   my $params  = $param->{params} || {};
 
+  my $custnum_prefix = $conf->config('cust_main-custnum-display_prefix');
+  my $custnum_length = $conf->config('cust_main-custnum-display_length') || 8;
+
   my( $type, $header, $sep_char,
       $fixedlength_format, $xml_format, $asn_format,
       $row_callback, @fields );
@@ -2030,6 +2033,11 @@ sub batch_import {
 
     }
 
+    if ( $custnum_prefix && $hash{custnum} =~ /^$custnum_prefix(0*([1-9]\d*))$/
+                         && length($1) == $custnum_length ) {
+      $hash{custnum} = $2;
+    }
+
     #my $table   = $param->{table};
     my $class = "FS::$table";
 
index b3737c0..a1286e3 100644 (file)
@@ -1130,6 +1130,9 @@ sub batch_import {
   my $format = $param->{'format'};
   my $paybatch = $param->{'paybatch'};
 
+  my $custnum_prefix = $conf->config('cust_main-custnum-display_prefix');
+  my $custnum_length = $conf->config('cust_main-custnum-display_length') || 8;
+
   # here is the agent virtualization
   my $extra_sql = ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql;
 
@@ -1215,6 +1218,11 @@ sub batch_import {
       $cust_pay{$field} = shift @columns; 
     }
 
+    if ( $custnum_prefix && $cust_pay{custnum} =~ /^$custnum_prefix(0*([1-9]\d*))$/
+                         && length($1) == $custnum_length ) {
+      $cust_pay{custnum} = $2;
+    }
+
     my $cust_pay = new FS::cust_pay( \%cust_pay );
     my $error = $cust_pay->insert;