3 use FS::UID qw(adminsuidsetup dbh);
4 use FS::Record qw(qsearch);
8 use FS::access_groupagent;
11 adminsuidsetup shift or die &usage;
13 $FS::UID::AutoCommit = 0;
15 my @sales = qsearch('sales', {'disabled'=>''});
17 foreach my $sales (@sales) {
19 my $agent = new FS::agent {
20 'agent' => $sales->salesperson,
21 'agent_custnum' => $sales->sales_custnum,
23 my $error = $agent->insert;
25 dbh->rollback or die dbh->errstr;
29 my $access_group = new FS::access_group {
30 'groupname' => $agent->agent,
32 $error = $access_group->insert;
34 dbh->rollback or die dbh->errstr;
38 my $access_groupagent = new FS::access_groupagent {
39 'groupnum' => $access_group->groupnum,
40 'agentnum' => $agent->agentnum,
42 $error = $access_groupagent->insert;
44 dbh->rollback or die dbh->errstr;
48 foreach my $cust_main (qsearch('cust_main', {'salesnum'=>$sales->salesnum})) {
50 $cust_main->salesnum('');
51 $cust_main->agentnum($agent->agentnum);
52 $error = $cust_main->replace;
54 dbh->rollback or die dbh->errstr;
61 $error = $sales->replace;
63 dbh->rollback or die dbh->errstr;
69 dbh->commit or die dbh->errstr;
74 die "Usage:\n\n sales2agent username\n";