From: Ivan Kohler Date: Tue, 10 Jan 2017 02:17:27 +0000 (-0800) Subject: fix "unable to transfer all services" error when changing a package before it is... X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=2134f9e82324c8920609aa0854abc84b9e5348ae;hp=45d8ea4c5d8d66f2945c05a71f2e695c0bf00dac fix "unable to transfer all services" error when changing a package before it is billed, RT#73377 --- diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm index f45abc6f8..f54b42d7e 100644 --- a/FS/FS/cust_pkg.pm +++ b/FS/FS/cust_pkg.pm @@ -4395,8 +4395,10 @@ sub transfer { $target{$pkg_svc->svcpart} = $pkg_svc->quantity * ( $dest->quantity || 1 ); } - foreach my $cust_svc ($dest->cust_svc) { - $target{$cust_svc->svcpart}--; + unless ( $self->pkgnum == $dest->pkgnum ) { + foreach my $cust_svc ($dest->cust_svc) { + $target{$cust_svc->svcpart}--; + } } my %svcpart2svcparts = ();