Kurzer Kommentar/Idee für die Überarbeitung
[kivitendo-erp.git] / bin / mozilla / rp.pl
index 7075c4d..41148c8 100644 (file)
@@ -908,7 +908,7 @@ sub get_project {
     $form->{projectnumber_1} = $form->{projectnumber};
 
     delete $form->{sort};
-    &check_project;
+    check_project('generate_projects');
 
     # if there is one only, assign id
     $form->{project_id} = $form->{project_id_1};
@@ -1256,7 +1256,7 @@ sub generate_trial_balance {
 
 
   # get for each account initial balance, debits and credits
-  RP->trial_balance(\%myconfig, \%$form);
+  RP->trial_balance(\%myconfig, \%$form, 'beginning_balances' => 1);
 
 
   $form->{rowcount} = scalar @{ $form->{TB} };
@@ -1266,33 +1266,31 @@ sub generate_trial_balance {
     "accno",               "description",
     "last_transaction",    "soll_eb",
     "haben_eb",
-    "soll",                 "haben",
-    "soll_kumuliert", "haben_kumuliert",
-    "soll_saldo", "haben_saldo"
+    "soll",                "haben",
+    "soll_kumuliert",      "haben_kumuliert",
+    "soll_saldo",          "haben_saldo"
   );
 
 
-  my $attachment_basename;
-  $attachment_basename = $locale->text('trial_balance');
-  my $report = SL::ReportGenerator->new(\%myconfig, $form);
+  my $attachment_basename = $locale->text('trial_balance');
+  my $report              = SL::ReportGenerator->new(\%myconfig, $form);
 
-  my @hidden_variables = ();
-  push @hidden_variables, qw(fromdate todate year cash );
+  my @hidden_variables    = qw(fromdate todate year cash);
 
-  my $href = build_std_url('action=generate_trial_balance', grep { $form->{$_} } @hidden_variables);
+  my $href                = build_std_url('action=generate_trial_balance', grep { $form->{$_} } @hidden_variables);
 
-  my %column_defs = (
-    'accno'                   => { 'text' => $locale->text('Account Number'), },
-    'description'             => { 'text' => $locale->text('Description'), },
-    'last_transaction'        => { 'text' => $locale->text('Last Transaction'), },
-    'soll_eb'                 => { 'text' => $locale->text('Debit Starting Balance'), },
-    'haben_eb'                => { 'text' => $locale->text('Credit Starting Balance'), },
-    'soll'                    => { 'text' => $locale->text('Debit'), },
-    'haben'                   => { 'text' => $locale->text('Credit'), },
-    'soll_kumuliert'          => { 'text' => $locale->text('Sum Debit'), },
-    'haben_kumuliert'         => { 'text' => $locale->text('Sum Credit'), },
-    'soll_saldo'              => { 'text' => $locale->text('Saldo Debit'), },
-    'haben_saldo'                => { 'text' => $locale->text('Saldo Credit'), }
+  my %column_defs         = (
+    'accno'               => { 'text' => $locale->text('Account'), },
+    'description'         => { 'text' => $locale->text('Description'), },
+    'last_transaction'    => { 'text' => $locale->text('Last Transaction'), },
+    'soll_eb'             => { 'text' => $locale->text('Debit Starting Balance'), },
+    'haben_eb'            => { 'text' => $locale->text('Credit Starting Balance'), },
+    'soll'                => { 'text' => $locale->text('Debit'), },
+    'haben'               => { 'text' => $locale->text('Credit'), },
+    'soll_kumuliert'      => { 'text' => $locale->text('Sum Debit'), },
+    'haben_kumuliert'     => { 'text' => $locale->text('Sum Credit'), },
+    'soll_saldo'          => { 'text' => $locale->text('Saldo Debit'), },
+    'haben_saldo'         => { 'text' => $locale->text('Saldo Credit'), }
   );
 
 
@@ -1306,15 +1304,22 @@ sub generate_trial_balance {
 
   $report->set_export_options('generate_trial_balance', @hidden_variables);
 
-  $report->set_sort_indicator($form->{sort}, 1);
-
   my @options;
 
 
   $form->{template_fromto} = $locale->date(\%myconfig, $form->{fromdate}, 0) . "  -  " . $locale->date(\%myconfig, $form->{todate}, 0);
+
+  $form->{print_date} = $locale->text('Create Date') . " " . $locale->date(\%myconfig, $form->current_date(\%myconfig), 0);
+  push (@options, $form->{print_date});
+
+  $form->{company} = $locale->text('Company') . " " . $myconfig{company};
+  push (@options, $form->{company});
+
+
   $form->{template_to} = $locale->date(\%myconfig, $form->{todate}, 0);
 
   $report->set_options('output_format'        => 'HTML',
+                       'top_info_text'        => join("\n", @options),
                        'title'                => $form->{title},
                        'attachment_basename'  => $attachment_basename . strftime('_%Y%m%d', localtime time),
                        'html_template'        => 'rp/html_report_susa',
@@ -1340,9 +1345,8 @@ sub generate_trial_balance {
     $accno->{haben} = $accno->{credit};
     map { $totals{$_}    += $accno->{$_} } @subtotal_columns;
 
-    map { $accno->{$_} = $form->format_amount(\%myconfig, $accno->{$_}, 2) } qw(soll_eb haben_eb soll haben soll_kumuliert haben_kumuliert soll_saldo haben_saldo);
-
-    map { $accno->{$_} = ($accno->{$_} == 0) ? '' : $accno->{$_} } qw(soll_eb haben_eb soll haben soll_kumuliert haben_kumuliert soll_saldo haben_saldo);
+    map { $accno->{$_} = $accno->{$_} == 0 ? '' : $form->format_amount(\%myconfig, $accno->{$_}, 2) }
+      qw(soll_eb haben_eb soll haben soll_kumuliert haben_kumuliert soll_saldo haben_saldo);
 
     my $row = { };
 
@@ -1355,6 +1359,7 @@ sub generate_trial_balance {
 
 
     $row->{$ordnumber}->{link} = $edit_url . "&id=" . E($oe->{id}) . "&callback=${callback}";
+    $row->{accno}->{link} = build_std_url('script=ca.pl', 'action=list_transactions', 'accno=' . E($accno->{accno}), 'description=' . E($accno->{description}), 'fromdate=' . E($form->{fromdate}), 'todate=' . E($form->{todate}), 'method=' . E($form->{method}));
 
     my $row_set = [ $row ];
 
@@ -1467,8 +1472,6 @@ sub list_accounts {
 
   $report->set_export_options($action, @hidden_variables);
 
-  $report->set_sort_indicator('accno', 1);
-
   my @totals_columns = qw(credit debit begbalance endbalance);
   my %subtotals      = map { $_ => 0 } @totals_columns;
   my %totals         = map { $_ => 0 } @totals_columns;
@@ -2314,7 +2317,7 @@ sub list_payments {
   $report->set_columns(%column_defs);
   $report->set_column_order(@columns);
 
-  $report->set_export_options('list_payments', @hidden_variables);
+  $report->set_export_options('list_payments', @hidden_variables, qw(sort sortdir));
 
   $report->set_sort_indicator($form->{sort}, $form->{sortdir});