Merge branch 'master' of github.com:kivitendo/kivitendo-erp
authorSven Schöling <s.schoeling@linet-services.de>
Mon, 6 Jan 2014 15:06:39 +0000 (16:06 +0100)
committerSven Schöling <s.schoeling@linet-services.de>
Mon, 6 Jan 2014 15:06:39 +0000 (16:06 +0100)
bin/mozilla/ic.pl
locale/de/all
templates/webpages/ic/generate_report_top.html [new file with mode: 0644]

index c7cb71b..a696f9c 100644 (file)
@@ -1194,14 +1194,22 @@ sub generate_report {
 
   # soldtotal doesn't make sense with more than one bsooqr option.
   # so reset it to sold (the most common option), and issue a warning
+  # ...
+  # also it doesn't make sense without bsooqr. disable and issue a warning too
   my @bsooqr = qw(sold bought onorder ordered rfq quoted);
-  if ($form->{l_subtotal} && 1 < grep { $form->{$_} } @bsooqr) {
+  my $bsooqr_mode = grep { $form->{$_} } @bsooqr;
+  if ($form->{l_subtotal} && 1 < $bsooqr_mode) {
     my $enabled       = first { $form->{$_} } @bsooqr;
     $form->{$_}       = ''   for @bsooqr;
     $form->{$enabled} = 'Y';
 
     push @options, $::locale->text('Subtotal cannot distinguish betweens record types. Only one of the selected record types will be displayed: #1', $optiontexts{$enabled});
   }
+  if ($form->{l_soldtotal} && !$bsooqr_mode) {
+    delete $form->{l_soldtotal};
+
+    flash('warning', $::locale->text('Soldtotal does not make sense without any bsooqr options'));
+  }
 
   IC->all_parts(\%myconfig, \%$form);
 
@@ -1266,7 +1274,7 @@ sub generate_report {
     'assembly' => $locale->text('assembly_list'),
   );
 
-  $report->set_options('top_info_text'         => $locale->text('Options') . ': ' . join(', ', grep $_, @options),
+  $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'),
                        'output_format'         => 'HTML',
                        'title'                 => $form->{title},
@@ -1316,7 +1324,7 @@ sub generate_report {
     $ref->{lastcost}      *= $ref->{exchangerate} / $ref->{price_factor};
 
     # use this for assemblies
-    my $soldtotal = $ref->{soldtotal};
+    my $soldtotal = $bsooqr_mode ? $ref->{soldtotal} : $ref->{onhand};
 
     if ($ref->{assemblyitem}) {
       $row->{partnumber}{align}   = 'right';
index 038ed28..6d60fb8 100755 (executable)
@@ -1948,6 +1948,7 @@ $self->{texts} = {
   'Skonto Terms'                => 'Zahlungsziel Skonto',
   'So far you could use one partnumber for severel parts, for example a service and an article.' => 'Bisher war es möglich eine Artikelnummer für mehrere Artikel zu verwenden, zum Beispiel eine Artikelnummer für eine Dienstleistung, eine Ware und ein Erzeugnis.',
   'Sold'                        => 'Verkauft',
+  'Soldtotal does not make sense without any bsooqr options' => 'Option "Menge in gewählten Belegen" ohne gewählte Belege wird ignoriert.',
   'Solution'                    => 'Lösung',
   'Sort By'                     => 'Sortiert nach',
   'Source'                      => 'Beleg',
diff --git a/templates/webpages/ic/generate_report_top.html b/templates/webpages/ic/generate_report_top.html
new file mode 100644 (file)
index 0000000..3e757a5
--- /dev/null
@@ -0,0 +1,6 @@
+[%- USE HTML %]
+[%- USE T8 %]
+[%- USE L %]
+[%- PROCESS 'common/flash.html' %]
+
+[% 'Options' | $T8 %]: [% options.join(', ') %]