From: Mark Wells Date: Tue, 10 Mar 2015 20:09:51 +0000 (-0700) Subject: correctly choose a default locationnum for prospects, #32489, #25343 X-Git-Url: http://git.freeside.biz/gitweb/?a=commitdiff_plain;h=edae5c0f10d80ecd8d45c04c51e3ca698e4a7a99;p=freeside.git correctly choose a default locationnum for prospects, #32489, #25343 --- diff --git a/FS/FS/Template_Mixin.pm b/FS/FS/Template_Mixin.pm index 4a0834e05..655736782 100644 --- a/FS/FS/Template_Mixin.pm +++ b/FS/FS/Template_Mixin.pm @@ -3027,7 +3027,10 @@ sub _items_cust_bill_pkg { }) || $cust_main; $default_locationnum = $h_cust_main->ship_locationnum; } elsif ( $self->prospectnum ) { - $default_locationnum = $self->prospect_main->cust_location->locationnum; + my $cust_location = qsearchs('cust_location', + { prospectnum => $self->prospectnum, + disabled => '' }); + $default_locationnum = $cust_location->locationnum if $cust_location; } my @b = (); # accumulator for the line item hashes that we'll return diff --git a/FS/FS/quotation_pkg.pm b/FS/FS/quotation_pkg.pm index 342e9bb9c..d5c02e116 100644 --- a/FS/FS/quotation_pkg.pm +++ b/FS/FS/quotation_pkg.pm @@ -201,7 +201,11 @@ sub check { if ($quotation->custnum) { $self->set('locationnum', $quotation->cust_main->ship_locationnum); } elsif ($quotation->prospectnum) { - $self->set('locationnum', $quotation->prospect_main->locationnum); + # use the first non-disabled location for that prospect + my $cust_location = qsearchs('cust_location', + { prospectnum => $quotation->prospectnum, + disabled => '' }); + $self->set('locationnum', $cust_location->locationnum) if $cust_location; } # else the quotation is invalid }