Revision f63af42d
Von Moritz Bunkus vor mehr als 9 Jahren hinzugefügt
SL/DB/Invoice.pm | ||
---|---|---|
1 |
# This file has been auto-generated only because it didn't exist. |
|
2 |
# Feel free to modify it at will; it will not be overwritten automatically. |
|
3 |
|
|
4 | 1 |
package SL::DB::Invoice; |
5 | 2 |
|
6 | 3 |
use strict; |
... | ... | |
13 | 10 |
use SL::DB::MetaSetup::Invoice; |
14 | 11 |
use SL::DB::Manager::Invoice; |
15 | 12 |
use SL::DB::Helper::AttrHTML; |
13 |
use SL::DB::Helper::AttrSorted; |
|
16 | 14 |
use SL::DB::Helper::FlattenToForm; |
17 | 15 |
use SL::DB::Helper::LinkedRecords; |
18 | 16 |
use SL::DB::Helper::PriceTaxCalculator; |
... | ... | |
60 | 58 |
__PACKAGE__->meta->initialize; |
61 | 59 |
|
62 | 60 |
__PACKAGE__->attr_html('notes'); |
61 |
__PACKAGE__->attr_sorted('items'); |
|
63 | 62 |
|
64 | 63 |
__PACKAGE__->before_save('_before_save_set_invnumber'); |
65 | 64 |
|
... | ... | |
78 | 77 |
sub items { goto &invoiceitems; } |
79 | 78 |
sub add_items { goto &add_invoiceitems; } |
80 | 79 |
|
81 |
sub items_sorted { |
|
82 |
my ($self) = @_; |
|
83 |
|
|
84 |
return [ sort {$a->position <=> $b->position } @{ $self->items } ]; |
|
85 |
} |
|
86 |
|
|
87 | 80 |
sub is_sales { |
88 | 81 |
# For compatibility with Order, DeliveryOrder |
89 | 82 |
croak 'not an accessor' if @_ > 1; |
Auch abrufbar als: Unified diff
Beleg-Rose-Objekte: items_sorted für nicht gespeicherte Items gefixt
Die bisherigen items_sorted-Routinen verlangen, dass die Positionsspalte
gesetzt ist. Das ist bei noch nicht gespeicherten Belegen oder bei
gerade hinzugefügten Positionen aber noch nicht der Fall.
Diese neuen Positionen werden nun stabil ans Ende sortiert.