ShippedQty: Algorithmusdetails konfigurierbar machen
[kivitendo-erp.git] / SL / Controller / YearEndTransactions.pm
index 75998c5..cab8515 100644 (file)
@@ -29,6 +29,8 @@ sub action_filter {
   $self->cb_reference(t8('CB Transaction'))   if !$self->cb_reference;
   $self->ob_description(t8('OB Transaction')) if !$self->ob_description;
   $self->cb_description(t8('CB Transaction')) if !$self->cb_description;
+
+  $self->setup_filter_action_bar;
   $self->render('gl/yearend_filter',
                 title               => t8('CB/OB Transactions'),
                 make_title_of_chart => sub { $_[0]->accno.' '.$_[0]->description }
@@ -52,6 +54,8 @@ sub action_list {
     allow_csv_export     => 0,
     title                => $::locale->text('CB/OB Transactions'),
   );
+
+  $self->setup_list_action_bar;
   $report->generate_with_headers();
   $main::lxdebug->leave_sub();
 }
@@ -205,7 +209,7 @@ sub get_balance {
   #$main::lxdebug->message(LXDebug->DEBUG2(),"get_balance from=".$self->cb_startdate->to_kivitendo." to=".$self->cb_date->to_kivitendo);
   my $balance = $chart->get_balance(fromdate => $self->cb_startdate, todate => $self->cb_date);
   $main::lxdebug->leave_sub();
-  return 0 unless $balance != 0;
+  return 0 if !defined $balance || $balance == 0;
   return $balance;
 }
 
@@ -270,4 +274,38 @@ sub init_charts {
   SL::DB::Manager::Chart->get_all(  query => [ \ "accno not like '9%'"], sort_by => 'accno ASC' );
 }
 
+sub setup_filter_action_bar {
+  my ($self) = @_;
+
+  for my $bar ($::request->layout->get('actionbar')) {
+    $bar->add(
+      action => [
+        t8('Continue'),
+        submit    => [ '#filter_form', { action => 'YearEndTransactions/list' } ],
+        accesskey => 'enter',
+      ],
+    );
+  }
+}
+
+sub setup_list_action_bar {
+  my ($self) = @_;
+
+  for my $bar ($::request->layout->get('actionbar')) {
+    $bar->add(
+      action => [
+        t8('Post'),
+        submit    => [ '#form', { action => 'YearEndTransactions/generate' } ],
+        tooltip   => t8('generate cb/ob transactions for selected charts'),
+        confirm   => t8('Are you sure to generate cb/ob transactions?'),
+        accesskey => 'enter',
+      ],
+      action => [
+        t8('Back'),
+        call => [ 'kivi.history_back' ],
+      ],
+    );
+  }
+}
+
 1;