X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FInvoice.pm;h=d1ce5be87df83af642bc799f0c3ae1385c43210f;hb=111857560dab08903ff8bd700b2383df34cddf36;hp=7e7ff1c8dc7599057f7c34382721696b84ba362a;hpb=30784a4dd84a21642387e9c0a7398a8045312963;p=kivitendo-erp.git diff --git a/SL/DB/Invoice.pm b/SL/DB/Invoice.pm index 7e7ff1c8d..d1ce5be87 100644 --- a/SL/DB/Invoice.pm +++ b/SL/DB/Invoice.pm @@ -16,6 +16,7 @@ use SL::DB::Helper::LinkedRecords; use SL::DB::Helper::PDF_A; use SL::DB::Helper::PriceTaxCalculator; use SL::DB::Helper::PriceUpdater; +use SL::DB::Helper::SalesPurchaseInvoice; use SL::DB::Helper::TransNumberGenerator; use SL::DB::Helper::ZUGFeRD; use SL::Locale::String qw(t8); @@ -360,7 +361,6 @@ sub add_ar_amount_row { ($netamount, $taxamount) = Form->calculate_tax($params{amount}, $tax->rate, $self->taxincluded, $roundplaces); }; next unless $netamount; # netamount mustn't be zero - my $sign = $self->customer_id ? 1 : -1; my $acc = SL::DB::AccTransaction->new( amount => $netamount * $sign, @@ -426,7 +426,7 @@ sub create_ar_row { $self->add_transactions( $acc ); push( @$acc_trans, $acc ); return $acc_trans; -}; +} sub validate_acc_trans { my ($self, %params) = @_; @@ -541,6 +541,7 @@ sub invoice_type { return 'ar_transaction' if !$self->invoice; return 'invoice_for_advance_payment_storno' if $self->type eq 'invoice_for_advance_payment' && $self->amount < 0 && $self->storno; return 'invoice_for_advance_payment' if $self->type eq 'invoice_for_advance_payment'; + return 'final_invoice' if $self->type eq 'final_invoice'; # stornoed credit_notes are still credit notes and not invoices return 'credit_note' if $self->type eq 'credit_note' && $self->amount < 0; return 'invoice_storno' if $self->type ne 'credit_note' && $self->amount < 0 && $self->storno; @@ -563,6 +564,7 @@ sub displayable_type { return t8('Credit Note') . "(" . t8('Storno') . ")" if $self->invoice_type eq 'credit_note_storno'; return t8('Invoice for Advance Payment') if $self->invoice_type eq 'invoice_for_advance_payment'; return t8('Invoice for Advance Payment') . "(" . t8('Storno') . ")" if $self->invoice_type eq 'invoice_for_advance_payment_storno'; + return t8('Final Invoice') if $self->invoice_type eq 'final_invoice'; return t8('Invoice'); } @@ -579,6 +581,7 @@ sub abbreviation { return t8('Credit note (one letter abbreviation)') . "(" . t8('Storno (one letter abbreviation)') . ")" if $self->invoice_type eq 'credit_note_storno'; return t8('Invoice for Advance Payment (one letter abbreviation)') if $self->invoice_type eq 'invoice_for_advance_payment'; return t8('Invoice for Advance Payment with Storno (abbreviation)') if $self->invoice_type eq 'invoice_for_advance_payment_storno'; + return t8('Final Invoice (one letter abbreviation)') if $self->invoice_type eq 'final_invoice'; return t8('Invoice (one letter abbreviation)'); }