X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fwh.pl;h=a55bf70c676e8369eca6aea02b6cf97c3ce84055;hb=ce498a747292baeaf103118b5073061196d981e4;hp=f96d59659b5d0b92300da51e71b333b900b6a746;hpb=7e9a98a004e3547c874cdf6c873dea138d984309;p=kivitendo-erp.git diff --git a/bin/mozilla/wh.pl b/bin/mozilla/wh.pl index f96d59659..a55bf70c6 100644 --- a/bin/mozilla/wh.pl +++ b/bin/mozilla/wh.pl @@ -164,12 +164,13 @@ sub transfer_or_removal_prepare_contents { $form->show_generic_error($locale->text("The source warehouse does not contain any bins.")) if (0 == scalar @{ $warehouse->{BINS} }); - map { $form->{"l_$_"} = 'Y' } qw(parts_id qty warehouseid binid partnumber partdescription bindescription chargenumber partunit ean); + map { $form->{"l_$_"} = 'Y' } qw(parts_id qty warehouseid binid partnumber partdescription bindescription chargenumber bestbefore partunit ean); $form->{sort} = 'bindescription'; my @contents = WH->get_warehouse_report("warehouse_id" => $form->{warehouse_id}, "bin_id" => $form->{bin_id}, "chargenumber" => $form->{chargenumber}, + "bestbefore" => $form->{bestbefore}, "partnumber" => $form->{partnumber}, "ean" => $form->{ean}, "description" => $form->{description}); @@ -219,7 +220,7 @@ sub transfer_parts { $form->show_generic_error($locale->text("The source warehouse does not contain any bins.")) if (0 == scalar @{ $warehouse->{BINS} }); - map { $form->{"l_$_"} = 'Y' } qw(parts_id qty warehouseid binid partnumber partdescription bindescription chargenumber partunit); + map { $form->{"l_$_"} = 'Y' } qw(parts_id qty warehouseid binid partnumber partdescription bindescription chargenumber bestbefore partunit); $form->{sort} = 'bindescription'; my @contents = WH->get_warehouse_report("warehouse_id" => $form->{warehouse_id}); @@ -243,12 +244,12 @@ sub transfer_parts { 'transfer_type_id' => $form->{transfer_type_id}, }; - map { $transfer->{$_} = $form->{"${_}_${row}"} } qw(src_bin_id chargenumber parts_id qty dst_warehouse_id dst_bin_id); + map { $transfer->{$_} = $form->{"${_}_${row}"} } qw(src_bin_id chargenumber bestbefore parts_id qty dst_warehouse_id dst_bin_id); my $entry; foreach (@contents) { - if (($_->{binid} == $transfer->{src_bin_id}) && ($_->{parts_id} == $transfer->{parts_id}) && ($_->{chargenumber} eq $transfer->{chargenumber})) { + if (($_->{binid} == $transfer->{src_bin_id}) && ($_->{parts_id} == $transfer->{parts_id}) && ($_->{chargenumber} eq $transfer->{chargenumber}) && $_->{bestbefore} eq $transfer->{bestbefore}) { $entry = $_; last; } @@ -276,7 +277,7 @@ sub transfer_parts { if (!scalar @transfers) { $form->show_generic_information($locale->text('Nothing has been selected for transfer.')); - exit 0; + ::end_of_request(); } WH->transfer(@transfers); @@ -433,6 +434,11 @@ sub create_assembly { if (!$form->{warehouse_id} || !$form->{bin_id}) { $form->error($locale->text('The warehouse or the bin is missing.')); } + + if (!$main::show_best_before) { + $form->{bestbefore} = ''; + } + # WIESO war das nicht vorher schon ein %HASH?? ein hash ist ein hash! das hat mich mehr als eine Stunde gekostet herauszufinden. grr. jb 3.3.2009 # Anm. jb 18.3. vielleicht auch nur meine unwissenheit in perl-datenstrukturen my %TRANSFER = ( @@ -441,6 +447,7 @@ sub create_assembly { 'dst_warehouse_id' => $form->{warehouse_id}, 'dst_bin_id' => $form->{bin_id}, 'chargenumber' => $form->{chargenumber}, + 'bestbefore' => $form->{bestbefore}, 'assembly_id' => $form->{parts_id}, 'qty' => $form->{qty}, 'unit' => $form->{unit}, @@ -455,7 +462,7 @@ sub create_assembly { $form->show_generic_error($ret, 'back_button' => 1); } - delete @{$form}{qw(parts_id partnumber description qty unit chargenumber comment)}; + delete @{$form}{qw(parts_id partnumber description qty unit chargenumber bestbefore comment)}; $form->{saved_message} = $locale->text('The assembly has been created.'); $form->{trans_type} = 'assembly'; @@ -487,6 +494,7 @@ sub transfer_stock { 'dst_warehouse_id' => $form->{warehouse_id}, 'dst_bin_id' => $form->{bin_id}, 'chargenumber' => $form->{chargenumber}, + 'bestbefore' => $form->{bestbefore}, 'parts_id' => $form->{parts_id}, 'qty' => $form->{qty}, 'unit' => $form->{unit}, @@ -495,7 +503,7 @@ sub transfer_stock { WH->transfer($transfer); - delete @{$form}{qw(parts_id partnumber description qty unit chargenumber comment)}; + delete @{$form}{qw(parts_id partnumber description qty unit chargenumber bestbefore comment ean)}; $form->{saved_message} = $locale->text('The parts have been stocked.'); $form->{trans_type} = 'stock'; @@ -546,7 +554,7 @@ sub remove_parts { $form->show_generic_error($locale->text("The warehouse does not contain any bins.")) if (0 == scalar @{ $warehouse->{BINS} }); - map { $form->{"l_$_"} = 'Y' } qw(parts_id qty warehouseid binid partnumber partdescription bindescription chargenumber partunit); + map { $form->{"l_$_"} = 'Y' } qw(parts_id qty warehouseid binid partnumber partdescription bindescription chargenumber bestbefore partunit); $form->{sort} = 'bindescription'; my @contents = WH->get_warehouse_report("warehouse_id" => $form->{warehouse_id}); @@ -570,12 +578,12 @@ sub remove_parts { 'transfer_type_id' => $form->{transfer_type_id}, }; - map { $transfer->{$_} = $form->{"${_}_${row}"} } qw(src_bin_id chargenumber parts_id qty); + map { $transfer->{$_} = $form->{"${_}_${row}"} } qw(src_bin_id chargenumber bestbefore parts_id qty); my $entry; foreach (@contents) { - if (($_->{binid} == $transfer->{src_bin_id}) && ($_->{parts_id} == $transfer->{parts_id}) && ($_->{chargenumber} eq $transfer->{chargenumber})) { + if (($_->{binid} == $transfer->{src_bin_id}) && ($_->{parts_id} == $transfer->{parts_id}) && ($_->{chargenumber} eq $transfer->{chargenumber}) && ($_->{bestbefore} eq $transfer->{bestbefore})) { $entry = $_; last; } @@ -603,7 +611,7 @@ sub remove_parts { if (!scalar @transfers) { $form->show_generic_information($locale->text('Nothing has been selected for removal.')); - exit 0; + ::end_of_request(); } WH->transfer(@transfers); @@ -627,7 +635,9 @@ sub journal { my $form = $main::form; my %myconfig = %main::myconfig; + my $locale = $main::locale; + $form->{title} = $locale->text('Report about warehouse transactions'); $form->get_lists('warehouses' => { 'key' => 'WAREHOUSES', 'bins' => 'BINS', }); @@ -654,10 +664,10 @@ sub generate_journal { $form->{sort} ||= 'date'; my %filter; - my @columns = qw(trans_id date warehouse_from bin_from warehouse_to bin_to partnumber partdescription chargenumber trans_type comment qty employee oe_id projectnumber); + my @columns = qw(trans_id date warehouse_from bin_from warehouse_to bin_to partnumber partdescription chargenumber bestbefore trans_type comment qty employee oe_id projectnumber); # filter stuff - map { $filter{$_} = $form->{$_} if ($form->{$_}) } qw(warehouse_id bin_id partnumber description chargenumber); + map { $filter{$_} = $form->{$_} if ($form->{$_}) } qw(warehouse_id bin_id partnumber description chargenumber bestbefore); $filter{qty_op} = WH->convert_qty_op($form->{qty_op}); if ($filter{qty_op}) { @@ -672,7 +682,7 @@ sub generate_journal { my $report = SL::ReportGenerator->new(\%myconfig, $form); my @hidden_variables = map { "l_${_}" } @columns; - push @hidden_variables, qw(warehouse_id bin_id partnumber description chargenumber qty_op qty qty_unit fromdate todate); + push @hidden_variables, qw(warehouse_id bin_id partnumber description chargenumber bestbefore qty_op qty qty_unit fromdate todate); my %column_defs = ( 'date' => { 'text' => $locale->text('Date'), }, @@ -684,8 +694,9 @@ sub generate_journal { 'bin_from' => { 'text' => $locale->text('Bin From'), }, 'bin_to' => { 'text' => $locale->text('Bin To'), }, 'partnumber' => { 'text' => $locale->text('Part Number'), }, - 'partdescription' => { 'text' => $locale->text('Description'), }, + 'partdescription' => { 'text' => $locale->text('Part Description'), }, 'chargenumber' => { 'text' => $locale->text('Charge Number'), }, + 'bestbefore' => { 'text' => $locale->text('Best Before'), }, 'qty' => { 'text' => $locale->text('Qty'), }, 'employee' => { 'text' => $locale->text('Employee'), }, 'projectnumber' => { 'text' => $locale->text('Project Number'), }, @@ -777,9 +788,11 @@ sub report { show_no_warehouses_error() if (!scalar @{ $form->{WAREHOUSES} }); - $form->{fokus} = "partnumber"; - $form->{onload} .= "focus();"; - $form->{title} = $locale->text("Report about wareouse contents"); + $form->{jsscript} = 1; + +# $form->{fokus} = "partnumber"; +# $form->{onload} .= "focus();"; + $form->{title} = $locale->text("Report about warehouse contents"); $form->header(); print $form->parse_html_template("wh/report_filter", @@ -799,15 +812,15 @@ sub generate_report { my %myconfig = %main::myconfig; my $locale = $main::locale; - $form->{title} = $locale->text("Report about wareouse contents"); + $form->{title} = $locale->text("Report about warehouse contents"); $form->{sort} ||= 'partnumber'; my $sort_col = $form->{sort}; my %filter; - my @columns = qw(warehousedescription bindescription partnumber partdescription chargenumber qty stock_value); + my @columns = qw(warehousedescription bindescription partnumber partdescription chargenumber bestbefore qty stock_value); # filter stuff - map { $filter{$_} = $form->{$_} if ($form->{$_}) } qw(warehouse_id bin_id partnumber description chargenumber); + map { $filter{$_} = $form->{$_} if ($form->{$_}) } qw(warehouse_id bin_id partnumber description chargenumber bestbefore); $filter{qty_op} = WH->convert_qty_op($form->{qty_op}); if ($filter{qty_op}) { @@ -824,15 +837,16 @@ sub generate_report { my $report = SL::ReportGenerator->new(\%myconfig, $form); my @hidden_variables = map { "l_${_}" } @columns; - push @hidden_variables, qw(warehouse_id bin_id partnumber description chargenumber qty_op qty qty_unit l_warehousedescription l_bindescription); + push @hidden_variables, qw(warehouse_id bin_id partnumber description chargenumber bestbefore qty_op qty qty_unit l_warehousedescription l_bindescription); push @hidden_variables, qw(include_empty_bins subtotal); my %column_defs = ( 'warehousedescription' => { 'text' => $locale->text('Warehouse'), }, 'bindescription' => { 'text' => $locale->text('Bin'), }, 'partnumber' => { 'text' => $locale->text('Part Number'), }, - 'partdescription' => { 'text' => $locale->text('Description'), }, + 'partdescription' => { 'text' => $locale->text('Part Description'), }, 'chargenumber' => { 'text' => $locale->text('Charge Number'), }, + 'bestbefore' => { 'text' => $locale->text('Best Before'), }, 'qty' => { 'text' => $locale->text('Qty'), }, 'stock_value' => { 'text' => $locale->text('Stock value'), }, );