X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=bin%2Fmozilla%2Fic.pl;h=3205382296ccc0a5c4672c9cc6c541a86196e52c;hb=ee56f1b20ab915671ded297f593c0e2e245bad70;hp=5fb8adf57cb274f15107be2153f2c637ca0d689f;hpb=16f131c37eac3667c2e789ab94ab2618fd8f41ed;p=kivitendo-erp.git
diff --git a/bin/mozilla/ic.pl b/bin/mozilla/ic.pl
index 5fb8adf57..320538229 100644
--- a/bin/mozilla/ic.pl
+++ b/bin/mozilla/ic.pl
@@ -24,7 +24,8 @@
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+# MA 02110-1335, USA.
#======================================================================
#
# Inventory Control module
@@ -74,23 +75,6 @@ require "bin/mozilla/reportgenerator.pl";
# end of main
-sub add {
- $lxdebug->enter_sub();
-
- $auth->assert('part_service_assembly_edit');
-
- my $title = 'Add ' . ucfirst $form->{item};
- $form->{title} = $locale->text($title);
- $form->{callback} = "$form->{script}?action=add&item=$form->{item}" unless $form->{callback};
- $form->{unit_changeable} = 1;
-
- IC->get_pricegroups(\%myconfig, \%$form);
- &link_part;
- &display_form;
-
- $lxdebug->leave_sub();
-}
-
sub search {
$lxdebug->enter_sub();
@@ -100,11 +84,9 @@ sub search {
$form->{lastsort} = ""; # memory for which table was sort at last time
$form->{ndxs_counter} = 0; # counter for added entries to top100
- my %is_xyz = map { +"is_$_" => ($form->{searchitems} eq $_) } qw(part service assembly);
-
$form->{title} = (ucfirst $form->{searchitems}) . "s";
+ $form->{title} =~ s/ys$/ies/;
$form->{title} = $locale->text($form->{title});
- $form->{title} = $locale->text('Assemblies') if ($is_xyz{is_assembly});
$form->{CUSTOM_VARIABLES} = CVar->get_configs('module' => 'IC');
($form->{CUSTOM_VARIABLES_FILTER_CODE},
@@ -115,7 +97,7 @@ sub search {
$form->header;
$form->get_lists('partsgroup' => 'ALL_PARTSGROUPS');
- print $form->parse_html_template('ic/search', { %is_xyz, });
+ print $form->parse_html_template('ic/search');
$lxdebug->leave_sub();
} #end search()
@@ -168,7 +150,7 @@ sub confirm_price_update {
$form->header();
if (@errors) {
- $form->show_generic_error(join('
', @errors), 'back_button' => 1);
+ $form->show_generic_error(join('
', @errors));
}
$form->{nextsub} = "update_prices";
@@ -233,7 +215,7 @@ sub top100 {
# searchitems=part revers=0 lastsort=''
#
# filter:
-# partnumber ean description partsgroup serialnumber make model drawing microfiche
+# partnumber ean description partsgroup classification serialnumber make model drawing microfiche
# transdatefrom transdateto
#
# radio:
@@ -258,9 +240,7 @@ sub generate_report {
my $cvar_configs = CVar->get_configs('module' => 'IC');
- $form->{title} = (ucfirst $form->{searchitems}) . "s";
- $form->{title} =~ s/ys$/ies/;
- $form->{title} = $locale->text($form->{title});
+ $form->{title} = $locale->text('Articles');
my %column_defs = (
'bin' => { 'text' => $locale->text('Bin'), },
@@ -282,7 +262,7 @@ sub generate_report {
'onhand' => { 'text' => $locale->text('Stocked Qty'), },
'ordnumber' => { 'text' => $locale->text('Order Number'), },
'partnumber' => { 'text' => $locale->text('Part Number'), },
- 'partsgroup' => { 'text' => $locale->text('Group'), },
+ 'partsgroup' => { 'text' => $locale->text('Partsgroup'), },
'priceupdate' => { 'text' => $locale->text('Updated'), },
'quonumber' => { 'text' => $locale->text('Quotation'), },
'rop' => { 'text' => $locale->text('ROP'), },
@@ -294,6 +274,7 @@ sub generate_report {
'unit' => { 'text' => $locale->text('Unit'), },
'weight' => { 'text' => $locale->text('Weight'), },
'shop' => { 'text' => $locale->text('Shop article'), },
+ 'type_and_classific' => { 'text' => $locale->text('Type'), },
'projectnumber' => { 'text' => $locale->text('Project Number'), },
'projectdescription' => { 'text' => $locale->text('Project Description'), },
);
@@ -368,8 +349,8 @@ sub generate_report {
transdatefrom => $locale->text('From') . " " . $locale->date(\%myconfig, $form->{transdatefrom}, 1),
transdateto => $locale->text('To (time)') . " " . $locale->date(\%myconfig, $form->{transdateto}, 1),
partnumber => $locale->text('Part Number') . ": '$form->{partnumber}'",
- partsgroup => $locale->text('Group') . ": '$form->{partsgroup}'",
- partsgroup_id => $locale->text('Group') . ": '$pg_name'",
+ partsgroup => $locale->text('Partsgroup') . ": '$form->{partsgroup}'",
+ partsgroup_id => $locale->text('Partsgroup') . ": '$pg_name'",
serialnumber => $locale->text('Serial Number') . ": '$form->{serialnumber}'",
description => $locale->text('Part Description') . ": '$form->{description}'",
make => $locale->text('Make') . ": '$form->{make}'",
@@ -418,8 +399,9 @@ sub generate_report {
$form->{l_linetotallastcost} = $form->{searchitems} eq 'assembly' && !$form->{bom} ? "" : 'Y' if $form->{l_lastcost};
$form->{l_linetotallistprice} = "Y" if $form->{l_listprice};
}
+ $form->{"l_type_and_classific"} = "Y";
- if ($form->{searchitems} eq 'service') {
+ if ($form->{l_service} && !$form->{l_assembly} && !$form->{l_part}) {
# remove bin, weight and rop from list
map { $form->{"l_$_"} = "" } qw(bin weight rop);
@@ -466,14 +448,14 @@ sub generate_report {
IC->all_parts(\%myconfig, \%$form);
my @columns = qw(
- partnumber description notes partsgroup bin onhand rop soldtotal unit listprice
+ partnumber type_and_classific description notes partsgroup bin onhand rop soldtotal unit listprice
linetotallistprice sellprice linetotalsellprice lastcost linetotallastcost
priceupdate weight image drawing microfiche invnumber ordnumber quonumber
transdate name serialnumber deliverydate ean projectnumber projectdescription
insertdate shop
);
- my $pricegroups = SL::DB::Manager::Pricegroup->get_all(sort => 'id');
+ my $pricegroups = SL::DB::Manager::Pricegroup->get_all_sorted;
my @pricegroup_columns;
my %column_defs_pricegroups;
if ($form->{l_pricegroups}) {
@@ -499,6 +481,7 @@ sub generate_report {
my @hidden_variables = (
qw(l_subtotal l_linetotal searchitems itemstatus bom l_pricegroups insertdatefrom insertdateto),
+ qw(l_type_and_classific classification_id),
@itemstatus_keys,
@callback_keys,
map({ "cvar_$_->{name}" } @searchable_custom_variables),
@@ -525,13 +508,15 @@ sub generate_report {
'part' => $locale->text('part_list'),
'service' => $locale->text('service_list'),
'assembly' => $locale->text('assembly_list'),
+ 'article' => $locale->text('article_list'),
);
$report->set_options('raw_top_info_text' => $form->parse_html_template('ic/generate_report_top', { options => \@options }),
- 'raw_bottom_info_text' => $form->parse_html_template('ic/generate_report_bottom'),
+ 'raw_bottom_info_text' => $form->parse_html_template('ic/generate_report_bottom' ,
+ { PART_CLASSIFICATIONS => SL::DB::Manager::PartClassification->get_all_sorted }),
'output_format' => 'HTML',
'title' => $form->{title},
- 'attachment_basename' => $attachment_basenames{$form->{searchitems}} . strftime('_%Y%m%d', localtime time),
+ 'attachment_basename' => 'article_list' . strftime('_%Y%m%d', localtime time),
);
$report->set_options_from_form();
$locale->set_numberformat_wo_thousands_separator(\%myconfig) if lc($report->{options}->{output_format}) eq 'csv';
@@ -585,7 +570,7 @@ sub generate_report {
$soldtotal = 0 if ($form->{sold});
}
- my $edit_link = build_std_url('action=edit', 'id=' . E($ref->{id}), 'callback');
+ my $edit_link = build_std_url('script=controller.pl', 'action=Part/edit', 'part.id=' . E($ref->{id}), 'callback');
$row->{partnumber}->{link} = $edit_link;
$row->{description}->{link} = $edit_link;
@@ -641,6 +626,8 @@ sub generate_report {
map { $row->{$_}{link} = $ref->{$_} } qw(drawing microfiche);
$row->{notes}{data} = SL::HTML::Util->strip($ref->{notes});
+ $row->{type_and_classific}{data} = $::request->presenter->type_abbreviation($ref->{part_type}).
+ $::request->presenter->classification_abbreviation($ref->{classification_id});
$report->add_data($row);
@@ -652,7 +639,7 @@ sub generate_report {
(!$next_ref->{assemblyitem} && ($same_item ne $next_ref->{ $form->{sort} })))) {
my $row = { map { $_ => { 'class' => 'listsubtotal', } } @columns };
- if (($form->{searchitems} ne 'assembly') || !$form->{bom}) {
+ if ( !$form->{l_assembly} || !$form->{bom}) {
$row->{soldtotal}->{data} = $form->format_amount(\%myconfig, $subtotals{soldtotal});
}
@@ -681,671 +668,6 @@ sub generate_report {
$lxdebug->leave_sub();
} #end generate_report
-sub parts_subtotal {
- $lxdebug->enter_sub();
-
- $auth->assert('part_service_assembly_edit');
-
- my (%column_data);
- my ($column_index, $subtotalonhand, $subtotalsellprice, $subtotallastcost, $subtotallistprice) = @_;
-
- map { $column_data{$_} = "
| " } @{ $column_index };
- $$subtotalonhand = 0 if ($form->{searchitems} eq 'assembly' && $form->{bom});
-
- $column_data{onhand} =
- ""
- . $form->format_amount(\%myconfig, $$subtotalonhand)
- . " | ";
-
- $column_data{linetotalsellprice} =
- ""
- . $form->format_amount(\%myconfig, $$subtotalsellprice, 2)
- . " | ";
- $column_data{linetotallistprice} =
- ""
- . $form->format_amount(\%myconfig, $$subtotallistprice, 2)
- . " | ";
- $column_data{linetotallastcost} =
- ""
- . $form->format_amount(\%myconfig, $$subtotallastcost, 2)
- . " | ";
-
- $$subtotalonhand = 0;
- $$subtotalsellprice = 0;
- $$subtotallistprice = 0;
- $$subtotallastcost = 0;
-
- print "";
-
- map { print "\n$column_data{$_}" } @{ $column_index };
-
- print qq|
-
-|;
-
- $lxdebug->leave_sub();
-}
-
-sub edit {
- $lxdebug->enter_sub();
-
- $auth->assert('part_service_assembly_details');
-
- # show history button
- $form->{javascript} = qq||;
- #/show hhistory button
- IC->get_part(\%myconfig, \%$form);
-
- $form->{"original_partnumber"} = $form->{"partnumber"};
-
- my $title = 'Edit ' . ucfirst $form->{item};
- $form->{title} = $locale->text($title);
-
- &link_part;
- &display_form;
-
- $lxdebug->leave_sub();
-}
-
-sub link_part {
- $lxdebug->enter_sub();
-
- $auth->assert('part_service_assembly_details');
-
- IC->create_links("IC", \%myconfig, \%$form);
-
- # currencies
- map({ $form->{selectcurrency} .= "