X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Frp.pl;h=41148c8e8363589f371f4067c3c2d71a0e573fcc;hb=1c603341fc02e3a5a7b5126cd7df6478d2e34700;hp=2b927855f6038bcb3d676758998baa44d482f805;hpb=a304d5faac8b7cb752c8510e3bcdc8b359d9ddf8;p=kivitendo-erp.git diff --git a/bin/mozilla/rp.pl b/bin/mozilla/rp.pl index 2b927855f..41148c8e8 100644 --- a/bin/mozilla/rp.pl +++ b/bin/mozilla/rp.pl @@ -41,6 +41,7 @@ use SL::PE; use SL::RP; use SL::Iconv; use SL::ReportGenerator; +use Data::Dumper; require "bin/mozilla/arap.pl"; require "bin/mozilla/common.pl"; @@ -907,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}; @@ -1090,118 +1091,36 @@ sub generate_balance_sheet { $auth->assert('report'); - RP->balance_sheet(\%myconfig, \%$form); + $form->{decimalplaces} = $form->{decimalplaces} * 1 || 2; + $form->{padding} = "  "; + $form->{bold} = ""; + $form->{endbold} = ""; + $form->{br} = "
"; + + my $data = RP->balance_sheet(\%myconfig, \%$form); $form->{asofdate} = $form->current_date(\%myconfig) unless $form->{asofdate}; - $form->{period} = - $locale->date(\%myconfig, $form->current_date(\%myconfig), 1); + $form->{period} = $locale->date(\%myconfig, $form->current_date(\%myconfig), 1); ($form->{department}) = split /--/, $form->{department}; # define Current Earnings account $padding = ($form->{l_heading}) ? $form->{padding} : ""; - push(@{ $form->{equity_account} }, - $padding . $locale->text('Current Earnings')); + push(@{ $form->{equity_account} }, $padding . $locale->text('Current Earnings')); $form->{this_period} = $locale->date(\%myconfig, $form->{asofdate}, 0); - $form->{last_period} = - $locale->date(\%myconfig, $form->{compareasofdate}, 0); + $form->{last_period} = $locale->date(\%myconfig, $form->{compareasofdate}, 0); - my $attachment_basename; - - my $report = SL::ReportGenerator->new(\%myconfig, $form); - - my @hidden_variables = (); - push @hidden_variables, qw(fromdate todate year cash ); - - my $href = build_std_url('action=orders', 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_alignment = map { $_ => 'right' } qw(soll_eb haben_eb soll haben soll_kumuliert haben_kumuliert soll_saldo haben_saldo); - - map { $column_defs{$_}->{visible} = 1 } @columns; + $form->{IN} = "balance_sheet.html"; - $report->set_columns(%column_defs); - $report->set_column_order(@columns); - - $report->set_export_options('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->{template_to} = $locale->date(\%myconfig, $form->{todate}, 0); - - $report->set_options('output_format' => 'HTML', - 'title' => $form->{title}, - 'attachment_basename' => $attachment_basename . strftime('_%Y%m%d', localtime time), - ); - $report->set_options_from_form(); - # $form->parse_html_template('report_generator/html_report_bilanz', $variables)); - $form->{report_template} = 'report_generator/html_report_bilanz'; - # add sort and escape callback, this one we use for the add sub - $form->{callback} = $href .= "&sort=$form->{sort}"; + # setup company variables for the form + map { $form->{$_} = $myconfig{$_}; } (qw(company address businessnumber nativecurr)); - # escape callback for href - $callback = $form->escape($href); - - my @subtotal_columns = qw(soll_eb haben_eb soll haben soll_kumuliert haben_kumuliert soll_saldo haben_saldo); - - my %totals = map { $_ => 0 } @subtotal_columns; - - my $edit_url = build_std_url('action=edit', 'type', 'vc'); - -# foreach $accno (@{ $form->{TB} }) { -# -# $accno->{soll} = $accno->{debit}; -# $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); -# -# my $row = { }; -# -# foreach my $column (@columns) { -# $row->{$column} = { -# 'data' => $accno->{$column}, -# 'align' => $column_alignment{$column}, -# }; -# } -# -# -# $row->{$ordnumber}->{link} = $edit_url . "&id=" . E($oe->{id}) . "&callback=${callback}"; -# -# my $row_set = [ $row ]; -# -# -# $report->add_data($row_set); -# -# $idx++; -# } -# -# $report->add_separator(); -# -# $report->add_data(create_subtotal_row(\%totals, \@columns, \%column_alignment, \@subtotal_columns, 'listtotal')); - - $report->generate_with_headers(); + $form->{templates} = $myconfig{templates}; + $form->header(); + print $form->parse_html_template('rp/balance_sheet', $data); +# $form->parse_template(); $lxdebug->leave_sub(); } @@ -1337,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} }; @@ -1347,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'), } ); @@ -1387,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', @@ -1421,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 = { }; @@ -1436,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 ]; @@ -1548,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; @@ -2395,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});