Bug #826 behoben, Kontenuebersicht angepasst, zusaetzliche Spalte mit dem fortlaufend...
authorPhilip Reetz <p.reetz@linet-services.de>
Wed, 6 May 2009 13:44:42 +0000 (13:44 +0000)
committerPhilip Reetz <p.reetz@linet-services.de>
Wed, 6 May 2009 13:44:42 +0000 (13:44 +0000)
bin/mozilla/ca.pl
bin/mozilla/gl.pl
locale/de/ca

index 1d43191..b0bd5e8 100644 (file)
@@ -495,6 +495,7 @@ sub list_transactions {
 
   my $saldo_old = format_debit_credit($form->{saldo_old});
   my $eb_string = format_debit_credit($form->{beginning_balance});
+  $form->{balance} = $form->{saldo_old};
 
   my @options;
   if ($form->{department}) {
@@ -524,7 +525,7 @@ sub list_transactions {
 
   push @options, $period;
 
-  my @columns     = qw(transdate reference description gegenkonto debit credit ustkonto ustrate);
+  my @columns     = qw(transdate reference description gegenkonto debit credit ustkonto ustrate balance);
   my %column_defs = (
     'transdate'   => { 'text' => $locale->text('Date'), },
     'reference'   => { 'text' => $locale->text('Reference'), },
@@ -533,7 +534,8 @@ sub list_transactions {
     'credit'      => { 'text' => $locale->text('Credit'), },
     'gegenkonto'     => { 'text' => $locale->text('Gegenkonto'), },
     'ustkonto'     => { 'text' => $locale->text('USt-Konto'), },
-     'ustrate'     => { 'text' => $locale->text('Satz %'), },
+    'balance'          => { 'text' => $locale->text('Balance'), },
+    'ustrate'     => { 'text' => $locale->text('Satz %'), },
  );
 
   my @hidden_variables = qw(accno fromdate todate description accounttype l_heading subtotal department projectnumber project_id sort);
@@ -571,6 +573,7 @@ sub list_transactions {
    { 'text' => $locale->text('Credit'), },
    { 'text' => $locale->text('USt-Konto'), },
    { 'text' => $locale->text('Satz %'), },
+   { 'text' => $locale->text('Balance'), },
  ];
 
 
@@ -595,7 +598,7 @@ sub list_transactions {
 
   $report->set_sort_indicator($form->{sort}, 1);
 
-  $column_defs->{balance}->{visible} = $form->{accno} ? 1 : 0;
+  $column_defs->{balance}->{visible} = 1;
 
   my $ml = ($form->{category} =~ /(A|E)/) ? -1 : 1;
 
@@ -610,6 +613,12 @@ sub list_transactions {
     foreach (qw(debit credit)) {
       $subtotals{$_} += $ca->{$_};
       $totals{$_}    += $ca->{$_};
+      if ($_ =~ /debit.*/) {
+        $ml = -1;
+      } else {
+        $ml = 1;
+      }
+      $form->{balance}= $form->{balance} + $ca->{$_} * $ml;
       $ca->{$_}       = $form->format_amount(\%myconfig, $ca->{$_}, 2) if ($ca->{$_} != 0);
     }
 
@@ -645,6 +654,19 @@ sub list_transactions {
       };
     }
 
+    my $sh = "";
+    if ($form->{balance} < 0) {
+      $sh = " S";
+      $ml = -1;
+    } elsif ($form->{balance} > 0) {
+      $sh = " H";
+      $ml = 1;
+    }
+    my $data = $form->format_amount(\%myconfig, ($form->{balance} * $ml), 2);
+    $data .= $sh;
+
+    $row->{balance}->{data}        = $data;
+
     if ($ca->{index} ne $previous_index) {
 #       $report->add_data($row_set) if ($row_set);
 
@@ -675,7 +697,20 @@ sub list_transactions {
   $report->add_separator();
 
   my $row = create_subtotal_row(\%totals, \@columns, \%column_alignment, 'listtotal');
-  $row->{balance}->{data} = $form->format_amount(\%myconfig, $form->{balance} * $ml, 2);
+
+  my $sh = "";
+  if ($form->{balance} < 0) {
+    $sh = " S";
+    $ml = -1;
+  } elsif ($form->{balance} > 0) {
+    $sh = " H";
+    $ml = 1;
+  }
+  my $data = $form->format_amount(\%myconfig, ($form->{balance} * $ml), 2);
+  $data .= $sh;
+
+  $row->{balance}->{data}        = $data;
+
   $report->add_data($row);
 
 
index 15b49d2..e38796c 100644 (file)
@@ -507,7 +507,7 @@ sub generate_report {
   map { $column_defs{$_}->{visible} = 0 } qw(debit_accno credit_accno debit_tax_accno credit_tax_accno) if $form->{accno};
 
   my %column_alignment;
-  map { $column_alignment{$_}     = 'right'  } qw(balance id debit credit debit_tax credit_tax);
+  map { $column_alignment{$_}     = 'right'  } qw(balance id debit credit debit_tax credit_tax balance);
   map { $column_alignment{$_}     = 'center' } qw(transdate reference description source notes debit_accno credit_accno debit_tax_accno credit_tax_accno);
   map { $column_defs{$_}->{align} = $column_alignment{$_} } keys %column_alignment;
 
@@ -566,10 +566,10 @@ sub generate_report {
 
     my $sh = "";
     if ($form->{balance} < 0) {
-      $sh = "(S)";
+      $sh = " S";
       $ml = -1;
     } elsif ($form->{balance} > 0) {
-      $sh = "(H)";
+      $sh = " H";
       $ml = 1;
     }
     my $data = $form->format_amount(\%myconfig, ($form->{balance} * $ml), 2);
@@ -612,10 +612,10 @@ sub generate_report {
 
   my $sh = "";
   if ($form->{balance} < 0) {
-    $sh = "(S)";
+    $sh = " S";
     $ml = -1;
   } elsif ($form->{balance} > 0) {
-    $sh = "(H)";
+    $sh = " H";
     $ml = 1;
   }
   my $data = $form->format_amount(\%myconfig, ($form->{balance} * $ml), 2);
index 9c747c6..33ac0d7 100644 (file)
@@ -13,6 +13,7 @@ $self->{texts} = {
   'April'                       => 'April',
   'Aug'                         => 'Aug',
   'August'                      => 'August',
+  'Balance'                     => 'Bilanz',
   'Bcc'                         => 'Bcc',
   'Bin List'                    => 'Lagerliste',
   'Binding to the LDAP server as "#1" failed. Please check config/authentication.pl.' => 'Die Anmeldung am LDAP-Server als "#1" schlug fehl. Bitte &uuml;berpr&uuml;fen Sie die Angaben in config/authentication.pl.',