]> wagnertech.de Git - mfinanz.git/blobdiff - SL/RP.pm
Drafts: gl auch eingebunden
[mfinanz.git] / SL / RP.pm
index a18452e67687a2fd6dafa9b2b252f59bdd55fcef..2895d534a4ae45887755340efcc9a474efe3fb60 100644 (file)
--- a/SL/RP.pm
+++ b/SL/RP.pm
@@ -1873,18 +1873,16 @@ sub erfolgsrechnung {
   my ($self, $myconfig, $form) = @_;
   $form->{company} = $::instance_conf->get_company;
   $form->{address} = $::instance_conf->get_address;
-
-  # wrong user inputs should be handled during users input
-  # e.g.  spaces, tabs, wrong format or wrong dates
-  $form->{fromdate} = "01.01.2000" if !$form->{fromdate};
-  $form->{todate} = $form->current_date(%{$myconfig}) if !$form->{todate};
+  $form->{fromdate} = DateTime->new(year => 2000, month => 1, day => 1)->to_kivitendo unless $form->{fromdate};
+  $form->{todate} = $form->current_date(%{$myconfig}) unless $form->{todate};
 
   my %categories = (I => "ERTRAG", E => "AUFWAND");
   my $fromdate = conv_dateq($form->{fromdate});
   my $todate = conv_dateq($form->{todate});
 
   $form->{total} = 0;
-  foreach my $category (keys %categories) {
+
+  foreach my $category ('I', 'E') {
     my %category = (
       name => $categories{$category},
       total => 0,
@@ -1925,7 +1923,7 @@ sub get_accounts_ch {
     WHERE category = ? $inclusion
     ORDER BY accno
   |;
-  my $accounts = selectall_hashref_query($::form, $::form->get_standard_dbh, $query, $category);
+  my $accounts = _query($query, $category);
 
   $main::lxdebug->leave_sub();
   return $accounts;
@@ -1943,11 +1941,12 @@ sub get_total_ch {
       AND transdate >= ?
       AND transdate <= ?
   |;
-  my $data = selectfirst_hashref_query($::form, $::form->get_standard_dbh, $query, $chart_id, $fromdate, $todate);
-  $total += $data->{sum};
+  $total += _query($query, $chart_id, $fromdate, $todate)->[0]->{sum};
 
   $main::lxdebug->leave_sub();
   return $total;
 }
 
+sub _query {return selectall_hashref_query($::form, $::form->get_standard_dbh, @_);}
+
 1;