From: Bernd Bleßmann Date: Wed, 20 Apr 2022 14:38:01 +0000 (+0200) Subject: Artikel-Controller: Workflow zu Lieferantenauftrag X-Git-Tag: kivitendo-mebil_0.1-0~10^2~2^2~48 X-Git-Url: http://wagnertech.de/git?p=kivitendo-erp.git;a=commitdiff_plain;h=afd5395bfad1a84a590d567f8cb2d4e4967b16e3 Artikel-Controller: Workflow zu Lieferantenauftrag Ziemlich simple Implementierung, die das Callback nutzt, das auch für das Anlegen eines Artikels aus dem Auftrags-Controller heraus genutzt wird. --- diff --git a/SL/Controller/Part.pm b/SL/Controller/Part.pm index b15b0ad47..061a532b5 100644 --- a/SL/Controller/Part.pm +++ b/SL/Controller/Part.pm @@ -160,6 +160,19 @@ sub action_save { } } +sub action_save_and_purchase_order { + my ($self) = @_; + + delete $::form->{previousform}; + $::form->{callback} = $self->url_for( + controller => 'Order', + action => 'return_from_create_part', + type => 'purchase_order', + ); + + $self->_run_action('save'); +} + sub action_abort { my ($self) = @_; @@ -1346,6 +1359,20 @@ sub _setup_form_action_bar { ], ], # end of combobox "Save" + combobox => [ + action => [ t8('Workflow') ], + action => [ + t8('Save and Purchase Order'), + submit => [ '#ic', { action => "Part/save_and_purchase_order" } ], + checks => ['kivi.validate_form'], + disabled => !$self->part->id ? t8('The object has not been saved yet.') + : !$may_edit ? t8('You do not have the permissions to access this function.') + : !$::auth->assert('purchase_order_edit', 'may fail') ? t8('You do not have the permissions to access this function.') + : undef, + only_if => !$::form->{inline_create}, + ], + ], + action => [ t8('Abort'), submit => [ '#ic', { action => "Part/abort" } ],