summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2013-01-18 10:47:02 -0800
committerIvan Kohler <ivan@freeside.biz>2013-01-18 10:47:02 -0800
commit5620fb4c5e1b5b56ed1d46871faa616d94493f85 (patch)
tree7961877449e6ccb51d01ecb62c51accab79c818c /bin
parent1a8a460553cd9df66c5de63b75a278c4598f5528 (diff)
add -t option to cust_main-bulk_change, RT#21036
Diffstat (limited to 'bin')
-rwxr-xr-xbin/cust_main-bulk_change28
1 files changed, 19 insertions, 9 deletions
diff --git a/bin/cust_main-bulk_change b/bin/cust_main-bulk_change
index fdf53d999..02931abed 100755
--- a/bin/cust_main-bulk_change
+++ b/bin/cust_main-bulk_change
@@ -1,13 +1,14 @@
#!/usr/bin/perl
use strict;
-use vars qw( $opt_p );
+use vars qw( $opt_p $opt_t );
use Getopt::Std;
use FS::UID qw(adminsuidsetup);
use FS::Record qw(qsearchs);
use FS::cust_main;
+use FS::cust_tag;
-getopts('p:');
+getopts('p:t:');
my $user = shift or &usage;
adminsuidsetup $user;
@@ -31,17 +32,24 @@ while (<STDIN>) {
next;
}
+ my %cust_tag = ( custnum=>$custnum, tagnum=>$opt_t );
+ if ( $opt_t && ! qsearchs('cust_tag', \%cust_tag) ) {
+ my $cust_tag = new FS::cust_tag \%cust_tag;
+ my $error = $cust_tag->insert;
+ die "$error\n" if $error;
+ }
+
if ( $opt_p ) {
$cust_main->payby($opt_p);
- }
- my $error = $cust_main->replace;
- die "$error\n" if $error;
+ my $error = $cust_main->replace;
+ die "$error\n" if $error;
+ }
}
sub usage {
- die "usage: cust_main-bulk_change -p NEW_PAYBY employee_username <custnums.txt\n";
+ die "usage: cust_main-bulk_change [ -p NEW_PAYBY ] [ -t tagnum ] employee_username <custnums.txt\n";
}
=head1 NAME
@@ -50,13 +58,15 @@ cust_main-bulk_change
=head1 SYNOPSIS
- cust_main-bulk_change -p NEW_PAYBY username <custnums.txt
+ cust_main-bulk_change [ -p NEW_PAYBY ] [ -t tagnum ] username <custnums.txt
=head1 DESCRIPTION
-Command-line tool to change the payby field for a group of customers.
+Command-line tool to make bulk changes to a group of customers.
+
+-p: new payby, for example, I<CARD> or I<DCRD>
--p: new payby, for example, I<CARD> or I<DCRD>.
+-t: tagnum to add if not present
user: Employee username