Unnötige Relationship (ist schon FK)
[kivitendo-erp.git] / SL / DB / Invoice.pm
index 2382c6e..526c791 100644 (file)
@@ -15,9 +15,6 @@ use SL::DB::Helper::LinkedRecords;
 use SL::DB::Helper::PriceTaxCalculator;
 use SL::DB::Helper::PriceUpdater;
 use SL::DB::Helper::TransNumberGenerator;
-use SL::DB::AccTransaction;
-use SL::DB::Chart;
-use SL::DB::Employee;
 
 __PACKAGE__->meta->add_relationship(
   invoiceitems => {
@@ -50,8 +47,7 @@ sub items { goto &invoiceitems; }
 sub items_sorted {
   my ($self) = @_;
 
-  my @sorted =  sort {$a->id <=> $b->id } @{ $self->items };
-  return wantarray ? @sorted : \@sorted;
+  return [ sort {$a->id <=> $b->id } @{ $self->items } ];
 }
 
 sub is_sales {
@@ -103,6 +99,8 @@ sub new_from {
   croak("Unsupported source object type '" . ref($source) . "'") unless ref($source) =~ m/^ SL::DB:: (?: Order | DeliveryOrder ) $/x;
   croak("Cannot create invoices for purchase records")           unless $source->customer_id;
 
+  require SL::DB::Employee;
+
   my $terms = $source->can('payment_id') && $source->payment_id ? $source->payment_terms->terms_netto : 0;
 
   my %args = ( map({ ( $_ => $source->$_ ) } qw(customer_id taxincluded shippingpoint shipvia notes intnotes salesman_id cusordnumber ordnumber quonumber
@@ -145,6 +143,7 @@ sub new_from {
 sub post {
   my ($self, %params) = @_;
 
+  require SL::DB::Chart;
   if (!$params{ar_id}) {
     my $chart = SL::DB::Manager::Chart->get_all(query   => [ SL::DB::Manager::Chart->link_filter('AR') ],
                                                 sort_by => 'id ASC',
@@ -185,6 +184,8 @@ sub _post_add_acctrans {
   my $default_tax_id = SL::DB::Manager::Tax->find_by(taxkey => 0)->id;
   my $chart_link;
 
+  require SL::DB::AccTransaction;
+  require SL::DB::Chart;
   while (my ($chart_id, $spec) = each %{ $entries }) {
     $spec = { taxkey => 0, tax_id => $default_tax_id, amount => $spec } unless ref $spec;
     $chart_link = SL::DB::Manager::Chart->find_by(id => $chart_id)->{'link'};