X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FOrder.pm;h=194431dcd31fea66da7143f9216daf49830fc072;hb=42646def7270f58d3943e8cf19943cb61bdb5ad8;hp=cf7b076100ee87b9c624d07612a3ac4fc4a72008;hpb=71e6f43b87c09b87c7916d9236a37b9befcefedc;p=kivitendo-erp.git diff --git a/SL/DB/Order.pm b/SL/DB/Order.pm index cf7b07610..194431dcd 100644 --- a/SL/DB/Order.pm +++ b/SL/DB/Order.pm @@ -34,6 +34,23 @@ __PACKAGE__->meta->add_relationship( __PACKAGE__->meta->initialize; +__PACKAGE__->before_save('_before_save_set_ord_quo_number'); + +# hooks + +sub _before_save_set_ord_quo_number { + my ($self) = @_; + + # ordnumber is 'NOT NULL'. Therefore make sure it's always set to at + # least an empty string, even if we're saving a quotation. + $self->ordnumber('') if !$self->ordnumber; + + my $field = $self->quotation ? 'quonumber' : 'ordnumber'; + $self->create_trans_number if !$self->$field; + + return 1; +} + # methods sub items { goto &orderitems; }