Revision 9813fe56
Von Bernd Bleßmann vor mehr als 3 Jahren hinzugefügt
SL/Controller/CsvImport/CustomerVendor.pm | ||
---|---|---|
244 | 244 |
my $with_number = [ grep { $_->{object}->$numbercolumn ne '####' } @{ $self->controller->data } ]; |
245 | 245 |
my $without_number = [ grep { $_->{object}->$numbercolumn eq '####' } @{ $self->controller->data } ]; |
246 | 246 |
|
247 |
foreach my $entry (@{$with_number}, @{$without_number}) { |
|
248 |
my $object = $entry->{object}; |
|
249 |
|
|
250 |
my $number = SL::TransNumber->new(type => $self->table(), |
|
251 |
number => $object->$numbercolumn(), |
|
252 |
business_id => $object->business_id(), |
|
253 |
save => 1); |
|
254 |
|
|
255 |
if ( $object->$numbercolumn eq '####' || !$number->is_unique() ) { |
|
256 |
$object->$numbercolumn($number->create_unique()); |
|
257 |
} |
|
258 |
} |
|
247 |
$_->{object}->$numbercolumn('') for @{ $without_number }; |
|
259 | 248 |
|
260 | 249 |
$self->SUPER::save_objects(data => $with_number); |
261 | 250 |
$self->SUPER::save_objects(data => $without_number); |
Auch abrufbar als: Unified diff
CsvImport: CustomerVendor: Nummer vom Helper des Objekts vergeben lassen.
Vorher wurde hier SL::TransNumber verwendet - das ist kein Problem, aber die
es den Helper gibt, ist das hier einfacher.
Zudem wurde vorher auch eine neue Nummer für die zu aktualisierenden Objekte
geholt - aber das Objekt selber wurde nicht gespeichert, sondern object_to_save.
Da war dann die Report-Anzeige nach dem Speichern falsch, das Objekt aber
richtig. Aber der Nummernkreis wurde falscheweise hochgesetzt.
behebt #287 (redmine)