X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fwh.pl;h=78b05760cf6d98dd503cff108e66e48225ef9a78;hb=b75c6cbb82023b0d626ffc9996eec710cdef8357;hp=ceb367ae1c5d3ab78c461e67b7a08a7db1ee802f;hpb=848add3008154ef72b63656406b1cbba8f5bd5d7;p=kivitendo-erp.git diff --git a/bin/mozilla/wh.pl b/bin/mozilla/wh.pl index ceb367ae1..78b05760c 100644 --- a/bin/mozilla/wh.pl +++ b/bin/mozilla/wh.pl @@ -43,7 +43,9 @@ use SL::CT; use SL::IC; use SL::WH; use SL::OE; +use SL::Locale::String qw(t8); use SL::ReportGenerator; +use SL::Presenter::Part; use SL::DB::Part; @@ -69,6 +71,7 @@ use strict; # $locale->text('return_material') # $locale->text('release_material') # $locale->text('assembled') +# $locale->text('stocktaking') # -------------------------------------------------------------------- # Transfer @@ -108,16 +111,17 @@ sub transfer_warehouse_selection { my $content; if ($form->{trans_type} eq 'removal') { - $form->{nextsub} = "removal_parts_selection"; + setup_wh_transfer_warehouse_selection_action_bar("removal_parts_selection"); $form->{title} = $locale->text('Removal from Warehouse'); $content = $form->parse_html_template('wh/warehouse_selection'); } elsif (!$form->{trans_type} || ($form->{trans_type} eq 'transfer')) { - $form->{nextsub} = "transfer_parts_selection"; + setup_wh_transfer_warehouse_selection_action_bar("transfer_parts_selection"); $form->{title} = $locale->text('Transfer'); $content = $form->parse_html_template('wh/warehouse_selection'); } elsif ($form->{trans_type} eq 'assembly') { + setup_wh_transfer_warehouse_selection_assembly_action_bar(); $form->{title} = $locale->text('Produce Assembly'); $content = $form->parse_html_template('wh/warehouse_selection_assembly'); } @@ -139,6 +143,8 @@ sub transfer_parts_selection { transfer_or_removal_prepare_contents('direction' => 'transfer'); + setup_wh_transfer_parts_action_bar(); + $form->{title} = $locale->text('Transfer'); $form->header(); print $form->parse_html_template("wh/transfer_parts_selection"); @@ -442,6 +448,8 @@ sub removal_parts_selection { transfer_or_removal_prepare_contents('direction' => 'out'); + setup_wh_removal_parts_selection_action_bar(); + $form->{title} = $locale->text('Removal'); $form->header(); print $form->parse_html_template("wh/removal_parts_selection"); @@ -557,6 +565,8 @@ sub journal { show_no_warehouses_error() if (!scalar @{ $form->{WAREHOUSES} }); + setup_wh_journal_action_bar(); + $form->header(); print $form->parse_html_template("wh/journal_filter", { "UNITS" => AM->unit_select_data(AM->retrieve_units(\%myconfig, $form)) }); @@ -692,8 +702,8 @@ sub generate_journal { my $idx = 0; foreach my $entry (@contents) { - $entry->{type_and_classific} = $::request->presenter->type_abbreviation($entry->{part_type}). - $::request->presenter->classification_abbreviation($entry->{classification_id}); + $entry->{type_and_classific} = SL::Presenter::Part::type_abbreviation($entry->{part_type}) . + SL::Presenter::Part::classification_abbreviation($entry->{classification_id}); $entry->{qty} = $form->format_amount(\%myconfig, $entry->{qty}); $entry->{trans_type} = $locale->text($entry->{trans_type}); @@ -757,10 +767,11 @@ sub report { $form->{title} = $locale->text("Report about warehouse contents"); + setup_wh_report_action_bar(); + $form->header(); print $form->parse_html_template("wh/report_filter", - { "nextsub" => "generate_report", - "WAREHOUSES" => $form->{WAREHOUSES}, + { "WAREHOUSES" => $form->{WAREHOUSES}, "UNITS" => AM->unit_select_data(AM->retrieve_units(\%myconfig, $form)) }); $main::lxdebug->leave_sub(); @@ -906,8 +917,8 @@ sub generate_report { foreach my $entry (@contents) { - $entry->{type_and_classific} = $::request->presenter->type_abbreviation($entry->{part_type}). - $::request->presenter->classification_abbreviation($entry->{classification_id}); + $entry->{type_and_classific} = SL::Presenter::Part::type_abbreviation($entry->{part_type}). + SL::Presenter::Part::classification_abbreviation($entry->{classification_id}); map { $subtotals{$_} += $entry->{$_} } @subtotals_columns; $total_stock_value += $entry->{stock_value} * 1; $entry->{qty} = $form->format_amount(\%myconfig, $entry->{qty}); @@ -1061,6 +1072,103 @@ sub stock { call_sub($form->{stock_nextsub} || $form->{nextsub}); } +sub setup_wh_transfer_warehouse_selection_action_bar { + my ($action) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Update'), + submit => [ '#form', { action => $action } ], + accesskey => 'enter', + ], + ); + } +} + +sub setup_wh_transfer_warehouse_selection_assembly_action_bar { + my ($action) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Update'), + submit => [ '#form', { action => 'transfer_assembly_update_part' } ], + accesskey => 'enter', + ], + action => [ + t8('Produce'), + submit => [ '#form', { action => 'create_assembly' } ], + disabled => $::form->{parts_id} ? undef : $::locale->text('No assembly has been selected yet.'), + ], + ); + } +} + +sub setup_wh_transfer_parts_action_bar { + my ($action) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Transfer'), + submit => [ '#form', { action => 'transfer_parts' } ], + accesskey => 'enter', + ], + action => [ + t8('Back'), + call => [ 'kivi.history_back' ], + ], + ); + } +} + +sub setup_wh_removal_parts_selection_action_bar { + my ($action) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Transfer out'), + submit => [ '#form', { action => 'remove_parts' } ], + accesskey => 'enter', + ], + action => [ + t8('Back'), + call => [ 'kivi.history_back' ], + ], + ); + } +} + +sub setup_wh_report_action_bar { + my ($action) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Show'), + submit => [ '#form', { action => 'generate_report' } ], + accesskey => 'enter', + ], + ); + } +} + +sub setup_wh_journal_action_bar { + my ($action) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Show'), + submit => [ '#form', { action => 'generate_journal' } ], + accesskey => 'enter', + ], + ); + } +} + 1; __END__