From: Bernd Bleßmann Date: Wed, 26 Sep 2018 10:23:00 +0000 (+0200) Subject: Auftrags-Controller: Wiederkehrende Rechnungen. Konfig nicht mit neuer id … X-Git-Tag: release-3.5.4~261 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=9bfa364bd40e88b7db83fac1417cbf476dbb434b;p=kivitendo-erp.git Auftrags-Controller: Wiederkehrende Rechnungen. Konfig nicht mit neuer id … … speichern, wenn diese schon vorhanden ist, sondern die vorhandene mit den neuen Attributen versehen. Wenn sich die id ändert, lässt sich nicht mehr feststellen, ob für diese Konfig bzw. diesen Auftrag schon wiederkehrende Rechnungen erzeugt wurden und es werden evtl. alle nochmal erzeugt. --- diff --git a/SL/Controller/Order.pm b/SL/Controller/Order.pm index d8d197a85..976f62f0c 100644 --- a/SL/Controller/Order.pm +++ b/SL/Controller/Order.pm @@ -1166,8 +1166,10 @@ sub make_order { $order->assign_attributes(%{$::form->{order}}); - my $periodic_invoices_config = make_periodic_invoices_config_from_yaml($form_periodic_invoices_config); - $order->periodic_invoices_config($periodic_invoices_config) if $periodic_invoices_config; + if (my $periodic_invoices_config_attrs = $form_periodic_invoices_config ? YAML::Load($form_periodic_invoices_config) : undef) { + my $periodic_invoices_config = $order->periodic_invoices_config || $order->periodic_invoices_config(SL::DB::PeriodicInvoicesConfig->new); + $periodic_invoices_config->assign_attributes(%$periodic_invoices_config_attrs); + } # remove deleted items $self->item_ids_to_delete([]);