use base qw( FS::Record );
use strict;
-use FS::Record qw( qsearchs );
+use FS::Record qw( qsearchs dbh );
use FS::Conf;
use FS::svc_acct;
use FS::Msgcat qw(gettext);
=back
+=cut
+
+sub _upgrade_schema {
+ my ($class, %opts) = @_;
+
+ # delete records where custnum points to a nonexistent customer
+ my $sql = 'DELETE FROM cust_main_invoice
+ WHERE NOT EXISTS (
+ SELECT 1 FROM cust_main WHERE cust_main.custnum = cust_main_invoice.custnum
+ )';
+ my $sth = dbh->prepare($sql) or die dbh->errstr;
+ $sth->execute or die $sth->errstr;
+
+ '';
+}
+
=head1 BUGS
=head1 SEE ALSO
% }
-<% $br++ ? ' | ' : '' %>
% if ( $cust_main->num_cancelled_pkgs ) {
+ <% $br++ ? ' | ' : '' %>
% if ( $cgi->param('showcancelledpackages') eq '0' #see if it was set by me
% || ( $conf->exists('hidecancelledpackages')
% && ! $cgi->param('showcancelledpackages')