From: Ivan Kohler Date: Fri, 10 Mar 2017 20:02:32 +0000 (-0800) Subject: fix upgrade of cust_pay_pending for deleted customers, RT#75118 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=67ae4f570a0092d0e3b6852572aa47e96a8adb46 fix upgrade of cust_pay_pending for deleted customers, RT#75118 --- diff --git a/FS/FS/cust_pay_pending.pm b/FS/FS/cust_pay_pending.pm index d1083411c..8f313f422 100644 --- a/FS/FS/cust_pay_pending.pm +++ b/FS/FS/cust_pay_pending.pm @@ -504,6 +504,16 @@ sub _upgrade_schema { )'; my $sth = dbh->prepare($sql) or die dbh->errstr; $sth->execute or die $sth->errstr; + + # fix records where custnum points to a nonexistent customer + $sql = 'UPDATE cust_pay_pending SET custnum = NULL + WHERE NOT EXISTS ( + SELECT 1 FROM cust_main WHERE cust_main.custnum = cust_pay_pending.custnum + )'; + $sth = dbh->prepare($sql) or die dbh->errstr; + $sth->execute or die $sth->errstr; + + ''; }